
Mira
- Updated July 17, 2026
- big-halo/mira-claude-channel
mira is a Claude Code skill in the AI & Agent Building category. Bridges the Mira glasses to a local Claude Code session
Key points
- mira
- AI & Agent Building
- AI-coding skill
Mira by the numbers
- Data as of Jul 17, 2026 (Skillselion catalog sync)
/plugin marketplace add big-halo/mira-claude-channel/plugin install mira@mira-marketplaceAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Last updated | July 17, 2026 |
|---|---|
| Repository | big-halo/mira-claude-channel ↗ |
What it does
Bridges the Mira glasses to a local Claude Code session
README.md
Mira — Claude Code channel
A Claude Code channel plugin that bridges chat from the Mira iOS app into a local Claude Code session.
When the iOS app's "Claude Code" toggle is ON, every message the user sends from the app POSTs to http://127.0.0.1:3141/api/chat on your laptop. This plugin runs as an MCP channel inside Claude Code, receives the POST, pushes the message into the active Claude Code session as a <channel source="mira" chat_id="..."> tag, and waits. When Claude finishes responding, the plugin's Stop hook forwards last_assistant_message back to the waiting iOS request.
Install
The Mira one-line installer installs cloudflared, the marketplace, this plugin, its dependencies, and a mira command that starts Claude Code with this channel.
Run the installer:
bash -c "$(curl -fsSL https://glass-prod.thebighalo.com/claude-install)"The installed plugin checks the latest GitHub Release artifact for updates and can refresh its local plugin files in the background. Restart Claude after an update applies.
Start Claude Code with Mira:
miraOr skip permission prompts:
mira --yoloClaude Code will spawn
server.tsover stdio and the HTTP listener will start on127.0.0.1:3141automatically. You don't runbunyourself.In the iOS app, open Settings → Claude Code → toggle Local Integration ON.
Send a message from the app. It will appear in your Claude Code session as a
<channel>tag. Claude responds normally, and theStophook sends the final assistant message back to the app.
Test from curl (no iOS app needed)
With Claude Code running per step 2 above, in another terminal:
curl -X POST http://127.0.0.1:3141/api/chat \
-H 'Content-Type: application/json' \
-d '{"messages":[{"speaker":0,"content":"hello from curl"}],"user_local_time":"now","user_timezone":"UTC","location":null}'
The request opens an SSE response until Claude's Stop hook forwards the final assistant message (timeout 120s). The stream emits {"text": "..."}, {"sources": []}, then [DONE], matching the format the iOS app expects.
Structure
.claude-plugin/marketplace.json # marketplace catalog
plugins/mira/
.claude-plugin/plugin.json # plugin manifest, declares mcpServers
server.ts # MCP channel + Bun HTTP listener
package.json # @modelcontextprotocol/sdk