change-publish について
change-publish は、承認済みの変更決定記録(ChDR)をプロジェクトメモリに登録するエージェントスキルです。根拠を検証し、起動時のインデックスを更新して下書きを公開済みにします。PRは作成しません。
主な機能
- 01決定の根拠を検証
- 02ChDRメモリ記録の作成
- 03起動時インデックスの再生成
- 04下書きを公開済みに更新
- 05重複する課題キーをスキップ
活用シーン
- 01change-clarify後のChDR公開
- 02新たに承認されたChDRの追加
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ tikalk/ adlc-team-skills --skill change-publishインストール後、Claude Code で/change-publishを入力して読み込まれたか確認します。
同梱ファイルscripts/bash/setup-change-publish.shscripts/powershell/setup-change-publish.ps1
詳細
change-publish
このスキルの機能
承認済み ChDR を、プロジェクトのメモリレイヤー {REPO_ROOT}/docs/adlc/memory/chdr/ にコンパイルします。
- 承認済み ChDR を検証します(Decision の主張に対するステータスと出典情報)
- 昇格した各 ChDR を
docs/adlc/memory/chdr/ChDR-{NNN}.mdに OKF 形式のフロントマター付きで書き込みます {REPO_ROOT}/docs/adlc/memory/chdr/chdr.mdを再生成します。これは、team-bootがセッション開始時のコンテキストに挿入するブート向けインデックスです(adr/adr.mdやpdr/pdr.mdと同じ規約で、クラスディレクトリ内に配置します)- ソースのドラフトに
### Status: **Published**と記載します
team-ai-directives に対する PR を作成する /team-levelup とは異なり、change-publish が書き込むのはプロジェクトローカルのメモリです。ChDR はこのリポジトリの進化を記述するもので、チーム全体のシグナルゲートを通過しません。PR は作成されません。ユーザーは通常のフローでコミットします。
このスキルは、/change-clarify によって ChDR が承認されるまで実行されません。
使用するタイミング
/change-clarifyの後:承認済み ChDR をメモリに昇格させる必要がある場合/change-initの再実行後:メモリインデックスに追加する新たな承認済み ChDR がある場合
使用しないタイミング
- 承認済み ChDR がない場合:まず
/change-clarifyを実行します - ChDR の検出:
/change-initを使用します - ChDR のレビュー:
/change-clarifyを使用します
プロセス
ユーザー入力
$ARGUMENTS
例:
"ChDR-001 ChDR-003"— 指定した ChDR のみを昇格します- 入力なし:承認済みの ChDR をすべて昇格します
役割とコンテキスト
あなたはメモリパブリッシャーとして、承認済み ChDR をローカルのドラフトから永続的なプロジェクトメモリへ移します。役割は次のとおりです。
- 出典情報をもう一度検証します(毒性を防ぐサーキットブレーカーです。出典のない Decision を昇格させると、
team-bootを通じて今後のすべてのセッションを汚染します) team-bootがインデックス化できるフロントマター付きで、昇格した記録を書き込みますchdr.mdインデックスを再生成し、次のセッション開始時に新たな決定が認識されるようにします
概要
- 環境設定(フェーズ 0):パスを解決し、承認済み ChDR を一覧表示します
- 前提条件の確認(フェーズ 1):承認済み ChDR が存在することを確認します
- 出典情報の検証(フェーズ 2):すべての Decision の主張に SHA/URL があることを再確認します
- 重複の確認(フェーズ 3):同じ issue key を持つ ChDR がすでにメモリ内にある場合はスキップします
- メモリ記録の生成(フェーズ 4):
docs/adlc/memory/chdr/ChDR-{NNN}.mdに書き込みます - インデックスの再生成(フェーズ 5):
docs/adlc/memory/chdr/chdr.md(ブート向け)を再構築します - ドラフトのステータス更新(フェーズ 6):昇格したドラフトに
Publishedと記載します - 概要(フェーズ 7):結果を報告します
実行手順
フェーズ 0:環境設定
次を実行します。
scripts/bash/setup-change-publish.sh
JSON を解析して REPO_ROOT、CHDR_DRAFTS_DIR、MEMORY_DIR、MEMORY_INDEX、ACCEPTED_CHDRS を取得します。
セットアップスクリプトが利用できない場合、または失敗した場合は、手動で解決します。
REPO_ROOT—.adlc/まで上位のディレクトリをたどるか、git rev-parse --show-toplevelを実行します。CHDR_DRAFTS_DIR—REPO_ROOT/.adlc/drafts/chdrMEMORY_DIR—REPO_ROOT/docs/adlc/memory/chdrMEMORY_INDEX—REPO_ROOT/docs/adlc/memory/chdr/chdr.md(docs/adlc/memory/adr/adr.mdやpdr/pdr.mdと同様に、クラスディレクトリ内に配置します)ACCEPTED_CHDRS—grep -l '^### Status: \*\*Accepted\*\*' CHDR_DRAFTS_DIR/ChDR-*.md
フェーズ 1:前提条件の確認
ACCEPTED_CHDRS が空の場合:
No accepted ChDRs found.
Run /change-clarify to accept ChDRs first.
フェーズ 2:出典情報の検証
承認済みの各 ChDR について、### Decision 内の重要な文すべてに SHA(\b[0-9a-f]{7,40}\b)または URL(https?://)が記載されていることを再確認します。出典情報の検証に失敗した ChDR はスキップします。昇格できません(汚染のリスクがあります)。
## Provenance Validation
**Passing**: N | **Skipped**: M
### Skipped ChDRs
| ChDR | Reason |
|---|---|
| ChDR-XXX | Decision claim lacks SHA/URL provenance |
スキップされた ChDR はドラフト内で Accepted のまま残り、ユーザーが修正できます。
フェーズ 3:重複の確認
検証に通った各 ChDR について、同じ ### Issue Links キーを持つメモリ記録がすでに存在するか確認します。存在する場合はスキップするか、マージを提案します。重複は作成しないでください。
フェーズ 4:メモリ記録の生成
承認済みの各 ChDR について、{MEMORY_DIR}/ChDR-{NNN}.md に書き込みます。
---
type: ChDR
title: {title from heading}
description: {descriptor from draft}
resource: ./docs/adlc/memory/chdr/ChDR-{NNN}.md
tags: [chdr]
generated:
by: agent:change-publish
at: {today}T00:00:00Z
id: ChDR-{NNN}
created: {date from draft}
verified:
- by: agent:change-publish
at: {today}T00:00:00Z
status: stable
stale_after: 365d
sources:
- id: {sha}
resource: git:{sha}
title: {commit subject}
- id: {issue-key}
resource: {issue-url}
title: {issue title}
---
# {Title}
{Content from draft — Context, Decision, Consequences, Evidence verbatim}
## Source
Promoted from: .adlc/drafts/chdr/ChDR-{NNN}.md
フェーズ 5:インデックスの再生成(起動時に参照)
ここが team-boot との統合ポイントです。 {MEMORY_DIR} 内のすべての ChDR-*.md ファイルを列挙し、行頭が | ChDR- の Markdown テーブルを作成して、{MEMORY_INDEX}({REPO_ROOT}/docs/adlc/memory/chdr/chdr.md)を再生成します(team-boot が使用する awk フィルターに一致させます)。
# Change Decision Records (Memory)
## ChDR Index
| ID | Title | Status | Date | Issues | Commits | Descriptor |
|----|-------|--------|------|--------|---------|------------|
| ChDR-001 | Why payments retries are capped at 3 | stable | 2026-08-16 | PROJ-123 | abc1234 | Consult before changing retry config |
**Stats**: N entries | Last Updated: YYYY-MM-DD
team-boot の boot.sh/boot.ps1 はこのファイルを読み込み、PDR/ADR のインデックスとともに、セッション開始時のコンテキストに ## ChDR Index セクションと CHDR_COUNT を出力します。
フェーズ 6:ドラフトのステータス更新
公開した ChDR ごとに、ドラフトファイルのステータスを ### Status: **Published** に更新し、次を追加します。
### Promotion
- **Date**: [YYYY-MM-DD]
- **Memory path**: docs/adlc/memory/chdr/ChDR-{NNN}.md
フェーズ 7:要約
## Change-Publish Summary
**ChDRs Promoted**: N
**ChDRs Skipped (provenance)**: M
**ChDRs Skipped (duplicate)**: K
### Artifacts
| Type | Count |
|---|---|
| Memory records (docs/adlc/memory/chdr/) | N |
| Boot index (docs/adlc/memory/chdr/chdr.md) | 1 (regenerated) |
### Next Steps
The next session start (`team-boot`) will inject the ChDR index into context.
Commit `docs/adlc/memory/chdr/` (records + `chdr.md`) via your normal flow.
主なルール
公開前に出典を確認する
- 出典のない Decision を公開すると、後続のすべてのセッションに悪影響を及ぼします(team-boot がそれを注入します)。
- 確認時だけでなく、公開時にも出典を再検証してください。
チーム全体ではなく、プロジェクト内に限定する
- ChDR の公開先は
docs/adlc/memory/であり、team-ai-directives ではありません。 - PR は作成されません。ユーザーが通常のフローでコミットします。
- ChDR は設計上、team-levelup の「チーム全体への適用可能性」シグナルゲートを通過しません。
インデックス形式は team-boot と一致させる
- 行頭は必ず
| ChDR-にしてください(boot.sh/boot.ps1内の awk/正規表現フィルターが使用します)。 - ファイルの配置先は
docs/adlc/memory/chdr/chdr.mdにしてください(adr/adr.mdやpdr/pdr.mdと同様、クラスディレクトリ内)。二重読み込み時のフォールバック先は、docs/adlc/memory/chdr.md(以前のルートレベルの配置)と.adlc/memory/chdr.md(レガシーレイアウト)です。
ワークフローのガイダンスと遷移
/change-publish の後
/change-init → /change-clarify → /change-publish
↓
[team-boot] → injects docs/adlc/memory/chdr/chdr.md index at next session start
↓
[Agent consults ChDRs on demand when touching affected code]
新しい履歴を抽出するために、定期的に /change-init を再実行してください。新たに受け入れられた ChDR はメモリに追加され、インデックスが再生成されます。
次のステップ
メモリディレクトリをコミットします。次のセッションでは、team-boot を通じて ChDR インデックスが自動的に参照されます。
検証
- 出典のある受け入れ済みのすべての ChDR が
docs/adlc/memory/chdr/ChDR-*.mdに公開されていること。 docs/adlc/memory/chdr/chdr.mdのインデックスが再生成され、行頭が| ChDR-で始まっていること。- 公開したドラフトに
### Status: **Published**が設定されていること。 - 出典のない ChDR が公開されていないこと。
- メモリ内に重複した issue キーがないこと。
コンテキスト
$ARGUMENTS