ワンクリックで
bizspec-refine
業務プロセスを BizSpec YAML(最小 unit)へ分解する。新規プロセスの分解、および既存プロセスへの unit 追加の両方に使う。
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
業務プロセスを BizSpec YAML(最小 unit)へ分解する。新規プロセスの分解、および既存プロセスへの unit 追加の両方に使う。
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
| name | bizspec-refine |
| description | 業務プロセスを BizSpec YAML(最小 unit)へ分解する。新規プロセスの分解、および既存プロセスへの unit 追加の両方に使う。 |
| argument-hint | ["プロセスの説明"] |
| disable-model-invocation | true |
ユーザーが与えた業務プロセスを、AIエージェントまたはスクリプトが迷わず実行できる最小単位(unit)へと分解し、BizSpec YAML として出力する。
既存プロセスへの unit 追加も同じスキルで行う。
まず対象プロセスのゴールを 1 文で定義する。
例:「Ready な PBI の一覧と SP を揃える」「本番環境へのデプロイが完了し動作確認済みになる」
このゴール定義が core 判定の基準になる。ゴールが曖昧な場合はユーザーに確認する。
次に対象プロセス全体の Input / Process / Output を特定する。
以下の分割停止条件を満たすまで再帰的に分割する。
止めてよい条件(どちらか一方):
続けるべきサイン:
安全装置(暴走防止):
link.up/down は実行順序を表す(データの依存関係ではない)。
link.up: この unit の前に実行される unitlink.down: この unit の後に実行される unitio.in/out で表現する| 条件 | executor.type |
|---|---|
| 入出力が定型的(API・正規表現・固定ルール) | script |
| 自然言語の解析・推論・状況判断が必要 | ai_agent |
| 判断がつかない、または承認・署名が必要 | manual |
ai_agent は script で代替できない場合にのみ選ぶ。必ず executor.reason に根拠を 1 行で書く。
基準: プロセスゴールの達成に直接必要か
| 判定 | core |
|---|---|
| この unit がなければプロセスゴールに到達できない | true |
| ゴール達成に直接関与しないことが明確(ログ・通知・レポート・ガバナンス記録等) | false |
| 迷う場合(中間成果物・ガバナンス・証跡等) | ユーザーに確認 |
迷ったときの問いかけ(ゴールを明示して問う):
「『〇〇』ですが、このステップがなければプロセスのゴール『{ゴール}』は達成できませんか?それともガバナンス・記録目的ですか?」
AIが独断で core を確定させてはいけない。
各フィールドへの書き分けを徹底する。同じ内容を複数フィールドに重複させない。
| フィールド | 責務 | ここには書かない |
|---|---|---|
aim | この unit が達成する目的を 1文で | 手順・制約・データ |
rule | 守るべき 制約・判断基準・ガイドライン | 作業手順・データ |
io.in | この unit が受け取る 入力データ(モノ) | アクション・制約 |
io.process | 入力 → 出力への 処理ステップ(IPO の P。手順・動詞句) | 制約・判断基準 |
io.out | この unit が渡す 出力データ(モノ) | アクション・制約 |
迷ったときの判別:
ruleio.processio.in / io.out複数の unit は --- で区切る。
unit: <動詞+目的語で簡潔に>
aim: <この unit が達成する目的>
phase: <このunitが属する工程フェーズ(例: spec / dev / test / release)>
rule:
- <制約・判断基準>
link:
up:
- <依存する前工程の unit 名>
down:
- <繋げる後工程の unit 名>
core: true | false | undetermined
io:
in:
- <入力データ>
process:
- <処理手順(動詞句)>
out:
- <出力データ>
executor:
type: script | ai_agent | manual
reason: <選んだ根拠(1行)>
status: draft | review | stable | deprecated
以下は省略可能だが、ユーザーとの会話やプロセス情報から 以下のヒントが得られたら必ず埋める。
これらが揃っていると bizspec viz(ヒートマップ・ステータス色分け・並列エッジ)と /bizspec-refactor(負荷分析・ボトルネック検出)が機能する。
# 月間コストが算出可能なとき → effort を埋める
effort:
duration: 0.5 # 1回あたりの所要時間(時間単位、フィボナッチ: 0/0.25/0.5/1/2/3/5/8/13/21)
frequency: 4 # 月間実行回数(1以上の整数)
# 自動化の現状と難易度が分かるとき → automation を埋める
automation:
difficulty: low | medium | high # 自動化の技術的難しさ
status: manual | partially-automated | automated # 現在の対応状況
# status: deprecated のときのみ
deprecated_reason: <廃止理由>
埋めるヒューリスティクス:
| ユーザー発言 / 観察 | 埋めるフィールド |
|---|---|
| 「30 分くらいかかる」「週 2 回やる」など時間・頻度に言及 | effort.duration / effort.frequency |
| 「今は手作業」「自動化したい」「半自動」など現状言及 | automation.status |
| 「スクリプト化は難しい」「API があるから簡単」など難易度言及 | automation.difficulty |
| 「まだドラフト」「廃止予定」などライフサイクル言及 | status の値を変更 |
埋めるかどうか不明なら省略してよい(effort / automation)。
YAML を直接手で書き換えるより、コマンドを使うほうが参照の更新漏れやタイポを防げる。 積極的に使うこと。
| コマンド | 使いどころ |
|---|---|
bizspec new <process> <unit> [--up ...] [--down ...] | 新規 unit のスケルトン生成(隣接 unit との初期リンクも指定可) |
bizspec rename <process> <old> <new> | unit 名を変更する(link.up/down 参照を一括更新) |
bizspec rm <process> <unit> [--force] | unit を削除する(link 参照を一括削除。フロー分断検知あり) |
bizspec renumber <process> | 大幅な構造変更後にファイルを実行順で揃えたいとき(ユーザーに提案してから実行) |
bizspec validate <process> | 保存後の整合性チェック |
bizspec list <process> | 現在の unit 一覧を把握するとき |
注意: bizspec new --up/--down は新規 unit 側にしかリンクを書かない。
隣接する既存 unit の link.down / link.up は手動で更新する必要がある。
確定した unit ごとに bizspec/<プロセス名>/<unit名>.yaml として保存する。
<プロセス名> は分解対象のプロセスをケバブケースで表す(例: issue-refinement)。ユーザーが指定した場合はそれを使う。<unit名> は unit フィールドの値をそのままファイル名にする(変換・ケバブ化しない。例: Ready判定.yaml)core: undetermined が残ったまま保存しない(必ずユーザー確認を経てから保存)<unit名>_改.yaml)」保存後の validate は以下の順で試し、成功した方法を使う。
bizspec validate <プロセス名> — CLI がインストール済みの場合python3 -m bizspec.cli validate <プロセス名> — BizSpec リポジトリ内で作業している場合core が true / false のいずれかであることexecutor.type が script / ai_agent / manual のいずれかであることlink.up/down の参照先ファイルがすべて存在することlink.up/down の双方向整合性(A.down に B があれば B.up に A があること)core: undetermined の unit についてユーザーに確認するrule の充実)
YAML 提示後、unit ごとに以下を聞く(まとめて聞いてもよい):
rule に追加する。既存の一般論より具体的な内容が出たら差し替えを提案する。bizspec/ に保存するbizspec list <プロセス名> で現在の unit 一覧を把握するbizspec new でスケルトンを生成し、内容を埋める。隣接 unit の link.up/down は手動で更新するbizspec rename <process> <old> <new>(link 参照を自動更新)bizspec rm <process> <unit>(フロー分断が検知された場合はユーザーに確認してから --force)| エラー種別 | 対応 |
|---|---|
link の双方向不整合(A.down に B があるが B.up に A がない) | どちらのリンクが誤りかを判断できないため、ユーザーに選択肢を提示して確認する(例:「①B.up に A を追加する ②A.down から B を削除する、どちらが正しいですか?」)。確認後に修正して再検証 |
link 参照先が存在しない(タイポ等) | 候補ファイル名と照合して一意に特定できれば自動修正、できなければユーザーに確認 |
必須フィールド欠落・core / executor.type の値不正 | 原因を示してユーザーに確認(値の選択が必要なため) |
| その他 | 原因を示してユーザーに確認 |