mcpField
G
grace-plan

grace-plan

github.com/osovv開発25640 回インストール5 週間前に更新
リポジトリ

grace-plan について

grace-planは、承認済みのアクティブなGraceChangeSpecを、草案または明示的に承認された実行可能なGraceChangePlanに変換するGRACEワークフロー用スキルです。計画を支援し、ソースコードの実装や既存の承認済み計画・プロジェクト状態の変更は行いません。

主な機能

  1. 01承認済み変更仕様の検証
  2. 02アクティブベースラインのlint事前確認
  3. 03XMLテンプレートから計画を作成
  4. 04スコープ・アサーション・タスクの定義
  5. 05タスク依存関係の循環確認
  6. 06承認済み計画とプロジェクト状態の保護

活用シーン

  1. 01承認済みGRACE変更の計画
  2. 02検証可能なベースラインと目標条件の指定
  3. 03実装前のタスク依存関係の定義
  4. 04古い状態や並列安全性の警告確認

MCP 対応

このスキルはGRACEワークフローで使うGraceChangePlan成果物を作成します。GRACE lintを実行し、承認後のステータス確認を推奨できます。

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/osovv/grace-marketplace --skill grace-plan

インストール後、Claude Code で/grace-planを入力して読み込まれたか確認します。

同梱ファイルagents/openai.yamlreferences/change-plan-template.xml

詳細

承認済みのアクティブな `GraceChangeSpec` から実行可能な `GraceChangePlan` を作成します。ソースコードは実装しません。 - 必須:`.grace/changes/active/C-CHANGE-ID/spec.xml` - 任意:同じ階層の `design-context.xml` - 現在の状態:`.grace/context`、グラフおよび検証インデックスと、それらからルーティングされるドキュメント - `.grace/changes/active/C-CHANGE-ID/spec.xml` が存在し、`GraceChangeSpec` を含み、ステータスが `approved` で、対応する直接の `C-*` ラッパーが正確に1つあることを必須とします。 - `draft`、`rejected`、`cancelled`、`applied`、`superseded` の仕様は受け付けません。 - 任意の `design-context.xml` は説明用として扱い、競合する場合は `spec.xml` を優先します。 - 計画を立てる前に `grace lint --path PROJECT --assertions current` を実行し、古い、または無効なアクティブベースラインがあれば提示します。

<approved_plan_immutability>

  • plan.xml がすでに存在し、ステータスが approved の場合は、書き込みを行う前に停止します。
  • BaselineAssertions、TargetAssertions、DurableScope、ObservedWriteScope、またはタスクをその場で更新しないでください。
  • 新しい C-* バンドルを作成し、明示的な置換参照を付けて古いバンドルを superseded にします。 </approved_plan_immutability>

<must_do> references/change-plan-template.xml から plan.xml を作成し、ユーザーが完成した計画を明示的に承認しない限り、ステータスは draft にします。対応する C-* ラッパー、有意義な意図、機械検証可能で空ではないベースラインおよびターゲットアサーション、明示的な永続スコープと観測対象スコープ、一意で循環のない T-NNN タスクを必須とします。書き込みのないスコープには、明示的な <None /> マーカーを使用します。「none」のような文章表現は無効です。各タスクには、Title を1つ、先行タスクを0個以上、正規のカンマ区切り T-NNN 値で列挙する DependsOn 要素を1つ(例:<DependsOn>T-001, T-002</DependsOn>)、空ではない受け入れ基準、空ではない検証コマンドを設定します。依存関係は有向非巡回グラフを構成する必要があります。真の先行タスクのみを列挙し、順序を表すために独立したタスクを一連の依存関係にしないでください。古い状態に関する警告と共存に関する警告を提示し、未対応のスコープ glob 構文は推測せず拒否します。 </must_do>

<command_phase_rules>

  • current はアクティブベースラインの事前確認であり、観測対象の書き込み開始前にのみ有効です。
  • baseline は選択された編集前のゲート、target は選択された編集後のエビデンス、final は grace-execute が管理する最終適用/アーカイブのゲートです。
  • MustPassCommand には、テスト、型チェック、ビルド、フォーマット、パッケージチェックなど、プロジェクト単体のエビデンスを指定します。grace lint、grace status、その他の GRACE ライフサイクルコマンドは絶対に含めないでください。
  • --assertions current を TargetAssertions や、書き込み後に実行するタスク検証に含めないでください。代わりに、選択した target/final lint を外部で使用します。
  • MustPassCommand は、基準ホスト上で宣言された budgetSeconds 内に完了する必要があります(指定がない場合はグローバルの --command-timeout が適用されます)。ゲートの途中でコマンドを強制終了させるデフォルト値を引き継がず、実測した予算を宣言してください。
  • 実行時間の大半がコンテナ、データベース、ブラウザー、エミュレーターなどの基盤起動に費やされる全体スイートコマンドは、ゲートではなく受け入れテスト層に含めます。全体スイートコマンドと、それが再実行するファイル単位のコマンドを両方指定しないでください。 </command_phase_rules>
- アクティブベースラインの事前確認:`grace lint --path PROJECT --assertions current` - 並列実行の安全性:`grace lint --path PROJECT --parallel-preflight` - 承認後に `grace status --path PROJECT --json` を推奨します。

<hard_rules> コードを実装しない、計画を黙って承認しない、承認済みの計画を上書きしない、計画中に現在のグラフ/検証アーティファクトを変更しないでください。セマンティックアンカーは属性ではなく、正規の XML タグです。 </hard_rules>

コメント