nextv2.0.0
Security and project

What's new in 2.0

What to do before you upgrade from 1.4, and what Kraft 2.0 brings, from a new interface and code-host review to a repo connect that reads more of the repo and safer sharing.

Kraft 1.0 shipped the engine: chains that take your coding agent from spec to merge request and stop only where a decision is yours. 2.0 is built around those decisions. Most of what changed since 1.4 is what you see and touch.

What needs action when you upgrade from 1.4

Most 1.4 installs need no more than the update itself. These changes need something from you, and Upgrade from 1.4 has the steps and every other change:

  • Update with your package manager, not 1.4's kraft admin update. 1.4's drops the [vector] extra on a uv install. See Update from 1.4.
  • Add the names you use to allowed_hosts, on a network bind. 2.0 answers a browser only at a name you listed. See Network access.
  • Make a tunnel or reverse proxy send a loopback Host, on a loopback bind. 2.0 answers 403 to any other name. See Put a proxy in front of Kraft.
  • Give a repo entry with test_command: "" a real test command, or enabled: false. "" now means the repo has no tests. See Items and repos.
  • Read the changed --json fields, exit codes and one-line action output in your scripts. See Scripts, JSON output and the API.

To keep a running agent, pause its item before the restart: see A restart ends running agents.

A new interface, built around what needs you

Open Kraft at the same address and you get the redesigned interface; the old one is gone.

  • The board keeps 1.4's four groups (needs you, running, not started and done), its one button per row and its side panel.
  • Select several items in any group and pause, cancel or archive them at once. 1.4 could only archive, and only from Done.
  • An item's page draws its chain as a graph, where 1.4 showed a row of node names, and each node opens its own view of its steps and tasks. Click a node, step or task to see its log, documents and settings in place.
  • ⌘K (Ctrl+K) search and the phone layout come along, redesigned to match.

The Web UI reference describes every screen. If you can't find a page you used in 1.4, see Where the pages moved.

Review the way you would on a code host

The review threads that kraft item comment and the VS Code extension have had since 1.2 now have a page of their own in the web interface.

  • Each item has a Review page with the diff, the comment threads and the gate decision.
  • Comment on one line or on a range, even one that runs from a removed line to its replacement, as on GitLab. The range stays shaded, and the agent gets its lines quoted.
  • Suggest a change in place, and send a whole round of comments at once with Finish review.

See Reviewing a change.

Shape the work from its page

  • Read the spec and plan an item was filed with before you start it.
  • Set the item's and its nodes' model, effort and limits on the item's page, beside the values its chain would use. The CLI could already; now the page shows what you are overriding.
  • Change a running item's chain; the change applies from its next node.
  • Start asks first when the item has draft changes you haven't applied.
  • When a cap or budget stops an item, its page names the limit that stopped it (the item's own, its policy's or its chain's), says where it can be raised, and lets you raise it and retry from the same place. 1.4 offered that only for the item's own dollar cap. See Raise a cap on a stopped item.
  • Chains, the library, harnesses, repos and policy are edited as a draft that you review, then publish. See Templates.

One config directory, named for what it holds

$KRAFT_HOME/config/ holds every YAML Kraft runs from. Only two of its files are templates, the library and the chains, and those are what the Templates screens hold; repos, harnesses, policy and auto-intake are Settings. Each Settings screen edits one file.

The first start renames a 1.4 templates/ to config/, and where a chain is named, the word is chain. The old names and places are still read, and kraft admin doctor lists the ones you still have. Nothing to do for a default home: Config directory and files says what moved.

Repo connect reads more of the repo

kraft repo connect now bases the setup and test commands it proposes on much more of the repo: its own task runner (just, make, Taskfile, mise and others), its toolchain's files (40 detectors across 17 language ecosystems and build systems) and its CI, where 1.4 looked at a justfile and a few manifests and lockfiles. It explains each choice, and rehearses the commands with --verify. See Connect a repo in the CLI reference and How connect proposes commands.

Safer to share

  • No other site can frame the board, and an image from another site in a document or review thread loads only when you click it, so a worker can't send data out through your browser.
  • Off loopback, Kraft answers a browser only at a name you listed, on every request and on the live-update socket. See Remote access.
  • The sandbox that has run tasks under Docker and Podman since 1.2 carries over, and so do the Docker Sandbox Kits added in 1.4. See Build a worker Kit.

Why 2.0 so soon after 1.0

Because Kraft keeps its stability promise. Making the interface and the API consistent changed some --json fields and exit codes, and the database moves to a schema 1.4 can't open. A minor version would have hidden that, so this is a major one.

Apart from what Upgrade from 1.4 lists, your chains, library and repos carry over as they are. If you ran a 1.5.0 release candidate, those were 2.0's pre-releases: see Upgrading from a 1.5.0 release candidate.

Copyright © 2026