Skip to main content
Glama
dialectforge

FlowState by DialectForge

Official

handoff

Destructive

Leaves notes for the next AI when stopping mid-task, recording where work stalled and the next step. Lists and picks up notes to continue without losing context.

Instructions

Handoff notes between AIs. Stopping mid-task (out of time, context or tokens, or the user ends the chat)? action=leave (write; project required) with where_i_was (what was being done and its state) and next_step. The next AI sees it first in start_here. When you continue from a note, action=pickup with handoff_id so it stops showing. action=list (read).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNo
modelNoYour model name, if you know it (optional; never guessed)
actionYes
projectNoProject name or id. Required for every write.
next_stepNoleave: the very next thing to do (max 500)
handoff_idNopickup: the note (H<id> in the brief)
where_i_wasNoleave: what you were doing and how far it got (max 1,000)
include_picked_upNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.2/5.0
Behavior3/5

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

Annotations already declare destructiveHint=true and readOnlyHint=false, so the safety profile is partly carried by structured data. The description adds useful lifecycle context (a note appears first in start_here, pickup makes it stop showing, project is required for writes) but never explains what the destructive hint refers to, whether leaving a note overwrites anything, or any error/permission conditions.

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?

The opening sentence states the resource and the action=leave trigger is front-loaded before the continue/pickup path. It is dense and slightly parenthetical-heavy, but every sentence carries workflow information with little waste.

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

Completeness3/5

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

With no output schema, the description should describe what the read path returns, but it only labels action=list as '(read)' without return shape or pagination context. Combined with limit and include_picked_up being undocumented in both schema and description, the definition is adequate but leaves real gaps for a multi-action tool.

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 63%, so the description must add meaning, and it does: it ties project to writes, where_i_was/next_step to leave, and handoff_id to pickup, giving each parameter a role relative to an action. It leaves limit, include_picked_up, and model unaddressed, which keeps it short of a 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 (handoff notes between AIs) and breaks the tool into three explicit actions (leave, list, pickup) with the semantics of each. It also cross-references the sibling start_here, where the note surfaces, so an agent can place this tool without opening the schema.

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?

It gives concrete triggers per action: 'Stopping mid-task (out of time, context or tokens, or the user ends the chat)? action=leave' and 'When you continue from a note, action=pickup with handoff_id'. The read path (action=list) is also identified, leaving little to inference about when each mode applies.

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