cost-model について
cost-modelは、プロジェクト計画のコスト見積もりを監査可能にするエージェントスキルです。統一形式、見積もり方法、妥当性チェックに加え、AIプロジェクトのコスト承認ゲートを定めます。
主な機能
- 014行のコスト見積もり形式
- 02LLMと人件費の見積もり
- 03インフラ費用と納期の見積もり
- 04費用比率とよくある誤りの確認
- 05月間コスト予測ゲートのテンプレート
活用シーン
- 01計画書やアーキテクチャ文書への費用記載
- 02エージェントパイプラインの利用料見積もり
- 03月間LLM支出予測のレビュー
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ avelikiy/ great_cto --skill cost-modelインストール後、Claude Code で/cost-modelを入力して読み込まれたか確認します。
詳細
コストモデル — コストに関する主張を裏付け可能にする
great_cto はボードにコストの数値を報告します。これらの数値は監査可能でなければなりません。誤った「7,638×」という主張が信頼を損ねたためです(docs/blog/cost-dashboard-rebuild.md を参照)。このスキルでは、その書式を定義します。
4 行のコストセクション
すべての PLAN-.md および ARCH-.md のコストセクションでは、次のテンプレートに厳密に従います。
## Cost estimate
**LLM**: $<low>–<high> (<N> calls × $<per-call avg>)
**Human equiv**: $<low>–<high> (<hours> × $<rate>/h)
**Infra delta**: $<low>–<high>/month
**Time to ship**: <hours> agent-time, <hours> wall-clock
> Methodology: <one-sentence rationale for each range>
なぜこの書式に厳密に従うのですか?
ボードの getCostHistory() パーサーは、行頭の「LLM」と「Human」のラベルを基準に解析します。行の途中にある参照は、$240 の罠が再発しないよう無視されます。テンプレートに従ってください。
各行の見積もり方法
LLM コスト
パイプライン内の各エージェントについて、次のように見積もります。
- プロンプトトークン数 = (システムプロンプトのサイズ)+(エージェントが受け取るコンテキスト)
- 補完トークン数 = (そのエージェントのタイプで一般的な出力)
Sonnet 4 の早見表(入力 $3/M、出力 $15/M):
| エージェント | 一般的なプロンプト | 一般的な出力 | 呼び出しあたりのコスト |
|---|---|---|---|
| architect | 14k | 1.5k | 約 $0.06 |
| pm | 6k | 0.6k | 約 $0.03 |
| senior-dev | 8k | 0.8k | 約 $0.04 |
| qa-engineer | 11k | 0.5k | 約 $0.04 |
| reviewer(平均) | 8-12k | 0.6k | 約 $0.04 |
| security-officer | 12k | 1k | 約 $0.05 |
| devops | 9k | 0.8k | 約 $0.04 |
Haiku($0.80/M / $4/M)の場合は約 4 で割ります。Opus 4($15/M / $75/M)の場合は約 5 倍します。
実際に実行されるパイプラインの各段階で合計します(件数を確認するには、archetypes.ts の gatesFor() と reviewersFor() を使用します)。
Human equiv
エージェントを使わずに同じ作業を行う場合の人件費です。「シニアエンジニアを雇った場合、このタスクにはどれくらいの時間がかかり、費用はいくらか」という考え方です。
- シニアエンジニア:時給 $120-180(米国/EU の中堅市場)
- スタッフエンジニア/専門家:時給 $200-300
- ドメインエキスパート(セキュリティ、コンプライアンス):時給 $250-400
時間は控えめに見積もります。LLM が 15 分で行う「小さな機能」でも、人間なら 2-4 時間かかることがあります(単に入力するだけではないためです)。
Infra delta
新たに発生する分だけを計上します。機能によって Redis インスタンスが追加されるなら、Redis を計上します。S3 ストレージが月 10MB 増える程度なら誤差の範囲なので、記載しません。
Time to ship
どちらも役立つため、2 つの数値を示します。
- エージェント時間:LLM 呼び出しの実時間(通常 5-30 分)
- 経過時間:人間による承認段階を含む実際の所要時間(通常は数時間から数日)
記載前の妥当性チェック
計画にこのセクションを追加する前に、次を確認してください。
ratio = human_equiv / llm_cost
ratio > 1000 の場合は、何かが間違っています。よくある誤り:
| 誤り | 検出方法 | 修正方法 |
|---|---|---|
| 単位の誤り($ と ¢) | LLM コストが $ ではなく /M トークンで終わっている | 換算します:トークン数 / 1M × 単価 |
| 節約額を支出額として計上 | 「削減できる人件費」であり、「人件費」になっていない | 省略による価値ではなく、作業を実施するコストを使います |
| 行の途中にあるラベルの混入 | 計画内で「$X LLM | $Y human」が 1 行に記載されている |
| 予測と実績の混在 | LLM の予測値が total_llm に加算されている | 必要に応じて予測用のセクションを分けます |
コストゲート
AI アーキタイプ(mlops、ai-system、agent-product)では、アーキテクトの予測後にパイプラインが gate:cost を開きます。シニア開発者が作業を始める前に、CTO が予測される月次支出を承認する必要があります。
GATE テンプレートを使います。
## Gate:cost forecast
| Production volume | Monthly LLM cost |
|---|---|
| 1K req/day | $X |
| 10K req/day | $Y |
| 100K req/day | $Z |
Recommended monthly cap: $<cap>
Triggers above cap: <what alerts fire, who gets paged>
アンチパターン
❌ 切りのいい数字で取り繕う。 「LLM $0.50 | 人間 $7,500」は不自然に見えます。現実的な範囲を使います:「$0.50–1.20 | $225–360」。
❌ 単一の推定値。 常に範囲を示します。単一の数値では不確実性が隠れてしまいます。
❌ 方法論の行がない。 根拠を示さず数字だけを並べても、検証できません。
❌ インフラ費用を曖昧にする。 「ホスティング費用が多少かかる」では金額がわかりません。$ で金額を示すか、「infra: no change」と記載します。
例 — 良い例
## Cost estimate
**LLM**: $0.75–1.85 (3 tasks × $0.25–0.62 per Sonnet call)
**Human equiv**: $225–300 (1.5–2h × $150/h, mid-market senior)
**Infra delta**: $0/month (uses existing Express + Postgres)
**Time to ship**: ~15min agent-time, ~3h wall-clock (1 human gate)
> Methodology: tasks sized by line-count estimate; per-call cost from
> historical Sonnet 4 averages on this archetype's plans.
比率 = 300/1.85 = 162×。妥当で、根拠を示せます。