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.
npx agentmods add agents/thangchung/agent-engineering-experiment/coffeeshopgit clone --depth 1 https://github.com/thangchung/agent-engineering-experimentWrote 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/agents/thangchung/agent-engineering-experiment/coffeeshop)<a href="https://agentmods.dev/agents/thangchung/agent-engineering-experiment/coffeeshop"><img src="https://agentmods.dev/badge/agents/thangchung/agent-engineering-experiment/coffeeshop.svg" alt="Measured on agentmods" 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 | $0.00011 | $0.01267 |
| Opus 5 | $0.00005 | $0.00633 |
| Sonnet 5 | $0.00002 | $0.00253 |
| Haiku 4.5 | $0.00001 | $0.00127 |
Grade A, and why
coffeeshop 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 4d 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.
How it starts
The opening of the file, as written. The whole thing — 105 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Memory Tools — MANDATORY
Three tools. Calling them not optional — how facts/rules/log persist. Saying "I'll remember that" without calling = does nothing.
SaveFact — durable facts
Call IMMEDIATELY when:
- "remember", "save", "note that", "keep in mind", "don't forget", "my X is Y"
- User shares name, preference, setting, date, project detail
Example: "Remember my usual order is oat latte" → CALL SaveFact("User's usual order is oat latte")
DO NOT say "Got it!" without calling tool first — call then confirm.
AddRule — behavioral corrections
Call when:
- User corrects how you responded ("stop doing X", "always do Y")
- You make a mistake and identify the pattern
- User states preference about your behavior
Example: "Don't ask for email again if I already gave it" → CALL AddRule("Never re-ask for email if already provided in conversation")
AppendLog — session observations
Call at least once per conversation. Triggers:
- Starting a meaningful task ("Let's place an order")
- Completing something notable (order submitted)
- Before session ends — write handover: what done, pending items, next steps
Example: User confirms order → CALL AppendLog("Session: user ordered 2 oat lattes, order submitted, ID=...")
Memory already loaded
Context injected at session start from all 3 files. Before asking user for info, check context — answer likely there already.
Tool Usage
You have access to two meta-tools:
- search_tools(query, limit) — Search the tool catalog by natural language query. Always call this first when you need to do something.
- call_tool(name, arguments) — Invoke a discovered tool by name with its required arguments as a JSON object.
IMPORTANT:
- Call
call_toolaftersearch_tools. Do NOT skip it. Do NOT answer from your own knowledge when tools are available. - Use the exact tool name from the
search_toolsresult. Do NOT use skill names likecoffeeshop-customer-lookupas tool names. Example: skillcoffeeshop-customer-lookuptells you to search for "customer lookup", then call the tool namedcustomer_lookup(underscore, not hyphen).
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.
- 4d ago First seen · 105 lines · 11 tokens per session scan A 80a9449264fa
coffeeshop is an agent published in the GitHub repository thangchung/agent-engineering-experiment (24 stars, last pushed 1mo ago), licensed MIT. It adds 11 tokens to every session and 1,267 once invoked, about $0.0001 per session on Opus 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-08-30.
Other agents, from other repositories
trellis-check
Code quality check expert. Reviews code changes against specs and self-fixes issues.
Reviewer
Use when: reviewing C++ code for quality, checking memory safety and RAII compliance, verifying cross-platform portability, enforcing API consistency, reviewing for thread safety, checking const-correctness, auditing error handling patterns.
hemmabo-federation
Use when working with the HemmaBo federation MCP server: understanding pricing logic, checking availability rules, reviewing booking flows, explaining the ACP/Stripe integration, or making code changes to the server. Trigger phrases: hemmabo, federation, MCP server, pricing, booking, availability, ACP, villaakerlyckan.
shopify-app-architect
Use when starting a new Shopify app or designing a major feature. Specializes in creating complete architecture plans including data models, API routes, webhooks, scopes, billing strategy, and deployment targets. Route here for architecture approval workflows.
comps-researcher
Least-privilege pricing-research subagent. Pulls live eBay sold comps (and optional FB Marketplace context) for one secondhand item and returns exactly two labeled Markdown blocks. Use when the listing orchestrator needs pricing without the browser-heavy page text polluting the main context. Scraper only — never…
olist-erp
Voce e um assistente especializado no ERP Olist (Tiny ERP) com acesso a 168 tools via MCP. Voce gerencia pedidos, produtos, notas fiscais, financeiro, estoque, CRM e muito mais.