Skip to main content
Glama

annsa_work

Do the work on a priority. Use it to claim a priority, write your part of the spec, leave notes, prove each Done When line with verify, and mark it shipped. claim gives you a spec_id for write, verify and ship, and a holder_key for write and ship. Ship only records that it shipped; it doesn't deploy anything. If you need a person to decide something, use escalate. It doesn't move, merge or re-rank priorities; that's annsa.board.

Input Schema

NameRequiredDescriptionDefault
askNoFor escalate: the question you want the person to answer, in one line.
howNoFor verify: how you checked the line: test, staging, prod or manual.
intoNoFor resolve move_row: the priority the row moves to.
textNoThe note, or for write the whole new section, not just the change.
labelNoWhat to call this session, up to 60 characters. Shown as who did it.
modelNoFor claim and ship: the model the agent runs on, like claude-opus-5-5. Shown beside its name.
shipsNoFor escalate: true when the ask is 'ship this PR'. Needs pr_url.
topicNoFor escalate: what the ask is about, in a few words.
whereNoFor verify: a test id (path::test) or a URL that shows the check.
actionYesship: Mark the priority shipped. It only records it; nothing deploys. retract undoes it. claim: Take a priority to work on. Starts a spec if there isn't one and gives you spec_id and holder_key. note: Leave a note on the spec about what you did or found. To correct an earlier note, send a new one with supersedes. handoff: Pass the work to another agent or a person, with a note for them. dispatch: Post @claude on the priority's GitHub issue so Claude picks it up there. The person stays assigned. A person's action. unclaim: Unclaim a priority so another agent can pick it up. close: Close the priority in one call, even if it's claimed or has a PR. It stays under Closed with your reason. write: Replace one section of the spec with new text. If the section belongs to someone else, your text is saved as a proposed change for them. verify: Record how you checked one Done When line, by proof kind: a test id for (proof: test), a URL for staging or prod. It doesn't block ship. escalate: Ask a person to decide something; it lands in their Needs you. Send topic, ask, trigger, principle and checked. One open ask per priority; the same topic updates it. resolve: Settle a routine question, like 'is this a duplicate of #N?', the way your principles already decide it. Each outcome fits one kind of question. Returns use_id so you can undo. undo: Reverse your own resolve, by use_id.
pr_urlNoThe GitHub PR link. Its body carries 'Annsa-Spec: <spec id>'.
reasonNoWhy, in a line. Needed for takeover, close, unclaim, handoff, and a park or retract request.
use_idNoFor undo: the id resolve gave you.
checkedNoFor escalate: what you checked before asking, as 'what — result'.
learnedNoFor ship or escalate: what the next agent should know.
optionsNoFor escalate: the choices, as short labels.
outcomeNoFor resolve: keep_both (a merge ask), close_settled, dismiss_came_back or move_row (a stray row). Each fits one kind of ask.
purposeNoFor escalate: decision (pick between options), help (needs a person's hand), gap (something missing) or update (just telling).
requestNoFor escalate: park or retract, to ask the person for one. Needs reason.
sectionNoFor write: the_problem, evidence_and_direction, what_to_build, files_to_touch or done_when. For note: build, how_it_works or spec.
spec_idNoThe spec id from claim, or build_id from annsa.spec. Required for verify.
triggerNoFor escalate: why this needs a person: scope, customers, principle or options. Anything else is settled, not raised.
verdictNoFor unclaim: false_positive marks the finding wrong. still_broken and fixed belong to annsa.file submit.
securityNoFor escalate: true if this is a security question.
takeoverNoClaim or unclaim work someone else holds. Needs reason. Another session of your own counts as someone else.
principleNoFor escalate: the rule that would let an agent settle this kind of question next time.
recommendNoFor a decision: the option you would take.
ruled_outNoOptions you ruled out, one per entry as 'option — why'.
holder_keyNoFrom claim; send it on write and ship.
supersedesNoFor note: the note this replaces. For principle: the principle this replaces.
assigned_toNoWho gets it: an agent (like claude-code or codex) or a person's email. Empty unassigns.
next_actionNoFor note or handoff: what should happen next on this priority.
priority_idNoThe long id, instead of priority_number.
feedback_idsNoFor resolve: the rows the ask is about.
quiet_minutesNoFor note: how long you expect to be quiet, in minutes.
include_memoryNoFor claim: add related answers and what earlier work learned.
done_when_indexNoFor verify: which Done When line, counting from 1 as annsa.spec lists them.
priority_numberNoThe # number, e.g. 20 for #20.
include_principlesNoFor claim: add the full text of the principles that apply.
same_as_priority_numberNoFor escalate: the priority this looks like a duplicate of; a person decides the merge.

Output Schema

NameRequiredDescriptionDefault
whoNo
recordNo
messageNo
successNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed36 schema fields changed
    • changedInput schema / properties / action / description
      Previous value: -"ship: Records completion and deploys nothing; retract undoes it. claim: Claims the priority, starts a short spec and returns holder_key. note: Appends a note; a correction is a new note with supersedes. dispatch: Posts @claude on the priority's linked GitHub issue; the person stays assigned. unclaim: Puts the work down; nothing is marked shipped. close: Closes a priority in one call, claim or PR and all; it stays under Closed. write: Replaces one spec section as a new version; text for a section that is not yours is recorded as an update. verify: Records how a line was checked, by proof kind. No ship gate. escalate: Raises a three-line ask in a person's Needs you; decides nothing. Needs `checked`: a fact you can check is not asked. One open ask per priority; the same topic updates it. resolve: Answers a routine ask the way your principles already decide it; returns use_id for undo. undo: Puts back your own resolve by use_id."New value: +"ship: Mark the priority shipped. It only records it; nothing deploys. retract undoes it. claim: Take a priority to work on. Starts a spec if there isn't one and gives you spec_id and holder_key. note: Leave a note on the spec about what you did or found. To correct an earlier note, send a new one with supersedes. handoff: Pass the work to another agent or a person, with a note for them. dispatch: Post @claude on the priority's GitHub issue so Claude picks it up there. The person stays assigned. A person's action. unclaim: Unclaim a priority so another agent can pick it up. close: Close the priority in one call, even if it's claimed or has a PR. It stays under Closed with your reason. write: Replace one section of the spec with new text. If the section belongs to someone else, your text is saved as a proposed change for them. verify: Record how you checked one Done When line, by proof kind: a test id for (proof: test), a URL for staging or prod. It doesn't block ship. escalate: Ask a person to decide something; it lands in their Needs you. Send topic, ask, trigger, principle and checked. One open ask per priority; the same topic updates it. resolve: Settle a routine question, like 'is this a duplicate of #N?', the way your principles already decide it. Each outcome fits one kind of question. Returns use_id so you can undo. undo: Reverse your own resolve, by use_id."
    • addedInput schema / properties / ask / description
      Added value: +"For escalate: the question you want the person to answer, in one line."
    • changedInput schema / properties / assigned_to / description
      Previous value: -"An agent client or a member's email; empty unassigns"New value: +"Who gets it: an agent (like claude-code or codex) or a person's email. Empty unassigns."
    • changedInput schema / properties / checked / description
      Previous value: -"What you checked before asking, as \"what — result\"."New value: +"For escalate: what you checked before asking, as 'what — result'."
    • changedInput schema / properties / done_when_index / description
      Previous value: -"Which Done When line, counting from 1 as annsa.spec does."New value: +"For verify: which Done When line, counting from 1 as annsa.spec lists them."
    • addedInput schema / properties / feedback_ids / description
      Added value: +"For resolve: the rows the ask is about."
    • addedInput schema / properties / how / description
      Added value: +"For verify: how you checked the line: test, staging, prod or manual."
    • changedInput schema / properties / include_memory / description
      Previous value: -"claim: adds related_answers, learned"New value: +"For claim: add related answers and what earlier work learned."
    • changedInput schema / properties / include_principles / description
      Previous value: -"claim: the rules in full"New value: +"For claim: add the full text of the principles that apply."
    • addedInput schema / properties / into / description
      Added value: +"For resolve move_row: the priority the row moves to."
    • addedInput schema / properties / label / description
      Added value: +"What to call this session, up to 60 characters. Shown as who did it."
    • addedInput schema / properties / learned / description
      Added value: +"For ship or escalate: what the next agent should know."
    • addedInput schema / properties / model
      Added value: +{
      +  "description": "For claim and ship: the model the agent runs on, like claude-opus-5-5. Shown beside its name.",
      +  "type": "string"
      +}
    • changedInput schema / properties / next_action / description
      Previous value: -"What should happen next on this priority."New value: +"For note or handoff: what should happen next on this priority."
    • changedInput schema / properties / options / description
      Previous value: -"Short labels, for a decision"New value: +"For escalate: the choices, as short labels."
    • addedInput schema / properties / outcome / description
      Added value: +"For resolve: keep_both (a merge ask), close_settled, dismiss_came_back or move_row (a stray row). Each fits one kind of ask."
    • changedInput schema / properties / pr_url / description
      Previous value: -"GitHub PR URL; body has 'Annsa-Spec: <spec id>'"New value: +"The GitHub PR link. Its body carries 'Annsa-Spec: <spec id>'."
    • changedInput schema / properties / principle / description
      Previous value: -"The rule that would settle this class next time"New value: +"For escalate: the rule that would let an agent settle this kind of question next time."
    • changedInput schema / properties / purpose / description
      Previous value: -"For escalate: decision picks between options, help needs a person's hand, gap is something missing, update is just telling."New value: +"For escalate: decision (pick between options), help (needs a person's hand), gap (something missing) or update (just telling)."
    • changedInput schema / properties / quiet_minutes / description
      Previous value: -"On a note: how long you expect to be quiet, in minutes."New value: +"For note: how long you expect to be quiet, in minutes."
    • changedInput schema / properties / reason / description
      Previous value: -"Required for takeover, release, retract, correct and an agent's severity"New value: +"Why, in a line. Needed for takeover, close, unclaim, handoff, and a park or retract request."
    • changedInput schema / properties / request / description
      Previous value: -"Needs reason; a person decides."New value: +"For escalate: park or retract, to ask the person for one. Needs reason."
    • changedInput schema / properties / ruled_out / description
      Previous value: -"One 'label — why' per entry"New value: +"Options you ruled out, one per entry as 'option — why'."
    • changedInput schema / properties / same_as_priority_number / description
      Previous value: -"Proposes a merge for a person to answer"New value: +"For escalate: the priority this looks like a duplicate of; a person decides the merge."
    • changedInput schema / properties / section / description
      Previous value: -"The spec section: the_problem, evidence_and_direction, what_to_build, files_to_touch or done_when. On a note: build, how_it_works or spec."New value: +"For write: the_problem, evidence_and_direction, what_to_build, files_to_touch or done_when. For note: build, how_it_works or spec."
    • changedInput schema / properties / security / description
      Previous value: -"True for a security question"New value: +"For escalate: true if this is a security question."
    • changedInput schema / properties / ships / description
      Previous value: -"True when the ask is \"ship this PR\"; needs pr_url."New value: +"For escalate: true when the ask is 'ship this PR'. Needs pr_url."
    • changedInput schema / properties / spec_id / description
      Previous value: -"The spec id from claim or annsa.spec (build_…). Required for verify."New value: +"The spec id from claim, or build_id from annsa.spec. Required for verify."
    • changedInput schema / properties / supersedes / description
      Previous value: -"The note or principle this replaces."New value: +"For note: the note this replaces. For principle: the principle this replaces."
    • changedInput schema / properties / takeover / description
      Previous value: -"Another session of your own client counts as someone else; needs a reason"New value: +"Claim or unclaim work someone else holds. Needs reason. Another session of your own counts as someone else."
    • addedInput schema / properties / topic / description
      Added value: +"For escalate: what the ask is about, in a few words."
    • changedInput schema / properties / trigger / description
      Previous value: -"Anything else is settled, not raised."New value: +"For escalate: why this needs a person: scope, customers, principle or options. Anything else is settled, not raised."
    • addedInput schema / properties / use_id / description
      Added value: +"For undo: the id resolve gave you."
    • changedInput schema / properties / verdict / description
      Previous value: -"On a shipped priority: still_broken or fixed. On release, false_positive does NOT close the row."New value: +"For unclaim: false_positive marks the finding wrong. still_broken and fixed belong to annsa.file submit."
    • changedInput schema / properties / where / description
      Previous value: -"A test id (path::test) or a URL that shows the check."New value: +"For verify: a test id (path::test) or a URL that shows the check."
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "properties": {
      +    "message": {
      +      "type": "string"
      +    },
      +    "record": {
      +      "type": "object"
      +    },
      +    "success": {
      +      "type": "boolean"
      +    },
      +    "who": {
      +      "type": "object"
      +    }
      +  },
      +  "type": "object"
      +}
  2. First observed

TDQS

Score is being calculated.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources