Skip to content

New chat page: what Shell:B can do (everyday tasks, agents, apps) - #4

Merged
EveAeternam merged 3 commits into
mainfrom
claude/new-chat-capabilities-fjlaa3
Oct 13, 2026
Merged

EveAeternam merged 3 commits into
mainfrom
claude/new-chat-capabilities-fjlaa3

Conversation

@EveAeternam

@EveAeternam EveAeternam commented Oct 13, 2026 •

Copy link
Copy Markdown
Collaborator

Requested by Evie · project thread

What changed and why

Before: a new chat showed a greeting, the current agent's description and four starter cards for that agent. Nothing said which other agents exist or what the apps do, so a light user had no way to discover them.

After: below the starter cards, a What Shell:B can do section has three tabs.

  • Try something: nine everyday tasks (prepare for a job interview, polish a cover letter, identify a sea creature, step back into the Neolithic, get notes on your writing, research a topic, summarise a document, make a picture, get a quick answer). Each card names the agent that answers it; clicking switches the new chat to that agent and sends, so follow-ups stay with it.
  • Agents: every chat agent with its title and description, cloud agents in their own group. Picking one sets it for the chat, and the starter cards above change to match. Links to the Agent Lab. Aphrodite (opt-in, 18+) is left out of this screen, since others can see it; it stays in the agent menu.
  • Apps: every Make / Know / Run app with its one-line hint (the same APPS list the rail uses, so guests' cells hide host-only apps), opening it on click.

The page is the same for everyone: the section always shows, always opens on Try something, and nothing is remembered per user or per browser.

How: a new ui/src/components/NewChatHome.tsx replaces the inline empty state in both App.tsx and mobile/MobileApp.tsx. A "Try something" card calls selectAgent, then a small effect sends once the agent has switched (checked: one POST /api/conversations with agentId: thalassa, then one chat turn with the same agent). Also fixes Synthfield's card counter to use decimal-leading-zero so a tenth card reads 10, not 010.

Related: PR #3 reworks the agent dropdown (most-used or pinned agents, "More agents"). This PR does not touch the dropdown; the Agents tab here is a showcase that calls the same selectAgent.

How you tested it

  • scripts/check.sh passes (compile, pyflakes, tests, tsc). Ran tsc --noEmit, npm run build and tests/i18n_test.py cleanly; no Python changed. The server suites need the Spark's venv.
  • User-visible change: entry added at the top of docs/changelog.json
  • New UI strings wrapped in t('…') with a French line in ui/src/i18n/fr.json (appended at the end, not re-sorted)
  • Manual or API docs updated where a route, tool or table changed (none changed)
  • No secrets, chats or personal data in the diff or the screenshots

Rendered in Chromium against a mocked API (desktop 1280px and phone 390px, Synthfield skin), not yet in a running Shell:B.

Screenshots

Taken locally; shared in the project thread (Try something, Agents, Apps, phone).

New dependencies

None.

🤖 Generated with Claude Code

https://claude.ai/code/session_01G13cXQwUfmo3PoJsiW8g8j

Below the agent's starter cards, the empty chat now shows three tabs:
Try something (everyday tasks, each switching the chat to the agent best
at it, then sending), Agents (who does what; picking one sets it for the
chat) and Apps (every app with its one-line hint). Hide collapses it to a
single link, remembered per browser. Shared by the desktop and phone UIs.

Synthfield's card readout uses decimal-leading-zero so a tenth card reads
10, not 010.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01G13cXQwUfmo3PoJsiW8g8j
@EveAeternam EveAeternam self-assigned this Oct 13, 2026
The section always shows and opens on Try something; nothing is remembered
per browser, so every person sees the same page.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01G13cXQwUfmo3PoJsiW8g8j
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
@EveAeternam
EveAeternam marked this pull request as ready for review October 13, 2026 02:19
@EveAeternam
EveAeternam merged commit cca6ffd into main Oct 13, 2026
2 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.

2 participants