Skip to content

Add Claude Code and Codex to the AI connector modal and the docs - #8499

Merged
dimitrieh merged 6 commits into
mainfrom
ai/coding-agent-tabs
Sep 15, 2026
Merged

dimitrieh merged 6 commits into
mainfrom
ai/coding-agent-tabs

Conversation

@dimitrieh

Copy link
Copy Markdown
Contributor

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:

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: Claude Code 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 PostHog 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 claude mcp add command 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:

  • CLIENTS parses; every entry has a name, a glyph or logo, a step-two label and URL.
  • Both prompt builders return the passed endpoint verbatim, so a self-hosted origin survives into the copied text.
  • The doc's #clients-without-a-sign-in-flow anchor still resolves after the heading split.
  • Not verified: the modal rendered in a running platform. Worth a click-through: six tabs, the two coding-agent tabs showing the prompt rather than the address, and Copy putting the whole sentence on the clipboard.

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.
@dimitrieh
dimitrieh requested a review from andypalmi September 14, 2026 14:08
dimitrieh and others added 2 commits September 14, 2026 16:09
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.
@dimitrieh

Copy link
Copy Markdown
Contributor Author

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 <component :is> and its registration change were no longer needed, so they are reverted. The diff is now the two new clients plus the overridable step one.

Rebased onto your merge of main.

@codecov

codecov Bot commented Sep 14, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 76.92%. Comparing base (b5c371b) to head (b8180ae).

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           
Flag Coverage Δ
backend 76.92% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

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.
@dimitrieh

Copy link
Copy Markdown
Contributor Author

@andypalmi @cstns FlowFuse/website#5800 has been merged, can you look into this one?

@dimitrieh
dimitrieh merged commit 4d1e317 into main Sep 15, 2026
32 checks passed
@dimitrieh
dimitrieh deleted the ai/coding-agent-tabs branch September 15, 2026 13:58

This branch was successfully deployed

1 active deployment
staging b8180aef Deployed Sep 15, 2026 by dimitrieh via Remove application #11651
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