Skip to main content
Glama

Hand unfinished work to the next session — or take over what another session left

brain_handoff

The session handoff. Call {action:"write"} when you are stopping before the work is done — the human asked for a handoff, your context or usage limit is near, the day ends, you are blocked or switching tool — with the task, what is done…

Instructions

The session handoff. Call {action:"write"} when you are stopping before the work is done — the human asked for a handoff, your context or usage limit is near, the day ends, you are blocked or switching tool — with the task, what is done, what is NEXT in order, the files and how to verify: it becomes a 🤝 card in the project brain that the human can see and correct, and the next session on this project (any agent — Codex, Claude Code, Cursor) sees it at its first brain_sync / session start. Call {action:"take", id} (a card) or {action:"take", session} (unfinished work a session left without a card — KLYPIX records every session's last reply, files and commits automatically) before continuing it, so peers see it is taken; {action:"done"} when it is finished (the card is archived); {action:"list"} shows every open handoff and every unfinished session. Never ask the human to paste a summary into the next session — write a handoff. Machine-local for the automatic layer; the card travels with the brain.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
idNotake / done: the handoff card id (from brain_sync, the session-start brief, or list).
areaNowrite: the brain area (titled box) the card goes into. Defaults to "Handoff".
doneNowrite: what is already finished (so it is not redone).
nextNowrite: the remaining steps IN ORDER, as the next session should do them. Required.
openNowrite: questions still open, or decisions the human has to make.
taskNowrite: one or two sentences — what the work is and why.
filesNowrite: project-relative files the work touches (recorded as evidence anchors).
titleNowrite: the work, in a few words ("Drive upload: the Place-it-now chooser").
actionNowrite (default): record a handoff card. take: claim a handoff card (id) or unfinished work (session) before continuing it. done: mark it finished. list: every open handoff card and every unfinished session on this project.
canvasNoBrain canvas filename/path. Defaults to the project brain ("brain").
reasonNowrite: why the work stops here.
verifyNowrite: how to check the state — a command or a visible result.
projectNoAbsolute project root containing brain.klypix. Defaults to this connection's project.
sessionNotake / done: the session id (or a unique prefix of 8+ characters) from the unfinished-work list, when the work has no card.
summaryNodone: what was finished, in one or two sentences. take: an optional note.
continuesNowrite: the id of an earlier handoff card this one continues — it is closed as "continued by" this one.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv1.102.0

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only cover openWorld/idempotent/destructive, so the description carries the lifecycle: write creates a 🤝 card the human can see and correct and that the next session picks up at brain_sync; take marks it claimed for peers; done archives the card; continues closes the earlier card as "continued by" this one. It also discloses the scope split between the machine-local automatic layer and the brain-travelling card, which is behavior an agent cannot infer from the schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the tool's identity and the write action, then walks take/done/list in order — every sentence carries routing or lifecycle information. It is dense and long, and the closing "Machine-local for the automatic layer; the card travels with the brain" is terse to the point of ambiguity, but nothing is padding.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 16-parameter, four-mode tool with no output schema and thin annotations, the description covers the action surface, triggers, and state transitions well. Minor gaps remain: it does not say how the agent reads the taken work after claiming it, or what happens on an unknown/stale id or session prefix.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3; the description goes further by mapping parameters to actions ("Call {action:"write"} … with the task, what is done, what is NEXT in order, the files and how to verify"), which tells the agent which fields matter per mode. It adds little about id/canvas/project/continues beyond what the schema already states, so it stays below a full 5.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names the resource (session handoff card) and enumerates four concrete actions — write, take, done, list — each with its own trigger, so an agent can route without opening the schema. It also differentiates itself from siblings by tying the card to brain_sync and session start, which no sibling does.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicit when-to-use for every branch: write when context/usage limit is near, day ends, blocked, or switching tool; take before continuing someone else's work so peers see it is claimed; done on completion; list to see everything open. It also names what to do instead of the anti-pattern ("Never ask the human to paste a summary into the next session — write a handoff").

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.