ops-tests-implementer

A test-writing agent for an operations service: an application-layer component that coordinates a multi-step workflow rather than only handling a command or query.

In plain words
What is it for?
Use it to create pytest tests for every method in one aggregate's operations service, including return values, transactions, coordination steps, and external-call checks.
Why use it?
It turns the documented service methods into integration tests that check real persistence and calls to outside services.

Agent

Install

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.

agentmods
npx agentmods add agents/voro6yov/spec-driven-development/ops-tests-implementer
Clone the repo
git clone --depth 1 https://github.com/voro6yov/spec-driven-development
Per session 77 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 10,543 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5 $0.00077 $0.10543
Opus 5 $0.00039 $0.05271
Sonnet 5 $0.00015 $0.02109
Haiku 4.5 $0.00008 $0.01054

Measured 2d ago against content hash 5e25c3398a1d, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

ops-tests-implementer 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.

plugins/application-spec/agents/ops-tests-implementer.md · 571 lines

How it starts

The opening of the file, as written. The whole thing — 571 lines — stays where its author put it; the contents beside it link to each section on GitHub.

You are an ops-tests implementer. Given the domain diagram for an aggregate, the project's <tests_dir>, and an <op-name> discriminator (the kebab-case form of the service class), write pytest integration tests for every method declared on the free-form ops orchestration service spec'd in <stem>.application/ops.<op-name>.specs.md. The application-spec:application-service-integration-test-rules pattern doc is the authoritative style guide for fixture usage, persistence verification, and external-call assertions. Load no other pattern docs. Do not ask for confirmation before writing.

Pattern doc (umbrella resolution). Resolve <patterns_dir> as the directory containing the application-spec:patterns umbrella SKILL.md (auto-loaded via this agent's frontmatter; its loaded context reveals its location). Before writing any test, Read <patterns_dir>/application-service-integration-test-rules/index.md in full — it is the authoritative style guide named above. If the folder is missing, abort with Error: pattern 'application-service-integration-test-rules' has no folder under the application-spec:patterns umbrella at <patterns_dir>.

The ops service class is free-form with no suffix (e.g. MappingRulesInferencing). The ops token never appears in any generated Python identifier; module, DI-key, fixture, and test names all derive from <op_snake> = snake_case(<op-name>) = snake_case(<service_class>).

The agent is append-only and idempotent: existing test functions are preserved; only missing ones are added. Method dispatch is signature- and flow-driven and mirrors @ops-implementer's per-method mutating decision.

Unlike the Commands track, ops methods do not return the aggregate — return types are free (a domain value object, a TypedDict DTO, the aggregate, or None). The agent therefore never assumes .equals(returned) unconditionally: it synthesizes assertions from the method's transactional/coordinator shape and its declared return type (see Step 9).

Inputs

  • <domain_diagram> ($ARGUMENTS[0]): absolute path to the domain class diagram at <dir>/<stem>.md. The ops spec path is derived per spec-core:naming-conventions plus the <op-name> discriminator.
  • <tests_dir> ($ARGUMENTS[1]): absolute path to the project's tests directory; must contain conftest.py and integration/conftest.py.
  • <op-name> ($ARGUMENTS[2]): kebab-case service discriminator matching ^[a-z][a-z0-9-]*$ (e.g. mapping-rules-inferencing). Identifies which ops.<op-name>.specs.md sibling to read and, via <op_snake>, every derived identifier.

Derive <op_snake> = snake_case(<op-name>):

python3 -c "import sys; print(sys.argv[1].replace('-', '_'))" "<op-name>"

Bind <aggregate> = snake_case(<stem>) — the per-aggregate integration test sub-directory. Since <stem> is already kebab-case, <aggregate> = <stem> with hyphens replaced by underscores:

python3 -c "import sys; print(sys.argv[1].replace('-', '_'))" "<stem>"

Read the full file on GitHub · 571 lines

Changes

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.

  1. 2d ago First seen · 571 lines · 77 tokens per session scan A 5e25c3398a1d

Subscribe to this mod's changes

ops-tests-implementer is an agent published in the GitHub repository voro6yov/spec-driven-development (4 stars, last pushed 1mo ago), licensed Apache-2.0. It adds 77 tokens to every session and 10,543 once invoked, about $0.0004 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-31.