Repository navigation
Agent menu with "More agents", and an Agent Store in the Agent Lab - #3
Merged
Merged
Conversation
The composer's agent dropdown listed every local agent (two columns past six). It now shows the pinned agents, or the six most-used local ones until the person pins any, plus a More agents row that opens the full searchable list with a pin toggle per agent. Picks and pins are remembered per browser (ui/src/agentPicks.ts). The phone's agent sheet gains a search box and counts picks too. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01UhoMM8gopAmsPkcxdBbcze
…ore-gmnvow # Conflicts: # ui/src/i18n/fr.json
Agents become a fourth community gallery kind (server/gallery.py). The official Shell-B-Agents repository is a default source, and agent repositories added in Settings → Community join it. Installing goes through clean_agent: only the persona fields within the format's limits, tools cut to this Shell:B's agent tools, never the adult flag or another agent's id. The agent runs on the default agent's model unless it names a local model that is installed, never on a cloud model. Reinstalling updates the same agent and keeps the owner's model, context size and skills. The Agent Lab gets a Store pane with search, topic filters, what each agent can use, and Install / Chat / Edit. A fresh install is pinned to the agent menu. More agents in the composer menu and the phone's agent sheet link to the Store. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01UhoMM8gopAmsPkcxdBbcze
EveAeternam
marked this pull request as ready for review
October 13, 2026 02:13
3 of 5 tasks
EveAeternam
pushed a commit
that referenced
this pull request
Oct 13, 2026
fr.json: both sides appended strings; main's first, then this branch's. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01G13cXQwUfmo3PoJsiW8g8j
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Requested by Evie · project thread
What changed and why
Before: the agent dropdown listed every local agent, in two columns once there were more than six. Community agents in Shell-B-Agents had to be copied into the Agent Lab by hand, field by field.
After:
How:
ui/src/agentPicks.ts, same pattern asambience.ts).server/gallery.py, fetched like themes and installed only by the owner.clean_agentkeeps only the persona fields within the format's limits. It drops tools this Shell:B doesn't have and never accepts the adult flag or another agent's id.server/family.pynow marks agents as installable, pointing to "Agent Lab → Store".How you tested it
scripts/check.shpasses (compile, pyflakes, tests, tsc). Compile, pyflakes and tsc pass, and all tests pass except two that fail the same way on main in this container:integrity_test(runs as root, so its unreadable file is readable) andsmoke_test /api/models(no Ollama). The newgallery_test.test_agent_joins_the_roster_cleanedcovers the cleaning, model choice, update in place and owner-only install. I haven't tried the UI by hand in a running Shell:B yet.docs/changelog.jsont('…')with a French line inui/src/i18n/fr.json(appended at the end, not re-sorted; main's conflicting additions kept first)/api/gallery/{kind}and/api/gallery/installnow acceptagent)New dependencies
None.
🤖 Generated with Claude Code
https://claude.ai/code/session_01UhoMM8gopAmsPkcxdBbcze