Skip to main content
Glama

ddflow_flow_choose

Record a workflow choice for your project with a reason so the next agent follows it; operator config still overrides the recorded value.

Instructions

Record a workflow choice for this project, attributed to you, with a reason the next agent will read. Make it when the operator told you, or when they left it to you -- a choice left unmade is defaulted at first use and followed from then on. The operator's config file wins over a recorded choice; the result says in_effect: false when it does.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
knobYesThe choice, e.g. port_strategy (see ddflow_flow_show).
valueYesOne of its options.
reasonNoWhy this suits the project.
as_agentNoSubagent sharing the parent's connection: your own stable name, for this call only (see ddflow_identify).

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.1.10

TDQS

A4.4/5.0
Behavior5/5

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

With no annotations, the description carries the full burden and does so well: it discloses attribution to the caller, the precedence rule (operator config file overrides a recorded choice), the fallback behavior for unmade choices, and the returned `in_effect: false` signal. These are exactly the non-obvious behaviors an agent needs before mutating shared flow state.

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

Conciseness5/5

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

Three compact sentences, front-loaded with the action and followed by the trigger condition and the precedence caveat. Every sentence carries distinct information; nothing is restated or wasted.

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?

There is no output schema and no annotations, and the description covers the essential return semantics (in_effect), invocation triggers, and precedence. It is arguably thin on what else the call returns or whether the reason is required in practice, but it is complete enough to call correctly.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already defines knob, value, reason, and as_agent with examples and cross-references. The description adds only the framing that the reason is 'read by the next agent,' which is marginal over structured data. Baseline 3 applies.

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?

States a specific verb and resource: record a workflow choice (a knob/value pair) for this project, attributed to the calling agent. This is clearly distinct from the sibling ddflow_flow_show, which reads the same state, and an agent can select it 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 Guidelines4/5

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

Gives explicit when-to-use guidance: 'Make it when the operator told you, or when they left it to you,' and explains the consequence of not calling it (a choice left unmade is defaulted at first use). It does not name a sibling alternative to prefer in some cases, so it falls just short of the top mark.

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

Deploy Server

Other Tools