Install
$ agentstack add skill-anthony-maio-pieces-agent-skills-deep-research-synthesizer ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Deep Research Synthesizer
Use this skill when you have five sub-agent research results and need to produce a single high-quality Markdown report that:
- answers the user’s question directly
- preserves evidence + citations
- removes duplication
- flags contradictions and gaps
- never “silently fails” when one agent output is missing or malformed
This skill is designed to fix a common anti-pattern: a coordinator prompts 5 agents, then tries to “just synthesize” without a contract, validation, or observability.
Inputs expected (minimum)
1) user_question — the user’s original question (verbatim)
2) agent_outputs[5] — one output per agent. Each output MUST follow the Research Packet Contract (see references/AGENT_PACKET_CONTRACT.md).
If you cannot guarantee the contract, run scripts/validate_packets.py and repair nonconforming outputs before synthesis.
The 5-agent pattern that works
Step 1 — Partition the work (pick ONE strategy)
Strategy A: Time slicing (good for “what happened” / “how it evolved”)
- Agent 1: earliest timeframe
- Agent 2: next window
- …
- Agent 5: most recent window + “what changed recently”
Strategy B: Source slicing (good for broad topics)
- Agent 1: primary sources / official docs
- Agent 2: academic papers / standards
- Agent 3: practitioner writeups
- Agent 4: competing viewpoints / critiques
- Agent 5: synthesis + “what you should do” recommendations
Strategy C: Sub-question slicing
- Agent 1: definitions / scope
- Agent 2: current state
- Agent 3: failure modes / risks
- Agent 4: options + tradeoffs
- Agent 5: recommendations + decision framework
Step 2 — Enforce the Research Packet Contract
Every agent must output:
- a machine-parseable JSON “packet header”
- a short narrative
- a “Run Log” with searches + errors
Contract details: references/AGENT_PACKET_CONTRACT.md.
Step 3 — Validate before you synthesize
Run:
python scripts/validate_packets.py --in packets/
Fix failures immediately:
- missing sources
- missing claims/evidence mapping
- missing run logs
- malformed JSON
Step 4 — Normalize + deduplicate
Use:
python scripts/merge_packets.py --in packets/ --out merged.json
Then synthesize using the report template:
references/REPORT_TEMPLATE.md- include contradictions + gaps explicitly
Step 5 — Synthesize the final report (Markdown)
Write the report in this order:
- Executive Summary (5–10 bullets)
- Direct Answer (2–6 paragraphs)
- Key Findings (grouped, deduped)
- Evidence & Citations (trace claims → sources)
- Contradictions / Uncertainties (what doesn’t match)
- Recommendations (actionable, prioritized)
- Appendix
- per-agent “Run Log”
- per-agent “Raw Findings” (optional)
Step 6 — QA checklist (do not skip)
Use references/QA_CHECKLIST.md.
If you can’t pass the checklist due to missing info, output a partial report and explicitly list:
- which agents failed
- what is missing
- what follow-up tasks would resolve it
Failure-handling requirements (what stops “constant failures”)
1) Never hide missing agent outputs
If any agent output is missing/empty:
- produce the report anyway
- mark the missing agent as “NO DATA”
- do not invent what it “would have found”
2) Surface tool errors verbatim
If an agent hit a tool error (HTTP, MCP, API):
- carry the raw error into the appendix
- summarize the impact in “Limitations”
3) Preserve traceability
Every major claim must have:
- source id(s)
- agent id
- confidence
This avoids “big report looks plausible but can’t be debugged.”
Files in this skill
References
references/AGENT_PACKET_CONTRACT.md— required output format for sub-agentsreferences/REPORT_TEMPLATE.md— Markdown structure + guidancereferences/QA_CHECKLIST.md— deterministic quality gatesreferences/FAILURE_MODES.md— common causes of synthesis failure + mitigations
Scripts
scripts/validate_packets.py— validates packet conformance and prints actionable errorsscripts/merge_packets.py— merges packets into a single normalized JSON filescripts/render_report_skeleton.py— generates a Markdown skeleton from merged JSON
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: anthony-maio
- Source: anthony-maio/pieces-agent-skills
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.