Webex Copilot Bridge
A VS Code extension that bridges a Webex room to GitHub Copilot. Send instructions from your phone via Webex, and Copilot executes them autonomously on your laptop — with full access to Robin skills, MCP tools, terminal, and file system.
How It Works
Phone (Webex) ──@mention──▶ Webex Room ◀──poll── VS Code Extension
│
◀──reply──────────────────────────────── Bridge (LM API)
│
┌──────┴──────┐
│ Robin Agent │
│ Skills + MCP │
│ Shell + Files│
└─────────────┘
Two ways to interact:
- From Webex (phone/desktop) — @mention the bot, Copilot processes it, replies in-thread
- From VS Code — type
@webex <instruction> in the Copilot Chat panel
Uses your existing GitHub Copilot subscription — no separate API keys needed.
Features
- Always listening — Polls Webex room every 3 seconds, auto-starts on VS Code launch
- Robin Agent integration — Loads
robin.agent.md instructions, hero profile, and pre-scans all skills
- Full skill access — Discovers skills from
skills/, skills-extras/, skills-local/ directories
- MCP tools — All VS Code registered MCP tools (Webex, ServiceNow, Splunk, GitHub, Jira, etc.)
- Silent execution — Terminal and file operations run without approval dialogs
- Threaded responses — Each task gets a clean Webex thread with live progress updates
- Session management —
/new to reset, conversation history preserved across messages
- Secure — Only your email triggers execution; bot token in VS Code secret storage
Prerequisites
- VS Code with GitHub Copilot (paid subscription)
- A Webex Bot (create at developer.webex.com)
- For Robin skills: the Robin repo open as your VS Code workspace
Setup
1. Install the Extension
From .vsix:
code --install-extension webex-copilot-bridge-0.1.0.vsix
From source:
git clone https://github.com/cisco-it-networking/webex-copilot-bridge.git
cd webex-copilot-bridge
npm install
npm run compile
npx @vscode/vsce package --allow-missing-repository <<< "y"
code --install-extension webex-copilot-bridge-0.1.0.vsix
2. Create a Webex Bot
- Go to developer.webex.com/my-apps/new/bot
- Fill in Bot Name, Username, Icon, Description
- Click Add Bot — copy the Bot Access Token (shown only once!)
- Add the bot to your target Webex room
Cmd+Shift+P → Webex Bridge: Configure
- Enter your Bot Token (stored securely in VS Code secret storage)
- Set your Allowed Email (only your messages trigger execution)
- Set your Room ID in VS Code settings (
webexBridge.roomId)
4. Start Listening
Cmd+Shift+P → Webex Bridge: Start Listening
Or enable auto-start in settings:
"webexBridge.autoStart": true
Usage
Webex Room Commands
| Command |
Description |
@bot /new |
Start a new conversation session |
@bot /status |
Show current session info |
@bot /help |
Show available commands |
@bot <anything> |
Processed by Copilot with Robin skills |
VS Code Chat
@webex check INC1234567
@webex what devices are unreachable in CatC?
@webex run the tests and show failures
VS Code Commands
| Command |
Description |
| Webex Bridge: Start Listening |
Begin polling the Webex room |
| Webex Bridge: Stop Listening |
Stop the poller |
| Webex Bridge: New Session |
Clear conversation history |
| Webex Bridge: Configure |
Set bot token and email |
Settings
| Setting |
Default |
Description |
webexBridge.roomId |
(empty) |
Webex Room ID to monitor |
webexBridge.allowedEmail |
(empty) |
Your email — only this user triggers AI |
webexBridge.pollIntervalSeconds |
3 |
Polling interval in seconds |
webexBridge.autoStart |
false |
Start listening on VS Code launch |
Robin Skills Integration
When the Robin repo is your open workspace, the bridge automatically:
- Loads Robin agent instructions from
.github/agents/robin.agent.md
- Loads your hero profile from
hero.md
- Pre-scans all skills from
skills/, skills-extras/, skills-local/ directories
- Invokes handlers via
.venv/bin/python skills/<name>/handler.py <subcommand>
- Loads env vars — each handler calls
load_project_env() to read .env automatically
Without the Robin repo open, the bridge still works as a general-purpose Copilot agent with terminal and file access.
Architecture
| File |
Purpose |
src/extension.ts |
Entry point — auto-start, bot auth (SecretStorage), command registration |
src/webex.ts |
Webex REST client + timestamp-based poller |
src/bridge.ts |
LM API + Robin system prompt + skills catalog + tool routing |
src/participant.ts |
@webex Chat Participant for in-editor Copilot Chat |
Security
- Allowed user only — messages from other room members are ignored
- Secret storage — bot token stored via VS Code's encrypted SecretStorage
- No extra API keys — uses your existing Copilot subscription
- Silent execution — VS Code's built-in tools (which show approval dialogs) are blocked; the bridge uses its own silent implementations
- Timestamp-filtered — only processes messages created after the poller starts, never replays history
License
MIT