Loading...
Loading...
ローカル改修した `.agents/skills/<skill-name>/` を upstream リポジトリ (Fandhe-AI/agent-cli-skills 等) へ PR として投稿する。`skills-lock.json` の `source` を読み、`Fandhe-AI/` 以外への push は安全弁で中止。clone → 反映 → セキュリティチェック → ブランチ作成 → push → `gh pr create` を実行。マージ後は sync-skills-lock で hash 更新。「スキルを upstream に貢献」「外部リポジトリに PR」などで使用。
npx skill4agent add fandhe-ai/agent-cli-skills contribute-skill.agents/skills/<skill-name>/skills-lock.jsonghskills-lock.jsonSKILL_NAME="$ARGUMENTS"
# 引数が空の場合: .agents/skills/ を列挙してユーザーに選ばせる.agents/skills/<SKILL_NAME>/skills-lock.jsonskills.<SKILL_NAME>.source# Python を使わず jq が使えるなら jq で(CLI にあれば)sourceFandhe-AI/sourceTypegithubgit log --oneline -- .agents/skills/<SKILL_NAME>/
git diff HEAD~1 HEAD -- .agents/skills/<SKILL_NAME>/create-prUID_VAL=$(id -u)
TS=$(date +%Y%m%d-%H%M%S)
WORKDIR="/tmp/claude-${UID_VAL}/contribute-${SKILL_NAME}-${TS}"
mkdir -p "$WORKDIR"$TMPDIR# sandbox 環境では各コマンドに GIT_SSL_NO_VERIFY=1 を前置する(詳細: docs/sandbox-tls.md)
gh repo clone Fandhe-AI/<repo> "$WORKDIR/upstream"
cd "$WORKDIR/upstream"mainmasterskills/<SKILL_NAME>/.agents/skills/<SKILL_NAME>/.agents/skills/<SKILL_NAME>/# 例: upstream 側が skills/<name>/ の場合
cp -R "<local-repo>/.agents/skills/<SKILL_NAME>/." "$WORKDIR/upstream/skills/<SKILL_NAME>/"cd "$WORKDIR/upstream"
git status
git diffSLUG=$(date +%Y%m%d-%H%M%S)
git switch -c "contribute/<SKILL_NAME>-${SLUG}"
git add <変更パス>
git commit -m "$(cat <<'EOF'
<type>(<scope>): <subject>
ローカルの .agents/skills/<SKILL_NAME>/ からの貢献。
EOF
)"--no-verify# sandbox 環境では各コマンドに GIT_SSL_NO_VERIFY=1 を前置する(詳細: docs/sandbox-tls.md)
git push -u origin "contribute/<SKILL_NAME>-${SLUG}"
gh pr create \
--repo Fandhe-AI/<repo> \
--base main \
--title "<type>(<scope>): <subject>" \
--body "$(cat <<'EOF'
## Summary
- <SKILL_NAME> の改修内容(箇条書き)
## Source
ローカルの [ideas リポジトリ](../../) 側で改修後、`/contribute-skill <SKILL_NAME>` により投稿。
## Test plan
- [ ] SKILL.md を実際に Claude Code で実行
- [ ] Conventional Commits に沿ったメッセージ生成を確認
- [ ] エッジケース確認
EOF
)"--draft/sync-skills-lockskills-lock.jsoncomputedHash$WORKDIRGIT_SSL_NO_VERIFY=1skills/<name>/.agents/skills/<name>/GIT_SSL_NO_VERIFY=1gh repo clonegit pushgh pr createdocs/sandbox-tls.mdcreate-pr/SKILL.md/sync-skills-lockskills-lock.jsoncomputedHash