deep-research-patcher

deep-research-patcher is an agent for Claude Code from qf-studio/navigator. It costs 55 tokens per session (921 once invoked), scanned A, original, MIT.

A research-report editing agent that applies a critic's specific findings to an existing Markdown report. It makes small text edits and records them in a patch log instead of rewriting the report.

In plain words
What is it for?
It helps fix wording, add available source references, and document which review changes were applied or left unresolved.
Why use it?
It prevents a reviewed report from being regenerated or structurally changed during correction. It also records findings that could not be matched exactly.

Agent for Claude Code

Written for Claude Code: shipped in a Claude Code plugin. Also seen: model in frontmatter.

Part of the navigator plugin — 33 skills, 6 agents shipped together

Good fit It helps fix wording, add available source references, and document which review changes were applied or left unresolved.

Compare 6 agents from other repositories ↓
Install with agentmods
npx agentmods add agents/qf-studio/navigator/deep-research-patcher
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.

Clone the repo
git clone --depth 1 https://github.com/qf-studio/navigator

Made for: Claude Code.

Or install navigator, the plugin that ships this one along with the rest of its 33 skills, 6 agents.

Wrote 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.

agentmods badge for deep-research-patcher

README.md
[![agentmods](https://agentmods.dev/badge/agents/qf-studio/navigator/deep-research-patcher/github.svg)](https://agentmods.dev/agents/qf-studio/navigator/deep-research-patcher)
Your own site
<a href="https://agentmods.dev/agents/qf-studio/navigator/deep-research-patcher"><img src="https://agentmods.dev/badge/agents/qf-studio/navigator/deep-research-patcher/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.

agentmods 80×15 button for deep-research-patcher

Your own site · 80×15
<a href="https://agentmods.dev/agents/qf-studio/navigator/deep-research-patcher"><img src="https://agentmods.dev/badge/agents/qf-studio/navigator/deep-research-patcher.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 55 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 921 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
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.1 $0.00055 $0.00921
Opus 5.5 $0.00022 $0.00368
Sonnet 5.5 $0.00011 $0.00184
Haiku 4.5 $0.00006 $0.00092

Measured 20d ago against content hash a2e072d355ac, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

deep-research-patcher 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 20d 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.

Origin

Copies of this mod

1 near-identical copy found in the catalogue:

agents/deep-research-patcher.md · 75 lines

How it starts

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

You are the patcher in the nav-deep-research pipeline. You apply the critic's findings to report.md as small, exact edits and write patch-log.json. You have no Bash and you must not use Write on the report: Write is for the patch log only. The report was written once and stays the same document; you change sentences, not the shape.

Inputs (from the spawn prompt)

  • research_query — verbatim, block-quoted. Gospel: a fix that drifts from it is rejected even if the critic proposed it.
  • pipeline position — one sentence.
  • run_slug, run_dir.
  • draft_path — <run_dir>/report.md.
  • findings_path — <run_dir>/findings/critic.json.
  • output_path — <run_dir>/patch-log.json.
  • available_sources — id | title | url | fetch_method rows for notes with status: ok, so you can append Sources rows without Bash.

Procedure

  1. Read the findings JSON and the draft.
  2. Apply findings in severity order (critical, major, minor). For each:
    • Locate quote in the draft. If it is not an exact substring, do not improvise a match: record the finding as unresolved with reason quote-not-found.
    • Apply fix with one Edit call whose old_string is the quote (extend it minimally only to make it unique). Keep the hunk under ~600 characters of replacement.
    • If the fix cites a source not yet in the Sources table, append a row | K+1 | <id> | <title> | <url> | at the end of the table with the next number, and use that number in the fix. Never renumber or delete existing rows.
    • A webfetch source may be paraphrased in the fix but never quoted.
  3. Reject a finding (record as rejected with a one-line reason) when the fix would contradict the research_query, remove a citation without replacing it, or exceed the hunk size. Larger changes are structural and stay unresolved for the orchestrator.
  4. Write output_path in ONE Write call.

Patch log format

{
  "run": "<run_slug>",
  "applied": [{"id": "C1", "severity": "critical", "section": "Summary"}],
  "rejected": [{"id": "C4", "severity": "minor", "reason": "would drop the only citation"}],
  "unresolved": [{"id": "C2", "severity": "critical", "reason": "quote-not-found"}],
  "sources_appended": [{"n": 12, "id": "019"}],
  "structural_forwarded": ["S1"]
}

Read the full file on GitHub · 75 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. 20d ago First seen · 75 lines · 55 tokens per session scan A a2e072d355ac

Subscribe to this mod's changes

deep-research-patcher is an agent published in the GitHub repository qf-studio/navigator (355 stars, last pushed today), licensed MIT. It adds 55 tokens to every session and 921 once invoked, about $0.0002 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-25.

Related

Other agents, from other repositories

navigator-research

Specialized codebase exploration and architecture discovery. Use PROACTIVELY for understanding unfamiliar code, finding patterns, mapping system architecture, and answering "how does X work?" questions. Use the generic Explore agent for one-off lookups; use me for architecture mapping that should inform future work.…

alekspetrov/navigator · 117 tokens

deep-research-critic

Adversarial reader of a nav-deep-research draft. Finds ignored counter-evidence, unsupported claims, verbatim quotes from paraphrase-only sources, and structural mismatch against the decomposition. Writes a findings JSON the patcher applies; cannot edit the report. Spawned once at step 4 by the nav-deep-research skill.

alekspetrov/navigator · 74 tokens

deep-research-writer

Writes the single report.md of a nav-deep-research run from the run's source notes, following the readable report layout and the citation contract the ship gate checks. Spawned once by the nav-deep-research skill at step 3 (draft). Writes the report exactly once; later changes are the patcher's.

alekspetrov/navigator · 71 tokens

task-planner

Implementation planning and task breakdown specialist. Use PROACTIVELY when planning features, refactoring, or complex changes. Creates detailed implementation plans with effort estimates.

alekspetrov/navigator · 35 tokens

deep-research-patcher

Applies critic findings to a nav-deep-research draft as surgical Edit hunks and records a patch log. Tool-locked so it cannot regenerate the report. Spawned once at step 5 by the nav-deep-research skill.

alekspetrov/navigator · 55 tokens

deep-research-fetcher

Fetches one disjoint batch of URLs into a nav-deep-research run as fenced source notes. Spawned in parallel waves by the nav-deep-research skill (step 2 sweep, step 4 gap-fetch). Never searches for new URLs on its own, never reads other fetchers' batches.

alekspetrov/navigator · 69 tokens