Add Claude Code and Codex to the AI connector modal and the docs - #8499
Conversation
A coding agent installs the connector into itself, so its tab is one prompt and nothing else: Add the FlowFuse MCP tool at <this platform>/mcp. Then ask me to complete the sign-in in the browser that opens. The prompt is built from the platform's own origin, the same source the address step already used, so it is correct on Cloud and self-hosted with nothing for the reader to edit. Nothing here goes stale when a client changes how remote servers are added, which they do at different times and in different ways: one documents an mcp add subcommand, Codex documents only its config file and its UI. Modal changes: - Step one is overridable per client, so a tab can show a prompt instead of the bare address. Both go through the same copy path and the same event. - The tab glyph is chosen per client through <component :is> rather than one hardcoded icon. ServerIcon and CommandLineIcon are values now, not registered components. Docs: 'Command-line and editor agents' splits into a coding-agent section leading with the prompt, and a section for the rest. The hand-written mcp add command stays for anyone who wants it.
Codex takes the OpenAI mark already on the ChatGPT tab, and Claude Code takes the Anthropic mark already on the Claude tab. Same vendor either way, so the files already in this directory serve both new tabs. Replaces the heroicons command-line glyph the tabs shipped with in the previous commit. With no glyph left but ServerIcon, the dynamic <component :is> and the matching registration change are both unnecessary, so they go back to what main had and the diff shrinks to the two new clients plus the overridable step one.
|
Updated: both new tabs now carry the vendor mark instead of the command-line glyph. Codex takes the OpenAI mark already on the ChatGPT tab, Claude Code takes the Anthropic mark already on the Claude tab. With no glyph left but ServerIcon, the dynamic Rebased onto your merge of main. |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #8499 +/- ##
=======================================
Coverage 76.92% 76.92%
=======================================
Files 460 460
Lines 24782 24782
Branches 6610 6610
=======================================
Hits 19064 19064
Misses 5718 5718
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
Same defect as the website widget, and worse here because the modal is narrower. The endpoint block sets white-space: nowrap, which is right for an address you read left to right and paste, but it sizes the block to its content, so a prompt runs past the edge of the modal and the half you cannot see is the half that says what it does. Only the tabs carrying a prompt get the wrapping variant.
|
@andypalmi @cstns FlowFuse/website#5800 has been merged, can you look into this one? |
What
Adds a Claude Code tab and a Codex tab to the AI connector modal, and reworks the matching docs section.
A coding agent installs the connector into itself, so each tab is one prompt and nothing else:
The prompt is built from the platform's own origin, the same source the address step already used, so it is correct on Cloud and self-hosted with nothing for the reader to edit.
Nothing here goes stale when a client changes how remote servers are added, which they do at different times and in different ways: Claude Code documents an
mcp addsubcommand, Codex documents only its config file and its UI.Modal changes
<component :is>rather than one hardcoded icon.ServerIconandCommandLineIconare values now, not registered components.Docs
Command-line and editor agentssplits into a coding-agent section leading with the prompt, and a section for the rest. The hand-writtenclaude mcp addcommand stays for anyone who wants it.The widget on the docs page comes from the website, so its two new tabs arrive with FlowFuse/website#5800.
Conflicts with #8492 (the Gemini tab), which inserts into the same array. Whichever merges second needs a one-line rebase.
Testing
Checked statically, not by running the app:
CLIENTSparses; every entry has a name, a glyph or logo, a step-two label and URL.#clients-without-a-sign-in-flowanchor still resolves after the heading split.