Skip to main content
Glama

set_status

Change an initiative's status, enforcing lifecycle requirements: ready before in-progress, complete for done, reason to abandon; report milestones reached or lost.

Instructions

Change an initiative's (ticket's/issue's) status, enforcing the lifecycle: designed needs no blocking open questions; in-progress needs ready; done goes through complete. Abandoning needs a reason; abandoned, superseded and deferred work gets a callout under its title saying so, which is removed when it is reopened. A milestone this reaches, or stops being reached, is reported under milestones.

Input Schema

NameRequiredDescriptionDefault
refYesInitiative (ticket/issue): "collection#n" (e.g. "lgm#22"), a bare number, or a path.
forceNo
branchNoStarting work (in-progress): the branch it is built on, if not the one checked out here — recorded so others can see it.
reasonNoWhy — required to abandon, optional to supersede or defer. Kept as status_note and shown in a callout under the initiative's title and in the README.
statusYesOne of draft, designed, in-progress, deferred, done, abandoned, superseded (common aliases and the collection's own status words are accepted)
outcomeNoThe fuller account (what was learned, what replaced it), written into ## Outcome.
collectionNo
superseded_byNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed4 schema fields changedv2.6.0
    • addedInput schema / properties / branch
      Added value: +{
      +  "description": "Starting work (in-progress): the branch it is built on, if not the one checked out here — recorded so others can see it.",
      +  "type": "string"
      +}
    • addedInput schema / properties / outcome
      Added value: +{
      +  "description": "The fuller account (what was learned, what replaced it), written into ## Outcome.",
      +  "type": "string"
      +}
    • addedInput schema / properties / reason
      Added value: +{
      +  "description": "Why — required to abandon, optional to supersede or defer. Kept as status_note and shown in a callout under the initiative's title and in the README.",
      +  "type": "string"
      +}
    • changedInput schema / properties / ref / description
      Previous value: -"Initiative: \"collection#n\", a bare number, or a path."New value: +"Initiative (ticket/issue): \"collection#n\" (e.g. \"lgm#22\"), a bare number, or a path."
  2. First observedv0.1.0

TDQS

A4.3/5.0
Behavior4/5

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

With no annotations present, the description carries the full burden and does disclose real side effects: a callout is added under the title for abandoned/superseded/deferred work and removed on reopen, and milestone impact is surfaced under `milestones`. It stops short of explaining permissions, whether `force` bypasses the lifecycle checks, or reversibility.

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?

Three dense sentences, front-loaded with the core action and its lifecycle rules; nothing is filler. The third sentence is long and packs several behaviors together, which costs a little readability but not substance.

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 an 8-parameter mutation tool with no annotations and no output schema, the description covers the lifecycle contract, the `reason` requirement, and the visible side effects well. The remaining gap is the unexplained `force` escape hatch and any permission or error behavior, which an agent would need before invoking confidently.

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 coverage is 63%, so the schema already documents most parameters including `reason` and `branch`. The description adds the requirement semantics for `reason` (required to abandon, optional to supersede/defer) and the `milestones` reporting behavior, but leaves `force`, `outcome`, `superseded_by`, and `collection` unexplained.

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 opens with a specific verb+resource ('Change an initiative's status') and immediately scopes it by naming the lifecycle it enforces. It also distinguishes itself from the sibling `complete` by stating 'done goes through `complete`', so an agent can separate this tool from that one without opening either 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 states preconditions that effectively define when the tool may be used (designed needs no blocking open questions; in-progress needs ready) and routes one status to an alternative tool ('done goes through `complete`'). It also flags that abandoning requires a `reason`, which is a hard usage gate.

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