用途:本技能用于操作 git-agent CLI,覆盖原子提交、初始化与配置,以及代码图(事件日志 + AST + 共同变更)。加载后应先按场景选择命令,而不是默认执行 git-agent commit。
主要能力: 提交与配置:git-agent commit --intent "..." 生成提交;首次失败遇认证错误(401 或缺少密钥)时可用 --free 重试一次;可通过 --dry-run 预览、--no-stage 不自动暂存、--amend 改写最近提交、--co-author 标注共同作者、--trailer 添加 git trailer、--max-diff-lines 限制 diff 行数。--amend 与 --no-stage 互斥。git-agent init 初始化仓库(生成 scopes、.gitignore、安装钩子),git-agent init --scope 重新生成 scopes,git-agent config show/get/set 管理提供方配置。当 AI 规划器判断暂存改动在逻辑上可分离时,会自动拆分为最多 5 个原子提交。
代码图查询:git-agent graph impact [files...] 用共同变更模式排序历史上一起变化的文件,无参数时以当前未提交改动为种子;--symbol <name> 切换到 AST 结构模式,查找调用或引用该符号的节点;--mode combined 同时返回两种信号。另有 callers、callees、node、query、affected、timeline、diagnose、provenance、status、verify、index、sync 等子命令。所有图查询只读且离线,不需要 LLM 或 API 密钥。
使用方式:需要查找相关文件时可用 git-agent graph impact application/commit_service.go cmd/commit.go --json;改动了具体函数或类型时用 git-agent graph impact --symbol CommitService --json。图查询无结果或数据陈旧时用 git-agent graph status,随后 git-agent graph sync 或 git-agent graph index(--reindex 强制完整重建 AST 索引)。怀疑事件日志被篡改可用 git-agent graph verify(断裂时退出码为 4)。
限制:提交与 init --scope 需要配置提供方。支持的提供方包括 OpenAI、Cloudflare Workers AI、本地 Ollama。若 --free 也失败,需创建 ~/.config/git-agent/config.yml 并填写 base_url、api_key、model。提交格式有标题、正文要点与解释段要求。钩子阻断提交(退出码 2)时,应以更具体的 --intent 重试。若场景未列出,运行 git-agent --help 或 git-agent graph --help。