skills/prompts-extract-all/SKILL.md
skills/**/SKILL.md 内に embed された 5 行以上のエージェント呼出プロンプトテンプレ・長文ブロックを .claude/rules/notification-prompt-extraction.md 基準で skills/<skill>/prompts/<name>.md に切り出す migration skill。「/prompts-extract-all」「プロンプト切り出し」「プロンプト extract」「SKILL.md プロンプト migration」と言った時に使用。検出は awk でフェンスコードブロックを抽出して行数カウント、要否判定は LLM が閾値・用途軸・命名規約と照合。diff 提案 → CEO 承認 → 書換の 2 段階で挙動を壊さず適用する。自動マージ禁止、自律ループ対象外。
npx skillsauth add hirokimry/vibecorp prompts-extract-allInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
[!IMPORTANT] 本スキルは
skills/**/SKILL.mdに embed された エージェント呼出プロンプトテンプレ を.claude/rules/notification-prompt-extraction.md基準で個別.mdファイルに切り出す。 diff 提案 → CEO 承認 → 書換の 2 段階を必須とする。自動マージは禁止。 本スキルは自律改善ループの自動実行対象外(.claude/rules/autonomous-restrictions.md不可領域 4 該当)。
本スキルが切り出し提案の対象とするファイル種別は以下とする。
| 種別 | パス | 切り出し対象 |
|------|------|------------|
| ⚙️ スキル本体 | skills/**/SKILL.md | ```text / ```markdown フェンスブロック内のエージェント呼出プロンプトテンプレ・長文 |
切り出し先(notification-prompt-extraction.md の規定パス):
| 由来 | 切り出し先 |
|------|----------|
| スキル本体 | skills/<skill>/prompts/<name>.md |
.github/workflows/** の通知文 → 兄弟スキル /notifications-extract-all の管轄hooks/**/*.sh の通知文 → 同上(/notifications-extract-all).claude/agents/*.md / .claude/rules/*.md → /prompts-rewrite-all(書き直し系、切り出しではない)/prompts-extract-all
/prompts-extract-all --skill <skill-name>
--skill 未指定なら skills/**/SKILL.md を順次処理する本スキルは以下 8 段階を順に進める。各段は前段の出力を受け取り次段へ渡す。
| ステップ | 名称 | 役割 | |---------|------|------| | 1️⃣ | 列挙 | 対象ファイルを収集する | | 2️⃣ | 照合 | 基準と機械的に突き合わせる | | 3️⃣ | 委譲 | CTO Agent を呼び出す | | 4️⃣ | 提案 | diff を CEO に提示する | | 5️⃣ | 承認 | CEO の判断を待つ | | 6️⃣ | 書換 | 承認分のみファイルに反映する | | 7️⃣ | 配布版同期 | ローカル配布版スナップショットを同期する | | 8️⃣ | レポート | 結果を CEO 向けに整形する |
find skills -name 'SKILL.md' -type f -print
各 SKILL.md 内のフェンスコードブロックを awk で抽出する。
| 抽出対象 | パターン | 行数カウント |
|---------|--------|------------|
| text フェンス | ```text で開いて ``` で閉じる | 開閉行除く実行内容行数 |
| markdown フェンス | ```markdown で開いて ``` で閉じる | 同上 |
抽出した候補に対し、notification-prompt-extraction.md の 指針 MUST 全項目 と 禁止パターン全項目 を 1 件ずつ突き合わせる。
.claude/rules/notification-prompt-extraction.md が Single Source of Truthプロンプトテンプレはエージェント呼出(技術的判断の伝達手段)であり CTO に委譲する。
Agent ツールで CTO を起動し、以下のプロンプト要素を含める。
.claude/rules/notification-prompt-extraction.md / .claude/rules/prompt-writing.md / .claude/rules/markdown.md)agent-call- プレフィックス + kebab-case)遵守CTO は複数並列で起動してよい(各 CTO は別 SKILL.md を扱うため競合しない)。
ステップ 3 で集めた書き換え案をファイル単位の diff として整形し、以下を明示する。
skills/** を書き換える操作なので CEO 明示承認が必須であることを毎回明示する提示は ファイル単位 にまとめる。CEO の指示で「まとめて見る」と言われた場合のみ複数ファイル同時提示に切り替える。
CEO に以下の選択肢を提示する。
| 選択肢 | 効果 | |--------|------| | ✅ 全採用 | 提示した diff を全て切り出し対象に取る | | 🔢 項目選択 | 採用したい項目の番号を指定する | | ⏭️ スキップ | この SKILL.md の切り出しを保留する | | ✋ 中止 | スキル全体を中止する |
CEO 承認なしに本体ファイルを書き換えない。AskUserQuestion ツールで選択肢を明示提示してもよい。
ステップ 5 で承認された項目のみ反映する。手順は以下。
skills/<skill>/prompts/<name>.md を Write で新規作成(フェンス内のテキスト本体をそのまま配置)Edit で書き換え(フェンスブロックを「以下のプロンプトは skills/<skill>/prompts/<name>.md を参照」のような相対パス記述に置き換える).md の中身と元のフェンス内容を diff -q または cmp -s で whitespace 含めて厳密一致 することを確認bash tests/test_*.sh を全件走らせ、通過することを確認(特に test_*_skill.sh 系の構造テスト)書き換えは ファイル単位の commit で行う(後追いで diff を追跡できるように)。
書き換えた本体に対応するローカル配布版スナップショット(.claude/vibecorp-base/skills/)があれば同内容で同期する。
install.sh が生成するローカルスナップショット(.claude/.gitignore で除外)skills/<skill>/prompts/<name>.md 自体も含めて同期する(snapshot 内に prompts ディレクトリを作る).claude/rules/communication.md の 30 秒ルール(一覧性・状態絵文字で変化が一目で掴める)を満たすレポートを返す。
## /prompts-extract-all レポート
- ✅ 対象 SKILL.md 数: N
- ✅ 切り出し提案: M
- ✅ CEO 承認: A
- ✅ 切り出し完了: A
- ✅ 配布版同期: B
- ⚠️ スキップ: S
- 📐 行数閾値該当: P 件 / 用途軸該当: Q 件
- ✅ 挙動不変性検証: 文字列厳密一致 全件 PASS / テスト全件 PASS
状態絵文字の選び方:
以下は 絶対に切り出さない。
| 除外対象 | 理由 |
|---------|------|
| 短いプロンプト(5 行未満かつ用途軸非該当) | notification-prompt-extraction.md の閾値で除外 |
| 動的生成プロンプト(変数展開を多量に含む) | 実行時に値を埋め込む文面はテンプレ化が難しい |
| 文脈依存で意味が変わる短文 | 周辺コードと一体で意味を成すもの |
| 構造要素(章立て見出しの直下にあるサンプル) | embed が読み手の理解を助ける場合 |
| frontmatter 内のフェンスブロック | 構造要素、切り出し対象外 |
ステップ 2 の照合フェーズで除外検出を必ず実行し、ステップ 4 の提案で除外判定の根拠を明示する。
本スキルは以下の理由により .claude/rules/autonomous-restrictions.md の 不可領域 4(ガードレール: skills/**) に該当する。
skills/** 配下の SKILL.md を書き換える(スキル定義はエージェント行動制御の中核)そのため:
/vibecorp:diagnose → /vibecorp:autopilot → /vibecorp:ship-parallel)の自動実行対象外diagnose-active スタンプ中は diagnose-guard.sh のデフォルト deny で実行不可| エージェント | 専門領域 | 本スキルでの担当 |
|-------------|---------|----------------|
| cto | 技術・アーキテクチャ | プロンプトテンプレの切り出し提案(エージェント呼出は技術的判断の伝達手段) |
CTO は 管轄ファイルのみ 切り出し提案する。
本スキル固有の指針のみを定義する。切り出し基準そのものは .claude/rules/notification-prompt-extraction.md を Single Source of Truth として参照する。
📐 行数軸 + 用途軸の OR で判定する
🛑 diff 提案 → CEO 承認 → 書換の 2 段階を守る
🔍 挙動不変性検証(文字列厳密一致 + テスト全件通過)を必ず実行する
bash tests/test_*.sh 全件を走らせ通過させる📦 ローカル配布版スナップショットを同期する
.claude/vibecorp-base/skills/ 配下に対応ファイルがあれば同内容で同期するprompts/<name>.md も snapshot 内に同期する🛡️ 自律ループ対象外宣言を尊重する
本スキル固有の禁止のみを定義する。切り出し基準の禁止パターンは notification-prompt-extraction.md を参照する。
.claude/rules/notification-prompt-extraction.md.claude/rules/prompt-writing.md.claude/rules/communication.md.claude/rules/markdown.md.claude/rules/shell.md.claude/rules/autonomous-restrictions.md/notifications-extract-all/docs-rewrite-all / /prompts-rewrite-alldocumentation
.github/workflows/**/*.{yml,yaml} の --body 通知文と hooks/**/*.sh の長文 echo/printf/heredoc を .claude/rules/notification-prompt-extraction.md 基準で個別 .md ファイルに切り出す migration skill。「/notifications-extract-all」「通知文切り出し」「通知文 extract」「workflow 通知 migration」と言った時に使用。検出は grep で機械絞り込み、要否判定は LLM が閾値・命名規約と照合。diff 提案 → CEO 承認 → 書換の 2 段階で挙動を壊さず適用する。自動マージ禁止、自律ループ対象外。
development
`**/*.sh` / `**/*.js` / `**/*.ts` / `**/*.py` / `**/*.rb` / `**/*.go` / 設定ファイル等のコード内コメントを一括棚卸しし、 `.claude/rules/code-comments.md` と機械的に照合する。 diff 提案 → CEO 承認 → 書換の 2 段階で自動マージを禁じる。 生成コード・`node_modules`・`vendor`・`dist`・`build` 等は除外する。 「/vibecorp:comments-rewrite-all」「コメント全書き直し」「コード内コメント棚卸し」 と言った時に使用。
development
skills/**/SKILL.md・agents/*.md・.claude/rules/*.md を .claude/rules/prompt-writing.md 基準で一括書き直し提案するスキル。「/prompts-rewrite-all」「プロンプト書き直し」「スキル一括書き直し」「エージェント書き直し」と言った時に使用。claude-code-guide サブエージェントで Claude Code 公式仕様(docs.claude.com)を確認し、prompt-writing.md の指針 MUST / 禁止パターンと照合する。diff 提案 → CEO 承認 → 書き換えの 2 段階で挙動を壊さず適用する。自動マージ禁止。
documentation
`docs/**/*.md` + `README.md` + `CHANGELOG.md` を一括棚卸しし、 `.claude/rules/document-writing.md` と機械的に照合する。 領域別に C*O へ書き換えを委譲し、diff 提案 → CEO 承認 → 書換の 2 段階で自動マージを禁じる。`LICENSE` は除外する。 「/vibecorp:docs-rewrite-all」「ドキュメント全書き直し」「ドキュメント棚卸し」 と言った時に使用。