Two related drift traps, both from hand-typed numbers/lists that no guard
watches:
1. CONTRIBUTING had no "how to add a tool" checklist, and its wording
("all output is gitignored") implied gitignoring was automatic — so
tool contributors kept committing generated integrations/<tool>/ output.
2. The division set and agent/division counts were hardcoded in prose in
several places and had already gone stale (CONTRIBUTING said "16" and
omitted healthcare; EXECUTIVE-BRIEF said "9 divisions").
Changes:
- Add an "Adding a Tool Integration" checklist to CONTRIBUTING (discuss-first,
reuse an existing `format`, the ~5-file touch list incl. the required
.gitignore rule, run check-tools.sh). Harmonize the "committed build
output" policy line to point at it.
- De-hardcode the division list in CONTRIBUTING — defer to divisions.json.
- Stop scattering roster counts: strategy/EXECUTIVE-BRIEF ("9 divisions") and
check-agent-originality.sh ("184-agent library") drop the number entirely;
README keeps a showcase stat but softens "232 across 16" to "230+ across
every division" so it never becomes a lie as the roster grows.
Claude-Session: https://claude.ai/code/session_01WKnDRWM4izsB8WAXKszhsq
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
* Add Mistral Vibe support for Agency agents
- Add Mistral Vibe entry to tools.json with proper configuration
(id, label, kebab, format, installKind, dest, detection, version)
- Implement convert_vibe() function in convert.sh for Mistral Vibe's format
- Generates TOML agent configuration files (~/.vibe/agents/<slug>.toml)
- Generates markdown prompt files (~/.vibe/prompts/<slug>.md)
- Each agent gets agent_type and system_prompt_id (no hardcoded active_model)
- Add install_vibe() function in install.sh with full feature support
- Copies both agent TOML and prompt MD files
- Supports division/agent filtering and environment variable overrides
- Uses VIBE_HOME environment variable for custom install paths
- Add Mistral Vibe detection and tool labeling
- Add Mistral Vibe to all necessary case statements and arrays
- Update README.md to document Mistral Vibe support
- All changes validated with scripts/check-tools.sh
Mistral Vibe uses a two-file approach per agent:
- ~/.vibe/agents/<slug>.toml for agent configuration
- ~/.vibe/prompts/<slug>.md for system prompts
Users can specify active_model in their agent TOML files or rely on their
Vibe configuration default model.
Usage: ./scripts/install.sh --tool vibe [--division X] [--agent Y]
Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
* Address PR #658 review feedback: add .gitignore, README, and fix icon
- Add integrations/vibe/README.md documenting the Mistral Vibe integration
- Update .gitignore to ignore integrations/vibe/agents/ and prompts/
- Update convert.sh usage() to include vibe in the tool list
- Fix tools.json: change vibe icon from 'mistral' to null (no mistral.svg)
- Bonus: update vibe accent color from #FF69B4 to #FA520F (Mistral brand orange)
Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
---------
Co-authored-by: Mistral Vibe <vibe@mistral.ai>
The catalog now has a native desktop app (macOS/Linux/Windows) that
browses the whole roster and installs it into Claude Code, Cursor,
Codex, Gemini, Osaurus and more — no clone, no scripts, auto-updating.
- Add a top callout banner + a "Download app" release shield for discovery.
- Lead Quick Start with "Option 1: Install the app (Recommended)"; the
CLI paths shift down one (Claude Code → Option 2, Reference → 3,
Other Tools → 4) and stay intact for command-line users.
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Account for the 9 agents merged in #450-456, #568, #569:
- README: add 3 Engineering rows (Multi-Agent Systems Architect,
Drupal/WordPress Shopping Cart Engineer) + 6 Specialized rows
(CFO, ESG & Sustainability Officer, Data Privacy Officer,
Operations Manager, M&A Integration Manager, Organizational
Psychologist); bump Stats + acknowledgements 209 -> 218.
- install.sh: fix `--list` as the final argument aborting with
exit 1 under set -e (shift 2 with only one positional). Now
treats a missing/flag-like value as "all" and shifts once.
Roster drift is now zero (218 linked rows = 218 source agents);
convert/install auto-discover the new agents via AGENT_DIRS
(specialized/ + engineering/). lint: 0 errors, 218 files.
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
* feat: installer v2 — selective install, interactive TUI, consolidate cluster
One coherent, dependency-free installer (bash 3.2+, zero deps) that
consolidates 7 conflicting install.sh PRs and fixes#532.
Selective install (compose freely; empty = everything):
- --division / --agent / --agents-file filter across both source tools and
the flat converted outputs via a slug-based allow-set (#157, #487)
- --list [tools|teams|agents] and --dry-run
Install mechanics:
- --link symlink vs copy (#233); --path + env-var fallbacks (#216);
auto-run convert.sh when integration files are missing (#426);
resolve_tool_path dynamic detection (#327); set -e-safe increments (#505)
Interactive wizard (pure bash):
- Tools -> Teams -> Review, arrow-key nav, space toggle, a/n all/none,
live / search, live agent counts, inline OpenCode capacity warning,
alt-screen takeover with trap-based Ctrl-C restore, non-TTY fallback
#532: installing a subset keeps you under OpenCode's ~119 scanner cap
(upstream anomalyco/opencode#27988); installer warns when exceeded; README
documents it.
New scripts/lib.sh holds shared frontmatter/slug helpers (used by
convert.sh too) + ANSI/TUI primitives.
Closes#157, #216, #233, #327, #426, #487, #505.
Co-Authored-By: kienbui1995 <kienbui1995@users.noreply.github.com>
Co-Authored-By: Shiven0504 <Shiven0504@users.noreply.github.com>
Co-Authored-By: rounakkumarsingh <rounakkumarsingh@users.noreply.github.com>
Co-Authored-By: toukanno <toukanno@users.noreply.github.com>
Co-Authored-By: ilyaivasyk <ilyaivasyk@users.noreply.github.com>
Co-Authored-By: Jason2031 <Jason2031@users.noreply.github.com>
Co-Authored-By: ShaoJiaZhen <ShaoJiaZhen@users.noreply.github.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
* fix(installer): robust arrow-key reading (bash 3.2 integer timeouts + SS3)
read_key used a fractional -t 0.01 timeout, which bash 3.2 (/bin/bash on
macOS) doesn't support — so arrow-key escape bytes ([A/[B) leaked through
and were parsed as letter commands (toggling instead of moving). Rewrite
to read the sequence byte-by-byte with integer timeouts and handle both
CSI ([) and SS3 (O) cursor modes.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
* fix(installer): clear-to-end-of-line per row so frames don't bleed
draw_frame only cleared below the frame (\033[0J), so when a new screen's
lines were shorter than the previous screen's, the old tails (tool paths,
warnings) bled through on the right. Now erase-to-eol (\033[K) on every
line before the screen-clear.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
* feat(installer): 2-column grid for Tools/Teams on the Review screen
Replaces the wrapping space-joined 'Tools:'/'Teams:' lines with a compact
column-major 2-column grid (each item on its own line, like the selectors),
so long rosters stay readable and on-screen instead of wrapping.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
* feat(installer): Review layout — space after Teams, warning below Install
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
* feat(installer): consistent screen layout across all 3 screens
Standard vertical rhythm everywhere: pager -> description -> content ->
selection summary -> navigation -> warnings. Splits the selector footer
into separate summary/nav/warning lines (SEL_SUMMARY_FN/SEL_NAV/
SEL_WARN_FN) and reorders the Review screen to match.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: kienbui1995 <kienbui1995@users.noreply.github.com>
Co-authored-by: Shiven0504 <Shiven0504@users.noreply.github.com>
Co-authored-by: rounakkumarsingh <rounakkumarsingh@users.noreply.github.com>
Co-authored-by: toukanno <toukanno@users.noreply.github.com>
Co-authored-by: ilyaivasyk <ilyaivasyk@users.noreply.github.com>
Co-authored-by: Jason2031 <Jason2031@users.noreply.github.com>
Co-authored-by: ShaoJiaZhen <ShaoJiaZhen@users.noreply.github.com>
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Migrates Gemini CLI to native subagents (~/.gemini/agents/) + quotes zk-steward description. Rebased from #472; e2e-verified with real gemini v0.43.0. Closes#473.
Co-Authored-By: Tomo Wang <tomo_wang@163.com>
Adds 4 community-translation rows (pt-BR, ru, id, ar) maintained by @jnMetaCode. All target repos verified to exist with real content. Closes#549. Thanks @wali-reheman! 🙏
The README Stats and acknowledgements were stale (144 / 147 agents, "12
divisions") and 19 merged agents were missing from the division tables.
- Update both count statements to 203 agents across 14 divisions
- Add 19 missing roster rows: Design (1), Engineering (4), Marketing (5),
Project Management (1), Sales (1), Specialized (7)
- De-hardcode the Gemini CLI README ("61 Agency agents" -> "all Agency
agents") so it can't go stale again
Verified: every on-disk agent is now linked in the README (0 missing).
Thanks to the contributors whose agents are now cataloged — @epowelljr,
@hedonnn, @Subhodip-Chatterjee, @Shiven0504, @DKFuH, @ahteshamsalamatansari,
@ahruslan17, @lz-googlefycy, @jmlozano1990, @kriptoburak — and everyone
building out The Agency.
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Adds Codex as a conversion/install target: each agent → `~/.codex/agents/<slug>.toml` with the three required Codex fields (name, description, developer_instructions).
Validated: all 184 agents generate valid, parseable TOML (incl. 21k-char agents with embedded code blocks) via the PR's TOML basic-string escaper. Matches OpenAI's documented custom-agent schema.
Thanks @yunuskilicdev.
Adds finance/ to AGENT_DIRS in all 3 scripts, CI workflow trigger paths, CONTRIBUTING.md category list, and README.md division roster. Also fixes duplicate sales entry in lint-agents.sh.
Refined from #51 by @SiamakSafari — restructured into standard template
with proper YAML frontmatter, deliverable templates, and platform-specific
citation patterns.
Co-Authored-By: SiamakSafari <SiamakSafari@users.noreply.github.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Add Anthropologist, Geographer, Historian, Narratologist, and Psychologist
agents to support world-building and narrative design with scholarly rigor.
Update README with new Academic Division table.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Update README.md with complete Kimi Code CLI integration documentation.
- Add Kimi Code to Option 3 in Quick Start section
- Add Kimi Code to Supported Tools list
- Update installer UI example to show 11 tools
- Add tool-specific details section for Kimi Code
- Update roadmap to include Kimi Code
Users can now discover Kimi Code CLI support from the main README.