Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
git clone --depth 1 https://github.com/lugassawan/swe-workbenchWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/commands/lugassawan/swe-workbench/memory)<a href="https://agentmods.dev/commands/lugassawan/swe-workbench/memory"><img src="https://agentmods.dev/badge/commands/lugassawan/swe-workbench/memory/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/commands/lugassawan/swe-workbench/memory"><img src="https://agentmods.dev/badge/commands/lugassawan/swe-workbench/memory.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00029 | $0.00640 |
| Opus 5.5 | $0.00012 | $0.00256 |
| Sonnet 5.5 | $0.00006 | $0.00128 |
| Haiku 4.5 | $0.00003 | $0.00064 |
Grade A, and why
memory scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 19d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
What it actually says
The user wants to record a per-repo memory entry: $ARGUMENTS
Preflight (run once):
command -v swe-workbench-memory >/dev/null 2>&1 || {
echo "swe-workbench runtime commands not on PATH — reinstall or update the swe-workbench plugin." >&2
exit 1
}
Harness detection (run once, before any record): do not probe PATH — both
CLIs can be installed while only one is running. Use the session env var each
harness injects into its own bash tool:
[ -n "${PI_SESSION_ID:-}" ] && echo pi || echo claude
The result is $HARNESS (pi or claude) — the store the entry is written to.
Each harness owns exactly one store; the other's is read-only by construction.
Derive the entry fields from $ARGUMENTS and the conversation:
--name— short identity for the entry (no square brackets; ≤ 200 bytes).--description— one-line summary of the lesson or fact (≤ 1000 bytes).--type— one ofuser(the user's own role/preferences),feedback(correction, gotcha, "don't do this again"),project(project history, decision, outcome), orreference(a pointer into an external system — tracker, dashboard, channel). Pick the closer fit.- body — the full context: what happened, why it matters, the rule going forward. ≤ 12 000 bytes; oversized input is refused, never silently truncated.
Write the body to a temp file with the Write tool (never carry free text
through a shell variable): obtain BODY_FILE=$(mktemp), write the body there,
then record:
RESULT=$(swe-workbench-memory record --as "$HARNESS" \
--name "$NAME" --description "$DESCRIPTION" --type "$TYPE" \
--body-file "$BODY_FILE" \
| swe-workbench-result-check swb.memory/1) || exit 1
printf '%s' "$RESULT" | jq -r '"Recorded: " + .data.entry_path'
swe-workbench-clean-state-files "$BODY_FILE" 2>/dev/null
On a refusal (non-zero exit, message on stderr): the runtime names the refused field and why — secret-shaped input, length cap, bracketed name. Shorten or redact per the message and retry once; a second refusal is surfaced to the user verbatim, not worked around.
Confirm to the user with the recorded entry path. Never write to the other harness's store — there is no flag that can, by design.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 19d ago Changed · +2 lines cade5e38ba7b
- 1mo ago First seen · 57 lines · 29 tokens per session scan A 83dc0c5e66c4
memory is a command published in the GitHub repository lugassawan/swe-workbench (3 stars, last pushed yesterday), licensed MIT. It adds 29 tokens to every session and 640 once invoked, about $0.0001 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.
Other commands, from other repositories
save
Save the current session's context for future recall.
recall
Command "recall" from cdeust/ai-architect-mcp-codebase, covering recall session context and instructions.
estimate
Fast Fermi bracket for a question. Produces an order-of-magnitude bound in under 2 minutes.
ai-act-ask
Answer an EU AI Act question grounded in the bundled knowledge base — verbatim statute text, obligation paraphrases, and the compound-risk taxonomy. Offline and deterministic by default; cites the articles it relies on.
broadcast
Run broadcast on a distilled Raw — update related existing pages conversationally.
review
Fast review of staged changes. Critical findings only — no style nits.