AI で git のコミットからリリースノートを生成する

エージェントがコミットの一覧を、お客様向けのリリースノートに変えます。内容は分類され、破壊的変更は最初に示されます。

  • ファイル
  • 予算の上限

実際の実行を見る

2026年10月7日 の実際の実行を再生しています。モデル: openai/gpt-6-luna。

成功run_c697350f053152ff39bf441f8d691425$0.03 のうち $0.002963
  1. 待機中予算 $0.03 を確保
  2. MicroVMmicroVM ready
  3. MicroVMworker started · shell off · web off
  4. ファイルread commits.txt
  5. MicroVMmicroVM destroyed
  6. 成功モデル呼び出し 2 回、トークン 2,265記録された出力(英語)

    Breaking changes

    • Update /v1/runs requests to use max_cost_micros instead of limit; the old field is no longer supported.

    New

    • Schedule email delivery for saved reports.
    • Use dark mode on the dashboard.
    • View invoices on a dedicated page linked from Settings.

    Improved

    • Large report CSV exports stream to avoid timing out.
    • Dashboard summary queries are cached for 60 seconds.

    Fixed

    • Users stay signed in after resetting their password.
    • An error is shown when an Excel row cannot be parsed.
    • Opening an empty report on mobile no longer crashes.
  7. ワーカーを破棄$0.002963 を請求、$0.027037 を解放
モデル $0.000363 · Web $0.00 · コンピュート $0.0026

自分で実行する

リクエスト全体が入力された状態で、サンプルをプレイグラウンドで開きます。実行はご自身のアカウントで、表示された予算の範囲内で、同じ読み取り専用のサンプルシステムに対して行われます。

このサンプルの予算: $0.03

仕組み

git log の出力を貼り付けると、開発者向けではなくお客様向けのノートが得られます。内部的な雑務は省かれ、破壊的変更は対処方法とともに先頭に置かれます。コミットは読み取り専用のファイルなので、リポジトリへのアクセスは不要です。

エージェントにできること、できないこと

権限はリクエストの一部です。ここに挙げていないものは、実行では利用できません。

設定許可
接続なし
Webオフ
シェルオフ
ファイルcommits.txt(読み取り専用)
ゼロデータ保持オフ: 記録は 30 日間保存されます
予算$0.03、厳格な上限
タイムアウト60 秒

認証情報がマシンに入ることはありません。ブローカーが各呼び出しに認証情報を付与し、上記のメソッドだけを通します。

コード

サンプルが送信する正確なリクエストです。EPHEMERAL_API_KEY には、組織のメンバーキーを設定してください。

curl -X POST $EPHEMERAL_URL/v1/runs \
  -H "Authorization: Bearer $EPHEMERAL_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d @request.json

リクエストに含まれるファイル

インラインで渡すため、事前にアップロードする必要はありません。エージェントには、それぞれが読み取り専用のファイルとして見えます。

commits.txt
commits.txt
a1f3c9e feat(reports): add scheduled email delivery for saved reports
b72d0aa fix(export): stream CSV exports so large reports no longer time out
c9e4d11 chore(deps): bump eslint to 9.12
d03a6be feat(api)!: rename /v1/runs field "limit" to "max_cost_micros" (old name removed)
e5b1f72 fix(auth): keep users signed in after a password reset
f8c0a34 docs: clarify webhook signature verification
0a9d7be refactor(db): move report queries into their own module
1b2c3d4 feat(ui): dark mode for the dashboard
2c3d4e5 fix(import): show an error when an Excel row cannot be parsed
3d4e5f6 test: add integration tests for billing proration
4e5f607 fix(mobile): prevent crash when opening an empty report
5f60718 perf(dashboard): cache the summary query for 60 seconds
6071829 ci: speed up the build with a dependency cache
718293a feat(billing): show invoices on a dedicated page linked from Settings
リクエスト本文の全体 request.json

同じ本文を、ファイルをインラインにした形で示します。

request.json
{
  "prompt": "commits.txt lists the commits of the next release (hash, then a conventional-commit message; '!' marks a breaking change). Write release notes for customers in Markdown, at most 200 words. First a 'Breaking changes' section with what a customer must change (omit it if none), then 'New', 'Improved' and 'Fixed'. Leave out chores, tests, CI, docs-only and refactor commits. Write in plain language, one line per change, no hashes. Use only what the messages say and never invent details.",
  "files": [
    {
      "path": "commits.txt",
      "content": "a1f3c9e feat(reports): add scheduled email delivery for saved reports\nb72d0aa fix(export): stream CSV exports so large reports no longer time out\nc9e4d11 chore(deps): bump eslint to 9.12\nd03a6be feat(api)!: rename /v1/runs field \"limit\" to \"max_cost_micros\" (old name removed)\ne5b1f72 fix(auth): keep users signed in after a password reset\nf8c0a34 docs: clarify webhook signature verification\n0a9d7be refactor(db): move report queries into their own module\n1b2c3d4 feat(ui): dark mode for the dashboard\n2c3d4e5 fix(import): show an error when an Excel row cannot be parsed\n3d4e5f6 test: add integration tests for billing proration\n4e5f607 fix(mobile): prevent crash when opening an empty report\n5f60718 perf(dashboard): cache the summary query for 60 seconds\n6071829 ci: speed up the build with a dependency cache\n718293a feat(billing): show invoices on a dedicated page linked from Settings\n"
    }
  ],
  "shell": false,
  "timeout_seconds": 60,
  "max_cost_micros": 30000
}

さらに読む

関連するサンプル

esc

「」に一致する項目はありません。