已成功为 Easy Code CLI 添加了 /new 隐藏快捷命令,用户可以直接输入 /new 来创建新会话,无需通过菜单。
# 创建新会话的两种方式:
# 方式 1:使用完整命令(原有方式)
/session new
# 方式 2:使用快捷命令(新增方式)
/new # ← 推荐!更快更直观| 特性 | 详情 |
|---|---|
| 命令 | /new |
| 效果 | 直接创建新会话 |
| 菜单显示 | ❌ 隐藏(不会在 /help 中显示) |
| 可用性 | ✅ 可直接输入使用 |
| 功能 | 100% 等价于 /session new |
| 类型 | 隐藏快捷命令 |
packages/cli/src/ui/commands/newCommand.ts
- 定义隐藏快捷命令
newCommand hidden: true- 不显示在菜单中- 与
/session new使用完全相同的逻辑
packages/cli/src/services/BuiltinCommandLoader.ts
- 导入
newCommand - 在命令列表中注册
docs/slash-command-new-alias.md
- 详细的实现文档
- 架构说明
- 扩展指南
# 类型检查
npm run typecheck # ✅ 通过
# 编译构建
npm run build # ✅ 成功
# Git 提交
git log -1 --oneline # ✅ 9e4b0e9d feat: add /new hidden shortcut command...-
编译项目(如果还没做)
npm run build
-
启动应用
npm start
-
在交互式界面中输入
/new就会直接创建新会话!
- ✅ 用户不会看到重复的选项(已有
/session new) - ✅ 保持菜单整洁
- ✅ 符合现有的隐藏命令设计模式(如
/vim,/theme,/yolo) - ✅ 依然可以直接输入使用
| 方式 | 优点 | 缺点 |
|---|---|---|
| 隐藏命令 ✅ | 菜单清洁、快速访问 | 需要用户知道它的存在 |
| 别名方式 | 自动补全支持 | 菜单中会显示冗余选项 |
我们选择了隐藏命令的方案,因为更加简洁直观。
如果你想添加更多快捷命令,可以按照相同模式创建:
// 例如:/sl 作为 /session list 的快捷
export const selectSessionShortcutCommand: SlashCommand = {
name: 'sl',
description: '快速列出会话',
kind: CommandKind.BUILT_IN,
hidden: true, // ← 隐藏关键
action: async (context) => {
// 实现逻辑
},
};/new命令定义:packages/cli/src/ui/commands/newCommand.ts- 命令加载器:
packages/cli/src/services/BuiltinCommandLoader.ts - 原始
/session命令:packages/cli/src/ui/commands/sessionCommand.ts - 完整文档:
docs/slash-command-new-alias.md
- ✅ 创建
newCommand.ts隐藏快捷命令 - ✅ 在
BuiltinCommandLoader.ts中注册 - ✅ TypeScript 类型检查通过
- ✅ 项目编译成功
- ✅ 创建完整文档
- ✅ Git 提交保存
现在你可以使用 /new 快速创建新会话了! 🎉