Skip to content

[codex] add agent-aware Wingman chat channels#208

Merged
hydro13 merged 1 commit into
mainfrom
codex/agent-aware-wingman-chat
May 5, 2026
Merged

[codex] add agent-aware Wingman chat channels#208
hydro13 merged 1 commit into
mainfrom
codex/agent-aware-wingman-chat

Conversation

@hydro13
Copy link
Copy Markdown
Owner

@hydro13 hydro13 commented May 5, 2026

Summary

  • Adds a built-in Tandem local Wingman chat backend so MCP/API agents can read and reply in the panel without OpenClaw installed on the host.
  • Makes the Wingman chat selector agent-aware: only channels for paired Connected Agents are shown, and a lone Codex binding is labeled Codex instead of being mirrored through Claude.
  • Adds local chat bus API aliases/status/wait/clear routes and MCP chat tools for reply, wait, typing, and status while preserving OpenClaw and Claude backends for configured agents.

Validation

  • npx tsc — passed with zero errors.
  • npx vitest run src/config/tests/config.test.ts src/api/tests/routes/media.test.ts src/mcp/tests/chat.test.ts — 136 tests passed.
  • Manual: Tandem Wingman chat showed only Codex when Codex was the only connected agent, accepted Robin messages, and rendered Codex replies through the Tandem local chat bus.

Notes

  • Draft PR because this workspace also has separate local Agent API port/bootstrap changes that are intentionally excluded from this PR.
  • Before merge, this feat: PR should get the normal release/version bump required by the repo policy.

What was built/changed:
- New files: shell/chat/tandem-local-backend.js
- Modified files: shell/index.html, shell/js/wingman/chat.js, shell/js/wingman/chat-streaming.js, src/api/routes/media.ts, src/panel/manager.ts, src/ipc/handlers.ts, src/preload/panel.ts, src/mcp/tools/chat.ts, src/mcp/tests/chat.test.ts, src/api/tests/helpers.ts, src/api/tests/routes/media.test.ts, src/config/manager.ts, src/config/tests/config.test.ts, CHANGELOG.md, TODO.md
- New API endpoints: GET /chat/messages, POST /chat/messages, DELETE /chat/messages, GET /chat/status, GET /chat/wait

Why this approach:
- Adds a Tandem-local chat backend for MCP/API agents while preserving OpenClaw and Claude backends for configured agents.
- Filters Wingman chat tabs from Connected Agents so Codex no longer appears through the legacy Claude channel.

Tested:
- npx tsc: zero errors
- npx vitest run src/config/tests/config.test.ts src/api/tests/routes/media.test.ts src/mcp/tests/chat.test.ts: 136 tests passed
- Manual: Tandem Wingman chat showed only Codex when Codex was the sole connected agent, accepted Robin messages, and rendered Codex replies through the local chat bus
@hydro13 hydro13 self-assigned this May 5, 2026
@hydro13 hydro13 added enhancement New feature or request WindowsOS labels May 5, 2026
@hydro13 hydro13 marked this pull request as ready for review May 5, 2026 21:10
@hydro13 hydro13 merged commit 51ef38f into main May 5, 2026
2 of 8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request WindowsOS

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant