Skip to content

feat(app): the Bot agency, ready-made bots to add to a crew (G3) - #206

Merged
httpsphl merged 1 commit into
mainfrom
feat/bot-agency-app
Oct 6, 2026
Merged

httpsphl merged 1 commit into
mainfrom
feat/bot-agency-app

Conversation

@httpsphl

@httpsphl httpsphl commented Oct 6, 2026

Copy link
Copy Markdown
Owner

What

G3 of the bot catalog (spec 26.5): the Bot agency screen.

  • A grid of the daemon's 12 roles, with category filters and search. It opens in a window from a new "Bot agency" button on the crew page and, for a crew with only its chief (or nobody), sits on the page itself as "Who do you want on your crew?". The invitation is decided when the crew opens and stays while it is open, so the owner can add several bots and see each one join.
  • Each card: mascot, name, category, one line, Add to crew and Learn more.
  • Learn more replaces the grid with the role in full (what it does, when to call it, who it works with) and, under Details, the model, effort and instructions the bot is told (read-only, English).
  • Add calls catalog.add with the name and role in the owner's language; a second add of the same role becomes "Name 2". The card says the bot joined the crew and offers Customize, which opens the new bot's details.
  • Texts in en, pt-BR and es (i18n/*/catalog.ts). A test reads crates/botloftd/catalog/*.toml and fails if a sheet has no text in any of the three languages; the fake daemon lists the same twelve ids.
  • Spec 26.5 updated to what was built.

Existing tests

Three tests asserted that the last call was an archive or delete. A crew that becomes empty now also loads the agency, so they ignore catalog.list (App.test.tsx, delete.test.tsx, botMenu.test.tsx).

Tests

pnpm check (tsc, biome, 445 tests), 11 new. Also checked in the browser preview against the fake daemon (pt-BR, dark theme): the grid, Learn more, adding, and the invitation on a new crew; no console errors.

Manual test (real Claude Code)

Create each of the 12 bots from the agency and give each a typical task (for example: Developer fixes a small bug, Researcher answers a question with sources, Designer makes a landing page, Customer Support drafts a reply from a given FAQ). Check the bot follows its sheet: asks before risky steps, hands back in the shape the sheet describes and does not act outside its role.

Notes

Independent of #205 (G2, chief tools); no conflicts expected.

A grid of the daemon's twelve roles with category filters and search, shown in a window opened by a button on the crew page and, for a crew with only its chief, on the page itself. Each card has Add to crew and Learn more; Learn more shows what the bot does, when to call it, who it pairs with and, under Details, what it is told. Adding uses catalog.add with the name and role in the owner's language and a second add gets 'Name 2'. Customize opens the new bot's details. Texts in en, pt-BR and es; a test checks every sheet in crates/botloftd/catalog has text in all three. Spec 26.5 updated to what was built.
@httpsphl
httpsphl enabled auto-merge October 6, 2026 12:45
@httpsphl
httpsphl merged commit 35827a5 into main Oct 6, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant