A/B benchmarks measuring AI agent performance with and without RemembrallMCP on identical coding tasks.
| Metric | Why it matters |
|---|---|
| Token usage | Direct cost savings - fewer exploration tokens = cheaper |
| Tool calls | Fewer calls = less latency and context overhead |
| Wall clock time | End-to-end speed improvement |
| Accuracy | Did the agent find all affected files, or miss cross-module impacts? |
gh repo clone pallets/click -- --branch 8.1.7 --depth 1- Disable RemembrallMCP in your
.mcp.json(comment it out or remove it) - Restart your MCP client (Claude Code, Cursor, etc.)
- Open a new conversation in the Click repo
- Copy a prompt from
tasks.tomland paste it exactly - Let the agent finish
- Note the conversation ID (in Claude Code: visible in the conversation URL or file path)
- Re-enable RemembrallMCP in
.mcp.json - Restart your MCP client
- Index the Click repo first:
> "Index the Click project at /path/to/click with project name 'click'" - Open a new conversation
- Paste the same prompt
- Let the agent finish
- Note the conversation ID
Add entries to runs.json:
{
"runs": [
{
"task_id": "blast-radius-invoke",
"mode": "without",
"conversation_id": "abc123...",
"accuracy": "3/4 expected files found",
"notes": "Missed testing.py reference"
},
{
"task_id": "blast-radius-invoke",
"mode": "with",
"conversation_id": "def456...",
"accuracy": "4/4 expected files found",
"notes": "Single remembrall_impact call got everything"
}
]
}python benchmarks/analyze.pyThe analyzer:
- Finds conversation JSONL files in
~/.claude/projects/ - Extracts token usage, tool calls, turns, and wall clock time
- Generates a side-by-side comparison report in
benchmarks/reports/
See tasks.toml for the 5 tasks. Each is chosen to highlight where the dependency graph saves the most tokens:
- Blast radius - "What breaks if I change this function?"
- Find callers - "Who calls format_help()?"
- Trace data flow - "How does Context propagate through invocation?"
- Rename class - "What files need changes to rename BaseCommand?"
- Add parameter - "Add a deprecated flag to @command"
- Always start a fresh conversation for each run (no prior context)
- Use the exact prompt from tasks.toml - don't rephrase
- For the WITH run, make sure the repo is indexed before starting
- Record accuracy by checking the agent's answer against
expected_filesandexpected_symbolsin tasks.toml