Communitygithub.com

thanhtung2693/specgate

AIコーディングエージェントのための管理されたハンドオフと証拠検証を行います。

specgate とは?

SpecGateは、AIコーディングエージェント(Claude Code、Codex、Cursorなど)のための、管理されたハンドオフと証拠検証を提供するスキルです。その主な目的は、AIエージェントが自律的に作業を進める際に、承認済みの作業範囲外に逸脱したり、未承認の変更を加えたりするのを防ぐことです。SpecGateは、作業を「プロジェクトセットアップ」「作業準備」「作業納品」の3つのフェーズに分割し、エージェントが一度に1つのフェーズのみを実行するよう規制します。また、変更のステータスや次のアクター(人間またはエージェント)をCLIコマンドで確認し、適切なタイミングで人間にハンドオフする仕組みを備えています。このスキルは、specgate CLIツールを介してインストール、診断、操作を実行し、SQLiteやPostgreSQLなどのデータストアには直接アクセスしません。これにより、エンタープライズ環境でのAIエージェントの信頼性とガバナンスを向上させます。

対応✓Claude Code✓Codex CLI✓Cursor
npx skills add thanhtung2693/specgate

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

SpecGateの使用

ブートストラップのみのインストール

ルート専用のskills.shインストール後にspecgate-project-setupが利用できない場合に使用します。command -v specgate(PowerShell: Get-Command specgate)で確認してください。存在しない場合、skills.shは指示のみを提供することを説明します。macOS、Linux、またはWSL2では、これを表示し、明示的な承認を待ちます:

curl -fsSL https://raw.githubusercontent.com/thanhtung2693/specgate/main/scripts/install-cli.sh | sh

ネイティブWindows:https://github.com/thanhtung2693/specgate/releases/latestを使用します。PowerShellを考案しないでください。その後、specgate --versionを記録します。

ソースがthanhtung2693/specgate、パスがplugins/skills/specgate/SKILL.mdのロックのみを信頼します。プロジェクトのskills-lock.jsonまたはグローバルの~/.agents/.skill-lock.jsonにあります。対応するコマンドを表示し、承認を待ちます:

npx skills remove specgate -y
npx skills remove specgate -g -y

skills.shファイルまたはロックを直接編集または削除しないでください。IDEとスコープを尋ね、プレビュー、インストール、検証を行います:

specgate plugins install --agent <codex|claude|cursor> [--project-local] --dry-run --no-input
specgate plugins install --agent <codex|claude|cursor> [--project-local] --no-input
specgate plugins doctor --agent <codex|claude|cursor> [--project-local] --json

ネイティブプラグインの所有権については、そこで停止してください。別途明示的な承認なしに、アンインストールまたは無効化しないでください。

IDEの再起動を要求し、初期化の前に停止します。specgate-project-setupの後に続行します。

完了条件:1つのCLI管理プラグイン、正常なdoctor、明示的な再起動。

ルート:1フェーズ

ライフサイクル作業では、行動する前に正確に1つのフェーズを選択します:

  • specgate-project-setup — リポジトリのSpecGateを初期化、バインド、インストール、リフレッシュ、または診断します。
  • specgate-work-preparation — リクエストまたはソース仕様を承認済みのSpecGate作業に変換します。
  • specgate-work-delivery — 承認済みのSpecGate作業を実装、再開、レビュー、またはリワークします。

作業参照を含む読み取り専用の作業またはライフサイクルステータスの質問については、信頼できる読み取りから始めます:

specgate change status "$WORK_REF" --json

その他の概念またはトラブルシューティングの質問については、最小限の関連CLI読み取りを使用します。フェーズを強制したり、レコードを変更したりしないでください。

モード依存の書き込みまたはハンドオフの前に、specgate doctor --jsonを実行します。data.modeを読み取り、Docker、URL、ブラウザの可用性からモードを推測しないでください。推測する代わりに、失敗したdoctorの結果を報告します。

運用契約

  • specgate CLIが唯一のプロダクト状態の読み取りおよび書き込みインターフェースです。SpecGateのSQLite、Postgres、オブジェクトストレージ、デプロイメントボリューム、または.specgate/localを直接検査または編集しないでください。リポジトリソースの読み取りは引き続き許可されます。
  • ドラフト、説明、要約、およびリポジトリの読み取りは、明示的なCLIコマンドで永続化されるまで一時的なままです。
  • 元のオーサリングフレームワークが永続的なソースドキュメント(パス、名前、ライフサイクル、Gitポリシー)を所有します。SpecGateはそれらをその場でスナップショットします。それらを移動、コピー、名前変更、削除、コミット、または無視ルールを変更しません。
  • 準備パスは人間の承認ではありません。承認、受入、および変更要求は人間の判断です。人間がその正確な決定を明示的に選択して承認した後にのみ決定コマンドを実行し、決して推測しないでください。
  • 承認されたコンテキストパックは、チャット履歴、トラッカーの散文、および古いリポジトリドキュメントよりも優先されます。そのスコープを黙って拡大しないでください。
  • 正確な識別子とバージョンに従います。artifact coverage <artifact-id>は正確なバージョンの証拠です。機能名でバージョンを統合しないでください。
  • change status.data.next_actorおよびnext_commandに従います。次のアクターが人間の場合は、停止し、そのコマンドを逐語的にハンドオフします。
  • ローカルモードにはUI URLはなく、specgate openを呼び出しません。フルモードでは、specgate open ... --print --jsonが返すURLのみを使用し、URLを構築しないでください。

コマンド構文については、メモリからフラグを再構築する代わりに、specgate <command> --helpを実行します。

関連スキル