Genera notas de versión a partir de commits de git con IA

Un agente convierte una lista de commits en notas de versión para clientes, agrupadas y con los cambios incompatibles destacados primero.

  • Archivos
  • Límite de presupuesto

Mira una ejecución real

Una ejecución real del 7 oct 2026, reproducida. Modelo: openai/gpt-6-luna.

Completadarun_c697350f053152ff39bf441f8d691425$0.002963 de $0.03
  1. En colapresupuesto de $0.03 reservado
  2. MicroVMmicroVM ready
  3. MicroVMworker started · shell off · web off
  4. Archivoread commits.txt
  5. MicroVMmicroVM destroyed
  6. Completada2 llamadas al modelo, 2,265 tokensResultado grabado (en inglés)

    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. Worker destruido$0.002963 cobrados, $0.027037 liberados
Modelo $0.000363 · Web $0.00 · Cómputo $0.0026

Ejecútalo tú mismo

Abre el ejemplo en el playground con la solicitud completa ya rellenada. Se ejecuta en tu propia cuenta, dentro del presupuesto indicado, contra los mismos sistemas de ejemplo de solo lectura.

Presupuesto de este ejemplo: $0.03

Cómo funciona

Pega la salida de git log y obtén notas escritas para clientes en lugar de desarrolladores: se omiten las tareas internas y los cambios incompatibles van primero, con lo que hay que hacer al respecto. Los commits son un archivo de solo lectura, así que no hace falta acceso al repositorio.

Lo que el agente puede y no puede hacer

Los permisos forman parte de la solicitud. Todo lo que no figura aquí no está disponible para la ejecución.

AjustePermitido
ConexionesNinguna
WebDesactivado
ShellDesactivado
Archivoscommits.txt (solo lectura)
Retención cero de datosDesactivada: el registro se conserva 30 días
Presupuesto$0.03, límite estricto
Tiempo límite60 segundos

Las credenciales nunca entran en la máquina: un broker las añade a cada llamada y aplica los métodos indicados arriba.

El código

Esta es la solicitud exacta que envía el ejemplo. Define EPHEMERAL_API_KEY con una clave de miembro de tu organización.

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

Archivos de la solicitud

Se pasan en línea, así que no hay que subir nada antes. El agente ve cada uno como un archivo de solo lectura.

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
Cuerpo completo de la solicitud request.json

El mismo cuerpo, con los archivos en línea.

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
}

Más información

Ejemplos relacionados

esc

Nada coincide con “”.