A closer look at Warrant.
Warrant brings coding agents into the software delivery process through a command-line harness. It assembles repository context, applies project rules, accounts for model spend, and records how a result was reached. Two focused workflows serve different engineering needs: reviewing one change and migrating a defined set of call sites. The project currently lives in a private repository, without a public website.
The challenge
A useful code change still needs a reason to trust it. Large repositories do not fit into one prompt, CI jobs can stop before a migration finishes, and a model’s completion message does not explain which inputs or checks produced its verdict. Teams need a way to bound the work, distinguish incomplete execution from a code finding, and leave a reviewable record for the person responsible for the change.
The product experience
A review starts with pinned Git revisions and repository-specific rules. Warrant builds a structural index, gathers nearby symbols and callers, and places lint annotations alongside the full diff within a bounded prompt. The resulting findings feed an explicit CI exit-code vocabulary. A sweep first inventories the specified call sites: parser-proven transformations take a mechanical AST path, unresolved sites can receive a bounded agent invocation, and dynamic or unsuitable cases are held for human attention. Accepted items land as individual commits, while saved state supports continuation across jobs.
- A CI-facing review workflow with bounded context, project rules, findings, and explicit exit codes.
- A resumable Python migration workflow with mechanical rewrites, guarded agent patches, and visible human holds.
- Reports and derivation records make the inputs, invocation conduct, and spend available for inspection.
Product & engineering
The Python CLI separates indexing, context assembly, review, sweep execution, budget control, state, and record verification. A content-addressed index pins the repository snapshot; write-ahead manifests record migration intent and outcomes. Per-item Git worktrees isolate checkout changes, while file-scope and parse checks constrain accepted patches. Reports separate findings, operational failures, incomplete runs, and held work. The verify command re-executes deterministic checks against the pinned checkout and inspects the recorded model contribution without calling the model again. Agent permissions are enforced by the configured agent CLI; worktrees are not a security sandbox.
The decisions that shape the work
Choose the right execution path
Keep parser-proven rewrites mechanical, reserve model calls for unresolved sites, and hold dynamic cases for a person.
Make stopping recoverable
Pin the work list and persist intent and outcomes so a deadline becomes a resumable state rather than a reason to repeat landed work.
Keep the basis of a verdict
Record input digests, tool versions, prompts, responses, invocation conduct, and cost beside the result reviewers need to assess.
Working within the constraints
- Repository context must fit a declared token budget without silently dropping the pinned rules or diff.
- Migration work must survive a job deadline and resume without applying an already-landed item again.
- The migration implementation targets a defined Python call-site transformation; Java support is limited to indexing and call-graph work.
- Recorded model output is evidence to inspect, not a promise that an AI answer can be regenerated exactly.
Have a similar challenge?
For teams introducing agents into engineering workflows, Warrant illustrates the systems around the model: scoped inputs, controlled changes, recoverable execution, and evidence a maintainer can inspect. We can help build those developer tools and integrations around the rules of your own codebase.
Talk about your project




