Commit Graph
31 Commits
Author SHA1 Message Date
Evan 05bdf02169 feat(workflows): expand template library from 9 to 22 + multiline string cleanup (#36)
* feat(workflows): add 13 workflow templates across engineering, business, and productivity

Engineering:
- bug-triage: reproduce path → root cause → fix plan
- api-design: resource model → endpoints → OpenAPI spec
- incident-postmortem: timeline → RCA → full postmortem report
- test-generation: code analysis → edge cases → full test suite
- refactor-plan: smell analysis → prioritised opportunities → migration plan

Business:
- competitor-analysis: profiles → SWOT → strategy report
- product-spec: problem definition → user stories → full PRD
- market-research: landscape → segments → research report

Productivity/Thinking:
- meeting-summary: raw notes → structured summary → follow-up email
- decision-matrix: criteria → weighted scoring → recommendation memo
- learning-plan: gap analysis → roadmap → week-1 day-by-day plan
- job-application: job analysis → tailored resume → cover letter → interview prep
- blog-post: research → outline → draft → SEO optimisation

Closes #1912 on librefang/librefang

* fix(workflows): overhaul existing 9 templates

- data-pipeline: redesigned — original 'extract from URL' step was
  broken (LLMs cannot fetch URLs); replaced with paste-data approach
  (profile → clean_transform → analyse) with analysis_goal parameter
- translate-polish: added target_language and register parameters;
  added back-translation step for accuracy verification
- weekly-report: added team/audience parameters, richer extraction
  step, added Metrics and Notes sections
- content-pipeline: added audience/tone parameters, added outline step
  between research and writing
- content-review: fix category 'content' → 'creation'
- customer-support: fix category 'support' → 'business'

* style(workflows): convert all prompt_template strings to TOML multiline syntax

Replace \n escape sequences with real newlines using triple-quote
multiline strings ("""...""") across all 22 workflow templates.
No content changes — formatting only.

* style(hands): replace \n escape in reddit writer format example with multiline code block
2026-04-01 18:21:09 +08:00
Chukwuebuka (Gaus Octavio ) 98e6601249 fix(researcher): add memory_list tool to researcher hand (#31)
The researcher hand was trying to call memory_list but lacked the capability,
causing 'Tool execution failed: Permission denied' errors.

This fix adds memory_list to the tools list in the researcher hand's HAND.toml.

Fixes: librefang/librefang#1774
2026-03-31 22:56:34 +08:00
Evan d012a4a26d feat: add tags = ["popular"] to top hands and channels (#24) 2026-03-25 13:31:13 +09:00
Evan 1e8f75b120 feat: add Chinese (zh) i18n for all hand agents (#23)
Add [i18n.zh.agents.*] sections to all 15 HAND.toml files,
providing Chinese translations for agent names and descriptions.

Total: 51 agent translations across 15 hands.
2026-03-25 12:44:20 +09:00
Evan 9b24879c4f feat: add i18n descriptions to all hands and channels (#22)
Add [i18n.zh], [i18n.zh-TW], [i18n.ja], [i18n.ko], [i18n.de], [i18n.es]
sections with translated descriptions to:
- 15 Hand TOML files (hands/*/HAND.toml)
- 44 Channel TOML files (channels/*.toml)

This enables the website to display localized Hand and Channel descriptions
based on the user's selected language.
2026-03-25 12:25:57 +09:00
Evan 1440059e99 fix: add shell execution rules to collector hand system prompt (#20) 2026-03-25 02:39:39 +09:00
Evan ecc5215cae feat(hands): add Creator Hand for media generation (#17) 2026-03-23 14:09:51 +09:00
Evan 945bbbd763 chore(hands): bump all HAND.toml versions to 1.1.0 (#16)
* chore(hands): bump all HAND.toml versions to 1.1.0

Triggers version-aware sync in librefang runtime (librefang/librefang#1530).
Previously sync_subdirs() skipped existing hands regardless of version.
With the runtime fix, bumping from 1.0.0 → 1.1.0 ensures users get
updated hand definitions on next registry sync.

* chore: fix taplo formatting for 4 agent.toml files

* fix(hands): fix invalid install fields in analytics and browser

- analytics: `linux` → `linux_apt`/`linux_dnf`/`linux_pacman` (parser
  only recognizes platform-specific variants, not generic `linux`)
- analytics: remove `pip = "python3 --version"` (version check, not
  an install command)
- browser: remove `pip = "python3 --version"` (same issue)

* fix: enrich sub-agent prompts and add missing requires across all hands

- analytics: fix linux → linux_apt/dnf/pacman, remove invalid pip check,
  enrich analyst and modeler sub-agent prompts
- apitester: add [[requires]] for curl
- browser: remove invalid pip check, enrich researcher and extractor prompts
- clip: enrich editor and transcriber sub-agent prompts
- collector: enrich scout, scholar, and localizer sub-agent prompts
- devops: add [[requires]] for curl, git, docker (optional), GITHUB_TOKEN
  (optional), enrich sub-agent prompts
- lead: enrich outreach, recruiter, and messenger sub-agent prompts
- linkedin: enrich content and researcher sub-agent prompts
- predictor: enrich orchestrator, planner, and modeler sub-agent prompts
- reddit: enrich monitor and composer sub-agent prompts
- strategist: enrich architect, counsel, and analyst sub-agent prompts
- trader: enrich accountant and researcher sub-agent prompts
- twitter: enrich curator and composer sub-agent prompts
2026-03-23 11:21:29 +09:00
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
Evan Hu 506a201329 feat: muti agent hand 2026-03-23 02:41:02 +09:00
Evan Hu fd752c50e2 fix(hands): fix TOML parse error in clip i18n — unescaped quotes 2026-03-23 01:24:13 +09:00
Evan Hu 6cb1d904bf fix(hands): resolve merge conflict markers left by PR #12
Remove git conflict markers from linkedin, reddit, and twitter
HAND.toml and SKILL.md files. Keep the more complete version
(with new settings i18n translations) and fix French/Spanish
accent issues (dépasser, entraîner, média, réponse, conexión,
imágenes, Mode de croissance).
2026-03-23 01:22:54 +09:00
Evan Hu 825d6d389d fix(twitter): use single quotes for i18n string containing Chinese quotes 2026-03-23 00:51:26 +09:00
Evan Hu 3da827e6da feat(hands): improve linkedin, reddit, and twitter hands
- linkedin: API fallback strategy, queue JSON schema, 3 new settings, algorithm deep dive, crisis management
- reddit: concrete rule parsing, anti-spam/shadowban detection, engagement scoring, new settings
- twitter: structured trend analysis, queue schema, engagement criteria, algorithm awareness, new settings
2026-03-23 00:51:26 +09:00
Evan Hu ed595230cf feat(hands): improve 6 lower-scoring hands — system prompts and SKILL.md depth
- browser: 5→7 phases, SPA detection, error recovery decision tree, 3 new settings
- strategist: framework integration methodology, 7 anti-patterns, uncertainty quantification
- lead: remove clip language, add BANT/MEDDIC qualification, 3 new settings + CRM export
- researcher: CRAAP→CRAAP+, 7-step conflict resolution, 6-item cognitive bias audit
- collector: concrete change classification (structural/content/metadata), 5-factor scoring, 2 new settings
- apitester: OWASP Top 10 checklist, 4 load test profiles, contract testing phase, GraphQL/Webhook patterns
2026-03-23 00:31:13 +09:00
Evan Hu 33d279889c feat(hands): complete i18n fixes, SKILL.md enhancements, and README overhaul
- Fix French accent characters (é/è/ê/ç/â/ô) across all 14 HAND.toml files
- Fix German special characters (ä/ö/ü/ß) across all 14 HAND.toml files
- Add category translations to all 6 i18n language blocks in all 14 hands
- Enhance SKILL.md content for 9 hands with practical examples and workflows
- Trim bloated SKILL.md files (apitester 1400→892, devops 1301→870)
- Rewrite root README.md with accurate stats, complete hand/integration tables
- Update hands/README.md with full 14-hand listing and i18n documentation
2026-03-23 00:18:18 +09:00
Evan Hu 315f955ce2 fix(i18n): move [i18n.zh] sections to end of HAND.toml files
The i18n table was placed before category/icon/tools, causing TOML
parser to swallow subsequent keys into the i18n table.
2026-03-22 23:04:17 +09:00
Evan Hu 123350e2b2 feat(i18n): add Chinese translations for all 14 hands
Add [i18n.zh] sections with localized name and description to every
HAND.toml in the registry.
2026-03-22 22:55:34 +09:00
Evan Hu fb45e39dcb fix(hands): migrate Reddit auth to client_credentials, document Twitter OAuth 1.0a
Reddit:
- Remove REDDIT_USERNAME and REDDIT_PASSWORD requirements (deprecated
  password grant)
- Switch to grant_type=client_credentials (app-only auth)
- Update system_prompt and SKILL.md auth examples

Twitter:
- Add optional OAuth 1.0a credentials (API key/secret, access
  token/secret) for user-context operations
- Document Bearer Token vs OAuth 1.0a authentication modes in SKILL.md
- Note which endpoints require user-context auth
2026-03-22 20:28:16 +09:00
Evan Hu 8923c4e0c3 docs(browser): expand SKILL.md with comprehensive browser automation guide
Expand from ~124 to ~816 lines covering navigation, form handling,
screenshots, JavaScript execution, error handling patterns, and
best practices for the browser automation hand.
2026-03-22 17:57:57 +09:00
Evan Hu 68c9c65e6e feat: add missing [metadata] to clip, linkedin, reddit, twitter
All 14 hands now have consistent metadata sections with frequency,
token_consumption, and default_active fields.
2026-03-22 17:38:40 +09:00
Evan Hu 0e06459613 feat(apitester): add approval_mode for destructive operations
Queue write requests, load tests, and security tests for user review
instead of executing directly. Default enabled for safety.
2026-03-22 17:06:29 +09:00
Evan Hu 8f0cdfe5ab fix: format TOML files with taplo 2026-03-22 16:56:37 +09:00
Evan Hu 5d947e8da0 feat(hands): add version fields, approval_mode, and stronger routing aliases
- Add version = "1.0.0" to all 14 hands
- Add approval_mode toggle to clip and devops hands (queue actions
  for user review before executing)
- Strengthen routing aliases for analytics, apitester, browser,
  collector, devops, lead, predictor, researcher, strategist
2026-03-22 16:42:27 +09:00
EvanandClaude Opus 4.6 8f2244eb6f chore: remove router agent (#5)
* chore: remove router agent

builtin:router has been replaced by LLM intent routing in the kernel.
Assistant is now the sole entry point — see librefang/librefang#1336.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* style: format all TOML files with taplo

Fix CI taplo format check by running `taplo fmt` on all 132 TOML files.

---------

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-21 03:26:11 +09:00
Evan Hu 6cc5c745be fix(docs): add missing settings to clip, reddit, trader, twitter READMEs
- clip: add ElevenLabs API Key setting
- reddit: add Minimum Karma to Post setting
- trader: add Alpaca API Key and Secret Key settings
- twitter: add Twitter Bearer Token setting
2026-03-21 02:31:52 +09:00
Evan Hu 4b38372463 docs: add README for every subdirectory
33 agent READMEs, 14 hand READMEs, 2 plugin READMEs
(echo-memory + hooks), and 2 skill READMEs
(custom-skill-prompt + custom-skill-python).

Each README documents the component's purpose, configuration,
and usage based on its TOML definition.
2026-03-21 02:27:34 +09:00
Evan Hu 206169c1d7 docs: add README for every content directory
Each directory (agents, hands, integrations, plugins, providers,
scripts, skills) now has a README documenting its TOML format,
current contents, and contribution steps.
2026-03-21 02:24:22 +09:00
Evan Hu d1bc8ead69 chore: cleanup repo and enhance validation
- Add .gitignore (.DS_Store, .vscode, __pycache__)
- Remove stale .gitkeep files (directories have content now)
- Expand schema.toml to document all 6 content types (agent, hand, integration, skill, plugin)
- Add plugin validation and contribution guide
- Add id/name vs directory name consistency checks
- Add cross-type routing alias collision detection (14 warnings found)
2026-03-21 02:21:24 +09:00
Evan Hu 17d32ed4a7 feat: sync content definitions from core repo
Copy all TOML content definitions from librefang core repo:
- 33 agent definitions (agents/*/agent.toml)
- 14 hand definitions with docs (hands/*/HAND.toml + SKILL.md)
- 25 integration templates (integrations/*.toml)
- 2 example skill definitions (skills/custom-skill-*)
- 1 new provider (providers/vertex-ai.toml)

Part of the framework-vs-content registry split (RFC v0.7).
2026-03-21 02:06:07 +09:00
Evan Hu ded26ce300 feat: add dir 2026-03-21 01:57:04 +09:00