* refactor: migrate icon fields from emoji to lucide:<name> tokens
Every TOML manifest's `icon = "<emoji>"` line is replaced with
`icon = "lucide:<kebab-name>"` — a reference to a lucide-react icon,
which the librefang.ai site and dashboard render as crisp SVG. Reasons
for the switch:
- Emoji render very differently across OS/browser/font stacks; the
registry catalog looked inconsistent from one row to the next.
- Five manifests (clip / creator / linkedin / reddit / twitter) had
their icons stored as literal Python-style escape strings
("\\U0001F3AC") because the TOML parser upstream never decoded
them. Switching away from emoji drops that class of bug entirely.
- As a drive-by, also decode the \\uXXXX accent escapes in the
[i18n.fr] block of hands/creator/HAND.toml so "Créateur" shows
up correctly.
87 files touched. example manifests left untouched (still "TODO").
* fix: backfill i18n name + drop the single-member email category
- Every existing [i18n.<lang>] block now has a `name` field. 60 files
previously translated description but kept the English name
implicitly — which rendered as "some English some Chinese" in the
registry UI. Fill in the missing name from the English brand (or a
known localized equivalent: DingTalk→钉钉, Feishu→飞书, Email→
电子邮件 / メール / E-Mail / Correo / Courriel, and a handful of
hands that have Chinese product names like 视频剪辑 Hand).
- channels/email.toml was the only item under category="email";
reclassify it as "messaging" so the sub-category filter chip list
on the category page isn't littered with singletons.
* feat(i18n): localize 76 agents/integrations/plugins into 7 languages
Adds full [i18n.zh], [i18n.zh-TW], [i18n.ja], [i18n.ko], [i18n.de],
[i18n.es], [i18n.fr] blocks with name + description to every manifest
that previously shipped English-only.
Coverage:
- 32 agents (academic-researcher, analyst, architect, assistant,
code-reviewer, coder, customer-support, data-scientist, debugger,
devops-lead, doc-writer, email-assistant, health-tracker,
hello-world, home-automation, legal-assistant, meeting-assistant,
ops, orchestrator, personal-finance, planner, recipe-assistant,
recruiter, researcher, sales-assistant, security-auditor,
social-media, test-engineer, translator, travel-planner, tutor,
writer)
- 33 integrations (AWS, Azure, Bitbucket, Brave Search, Discord,
Dropbox, Elasticsearch, Exa Search, Fetch, Filesystem, GCP, Git,
GitHub, GitLab, Gmail, Google Calendar, Google Drive, Google Maps,
Jira, Linear, Memory, MongoDB, Notion, PostgreSQL, Puppeteer, Redis,
Sentry, Sequential Thinking, Slack, SQLite, Teams, Time, Todoist) —
brand names kept as-is across all locales, only descriptions
translated.
- 11 plugins (auto-summarizer, context-decay, conversation-logger,
episodic-memory, guardrails, keyword-memory, mempalace-indexer,
sentiment-tracker, todo-tracker, topic-memory, user-profile)
The descriptions are one-line summaries — hand-translated rather than
machine-generated, so technical terms (MCP, PR, CI/CD, etc.) stay
consistent across locales.
* feat(i18n): close remaining per-lang gaps for channels, workflows, devteam
Third pass on i18n coverage. Every non-example manifest now carries a
full set of [i18n.zh], [i18n.zh-TW], [i18n.ja], [i18n.ko], [i18n.de],
[i18n.es], [i18n.fr] blocks.
- 44 channel adapters: added French descriptions (zh/zh-TW/ja/ko/de/es
were already present). Brand names kept as-is in all locales so users
recognize Discord / Slack / LINE / etc. consistently.
- 22 workflows: filled zh-TW / ja / ko / de / es / fr blocks. Each
translation mirrors the existing zh one in structure and tone so the
catalog reads consistently across locales.
- hands/devteam/HAND.toml: added the four langs that were missing
(zh-TW, de, es, fr).
Only the 6 templates under examples/ are left without i18n blocks on
purpose — they still contain "TODO:" placeholders.
LibreFang Registry
Community-maintained content registry for LibreFang — the open-source Agent Operating System.
This repository is the single source of truth for all installable content definitions. Anyone can submit a PR to add new agents, hands, integrations, skills, or provider models — no changes to the LibreFang binary required.
Overview
| Type | Count | Description |
|---|---|---|
| Hands | 14 | User-facing "apps" — agent + tools + settings + dashboard |
| Agents | 32 | Autonomous agent definitions with model config and tools |
| Integrations | 25 | MCP server connections (GitHub, Slack, DBs, etc.) |
| Providers | 49 | LLM provider & model metadata with pricing |
| Models | 339 | Individual model definitions across all providers |
| Aliases | 70 | Short names mapped to canonical model IDs |
| Plugins | 10 | Memory, guardrails, and conversation plugins |
| Skills | 2 | Reusable prompt templates and Python scripts |
| Workflows | 9 | Pre-built multi-agent workflow definitions |
| Templates | 6 | Starter templates for each content type |
Repository Structure
librefang-registry/
├── agents/ # Agent definitions (TOML manifests)
│ ├── hello-world/
│ │ └── agent.toml
│ ├── researcher/
│ │ └── agent.toml
│ └── ... (32 agents)
├── hands/ # Hand definitions (app bundles)
│ ├── browser/
│ │ ├── HAND.toml # Metadata, tools, settings, i18n (6 languages)
│ │ └── SKILL.md # Domain expert knowledge injected at runtime
│ ├── trader/
│ │ ├── HAND.toml
│ │ └── SKILL.md
│ └── ... (14 hands)
├── integrations/ # MCP server integration templates
│ ├── github.toml
│ ├── slack.toml
│ └── ... (25 integrations)
├── providers/ # LLM provider & model metadata
│ ├── anthropic.toml
│ ├── openai.toml
│ └── ... (49 providers, 339 models)
├── plugins/ # Memory, guardrails, and utility plugins
│ ├── episodic-memory/
│ ├── guardrails/
│ └── ... (10 plugins)
├── skills/ # Reusable skill definitions
│ ├── custom-skill-prompt/skill.toml
│ └── custom-skill-python/
├── workflows/ # Pre-built multi-agent workflow definitions
│ ├── code-review.toml
│ ├── research.toml
│ └── ... (9 workflows)
├── templates/ # Starter templates for each content type
│ ├── agent.toml
│ ├── HAND.toml
│ └── ... (6 templates)
├── docs/ # Additional documentation
│ └── content-guide.md # Content contribution guidelines
├── aliases.toml # Global model alias mappings (70 aliases)
├── schema.toml # Provider/model schema reference
├── scripts/
│ └── validate.py # Content validation script
├── CONTRIBUTING.md
└── LICENSE # MIT
Content Types
Hands
Hands are the user-facing "apps" in LibreFang. Each hand bundles an agent, tools, user-configurable settings, dashboard metrics, dependency checks, and i18n translations into a single deployable unit.
Every hand includes a SKILL.md — domain-specific expert knowledge that is injected into the agent's context at runtime, giving it deep expertise in its domain.
| Icon | Hand | Category | Description |
|---|---|---|---|
| 📈 | analytics | data | Data collection, analysis, visualization, dashboards, and automated reporting |
| 🔌 | apitester | development | Endpoint discovery, request validation, load testing, and regression detection |
| 🌐 | browser | productivity | Web navigation, form filling, and multi-step web tasks with user approval |
| 🎬 | clip | content | Turns long-form video into viral short clips with captions and thumbnails |
| 🔍 | collector | data | Intelligence collection, change detection, and knowledge graphs |
| 👷 | devops | development | CI/CD management, infrastructure monitoring, deployment, and incident response |
| 📊 | lead | data | Lead generation, enrichment, scoring, and scheduled delivery |
| 💼 | communication | Profile optimization, content creation, networking, and engagement | |
| 🔮 | predictor | data | Signal collection, calibrated predictions, and accuracy tracking |
| 📢 | communication | Subreddit monitoring, content posting, and engagement tracking | |
| 🧪 | researcher | productivity | Deep research, cross-referencing, fact-checking, and structured reports |
| 🎯 | strategist | productivity | Market research, competitive analysis, and strategic planning |
| 📈 | trader | data | Multi-signal analysis, adversarial reasoning, and risk management |
| 𝕏 | communication | Content creation, scheduled posting, engagement, and analytics |
HAND.toml format:
id = "browser"
name = "Browser Hand"
description = "Autonomous web browser"
category = "productivity"
icon = "🌐"
tools = ["browser_navigate", "browser_click", "browser_type"]
[routing]
aliases = ["browse", "open website"]
weak_aliases = ["web", "url"]
[[requires]]
key = "chromium"
requirement_type = "binary"
check_value = "chromium"
[[settings]]
key = "headless"
setting_type = "toggle"
default = "true"
[agent]
name = "browser-hand"
module = "builtin:chat"
system_prompt = """You are an autonomous web browser agent..."""
[dashboard]
[[dashboard.metrics]]
label = "Pages Visited"
memory_key = "pages_visited"
format = "number"
# i18n — 6 languages supported: zh, ja, ko, es, fr, de
[i18n.zh]
name = "浏览器 Hand"
description = "自主网页浏览器"
category = "生产力"
[i18n.zh.settings.headless]
label = "无头模式"
description = "在后台运行浏览器"
Agents
Agent definitions describe autonomous agents with model configuration, tools, capabilities, and routing aliases.
name = "hello-world"
description = "A friendly greeting agent"
module = "builtin:chat"
[model]
provider = "default"
model = "default"
system_prompt = "You are a helpful assistant."
[capabilities]
tools = ["web_search", "file_read"]
32 built-in agents: academic-researcher, analyst, architect, assistant, code-reviewer, coder, customer-support, data-scientist, debugger, devops-lead, doc-writer, email-assistant, health-tracker, hello-world, home-automation, legal-assistant, meeting-assistant, ops, orchestrator, personal-finance, planner, recipe-assistant, recruiter, researcher, sales-assistant, security-auditor, social-media, test-engineer, translator, travel-planner, tutor, writer
Integrations
Integration templates define MCP server connections with transport configuration, required environment variables, and setup instructions.
id = "github"
name = "GitHub"
category = "devtools"
[transport]
type = "stdio"
command = "npx"
args = ["-y", "@modelcontextprotocol/server-github"]
[[required_env]]
name = "GITHUB_PERSONAL_ACCESS_TOKEN"
is_secret = true
25 integrations across 6 categories:
| Category | Integrations |
|---|---|
| DevTools | bitbucket, github, gitlab, jira, linear, sentry |
| Data | elasticsearch, mongodb, postgresql, redis, sqlite |
| Productivity | dropbox, gmail, google-calendar, google-drive, notion, todoist |
| Communication | discord, slack, teams |
| Cloud | aws, azure, gcp |
| AI Search | brave-search, exa-search |
Providers
Provider files define LLM providers and their models with pricing, context windows, and capability flags. See schema.toml for the full field reference.
49 providers including: Anthropic, OpenAI, Google Gemini, DeepSeek, Groq, Mistral, Cohere, xAI, Together, Fireworks, Ollama (local), LM Studio (local), vLLM (self-hosted), Alibaba Coding Plan, and many more.
339 models with metadata for each: pricing (input/output per token), context window size, capability flags (vision, function calling, streaming), and tier classification.
Aliases
Global model alias mappings in aliases.toml let users reference models by short names:
"sonnet" = "claude-sonnet-4-6"
"gpt4" = "gpt-4o"
"flash" = "gemini-2.5-flash"
"deepseek" = "deepseek-chat"
Models can also define aliases directly in their provider TOML files, which are auto-registered at load time.
Plugins
Plugins extend agent capabilities with memory systems, safety guardrails, and conversation utilities.
10 plugins: auto-summarizer, context-decay, conversation-logger, episodic-memory, guardrails, keyword-memory, sentiment-tracker, todo-tracker, topic-memory, user-profile
Skills
Reusable prompt templates or Python scripts that agents can invoke.
[skill]
name = "meeting-agenda"
description = "Generate a structured meeting agenda"
[runtime]
type = "promptonly"
[prompt]
template = "Create a meeting agenda for: {{topic}}"
Workflows
Pre-built multi-agent workflow definitions in workflows/<name>.toml orchestrate multiple agents for complex tasks.
9 workflows: brainstorm, code-review, content-pipeline, content-review, customer-support, data-pipeline, research, translate-polish, weekly-report
Templates
Starter templates in templates/ for creating new content. Copy a template to get started quickly:
cp templates/agent.toml agents/my-agent/agent.toml
cp templates/HAND.toml hands/my-hand/HAND.toml
6 templates: agent.toml, HAND.toml, integration.toml, plugin.toml, provider.toml, skill.toml
See also docs/content-guide.md for naming conventions and contribution guidelines.
Usage
Install from Registry
# Update all registry content
librefang catalog update
# Install a specific hand
librefang hand install browser
# Install a specific integration
librefang integration install github
Custom Local Content
Create custom content locally without submitting to this registry:
# Custom agent
mkdir -p ~/.librefang/agents/my-agent
# Edit ~/.librefang/agents/my-agent/agent.toml
# Custom model aliases
# Add to ~/.librefang/model_catalog.toml
Validation
python scripts/validate.py
Validates all content files for correctness: required fields, valid types, non-negative costs, no duplicate IDs.
Contributing
- Fork this repository
- Add or edit content in the appropriate directory
- Run validation:
python scripts/validate.py - Submit a Pull Request
See CONTRIBUTING.md for detailed instructions for each content type.
License
MIT License. See LICENSE.