AI で git のコミットからリリースノートを生成する
エージェントがコミットの一覧を、お客様向けのリリースノートに変えます。内容は分類され、破壊的変更は最初に示されます。
- ファイル
- 予算の上限
実際の実行を見る
2026年10月7日 の実際の実行を再生しています。モデル: openai/gpt-6-luna。
成功run_c697350f053152ff39bf441f8d691425$0.03 のうち $0.002963
- 待機中予算 $0.03 を確保
- MicroVMmicroVM ready
- MicroVMworker started · shell off · web off
- ファイル
read commits.txt - MicroVMmicroVM destroyed
- 成功モデル呼び出し 2 回、トークン 2,265記録された出力(英語)
Breaking changes
- Update
/v1/runsrequests to usemax_cost_microsinstead oflimit; 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.
- Update
- ワーカーを破棄$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
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
同じ本文を、ファイルをインラインにした形で示します。
{
"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
}