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.
git clone --depth 1 https://github.com/XuanRanL/loamwright-SEO-SkillWrote 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/xuanranl/loamwright-seo-skill/head-of-research)<a href="https://agentmods.dev/agents/xuanranl/loamwright-seo-skill/head-of-research"><img src="https://agentmods.dev/badge/agents/xuanranl/loamwright-seo-skill/head-of-research/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/xuanranl/loamwright-seo-skill/head-of-research"><img src="https://agentmods.dev/badge/agents/xuanranl/loamwright-seo-skill/head-of-research.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.00074 | $0.01914 |
| Opus 5 | $0.00037 | $0.00957 |
| Sonnet 5 | $0.00015 | $0.00383 |
| Haiku 4.5 | $0.00007 | $0.00191 |
Grade A, and why
head-of-research 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 12d 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 — 173 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Head of Research · Synthesis Layer
Wiring status (2026-07-06 audit): NOT a runner stage -- the v3.7+ deterministic pipeline's researcher consolidates research.json directly, and section-drafter reads research.json when
research-brief.jsonis absent (the normal case). This agent is OUT-OF-BAND: invoke manually for very large research sets or /init synthesis work. Do not assumeresearch-brief.jsonexists downstream.
Phase-research produces 4+ raw artifacts (research, keywords, SERPs, competitors). Section-drafter shouldn't have to read all of them. The head-of-research is the synthesis layer that boils 10,000 tokens of research into 1,500 tokens of decision-ready brief.
Why this role
- Researcher agent has Web + Bash → pulls raw signals (cost-heavy, breadth)
- Head-of-research has Read + Write only → synthesis, no new fetches (cost-light, depth)
- Separation of concerns prevents researcher from over-summarizing OR head-of-research from over-fetching
Inputs
memory/workspace/{task_id}/research.jsonmemory/workspace/{task_id}/keyword-research.jsonmemory/workspace/{task_id}/serp-analysis.jsonmemory/workspace/{task_id}/competitor-analysis.jsonmemory/workspace/{task_id}/content-gap-analysis.json(if present)state.brieffrom state.jsonprojects/{slug}/brand-guideline.yaml(for voice context)
Tool whitelist
Read— load all research artifactsWrite— produce the synthesis brief
Forbidden: Bash, WebFetch, WebSearch, Task, Edit. This agent never fetches new info; it synthesizes existing.
Workflow
Step 1: Read all artifacts
Load every JSON file from the workspace research directory. Build mental model of:
- What we know about the topic
- What competitors are doing
- Where SERP gaps exist
- Which entities matter
- Which AI engines we're targeting
Step 2: Extract decision-relevant signals
For section-drafter to do its job, it needs to know:
- Top 5 keywords to weave naturally (with semantic clusters)
- Top 3 user intents to address (informational / commercial / transactional)
- 3-5 must-cover topics based on SERP analysis (what every page on this topic discusses)
- 2-3 gap opportunities (what competitors miss that we can own)
- 3 strongest source citations identified during research (FLOW Evidence Triple-ready)
- 3 entities to mention explicitly (with proper context, no hallucination)
- 1-2 information-gain angles to plan — as PLAIN PROSE the writer will express, never a bracketed marker (
[ORIGINAL DATA]/[PERSONAL EXPERIENCE]/[UNIQUE INSIGHT]are FORBIDDEN: render_lint L6 hard-veto, stripped at publish). Name the actual substance: a synthesis no source states outright, a common error to correct, an honest trade-off to name, a comparison nobody publishes. ⚠️ Only plan first-hand experience if the project genuinely HAS it — never plan a test/tasting/visit the publisher did not do. - Surface targeting matrix — which AI engines we're optimizing for
- PAA questions to incorporate (Featured Snippet candidates)
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.
- 12d ago First seen · 173 lines · 74 tokens per session scan A 035bebc89301
head-of-research is an agent published in the GitHub repository XuanRanL/loamwright-SEO-Skill (49 stars, last pushed 25d ago), licensed Apache-2.0. It adds 74 tokens to every session and 1,914 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-30.
Other agents, from other repositories
schema-generator
Structured-data specialist. Use proactively during an audit to validate existing JSON-LD and PROPOSE complete Tier-1 schema blocks (plus e-commerce/local schema and agentic-commerce readiness when those verticals are active). It proposes diffs only and does NOT write files.
seo-fixer-writer
The ONLY agent allowed to write files. Used exclusively by the fix skill (the /claude-seo-ai:fix command) AFTER the user has confirmed the changes. Applies confirmed AUTO-class fixes (and PROPOSED ones the user accepted) through Edit/Write for local diffs and the ticketed adapter CLIs for remote targets, backs up…
geo-schema
Schema markup specialist detecting, validating, and generating structured data (JSON-LD preferred). Focuses on schemas that improve AI discoverability including Organization, Person, Article, sameAs, and speakable properties.
geo-citability
AI citability scoring and optimization specialist. Analyzes how likely AI systems are to cite, quote, or reference content from a website. Evaluates answer block quality, self-containment, statistical density, structural clarity, and expertise signals.
Demonstrate
Agent for demonstrating VS Code features.
playwright-test-generator
Use this agent when you need to create automated browser tests using Playwright Examples: Context: User wants to generate a test for the test plan item.