* 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)
Agents
Autonomous agent definitions for LibreFang. Each agent is a directory containing an agent.toml manifest.
Structure
agents/
├── hello-world/agent.toml
├── researcher/agent.toml
├── coder/agent.toml
└── ...
agent.toml Format
name = "agent-name" # Must match directory name
version = "0.1.0"
description = "What this agent does"
author = "author-name"
module = "builtin:chat" # Runtime module
[model]
provider = "default"
model = "default"
max_tokens = 4096
temperature = 0.7
system_prompt = """Behavioral instructions for the agent."""
[metadata.routing]
aliases = ["exact match phrases"]
weak_aliases = ["keyword hints"]
[resources]
max_llm_tokens_per_hour = 100000
[capabilities]
tools = ["web_search", "file_read"]
network = ["*"]
memory_read = ["*"]
memory_write = ["self.*"]
agent_spawn = false
Current Agents (33)
| Agent | Description |
|---|---|
| assistant | Default conversational assistant |
| researcher | Deep research with web search |
| coder | Code generation and editing |
| hello-world | Friendly greeting agent for new users |
| ... | See each directory for details |
Adding a New Agent
- Create
agents/<name>/agent.toml - Ensure
namematches the directory name - Run
python scripts/validate.py - Submit a PR
See CONTRIBUTING.md for the full guide.