Skip to main content
Glama

memory_submit

Move outbox drafts into the repo memory directory for review, commit them locally, and print push/PR commands requiring explicit approval.

Instructions

Move outbox drafts into the repo memory dir for review: copies the drafts in as proposed (or keeps a local approval), commits locally on the current branch, and moves the outbox originals out. Never creates a branch on its own — pass branch= only with the user's explicit approval for the full chain. Prints the push and PR commands — those need the user's explicit approval and are never run automatically. (MCP server and the open-memex submit CLI; the opencode native plugin does not expose this tool.) Unknown ids or a failed local commit abort the submit with the reason; nothing is published automatically.

Input Schema

NameRequiredDescriptionDefault
idsYesOutbox draft ids to submit.
baseNoPR base branch override. Default: the branch the submit ran on.
branchNoCreate this branch and submit onto it. If omitted, submit stays on the current branch — branches are never auto-created. Only pass this when the user explicitly approved the full chain (branch + push + PR).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/5.0
Behavior5/5

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

Annotations only declare the flat safety flags; the description adds substantive behavior: local commit on the current branch, moving outbox originals out, aborting with a reason on unknown ids or failed commit, and no automatic publishing. This is rich disclosure well beyond structured fields.

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 core action and tightly packed, though the parenthetical about MCP/CLI/opencode scope and the approval caveats make it longer than strictly necessary. Every sentence still carries useful information.

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

Completeness5/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 compensates by explaining what gets printed (push and PR commands) and the failure modes. For a multi-step mutation tool it covers everything an agent needs to call it safely.

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 100%, so the schema already documents ids, base, and branch (including the branch-approval caveat), making 3 the baseline. The description reinforces the approval semantics but adds no syntax or format detail the schema lacks.

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 — moving outbox drafts into the repo memory dir — and enumerates the exact chain (copy in, commit locally, move originals out). An agent can distinguish this submit operation from sibling tools like memory_propose or memory_promote without opening a 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 explicit when/when-not conditions: pass branch= only with the user's explicit approval for the full chain, never auto-create branches, and push/PR commands require explicit approval and are never run automatically. It even notes the tool is exposed via MCP/CLI but not the opencode plugin.

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