GVGanivra

Coding agents & DevTools

See what each coding task really costs.

One requested change can trigger repeated generation, compilation, and repair. Track the whole run to find where retries and growing context consume your margin.

Where costs grow

A failed build can start another paid cycle.

Generate codeCompile & testRepairRetry

Each repair can generate more output tokens. Repeatedly adding previous attempts and tool results can increase input usage too. A successful model response does not prove the build passed or the requested task was completed.

Track

Keep one task together

Use one execution ID per coding task and a unique event and step ID for each actual call. Link steps with parent IDs. Send model, token usage, latency, status, and customer context.

Use the same event ID when retrying delivery of telemetry; use a new event ID when the agent makes another paid model call.

Inspect

Find repeated expensive steps

Use Cost breakdowns to compare customers, workflows, models, and prompt versions. Open Execution explorer to inspect the sequence and cost of individual steps.

Record attempt numbers and build outcomes as bounded metadata. Rising input tokens can suggest growing context; they do not by themselves prove context saturation or a runaway loop.

Connect revenue

Understand cost-to-serve

Attach your tenant ID and configured customer plan key, or report revenue for a paid result. See whether a fixed-price coding task or subscription customer earns enough to cover tracked AI costs.

Compiler or test infrastructure cost is not discovered automatically. Supply actual tool costs when available; otherwise treat the result as AI cost, not total delivery cost.

Act

Reduce exposure to billing spikes

Use the evidence to choose retry limits, trim unnecessary context, or test a cheaper model for repair steps. Implement those controls in your agent, then compare cost alongside build success and output quality.

Ganivra surfaces the telemetry you send. It does not automatically stop loops, enforce spending caps, or guarantee savings.

Illustrative example

Equal task revenue. Very different margins.

TaskModel callsRevenueTracked AI costContribution
Completed with one repair2$1.00$0.20+$0.80
Repeated repair attempts12$1.00$1.40−$0.40

Invented values demonstrate the calculation, not provider pricing or expected savings. The second task costs more than it earns before other business costs. Inspect the recorded steps to identify what to change.

Instrumentation example

Report a repair call, not its source code.

Send this shape to POST /v1/events with your Ganivra workspace key. Replace the illustrative IDs, counts, latency, and outcome with actual values from your application. The referenced compile step must be sent separately with the same execution ID.

{
  "event_id": "evt_coding_task42_repair2",
  "execution_id": "exec_coding_task42",
  "step_id": "step_repair_2",
  "parent_step_id": "step_compile_1",
  "provider": "openai",
  "model": "gpt-5",
  "operation": "responses.create",
  "input_tokens": 16000,
  "output_tokens": 2400,
  "total_tokens": 18400,
  "latency_ms": 2800,
  "status": "success",
  "environment": "production",
  "attributes": {
    "application": "coding-assistant",
    "customer_id": "tenant_example",
    "workflow": "implement_change",
    "feature": "autonomous_repair",
    "prompt_id": "repair",
    "prompt_version": "v2",
    "attempt": 2,
    "build_succeeded": false
  }
}

Read the example

One call can succeed while the build still fails.

Model resultstatus: "success"

The model returned a response. Its tokens and cost belong to this step.

Application resultbuild_succeeded: false

Your app reports that the build failed. Keep this separate from whether the model responded.

Retry contextattempt: 2

Label the attempt so the recorded step has context. Each new model call gets its own event ID.

Include the compiler or test tool

Send the MCP invocation as its own step with the same execution ID. Add the server, tool, latency, and actual cost when known; link the repair call with parent_step_id.

See SDK & API instructions →

Start with one workflow

Trace the next coding task from first call to final attempt.

Confirm the cost of one run. Add customer pricing. Then use real evidence to choose your next improvement.

Open integration guide →