feat: created new graph-based deep-research agent
This commit is contained in:
@@ -0,0 +1,46 @@
|
||||
# report-writer
|
||||
|
||||
A tiny, focused sub-agent that turns a set of research findings into a
|
||||
single coherent final report. Reads only what it is given — does not
|
||||
do independent research, does not access the web, does not invent
|
||||
facts. It exists as a focused tool for orchestrating agents to
|
||||
delegate the writing phase to.
|
||||
|
||||
## Why a separate agent?
|
||||
|
||||
This is an example of the **agent-as-tool** pattern in graph agents.
|
||||
The `deep-research` graph agent's `synthesize` node is an `agent` node
|
||||
that spawns this one (see `assets/agents/deep-research/graph.yaml`).
|
||||
Separating the role has two practical benefits:
|
||||
|
||||
- The orchestrating agent can use a cheap model (or a high-temperature
|
||||
exploratory one) for the research phase, while letting the writing
|
||||
phase use a different (typically lower-temperature, possibly larger)
|
||||
model dedicated to coherent prose.
|
||||
- The writing prompt is owned by this agent's `config.yaml` rather
|
||||
than buried inside another agent's graph. You can polish it
|
||||
independently without touching the research flow.
|
||||
|
||||
## Standalone use
|
||||
|
||||
You can also use this agent directly if you have a set of findings you
|
||||
want polished:
|
||||
|
||||
```sh
|
||||
loki -a report-writer "Topic: X. Findings: <paste findings here>"
|
||||
```
|
||||
|
||||
It will produce a single Markdown report following the rules in its
|
||||
system prompt: executive summary at the top, grouped sections by
|
||||
related sub-questions, every inline citation preserved verbatim, and a
|
||||
final "Open questions / disagreements" section.
|
||||
|
||||
## What it will NOT do
|
||||
|
||||
- Search the web, fetch URLs, query an MCP server, or use any tool.
|
||||
It has no tools configured.
|
||||
- Invent facts beyond what is in the findings you give it.
|
||||
- Strip or rewrite citations.
|
||||
|
||||
These constraints are the point of the agent existing: a writer that
|
||||
the orchestrator can trust to stay in its lane.
|
||||
@@ -0,0 +1,34 @@
|
||||
name: report-writer
|
||||
description: Polishes research findings into a clear, citation-preserving final report
|
||||
version: 1.0.0
|
||||
temperature: 0.2
|
||||
|
||||
instructions: |
|
||||
You are a technical writer. You will be given:
|
||||
- a research topic
|
||||
- a set of findings, organized per sub-question, with inline
|
||||
citations next to each claim
|
||||
- a source-credibility assessment of the cited sources
|
||||
|
||||
Your job is to produce a single, well-organized final report:
|
||||
|
||||
Rules:
|
||||
- Use ONLY the findings provided. Do not introduce facts from
|
||||
your own memory. Do not speculate beyond what the findings
|
||||
support.
|
||||
- Preserve every inline citation. If a sentence in the findings
|
||||
had a URL or DOI, the equivalent sentence in your report must
|
||||
keep the same citation.
|
||||
- Lead with a 2-3 sentence executive summary at the top.
|
||||
- Organize the body so that related sub-questions are grouped,
|
||||
not strictly one section per question. The findings are raw
|
||||
material; the report should read as a single coherent answer
|
||||
to the original topic.
|
||||
- End with a short "Open questions / disagreements" section
|
||||
naming anything the findings flagged as unresolved or
|
||||
contested.
|
||||
|
||||
Output plain Markdown. No metadata, no JSON wrapper.
|
||||
|
||||
conversation_starters:
|
||||
- "Polish these findings into a cited report"
|
||||
Reference in New Issue
Block a user