{
  "markdown": "# aight-claude-plugin\n\nChat with your [Claude Code](https://docs.anthropic.com/en/docs/claude-code) session from your phone — works from anywhere.\n\n```\n┌──────────────┐    stdio     ┌──────────────────┐\n│  Claude Code │◄────────────►│ Aight Channel    │\n│  (laptop)    │              │ Plugin (MCP)     │\n└──────────────┘              └────────┬─────────┘\n                                       │ WSS\n                                       ▼\n                              ┌──────────────────┐\n                              │  Channel Relay   │\n                              │  (Cloudflare)    │\n                              └────────┬─────────┘\n                                       │ WSS\n                                       ▼\n                              ┌──────────────────┐\n                              │  Aight App       │\n                              │  (iPhone)        │\n                              └──────────────────┘\n```\n\nNo port forwarding, no Tailscale, no LAN requirement. A 6-digit pairing code links your phone.\n\n## Install — 30 seconds\n\n**Prerequisites:** [Bun](https://bun.sh) and the [Aight iOS app](https://aight.cool)\n\n```bash\ngit clone https://github.com/aight-cool/aight-channel-plugin ~/.claude/channels/aight \\\n  && ~/.claude/channels/aight/setup\n```\n\nThen start Claude Code with the channel:\n\n```bash\naight-claude\n```\n\nThat's it. A 6-digit pairing code will appear — enter it in the Aight app.\n\n<!-- Uncomment when accepted into the official plugin directory:\n### Official plugin directory\n\n```\n/plugin install aight@claude-plugins-official\n```\n-->\n\n<details>\n<summary>Manual install (without setup script)</summary>\n\n```bash\ngit clone https://github.com/aight-cool/aight-channel-plugin ~/.claude/channels/aight\ncd ~/.claude/channels/aight\nbun install\n```\n\nThe `server:aight` channel flag requires an MCP server named `aight` in the project's `.mcp.json`. The plugin ships one, but it only applies when you run Claude from the plugin directory itself. To launch from **any** project directory, add this function to your `~/.zshrc` or `~/.bashrc`:\n\n```bash\n# aight — Claude Code mobile channel\naight-claude() {\n  local mcp=\".mcp.json\" had_mcp=false orig=\"\"\n  [ -f \"$mcp\" ] && { had_mcp=true; orig=$(cat \"$mcp\"); }\n  _aight_restore() {\n    if $had_mcp; then printf '%s' \"$orig\" > \"$mcp\"; else rm -f \"$mcp\"; fi\n  }\n  trap '_aight_restore; trap - INT TERM; kill -INT $$' INT TERM\n  bun -e \"\n    const fs = require('fs');\n    let c = {}; try { c = JSON.parse(fs.readFileSync('.mcp.json','utf8')); } catch {}\n    c.mcpServers = c.mcpServers || {};\n    c.mcpServers.aight = { command: 'bun', args: ['run','--cwd','\\$HOME/.claude/channels/aight','--shell=bun','--silent','start'] };\n    fs.writeFileSync('.mcp.json', JSON.stringify(c,null,2)+'\\n');\n  \"\n  # AskUserQuestion's terminal picker can't be answered from the app (and a\n  # PreToolUse deny doesn't suppress it), so disable it — the model asks via a\n  # normal numbered-option reply instead, which the app renders as tappable.\n  claude --dangerously-load-development-channels server:aight \\\n    --disallowedTools=AskUserQuestion \"$@\"\n  local rc=$?\n  _aight_restore\n  trap - INT TERM\n  return $rc\n}\n```\n\nThen reload your shell and run `aight-claude`.\n\n</details>\n\n## How it works\n\n1. Plugin connects outbound to the relay at `channels.aight.cool`\n2. A **6-digit pairing code** appears in your terminal\n3. Enter the code in the Aight app — connected!\n4. Messages flow bidirectionally through the relay\n\nClaude gets your messages as channel notifications and responds using the `reply` tool. It can also send `react`ions and file attachments.\n\n## Tools\n\n| Tool | Description |\n|------|-------------|\n| `reply` | Send a message to the Aight app (supports markdown + file attachments) |\n| `react` | Send an emoji reaction to a message |\n\n## Environment Variables\n\n| Variable | Description | Default |\n|----------|-------------|---------|\n| `AIGHT_RELAY_URL` | Custom relay server URL | `https://channels.aight.cool` |\n\n## Self-hosted relay\n\nWant to run your own relay? See [aight-channel-relay](https://github.com/aight-cool/aight-channel-relay).\n\n```bash\nAIGHT_RELAY_URL=https://my-relay.example.com aight-claude\n```\n\n## Protocol\n\nFull WebSocket protocol documentation: [docs/PROTOCOL.md](docs/PROTOCOL.md)\n\n## License\n\nApache-2.0 — see [LICENSE](LICENSE)\n\n---\n\nBuilt by [aight.cool](https://aight.cool)\n",
  "bytes": 4384,
  "sha": "70ef58cc22bbaa19ed72c1c866c02e3e0fdb7ce4e0b561069138b522e4a58414",
  "repo_slug": "aight-cool/aight-channel-plugin",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/plg_aight_cool_aight_channel_plugin_aight_68ad266b/readme"
}