Kin / How Kin works

Agents

Understand delegation context, foreground and background work, agent profiles, and supervision.

Read as Markdown

A subagent handles a bounded part of the work while the main conversation keeps responsibility for integration and verification. Choose its context, profile, and execution mode separately. The subagent guide owns tool arguments and recovery controls.

Two delegation contexts

Context What the child receives Use when
task A self-contained brief plus Kin/workspace instructions. The work needs an independent view or specialist scope.
fork_agent The represented parent conversation plus a focused instruction. Earlier decisions and corrections materially affect the answer.

Context isolation does not isolate files. Both share the parent’s directory. Keep edits serial in a shared checkout; independent writers need separate checkouts. A fork after compaction inherits the current summary and retained tail, not every original message.

Two ways to run a profile

A profile supplies working instructions and an allowed toolset. task(subagent_type="researcher", prompt=…) creates a child; kin --agent researcher launches the main terminal session with that profile. Both use the same profile loader and permission rules.

Foreground subagents

A foreground child returns its result to the waiting parent call. Its activity folds into that call’s row, while the shared registry retains an id, transcript, usage, and outcome. Killing the child leaves the parent able to continue; interrupting the parent cancels its foreground child too.

Background subagents

A background dispatch returns an id immediately and lets the parent continue. Completion, failure, pause, interruption, and stale-health events regain the main agent’s attention. Notices contain lifecycle metadata; the parent reads child output explicitly when it needs the report. Healthy work needs no polling.

Lifecycle, outcome, and health describe different facts. A successful child can be idle and retained; a running child can be stale without having failed. Pause is background-only, and closing releases processes without making retained output unreadable.

The agent panel (Ctrl+O or /agents)

The panel has Agents, Shells, and Tasks views. Use a/s/t or Tab to switch. Enter opens a transcript, o opens buffered output, and x kills a running row or dismisses a finished one. Escape closes the panel.

The compact strip below the composer provides background awareness; the panel is the inspection surface for foreground and background work. See Keybindings for additional controls.

Profile-as-session: --agent <name>

kin --agent researcher
kin --agent coder --workdir /path/to/project

This is a fresh terminal launch, with ordinary model configuration, workspace trust, and profile restrictions. It requires a TTY and cannot combine with --resume. To resume a saved conversation, omit --agent and use its saved identity. CLI reference lists launch combinations.

The planner agent

The read-only planner researches and writes a self-contained plan through write_plan. It is there when you ask for one; Kin does not dispatch it by default. The main agent validates and presents the plan to the person. Plan mode begins only when the person chooses it or approves Kin’s request, and only human acceptance permits execution. A plan must carry enough context to execute after Approve, clear & re-inject. See planning.

The critic agent

critic reviews plans; critic-code reviews completed work. Both use read-only rubrics and must ground findings in evidence. A plan critique happens when you choose Review plan first or ask for one, and leaves planning frozen. security-auditor examines concrete attack paths and grades exploitability and impact. explorer handles local orientation; researcher handles sourced research. These are scoped working roles, not extra authority.

Discovery

Project .kin/agents/ wins over project .claude/agents/, then the matching user roots, then bundled profiles. The profile reference has the exact schema, tools, and override example.