levelup-specify について
levelup-specifyは、完了した作業セッションから再利用可能な指針を抽出するエージェントスキルです。評価ケース付きの提案CDRを作成し、実装の証拠と関連付けます。
主な機能
- 01現在のセッションからパターンを抽出
- 02指針CDRと対応する評価CDRを作成
- 03記録を実装の証拠に関連付け
- 04提案CDRと索引を書き出し
- 05既存CDRを補強
活用シーン
- 01実装後に再利用可能な手法を記録
- 02ブランチ終了前にチーム指針を整理
- 03後のレビュー向けにセッション証拠を記録
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ tikalk/ adlc-team-skills --skill levelup-specifyインストール後、Claude Code で/levelup-specifyを入力して読み込まれたか確認します。
同梱ファイルscripts/bash/setup-levelup-specify.shscripts/powershell/setup-levelup-specify.ps1
詳細
levelup-specify
このスキルの機能
作業完了後、現在のセッションから**コンテキスト指示レコード(CDR)**を抽出します。
完了した作業から得た知見を記録するための主要なコマンドです。
- 現在のセッションを直接確認します(エージェントは自分が行った作業を記憶しています)
- 再利用可能なパターン(ルール、ペルソナ、例、スキル、憲章の修正)を特定します
- 各指示 CDR について、セッションから合格/不合格のケースを含む対応する eval CDR も抽出します
- CDR を具体的な実装の証拠(ファイル、コミット、テスト)に関連付けます
- CDR を
{REPO_ROOT}/.adlc/drafts/cdr/CDR-{NNN}.mdにステータス Proposed で書き込みます {REPO_ROOT}/.adlc/drafts/cdr/cdr.mdのインデックスを自動生成します
/levelup-init との主な違い:
/levelup-init= 既存のコードベースからパターンを発見します(ブラウンフィールド)/levelup-specify(このスキル)= 現在のセッションからパターンを抽出します(グリーンフィールド)
このスキルは、セッションレベルの知見、つまり直前に完了した作業から生まれた再利用可能な知識に焦点を当てます。
使用するタイミング
注:通常の意思決定の記録は、team-boot の継続的な記録メカニズムで処理され、軽量なドラフトが
.adlc/drafts/に直接書き込まれます。このスキルは、ガイド付きのトレードオフ分析、複数の選択肢の比較、または文書化の前の構造化された意思決定の支援を求める場合に行う、対話形式の詳細な検討を目的としています。
- 作業完了後:セッションから再利用可能なパターンを記録します
- チームの AI 指示への貢献:セッションでの作業を再利用可能な指示に変換します
- ブランチを閉じる前:チーム全体で活用できる知見を抽出します
使用しないタイミング
- ブラウンフィールドプロジェクト:既存のコードをスキャンするには
/levelup-initを使用します - Git 履歴やイシューに関連付けられた変更の調査:コミットとイシュートラッカーから過去の意思決定を復元するには
/change-initを使用します - 作業完了前:実装を完了した後に実行します
- 通常のチーム AI 指示の検証:ヘルスチェックには
/team-repairを使用します
プロセス
ユーザー入力
$ARGUMENTS
空でない場合は、先に進む前にユーザー入力を必ず考慮してください。
ユーザー入力の例:
"Focus on error handling patterns"— エラー処理に関する CDR を抽出します"Document the testing approach"— テストのパターンに焦点を当てます"CDR-001"— セッションの証拠を追加して、既存の CDR を充実させます"--focus skills"— スキルタイプの CDR のみを提案します- 空の入力:セッションの記録からすべてのパターンを抽出します
フラグ
--focus AREA:特定のコンテキストタイプに焦点を当てますrules:ルール CDR のみを提案しますpersonas:ペルソナ CDR のみを提案しますexamples:例 CDR のみを提案しますconstitution:憲章の修正 CDR のみを提案しますskills:スキル CDR のみを提案します
--cdr-id ID:新しい CDR を作成する代わりに、セッションの証拠を追加して既存の CDR を充実させます
役割とコンテキスト
あなたはコンテキスト抽出者として、現在のセッションから再利用可能なパターンを特定します。役割には次の作業が含まれます。
- 現在のセッションを読み取ります(エージェントは何が起きたかを直接確認します)
- 他のプロジェクトにも役立つパターンを特定します
- ルール、ペルソナ、例、憲章の修正、またはスキルの CDR を作成します
- 各指示 CDR について、セッションから合格/不合格のケースを含む対応する eval CDR を抽出します
- CDR を実装の証拠(コード、コミット、テスト)に関連付けます
ブラウンフィールドとグリーンフィールドの比較
| シナリオ | コマンド | 入力 | 出力 |
|---|---|---|---|
| ブラウンフィールド(既存のコード) | /levelup-init | コードベースのスキャン | 発見された CDR |
| グリーンフィールド(セッション完了) | /levelup-specify | 現在のセッション | 提案された CDR |
概要
- 環境設定(フェーズ 0):パスを解決します
- セッションのレビュー(フェーズ 1):現在のセッションをレビューし、パターンとエビデンスを確認します
- セッショントレースの作成(フェーズ 1.5):監査証跡を
.adlc/drafts/trace.mdに書き込みます - 既存の CDR の読み込み(フェーズ 2):保留中の CDR を読み込み、情報を補強します
- パターンの抽出(フェーズ 3):コンテキストタイプごとに再利用可能なパターンを特定し、対応する評価用 CDR を抽出します
- CDR の作成/補強(フェーズ 4):セッションのエビデンスを含む CDR ファイルを書き込みます
- インデックスの再生成(フェーズ 5):
cdr.mdを更新します - 概要(フェーズ 6):抽出結果を提示します
実行手順
フェーズ 0:環境設定
スキルのベースディレクトリからセットアップスクリプトを実行します。
scripts/bash/setup-levelup-specify.sh
JSON 出力を解析して、パスと次の CDR 番号を取得します。
セットアップスクリプトがない場合、または失敗した場合は、パスを手動で解決します。
REPO_ROOT— cwd から上位へたどり、.adlc/を含むディレクトリを探すか、git rev-parse --show-toplevelを使うか、pwdを使います。TEAM_AI_DIRECTIVES— まずTEAM_AI_DIRECTIVES環境変数を確認し、次にREPO_ROOT/.adlc/init-options.jsonのteam_ai_directivesフィールドを確認し、それでも見つからない場合はREPO_ROOT/team-ai-directivesを使用します。CDR_DRAFTS_DIR—REPO_ROOT/.adlc/drafts/cdrNEXT_CDR—CDR_DRAFTS_DIR/CDR-*.mdを一覧表示し、最大の番号を見つけて 1 を加算し、3 桁でゼロ埋めします(例:001)。
TEAM_AI_DIRECTIVES が設定されていない場合:
Team AI directives repository not configured.
Run: team-setup
Or set: export TEAM_AI_DIRECTIVES=/path/to/team-ai-directives
フェーズ 1:セッションのレビュー
現在のセッションをレビューし、何が起きたかを特定します。エージェントがセッションを直接観察します。
- ユーザーは何を依頼しましたか?
- エージェントは何をしましたか?(ファイルの変更、重要な判断、アプローチ)
- 結果はどうなりましたか?
- どのファイルが作成/変更されましたか?(
git diff --stat、git log --oneline -10) - 再利用可能なパターンは何でしたか?
また、実装のエビデンスも収集します。
# Files changed
git diff --stat 2>/dev/null
# Recent commits
git log --oneline -10 2>/dev/null
# New/untracked files
git status --short 2>/dev/null
フェーズ 1.5:セッショントレースの作成
監査証跡として、簡潔なトレースを {REPO_ROOT}/.adlc/drafts/trace.md に書き込みます。
# Session Trace
Generated: [YYYY-MM-DD]
Branch: [branch-name or "N/A"]
## Summary
[2-3 sentences: what was asked, what was done, outcome]
## Key Decisions
1. [Decision — rationale]
## Files Changed
- `[path]`: [what changed]
フェーズ 2:既存の CDR の読み込み
{REPO_ROOT}/.adlc/drafts/cdr/CDR-*.md を読み込みます。
- ユーザーが
--cdr-idを指定した場合:その特定の CDR を読み込み、情報を補強します - それ以外の場合:重複を避けるため、保留中の CDR(ステータスが Discovered/Proposed)をすべて読み込みます
フェーズ 3:パターンの抽出
各コンテキストタイプについて、セッションとエビデンスから再利用可能なパターンを探します。
ルール:コーディング規約、エラー処理、テストパターン、セキュリティ慣行
ペルソナ:実装中に現れた役割(例:「API 利用者」、「DevOps オペレーター」)
例:再利用する価値のあるコードパターン
スキル:エージェントスキルとしてパッケージ化できる機能(特に再利用可能なワークフロー)
憲章の修正:セッション中に見つかった、複数の領域にまたがる原則
スキルタイプの CDR:はい、/levelup-specify でスキルタイプの CDR を提案できます。実際の SKILL.md は、後で /levelup-publish --skill <name> によって作成します。
評価用 CDR:抽出した各指示 CDR(ルール、ペルソナ、例、憲章)について、セッションから二値の合否ケースを含む対応する評価用 CDRも抽出します。
- 合格ケース:エージェントが(暗黙の)パターンに正しく従った場面
- 不合格ケース:エージェントがパターンに違反した場面(多くの場合、指示の作成につながったきっかけ)
- 敵対的ケース:指示で対処すべき、セッションのコンテキストに含まれるエッジケース
各ケースは自己完結型であり、シナリオ、入力コンテキスト、エージェントの出力、合格/不合格の理由を含みます。ケースは外部のトレースファイルに依存せず、エビデンスがケース内に記載されています。
評価用 CDR では ### Context Type: Eval を使用し、対応する指示 CDR を ### Paired Directive CDR: CDR-NNN で参照します。
フェーズ 4:CDR の作成/補強
抽出した各パターンについて、CDR を作成するか、既存の CDR を補強します。
## CDR-NNN: [Title]
### Status: **Proposed**
### Date: [YYYY-MM-DD]
### Source: Session evidence via /levelup-specify
### Target Module: `context_modules/rules/[domain]/[file].md` or `skills/[skill-name]/`
### Context Type: Rule | Persona | Example | Skill | Constitution Amendment
### Descriptor: One-line "when to use" summary.
### Context
[What reusable pattern was identified]
### Evidence
**Session**: [brief session description]
**Branch**: [branch-name]
**Implementation Evidence**:
- [file/path]: [description]
- `{commit-sha}`: [commit message]
### Decision
[What should be contributed to team-ai-directives]
評価用 CDR の形式(指示 CDR と対になるもの):
## CDR-NNN: [Eval Title]
### Status: **Proposed**
### Date: [YYYY-MM-DD]
### Source: Session evidence via /levelup-specify
### Target Module: `evals/{directive-id}/goldset.md`
### Context Type: Eval
### Paired Directive CDR: CDR-NNN
### Descriptor: One-line "what directive this eval tests"
### Context
[What behavior is being tested and why]
### Pass Cases
1. **Source**: session "[brief description]"
**Scenario**: [what was asked]
**Input context**: [what context was loaded]
**Agent output**: [what the agent did]
**Why it passes**: [why this follows the directive]
### Fail Cases
1. **Source**: session "[brief description]"
**Scenario**: [what was asked]
**Input context**: [what context was loaded]
**Agent output**: [what the agent did — the violation]
**Why it fails**: [why this violates the directive]
**Correction**: [what should have been done]
### Adversarial Cases
1. **Scenario**: [edge case]
**Expected**: [correct behavior]
### Evidence
**Session**: [brief session description]
**Paired Directive**: CDR-NNN
既存の CDR を補強する場合は、### Evidence セクションに追記し、補強日時を更新します。
フェーズ 5:インデックスの再生成
すべての CDR-*.md ファイルを一覧表示し、Markdown テーブルを作成して、{REPO_ROOT}/.adlc/drafts/cdr/cdr.md を再生成します。各 CDR から、次の単一行のフィールドを抽出します。
ID— ファイル名から取得します(例:CDR-001)Target Module—### Target Module:行から取得しますType—### Context Type:行から取得しますStatus—### Status:行から取得しますCreated—### Date:行から取得しますDescriptor—### Descriptor:行から取得します
形式:
# Context Directive Records (Drafts)
## CDR Index
| ID | Target Module | Type | Status | Created | Verified | Age | Descriptor |
|----|---------------|------|--------|---------|----------|-----|------------|
| CDR-001 | context_modules/rules/... | Rule | Proposed | 2026-07-21 | - | - | One-line summary |
**Stats**: N entries | Last Updated: YYYY-MM-DD
フェーズ 6:要約
## LevelUp Specify Summary
**Session**: [brief description]
**Date**: [date]
**CDRs Created**: N
**CDRs Enriched**: N
### CDRs by Type
| Type | Count |
|---|---|
| Rules | N |
| Examples | N |
| Skills | N |
| Personas | N |
| Constitution Amendments | N |
| Evals | N |
### Handover
**Next**: Run `/levelup-clarify` to review the N proposed CDRs.
CDRs are in `Proposed` status and cannot be published until accepted.
Handoff context:
```json
{
"source": "session",
"command": "specify",
"cdrs_created": ["CDR-001", "CDR-002"],
"cdrs_enriched": [],
"next": "clarify"
}
### Next Steps
1. Run `/levelup-clarify` to review proposed CDRs
2. For low-evidence CDRs, add implementation evidence first
3. Run `/levelup-publish` for accepted CDRs
主なルール
証拠を示し、捏造しない
- すべての CDR で、具体的なセッション証拠へのリンクを示す必要があります
- 具体的なファイルパス、コミット SHA、またはテストケースを引用します
- 証拠を捏造しないでください
重複を避ける
- 新しい CDR を作成する前に、既存の CDR を確認します
- 類似するパターンがある場合は、重複させずに既存の内容を充実させます
スキル CDR はスキルではなく記録です
/levelup-specifyはContext Type: Skillの CDR を作成します/levelup-specifyがSKILL.mdファイルを直接作成することはありません- スキル成果物は
/levelup-publish --skill <name>でビルドします
シグナルゲートは後で適用されます
- セッション証拠から、積極的に CDR を作成します
- シグナルゲート(チーム全体での価値、価値の高さ、独自性、証拠)は
/levelup-publishで適用されます
ワークフローのガイダンスと移行
/levelup-specify の後
必須:提案された CDR をレビューするために /levelup-clarify を実行します。
CDR のライフサイクルを完了する
[Agent session — work completed]
↓
/levelup-specify ← reviews session, writes trace, extracts CDRs
↓
[Extract patterns + paired evals] → Write CDRs to .adlc/drafts/cdr/CDR-{NNN}.md (Proposed)
↓
[Run /levelup-clarify] → Review and accept/reject CDRs (evals gate runs existing goldensets)
↓
[Run /levelup-publish] → Compile accepted CDRs into team-ai-directives PR
↓
[Run /team-repair] → Re-index and validate team AI directives after merge
次のステップ
/levelup-specify の完了後、提案された CDR をレビューするために /levelup-clarify を実行します。
検証
- CDR が
{REPO_ROOT}/.adlc/drafts/cdr/CDR-{NNN}.mdにステータス Proposed で書き込まれていること。 - 監査トレースが
{REPO_ROOT}/.adlc/drafts/trace.mdに書き込まれていること。 - 自動生成された
cdr.mdインデックスが{REPO_ROOT}/.adlc/drafts/cdr/に存在すること。 - 各 CDR にセッションの実装証拠が含まれていること。
- 評価用 CDR が対応するディレクティブ CDR とペアになっており、自己完結した合格/不合格のケースを含んでいること。
- 該当する場合、既存の CDR が重複作成されず、内容を充実させていること。
設定
TEAM_AI_DIRECTIVES— チーム AI ディレクティブへのパス(.adlc/init-options.jsonの設定を上書きします)。.adlc/init-options.json—team_ai_directivesフィールドを含むプロジェクトレベルの設定ファイル。- デフォルトのフォールバック:プロジェクトルートからの相対パス
team-ai-directives/。
12 要素との整合性
要素 IX(トレーサビリティ)— セッション証拠から再利用可能なパターンを抽出し、チーム全体への貢献につなげます。
コンテキスト
$ARGUMENTS