SuperAPI AI 工具集

git-init

编程与开发

查看项目

更新于 10-15 21:48

技能介绍

用途:在开始处理项目、发现没有 Git、空历史、新工作树或已有仓库首次接入 Git 规范时使用。先做只读检测,初始化必须明确授权。

主要能力:运行只读脚本确认父仓真实根、HEAD、Git/common/worktree 目录,不靠 .git 是否为目录判断;识别无 Git、空历史、detached、浅历史与未知来源;预览预计生成的 .gitflow/ 文件、Git 定位配置与本地排除项;已有历史时读取既有约定并接入,不重写名称、远端、历史或用户修改。

使用方式:先定位本技能 scripts/inspect_repository.py,按契约命令读取状态,Python 3.11+ 标准库,只读且不初始化。示例:python3 /mnt/skills/user/git-init/scripts/inspect_repository.py /absolute/project。GitFlow 插件可用时调用其实际路径命令,不得把未安装的 CLI 当已存在。无插件时先用 git init 的预览计划让用户审阅,按实际授权执行。

授权与限制:只读观察和预览可执行;Git 初始化、分支创建/切换、提交、推送、集成、清理、安装 Hook 与规则激活按用户已有授权范围执行。无 Git 时询问初始化或暂不启用,不执行 git init;暂不启用则记住会话决定。插件有 PLUGIN_DATA 时通过 context --choice defer --apply 记住决定,它不是未来初始化授权。

验证与安全:输出区分事实、规则来源、建议、用户授权和未验证项;写操作后核对 refs/HEAD/status,计划和预览不是完成证据。不泄露凭据,不上传工作树,不在日志暴露凭据、整段工作树内容或敏感远端 URL。规则缺失/漂移/损坏、身份不明、操作中断或证据不足时停止相关写动作,报告 unverified。Git 不可用或网络失败不自动安装,不把失败当成功。

适用场景:子目录位于父仓 main 下时绑定父仓并输出当前规则;独立空目录用户选暂不启用则保留上下文。反例:在每个子目录 git init,或把“可以考虑 Git”理解为已授权初始化和创建分支。