关于
This skill checks if your Git commit signing key is ready before your first commit, preventing unsigned commits. It proactively prompts you to unlock the key once per session instead of failing mid-workflow. Use it at the start of work in repos requiring signed commits to avoid common GPG or SSH signing errors.
快速安装
Claude Code
推荐npx skills add avelikiy/great_cto -a claude-code/plugin add https://github.com/avelikiy/great_ctogit clone https://github.com/avelikiy/great_cto.git ~/.claude/skills/signing-preflight在 Claude Code 中复制并粘贴此命令以安装该技能
技能文档
signing-preflight — find the locked key before the first commit, not after the hundredth
On real projects: an agent committed unsigned without asking to unlock the key; a signing call on a locked SSH key hung the session; 121 commits had to be re-signed after the fact — and the key turned out to have no passphrase at all. Each was a two-second question at the start of the session.
Check (read-only, bounded)
git config --get commit.gpgsign # true → signing is expected
git config --get gpg.format # ssh | openpgp (empty = openpgp)
git config --get user.signingkey
SSH signing — does a test signature finish? (user.signingkey may be a key file or a
literal key::ssh-…; the test signature is the check that works for both.)
K="$(git config --get user.signingkey)"; case "$K" in key::*) printf '%s\n' "${K#key::}" > /tmp/sigpre.pub; K=/tmp/sigpre.pub ;; esac
echo preflight | perl -e 'alarm 5; exec @ARGV' ssh-keygen -Y sign -n git -f "$K" >/dev/null 2>&1 && echo signs || echo CANNOT-SIGN
OpenPGP — a batch signature that refuses to prompt:
echo preflight | perl -e 'alarm 5; exec @ARGV' gpg --batch --pinentry-mode error --clearsign -u "$(git config --get user.signingkey)" >/dev/null 2>&1 && echo signs || echo CANNOT-SIGN
Always bound the test with a timeout: an unbounded signing call on a locked key waits for a passphrase nobody will type, and the session stalls.
Then
- signs → proceed; nothing to say.
- CANNOT-SIGN → one question to the operator, before any work:
"Commit signing is on and the key is locked / not loaded. Unlock it (
ssh-add/ gpg-agent) and I will continue — or tell me to commit unsigned for this session." Wait for the answer. This is the one question worth stopping for at the start.
Never, without being told
git -c commit.gpgsign=false commit …or--no-gpg-sign— an unsigned commit on a branch that requires signatures is a push that will be refused, or worse, accepted.- Re-signing history (
rebase --exec 'git commit --amend -S') — it rewrites every hash after the first commit it touches; on a pushed branch that is a force-push.
Report unsigned work
If commits were made unsigned anyway, say so with the list:
git log --format='%h %G? %s' @{upstream}..HEAD | awk '$2!="G"'
GitHub 仓库
常见问题
什么是 signing-preflight Skill?
signing-preflight 是一个 Claude Skill,作者为 avelikiy。Skill 将 Claude 按需加载的说明和资源打包,让 Claude 无需额外提示即可执行与 signing-preflight 相关的任务。
如何安装 signing-preflight?
使用本页的安装命令:将 signing-preflight 作为插件添加到 Claude Code,或将其仓库克隆到 skills 目录,然后重启 Claude 以加载该 Skill。
signing-preflight 属于哪个分类?
signing-preflight 属于设计分类。
signing-preflight 可以免费使用吗?
可以。signing-preflight 已收录在 AIMCP,可免费安装。
相关推荐技能
该Skill用于当开发者提供完整实施计划时,以受控批次方式执行代码实现。它会先审阅计划并提出疑问,然后分批次执行任务(默认每批3个任务),并在批次间暂停等待审查。关键特性包括分批次执行、内置检查点和架构师审查机制,确保复杂系统实现的可控性。
该Skill可在完成任务、实现主要功能或合并代码前自动调度代码审查子代理,确保实现符合需求和计划。它支持通过指定git SHA范围进行精准的代码变更审查,帮助开发者在关键节点及时发现潜在问题。核心原则是"早审查、勤审查",适用于开发流程的各个关键阶段。
这个Skill指导开发者如何将MCP服务器连接到Claude Code,支持HTTP、stdio和SSE三种传输协议。它涵盖了从安装配置到认证安全的完整流程,适用于集成GitHub、Notion、数据库等外部服务。当开发者需要添加集成、配置外部工具或提及MCP相关功能时,这个Skill能提供实用的操作指南。
该Skill帮助开发者根据任务特性选择Claude Code的Web或CLI界面,并指导如何在两种环境间无缝迁移会话。它能分析任务复杂度、迭代需求等要素,推荐最优工作界面和工作流。关键特性包括会话状态管理、环境切换指导和上下文优化建议。
