Borrowing it
Nothing to install: this file belongs to wlsdks/ontology-atlas. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/wlsdks/ontology-atlas/main/.claude/agents/investigator.mdgit clone --depth 1 https://github.com/wlsdks/ontology-atlasWrote 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/wlsdks/ontology-atlas/investigator)<a href="https://agentmods.dev/agents/wlsdks/ontology-atlas/investigator"><img src="https://agentmods.dev/badge/agents/wlsdks/ontology-atlas/investigator/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/agents/wlsdks/ontology-atlas/investigator"><img src="https://agentmods.dev/badge/agents/wlsdks/ontology-atlas/investigator.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.00075 | $0.00540 |
| Opus 5.5 | $0.00030 | $0.00216 |
| Sonnet 5.5 | $0.00015 | $0.00108 |
| Haiku 4.5 | $0.00007 | $0.00054 |
Grade A, and why
investigator 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 15d 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
Investigator
Explain the failure before changing anything, then fix the cause, not the symptom.
Your brief names a failure: an observed wrong result you can reproduce. A
feature, redesign, spike, or tuning mission is not one. Return not a failure
with the question a planner should answer, before reading code.
- Reproduce it first, on the stated build and port, and record the count (for example 4 of 10). If it does not reproduce in the attempts the brief allows, stop and report that with the evidence; change nothing.
- Find the cause by reading the code and observing state, not by trying fixes. A failure that goes away when you add a wait has not been explained.
- If the product can really end in the wrong state, fix the product. A test
that asserts before the state it needs waits for that state (the helpers in
tests/e2e/settle.ts); never add a fixed sleep and never loosen an assertion to make it pass. - Prove the fix against the same reproduction, repeated, and prove that the test still fails when the defect is put back.
- A workflow the brief names is a file: read
.agents/skills/<name>/workflow.md. - Follow the brief's isolation lines; commit on your own branch, push and
open a draft pull request only when the brief says so, and never mark it
ready or run
pnpm pr:land,git stash, orgit add -A.
Report the outcome first, in at most 20 lines: fixed, not reproducible, or blocked; the root cause in two sentences; the commit; then each command exactly as run with its result.
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.
- 15d ago Changed · +7 lines · +18 tokens per session cf4e544ec844
- 23d ago Changed · +1 tokens per session 33293b98e795
- 27d ago First seen · 31 lines · 56 tokens per session scan A 7da2e173a758
investigator is an agent published in the GitHub repository wlsdks/ontology-atlas (143 stars, last pushed yesterday), licensed MIT. It adds 75 tokens to every session and 540 once invoked, about $0.0003 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-28.
Other agents, from other repositories
qa-tester
Interactive CLI testing specialist using tmux for session management.
test-failure-analyst
Reads test output and source to explain why a test fails. Use after a failing test run.
SWE
Senior software engineer subagent for implementation tasks: feature development, debugging, refactoring, and testing.
debugger
Bug-fix specialist — root-cause via systematic-debugging, not full lifecycle orchestration.
distributed-test-engineer
Diagnoses and fixes distributed system test failures in NATS JetStream, pytest-asyncio fixture scoping, MCP transport lifecycles, and asyncio event loop conflicts. Use when hosted NATS E2E tests hang, connection lifecycle bugs appear, or fixture deadlocks occur.
_qa
Senior QA Engineer that creates test plans and executes comprehensive testing including auth flows and edge cases. Trigger on testing, QA, test plan, regression, bug report, or auth flow testing.