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/verified-zkevm/evm-asm/tactics-deepgit clone --depth 1 https://github.com/Verified-zkEVM/evm-asmWrote 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/verified-zkevm/evm-asm/tactics-deep)<a href="https://agentmods.dev/agents/verified-zkevm/evm-asm/tactics-deep"><img src="https://agentmods.dev/badge/agents/verified-zkevm/evm-asm/tactics-deep.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.1 | $0.00000 | $0.03559 |
| Opus 5 | $0.00000 | $0.01780 |
| Sonnet 5 | $0.00000 | $0.00712 |
| Haiku 4.5 | $0.00000 | $0.00356 |
Grade A, and why
tactics-deep 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 2d 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 — 235 lines — stays where its author put it; the contents beside it link to each section on GitHub.
EvmAsm — Deep Tactics & Architecture
Moved out of AGENTS.md to keep the agent guide compact. Load this when:
- writing or restructuring frame-automation (
runBlock,seqFrame,xperm,xcancel), - using the LP64 calling convention or designing a callable shim,
- working on a three-level opcode proof (limb → composition → semantic stack spec),
- splitting Compose files in parallel or working with the file-size guardrail,
- consuming the
benchmark-historyorphan branch.
See also TACTICS.md (user-facing tactic reference) and GRIND.md (grindset definitions).
Frame-automation Tactics
Primary reference: TACTICS.md is the user guide for
runBlock, seqFrame, xperm, xcancel, the @[spec_gen] registry,
and the domain-specific grindsets (divmod_addr, rv64_addr, reg_ops,
byte_alg). Read it before hand-writing a cpsTriple_seq_* chain or
wiring a new @[...] equality-closing attribute from scratch.
Separation Conjunction Permutation Tactic
The sep_perm tactic (defined in SepLogic.lean) closes goals that require rearranging sepConj (**) chains. It works by AC-normalizing both the hypothesis and goal using simp with three equality lemmas:
sepConj_assoc':((P ** Q) ** R) = (P ** (Q ** R))sepConj_comm':(P ** Q) = (Q ** P)sepConj_left_comm':(P ** (Q ** R)) = (Q ** (P ** R))
Usage: Given a hypothesis h : (A ** B ** C) s and goal ⊢ (C ** A ** B) s:
sep_perm h
This handles arbitrary permutations of any number of assertions in a sepConj chain.
Additional equality lemmas for empAssertion elimination:
sepConj_emp_right':(P ** empAssertion) = PsepConj_emp_left':(empAssertion ** P) = P
When rearranging involves memBufferIs (which unfolds to ... ** empAssertion), combine all rules in one simp:
simp only [memBufferIs, addr_100_plus_4, addr_104_plus_4,
sepConj_emp_right', sepConj_emp_left',
sepConj_assoc', sepConj_comm', sepConj_left_comm'] at hab ⊢
exact hab
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.
- 2d ago Changed · +39 lines d57de74c0ec5
- 6d ago First seen · 196 lines · 0 tokens per session scan A afe4715ce260
tactics-deep is an agent published in the GitHub repository Verified-zkEVM/evm-asm (55 stars, last pushed yesterday), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 3,559 tokens. 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
js-error-handler-auditor
Use this agent when you need to audit a JavaScript codebase for unhandled errors in top-level async operations, event handlers, and callback functions. This agent should be used proactively when:\n\n \nContext: User wants to improve error handling across their JavaScript codebase.\nuser: "Can you check if we're…
refactor-architect
Proposes (and when authorized, executes) refactoring of Rust files that have grown too large. Use proactively when the file-size-guard.sh hook fires, or when the user asks for an architecture review. Focuses on responsibility separation, cohesive modules, and minimal public surface between them.
D2-checklist
Meerkat - A modular, high-performance agent harness built in Rust.
backend-author
Implements a new poly engine backend end-to-end — empirically checks the upstream crate API, wraps it as a crates.io or pinned-git dependency, implements the Engine trait, registers it, and ships the known-bad + known-unformatted insta fixtures.
docs-researcher
Fetch third-party crate documentation from docs.rs.
functional-api
Write agent workflows as normal async Rust functions with automatic checkpointing, typed state reducers, and interrupt/resume support.