第 5 卷
2.创建新的 worktree
bash
# 用新分支创建新 worktree git worktree add ../project-feature-a -b feature-a
# 或用现有分支创建 worktree git worktree add ../project-bugfix bugfix-123
这会创建一个新目录,其中包含仓库的单独工作副本。
3.在每个 worktree 中运行 CodeBuddy Code
bash
# 导航到您的 worktree cd ../project-feature-a
# 在这个隔离环境中运行 CodeBuddy Code codebuddy
4.在另一个 worktree 中运行 CodeBuddy
bash
cd ../project-bugfix codebuddy
5.管理您的 worktrees
bash
# 列出所有 worktrees git worktree list
# 完成后删除 worktree git worktree remove ../project-feature-a
最佳实践:
每个 worktree都有自己独立的文件状态,非常适合并行 CodeBuddy Code会话
一个 worktree中的更改不会影响其他 worktree,防止 CodeBuddy 实例相互干扰
所有 worktrees共享相同的 Git历史和远程连接
对于长时间运行的任务,您可以让 CodeBuddy 在一个 worktree中工作,而在另一个中继续开发
使用描述性目录名称轻松识别每个 worktree用于哪个任务
记得根据项目设置在每个新 worktree中初始化开发环境。根据您的技术栈,这可能包括:
JavaScript项目:运行依赖安装( npm install、 yarn )
Python项目:设置虚拟环境或使用包管理器安装
将CodeBuddy用作Unix风格实用程序
将CodeBuddy添加到验证流程
假设您想将 CodeBuddy Code用作 linter或代码审查员。
将 CodeBuddy添加到构建脚本:
json
// package.json { ...
"scripts": { ...
"lint:codebuddy": "codebuddy -p '你是一个 linter。请查看相对于 main 的更改并报 } }
最佳实践:
在 CI/CD 管道中使用 CodeBuddy 进行自动代码审查
自定义提示以检查与项目相关的特定问题
考虑为不同类型的验证创建多个脚本
管道输入输出
假设您想将数据通过管道传输到 CodeBuddy,并以结构化格式获取数据。
通过 CodeBuddy传输数据:
bash
cat build-error.txt | codebuddy -p '简洁地解释此构建错误的根本原因' > output.txt
最佳实践:
使用管道将 CodeBuddy 集成到现有的 shell脚本中
与其他 Unix 工具结合以实现强大的工作流
考虑使用 --output-format获得结构化输出
控制输出格式
假设您需要 CodeBuddy 的输出采用特定格式,特别是在将 CodeBuddy Code集成到脚本或其他工具时。
1.使用文本格式(默认)
bash
cat data.txt | codebuddy -p '总结这些数据' --output-format text > summary.txt
这只输出 CodeBuddy 的纯文本响应(默认行为)。
2.使用 JSON 格式
bash
cat code.py | codebuddy -p '分析此代码的 bug' --output-format json > analysis.j
这会输出包含元数据(包括成本和持续时间)的消息 JSON 数组。
3.使用流式 JSON 格式
bash
cat log.txt | codebuddy -p '解析此日志文件的错误' --output-format stream-json
这会在 CodeBuddy 处理请求时实时输出一系列 JSON 对象。每条消息都是有效的 JSON 对象,但如果连接起来,整个输出不是有效的 JSON。
最佳实践:
对于只需要 CodeBuddy 响应的简单集成,使用 --output-format text
当您需要完整的对话日志时,使用 --output-format json
对于每个对话轮次的实时输出,使用 --output-format stream-json
创建自定义斜杠命令
CodeBuddy Code支持自定义斜杠命令,您可以创建这些命令来快速执行特定提示或任务。
有关更多详细信息,请参见斜杠命令参考页面。
创建项目特定命令
假设您想为项目创建可重用的斜杠命令,以便所有团队成员都可以使用。
步骤:
1.在项目中创建命令目录
mkdir -p .codebuddy/commands