fix(harness): title emission + codex capability block + MCP exposure#2
Merged
OmGuptaIND merged 4 commits intomainfrom Apr 21, 2026
Merged
fix(harness): title emission + codex capability block + MCP exposure#2OmGuptaIND merged 4 commits intomainfrom
OmGuptaIND merged 4 commits intomainfrom
Conversation
The prior flow delayed the initial title until the first turn finished, which meant the sidebar showed "New conversation" for the entire turn. Now emit the truncated user-question title as soon as the turn starts, and upgrade to the AI-generated title at the end only when it differs. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Add capabilitySummary and capabilityExample fields to DirectConnector and populate them across all 17 built-in connectors. These feed the harness-side capability block so codex sees ground truth about which services are live instead of relying on its training priors. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
…ilter Teach the codex app-server harness about the connectors and external MCP servers live in the current Anton session so the model answers "do you have access to X?" from ground truth instead of training priors. - Expose Anton's ConnectorManager AND McpManager tools to harness sessions via AntonToolRegistry. Previously external MCP tools never reached harness CLIs, even when the server was connected. - Bake an "Active Anton Connectors" block into developerInstructions once at thread/start under the `anton:` MCP namespace. Immutable for the thread, so no per-turn token cost. - Add an optional `surfaces?: string[]` allowlist to McpServerConfig so developer-machine MCP servers don't leak their tools into Slack / Telegram sessions. Undefined = all surfaces (default). - Log tools/list responses served over the harness IPC bridge and log the capability block install after thread/start resolves. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
- Add HarnessSetupModal for CLI install/login flow per provider - Add local-only accountStore (display name + avatar color, localStorage) - Wire Sidebar avatar/name to accountStore, open Settings on click - Route ModelSelector "manage" to Settings > models via custom event - Portal popovers/previews (project menu, image hover) to document.body - Randomized greeting tail on home screen - Routines "New" opens a draft conversation instead of inline create - Settings modal redesign and expanded index.css styles Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
OmGuptaIND
added a commit
that referenced
this pull request
Apr 21, 2026
### Other - fix(harness): title emission + codex capability block + MCP exposure (#2)
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.
Summary
Three related fixes to the harness / session stack:
thread/start.developerInstructionsonce per codex session so the model answers "do you have access to X?" from ground truth (live connectors + enabled MCP servers) instead of training priors. Immutable for the thread → no per-turn token cost.McpManagerintoAntonToolRegistryso external MCP server tools reach harness CLIs. Previously harness sessions received zero tools from user-added MCP connectors even when they were connected.Supporting changes:
capabilitySummary+capabilityExample(17 built-in connectors updated).surfaces?: string[]onMcpServerConfig(default = all surfaces) so dev-machine MCP servers don't leak into Slack / Telegram sessions. Filter applied in bothMcpManager.getAllTools(surface)andcollectLiveConnectorsForPrompt.tools/list served to harnesson every IPC response; log capability-block install afterthread/startresolves.Commits
fix(session): emit truncated title on first turn, upgrade on AI titlefeat(connectors): declare capability metadata per connectorfeat(harness): thread-start capability block, MCP exposure, surface filterTest plan
built harness tool mapwithcoreToolCount,connectorToolCount,mcpToolCountcapability block installed via thread/startwithliveConnectorIdstools/list→ logstools/list served to harnesswith the fulltoolNamesarraysurfaces: ['desktop']→ tools show in desktop sessions, absent in Slack / Telegram sessions🤖 Generated with Claude Code