v2.0.0next
Web UI

Templates and Settings

The Templates screens for chains and the library, each Settings screen, and a repo's fields.

Templates and Settings edit Kraft's configuration files as screens. This page describes the Chains and Library screens and each Settings screen.

Templates

Templates holds the two files an item is copied from, the chains and the library, as screens. Each one edits a draft: your changes take effect when you click Review & publish, which shows what changed and checks it first. YAML shows the file itself.

Open items, every one not done or cancelled, keep the chain they were filed with. The screens count them as open, not running: the board's Running group is only the ones an agent or a check is working on now.

Chains

Chains draws a chain as a graph, picked from the menu beside Chains.

  • Click a node to see and change its settings in the inspector; double-click it to open its own view of steps and tasks.
  • The pencil opens the chain's own settings.
  • Click the name at the top of the inspector to rename it in place: Enter renames it, Esc keeps it. Renaming the chain itself shows as old → new beside Chains until you publish, and Review & publish lists it as a change: publishing moves its file to the new name, and new items name the new id.
  • A task's Config tab leaves out the agent settings a command or merge-request task never uses, unless its on-failure recovery runs under them, and a yes/no setting is a switch.
  • Duplicate copies the chain under a new name.

In Chains and Library, ref, target and inputs list their allowed values as you type, each with a line on what it does; Chain file keys has the lists. So do steering, and a policy's grants and allowed_harnesses. A value that is not on the list is marked where you typed it and is not saved.

An agent task's fallback is edited as its list of entries, a harness and an agent profile picked for each. An entry's model and effort are set in YAML.

See Write your own chain.

Library

Library lists the components chains are built from, under Nodes, Steps, Tasks and Steering, each with how many chains use it.

Settings

Settings holds the screens that set up Kraft itself: the repos it works on, the agent CLIs it drives, its limits, and how you reach it. Repos, Harnesses, Policy and Auto-intake edit a draft the same way as Templates.

ScreenThe file it edits
Reposrepos.yaml
Harnessesharnesses.yaml
Policypolicy.yaml
Auto-intakeintake.yaml
Notificationsnotify.yaml for the webhook. This browser is kept in the browser, not in a file.
Accessaccess.yaml
Appearancetheme.yaml
AboutNone.

Repos

Repos lists the connected repos with each one's chain, steering, test command and state. Select a repo to change its fields, as below.

  • Connect repo adds one. Given a repo already connected, it offers Update instead, which saves only what the repo's entry left undecided, as kraft repo connect does.
  • A repo with no commit yet cannot connect: Check again reads it once you have committed.

A repo's fields

In a selected repo's fields:

  • No setup needed, beside its setup command, says that a fresh checkout needs nothing installed (setup_command: "").
  • No tests, beside its test command, says the repo has no tests (test_command: ""): its items pass verify without running any, and the list shows no tests (passes verify). Untick No tests and the test command is no longer set, which stops each item at verify. Kraft refuses that save while the repo is enabled and has no test scopes: disable the repo, or set test scopes, in the same change.

See repos.yaml.

Harnesses

Harnesses lists the agent CLIs Kraft can drive and whether each is available, and the agent profiles tasks pick a model by. + Profile adds one. See Switch a task to another harness.

Policy

Policy has three sections:

  • Limits: time, token and dollar caps by scope: the work item, nodes, steps and tasks, plus the daily dollar cap.
  • Loops: fix-loop defaults, findings and stuck-item handling.
  • Housekeeping: concurrency, relaunches, archive and the forge timeout.

See Caps and budgets.

Auto-intake

Auto-intake sets whether Kraft picks up ready issues from beads by itself, and its schedules (Add schedule), both in intake.yaml. How many items run at once is Policy › Housekeeping. See Schedule or webhook work.

Notifications

Notifications sets where Kraft tells you it has stopped and waits for you: a Webhook, and This browser. Send a test checks each one. See Get notified when an item needs you.

Access

Access sets who can reach the board: This machine only (127.0.0.1, no password) or Local network (0.0.0.0, password required). It also holds the port, the allowed hosts and the password. A change takes effect on restart. See Remote access.

Appearance

Appearance sets how the web UI looks and a few defaults. It is saved in theme.yaml.

  • Light, Dark or System; how much color; the surface and accent colors.
  • Further down, the board (Open items in: Peek, the side panel, or Full page), the review diff's layout and syntax highlighting.
  • The Default editor that Open in editor uses: the editors found on this machine, or Not set, which uses KRAFT_EDITOR, else the system's default app.

About

About opens from the version line at the sidebar's foot, and from the last entry under Settings. It shows:

  • the version, whether an update is available or waits on a restart, the command to install it, and the release channel;
  • this instance's address and whether it asks for a sign-in;
  • its run directory and health, and the Python it runs on.

Copy diagnostics copies them for a bug report.

Copyright © 2026