Ivan app iconOpen source · npm

Give Ivan a sentence. Get a pull request.

Ivan is an open-source AI engineering teammate. It breaks your request into PR-sized tasks, writes the code, reviews its own work with a principal-engineer persona, opens the PR — and handles the review comments too.

Runs locally with your keys · Built on Claude Code · MIT-licensed

ivan · zsh
$ npm i -g @ariso-ai/ivan
$ ivan "Add rate limiting to the public API"
🧩 Broke the request into 3 PR-sized tasks
🌿 Branched & implemented with Claude Code
🏛️ Architect reviewed the design & diff — 2 rounds
Opened PR #428 — ready for review
The loop

From one sentence to a reviewed PR.

1

Break it down

Ivan splits your request into PR-sized tasks, each scoped to land cleanly on its own.

2

Branch & implement

It branches and writes the code on top of Claude Code, with conventional commits as it goes.

3

Open the PR

A detailed description and context-specific review notes — handed off ready for a human.

4

Address the comments

Ivan reads inline review feedback and failing CI, pushes fixes, and replies with the commit.

Expert mode

An AI that argues with itself — so you don’t have to.

Ivan splits into two minds. An Implementer writes the code; a separate Architect — a principal-engineer persona on Claude Opus — critiques the design, then the diff, for as many rounds as the work demands.

  • The Architect is read-only — it inspects the code to ground its critique but never edits it.
  • Rounds are dynamic: simple changes finish in one, hard ones get as many as they need.
  • Every turn ends in a verdict — APPROVE, APPROVE_WITH_NITS, or REVISE.
🔨
Implementer
writes the code
🏛️
Architect
reviews · read-only
plan → critique → revise
Design roundsImplementationReview rounds✅ PR
Institutional memory

It learns your team.

Ivan doesn’t start every task from zero. It distills your merged PRs and coding sessions into durable lessons, then injects them into every future task — so the more you ship, the smarter it gets.

Learns from your PRs

Distills review comments from merged pull requests into reusable engineering lessons and repo conventions.

Mines your sessions

Reads your local Claude Code transcripts to capture how your team actually reasons about quality.

Committable & local

Lessons live as JSONL in your repo. Semantic retrieval runs locally — queries never hit the network.

Everything Ivan does

A teammate, not an autocomplete.

Ships PRs from a sentence

Plan, branch, implement, and open the pull request — from a single line of intent.

Reviews its own work

Expert mode pairs an implementer with a principal-engineer architect before any line reaches your PR.

Institutional memory

Your team’s hard-won lessons get injected into every task. The more you ship, the smarter it gets.

Handles review comments

`ivan address` resolves inline feedback and failing checks, replying with the fixing commit.

Trigger from an issue

Comment `@ivan-agent /build` on a GitHub issue and Ivan turns it into a PR, hands-off.

Runs on your terms

Local, with your credentials. Anthropic API or a Claude Max subscription via the CLI driver.

Hand Ivan your backlog.

Open source, free to run, and shipping PRs in minutes.