v1.0.0 引入了新的子命令结构(类似 git/npm 风格),替代了旧的 -- 选项风格。
旧版 (v0.x):使用 -- 选项作为命令
codebase --search="query"
codebase --index
codebase --serve新版 (v1.0.0):使用子命令模式
codebase search "query"
codebase index
codebase index --serve| 旧命令 (v0.x) | 新命令 (v1.0.0) | 说明 |
|---|---|---|
--search="query" |
search "query" |
语义搜索 |
--index |
index |
索引代码库 |
--serve |
index --serve |
启动 MCP 服务器 |
--index --watch |
index --watch |
监听模式 |
--clear |
index --clear-cache |
清除索引缓存 |
--outline "pattern" |
outline "pattern" |
代码大纲 |
--clear-summarize-cache |
outline --clear-cache |
清除摘要缓存 |
--stdio-adapter |
stdio |
stdio 适配器 |
--get-config |
config --get |
查看配置 |
--set-config |
config --set |
设置配置 |
# 旧版
codebase --search="user authentication" --limit=20
codebase --search="database" --path-filters="src/**/*.ts"
# 新版
codebase search "user authentication" --limit=20
codebase search "database" --path-filters="src/**/*.ts"# 旧版
codebase --index --path=. --force
codebase --index --dry-run
# 新版
codebase index --path=. --force
codebase index --dry-run# 旧版
codebase --serve --port=3001 --path=.
# 新版
codebase index --serve --port=3001 --path=.逻辑变更:--serve 现在是 index 命令的选项,因为服务器启动时会自动进行索引。
# 旧版
codebase --clear
codebase --clear-summarize-cache
# 新版
codebase index --clear-cache
codebase outline --clear-cache逻辑变更:清除操作现在是相应命令的选项,更符合操作的语义。
# 旧版
codebase --outline "src/**/*.ts"
codebase --outline "src/**/*.ts" --summarize
# 新版
codebase outline "src/**/*.ts"
codebase outline "src/**/*.ts" --summarize# 旧版
codebase --stdio-adapter --server-url=http://localhost:3001/mcp
# 新版
codebase stdio --server-url=http://localhost:3001/mcp# 旧版
codebase --get-config
codebase --get-config embedderProvider
codebase --set-config embedderProvider=ollama
codebase --set-config --global key=value
# 新版
codebase config --get
codebase config --get embedderProvider
codebase config --set embedderProvider=ollama
codebase config --set --global key=valuev1.0.0 完全移除了旧的命令格式支持。运行旧命令会直接报错:
$ codebase --search="user auth"
error: unknown option '--search="user auth"'必须使用新语法:
$ codebase search "user auth"
Found 5 results in 3 files for: "user auth"
...如果你在脚本中使用了 codebase 命令,建议尽快更新:
自动化脚本示例
# 旧版脚本
#!/bin/bash
codebase --index --path=/my/project
codebase --search="TODO" --json > results.json
# 新版脚本
#!/bin/bash
codebase index --path=/my/project
codebase search "TODO" --json > results.json如果你在 CI/CD 流程中使用 codebase,请更新配置:
GitHub Actions 示例
# 旧版
- name: Index codebase
run: codebase --index --force
# 新版
- name: Index codebase
run: codebase index --force新的子命令结构带来以下改进:
-
更清晰的命令层级
index命令统一管理索引、监听、服务器、清理- 命令关系更直观
-
符合主流工具习惯
- 类似 git、npm、docker 的子命令模式
- 降低学习成本
-
更易扩展
- 新增子命令不会与选项冲突
- 支持多层次的命令组织
-
更好的帮助系统
codebase --help显示所有子命令codebase <subcommand> --help显示子命令详情
- 查看 CLAUDE.md 了解新命令的完整文档
- 运行
codebase --help查看所有可用命令 - 运行
codebase <subcommand> --help查看特定子命令的帮助
迁移步骤:
- ✅ 查看上述命令映射表
- ✅ 更新脚本和 CI/CD 配置
- ✅ 测试新命令是否正常工作
- ✅ 升级到 v1.0.0
关键原则:大部分情况下,只需将 --command 改为 command 即可!
注意:v1.0.0 不支持旧命令,请在升级前完成所有脚本和配置的更新。