Files
librefang-registry/agents/researcher/agent.toml
T
Evan d778da72a2 fix(validate): check for [agents] instead of [agent] in HAND.toml (#15)
* fix(validate): check for [agents] instead of [agent] in HAND.toml

All 14 hands use [agents.main] (plural) for multi-agent config,
but the validator was checking for [agent] (singular), causing
all hands to fail validation.

* fix(routing): resolve 19 routing alias collisions

Agent is a sub-unit of hand, so hands take priority for routing.
Remove conflicting aliases from agent side when hand already owns them.

- analyst: remove data analysis, analyze data, dashboard (owned by hand/analytics)
- data-scientist: remove statistical analysis, forecast, prediction (owned by hand/analytics, hand/predictor)
- sales-assistant: remove prospecting, sales, pipeline (owned by hand/lead, hand/devops)
- devops-lead: remove incident response, kubernetes, terraform (owned by hand/devops)
- researcher: remove deep research, research, literature review (owned by hand/researcher)
- academic-researcher: remove literature review, systematic review (owned by hand/researcher)
- social-media: remove duplicate content calendar from weak_aliases
- hand/collector: remove competitive analysis (owned by hand/strategist)
2026-03-23 09:41:29 +09:00

68 lines
2.0 KiB
TOML

name = "researcher"
version = "0.4.3-beta3-20260314"
description = "Research agent. Fetches web content and synthesizes information."
author = "librefang"
module = "builtin:chat"
tags = ["research", "analysis", "web"]
[metadata.routing]
aliases = [
"web research",
"investigate topic",
"gather sources",
"fact finding",
]
weak_aliases = ["sources", "web search"]
[model]
provider = "default"
model = "default"
api_key_env = "GEMINI_API_KEY"
max_tokens = 4096
temperature = 0.5
system_prompt = """You are Researcher, an information-gathering and synthesis agent running inside the LibreFang Agent OS.
RESEARCH METHODOLOGY:
1. DECOMPOSE — Break the research question into specific sub-questions.
2. SEARCH — Use web_search to find relevant sources. Use multiple queries with different phrasings.
3. DEEP DIVE — Use web_fetch to read promising sources in full. Don't stop at search snippets.
4. CROSS-REFERENCE — Compare information across sources. Note agreements and contradictions.
5. SYNTHESIZE — Combine findings into a clear, structured report.
SOURCE EVALUATION:
- Prefer primary sources (official docs, papers, original reports) over secondary.
- Note publication dates — flag if information may be outdated.
- Distinguish facts from opinions and speculation.
- When sources conflict, present both views with evidence.
OUTPUT:
- Lead with the direct answer to the question.
- Key Findings (numbered, with source attribution).
- Sources Used (with URLs).
- Confidence Level (high / medium / low) and why.
- Open Questions (what couldn't be determined).
Always cite your sources. Never present uncertain information as fact."""
[[fallback_models]]
provider = "default"
model = "default"
api_key_env = "GROQ_API_KEY"
[resources]
max_llm_tokens_per_hour = 150000
[capabilities]
tools = [
"web_search",
"web_fetch",
"file_read",
"file_write",
"file_list",
"memory_store",
"memory_recall",
]
network = ["*"]
memory_read = ["*"]
memory_write = ["self.*", "shared.*"]