Atlas / MCP servers / prassanna-ravishankar / Repowire

RepowireCAUTION

mcp/prassanna-ravishankar/repowire

May the agents talk . Connect Claude Code, Opencode, Codex, Pi across projects, across machines and with your telegram

Verdict
CAUTION
Grade
B
Trust score
84 /100
Exposed tools
1 1r · 0w · 0d
Transport
stdio · streamable-http
License
—
Stars
264
01

Overview

From the repository's own README, as read at the audited commit. Badges and raw HTML are left out.

Repowire Let your coding agents talk to each other.

[](https://github.com/prassanna-ravishankar/repowire/releases) [](https://github.com/prassanna-ravishankar/repowire/actions/workflows/ci.yml) [](daemon-go/go.mod) [](LICENSE) [](https://docs.repowire.io/)

Repowire connects the coding agents you already have open. Claude Code in one repo, Codex in another, a dashboard in your browser, Telegram on your phone: Repowire gives them names and lets them pass messages without copy-paste.

It is a local control layer for multi-agent work: ask another agent a question, send a quick update, schedule a reminder, or run one session as the coordinator.

Use it when:

  • One repo needs a concrete answer from an agent already working in another repo.
  • You want a personal orchestrator session to dispatch tasks, collect status, or keep reviews moving.
  • You want to monitor or nudge agent work from your phone or browser.
  • A session should wake itself or another peer later with a scheduled check-in.

Repowire runs locally by default through a daemon on your machine. The hosted relay is optional and uses outbound connections for remote dashboard access a

Read from source at commit 6b63a2e7d25eOBSERVED · 2026-10-06
02

Connect

Built from this server's own package name, version and transport as found in its source — not copied from anyone's documentation, so it cannot drift against a page we do not control. Replace the environment placeholders with a token scoped to the least it needs.

claude-code
claude mcp add web --env REPOWIRE_AUTH_TOKEN=${REPOWIRE_AUTH_TOKEN} -- npx -y [email protected]
claude-desktop
{
  "mcpServers": {
    "web": {
      "command": "npx",
      "args": [
        "-y",
        "[email protected]"
      ],
      "env": {
        "REPOWIRE_AUTH_TOKEN": "${REPOWIRE_AUTH_TOKEN}"
      }
    }
  }
}
03

Exposed tools (1)

1 read · 0 write · 0 destructive.

ToolRiskDescription
replyreadReply to a repowire query. Pass the correlation_id from the <channel> tag.
04

Trust audit

CAUTIONgrade B · trust 84/100 Install with care. The audit found things worth knowing before you trust its output.

LayerWhat it checksResult
L0Provenance & inventoryPASS
L1Static analysis of the codeWARN
L2Instruction surface (what it tells the agent)WARN
L3Class-specific surfacePASS
L4Behavioural (sandbox)SKIPPED

What the source does

Filesystem
declared (5 observation(s))
Network
declared (9 observation(s))
Shell
none-observed
Dependencies
not all pinned
Secrets in source
none-found

Findings (19)

MEDIUMNetwork egress · net.raw_ip · CWE-200, CWE-319
.claude/skills/integration-test/SKILL.md:60
curl -s http://127.0.0.1:8377/health 2>/dev/null | jq . || echo "Daemon not running"
MEDIUMNetwork egress · net.raw_ip · CWE-200, CWE-319
.claude/skills/integration-test/SKILL.md:61
curl -s http://127.0.0.1:8377/peers 2>/dev/null | jq '.peers[] | {name, status, circle}' || echo "No peers"
MEDIUMNetwork egress · net.raw_ip · CWE-200, CWE-319
.claude/skills/integration-test/SKILL.md:83
curl -s http://127.0.0.1:8377/health >/dev/null 2>&1 && {
MEDIUMNetwork egress · net.raw_ip · CWE-200, CWE-319
.claude/skills/integration-test/SKILL.md:118
curl -s http://127.0.0.1:8377/health || {
MEDIUMNetwork egress · net.raw_ip · CWE-200, CWE-319
.claude/skills/integration-test/SKILL.md:122
curl -s http://127.0.0.1:8377/health | jq .
MEDIUMSupply chain · prompt.pipe_to_shell · CWE-829, CWE-1357
skills/repowire-install/SKILL.md:20
curl -sSfL https://raw.githubusercontent.com/prassanna-ravishankar/repowire/main/install.sh | sh
LOWInventory / provenance · inv.hidden_file · CWE-1104
.cursorignore
.cursorignore
Why it matters. hidden member outside the usual dotfiles
Fix. review its purpose
LOWInventory / provenance · inv.symlink · CWE-1104
AGENTS.md
AGENTS.md
Why it matters. link not followed
LOWSupply chain · supply.unpinned · CWE-829, CWE-1357
daemon-go/cli/assets/channel/package.json
@modelcontextprotocol/sdk, ws, zod, @types/ws, typescript
Why it matters. 5 dependency range(s) float
Fix. pin exact versions or ship a lockfile
LOWSupply chain · supply.unpinned · CWE-829, CWE-1357
web/package.json
@tailwindcss/typography, clsx, lucide-react, react-markdown, remark-breaks, remark-gfm, tailwind-merge, @tailwindcss/postcss
Why it matters. 20 dependency range(s) float
Fix. pin exact versions or ship a lockfile
LOWPrompt injection · prompt.credential_read · CWE-94, CWE-1427
docs/operate/security.md:25
- The dashboard authenticates to the relay with a cookie set after submitting the same API key at `/auth`. Possession of the key grants dashboard access; treat it like a password.
Why it matters. asks the agent to read credentials
LOWSupply chain · prompt.pipe_to_shell · CWE-829, CWE-1357
.beads/README.md:64
curl -sSL https://raw.githubusercontent.com/steveyegge/beads/main/scripts/install.sh | bash
LOWSupply chain · prompt.pipe_to_shell · CWE-829, CWE-1357
README.md:46
curl -fsSL https://github.com/prassanna-ravishankar/repowire/releases/latest/download/install.sh | sh
LOWSupply chain · prompt.pipe_to_shell · CWE-829, CWE-1357
docs/index.md:41
curl -fsSL https://github.com/prassanna-ravishankar/repowire/releases/latest/download/install.sh | sh
LOWSupply chain · prompt.pipe_to_shell · CWE-829, CWE-1357
docs/start/install.md:20
curl -fsSL https://github.com/prassanna-ravishankar/repowire/releases/latest/download/install.sh | sh
LOWPrompt injection · prompt.transfer_instruction · CWE-94, CWE-1427
docs/reference/mcp-tools.md:243
`source` is how the peer reached the mesh: `hook` (a runtime hook in a tmux pane), `codex-app-server` (a thread the codex bridge registered from the Codex App Server, whether ChatGPT desktop, VS Code,
Why it matters. an instruction to move sensitive data to an outside destination
Fix. remove; a skill never needs the user's secrets off the machine
LOWPrompt injection · prompt.transfer_instruction · CWE-94, CWE-1427
docs/start/compare/gastown.md:5
[Gas Town](https://github.com/steveyegge/gastown) is a coding-agent orchestrator released by Steve Yegge on January 1, 2026. A "mayor" agent oversees a "town" of coders, reviewers, and supervisors, al
Why it matters. an instruction to move sensitive data to an outside destination
Fix. remove; a skill never needs the user's secrets off the machine
LOWPrompt injection · prompt.transfer_instruction · CWE-94, CWE-1427
docs/start/compare/happy.md:5
[Happy](https://happy.engineering/) is a mobile and web client for Claude Code and Codex, with bidirectional realtime sync between the desktop CLI and the mobile app, end-to-end encrypted relay, voice
Why it matters. an instruction to move sensitive data to an outside destination
Fix. remove; a skill never needs the user's secrets off the machine
LOWPrompt injection · prompt.transfer_instruction · CWE-94, CWE-1427
docs/troubleshooting/daemon.md:25
If `daemon.auth_token` is set in `~/.repowire/config.yaml`, the daemon requires a `Bearer` token on WebSocket connections. Hooks and the MCP server read the same config and present the token, so this 
Why it matters. an instruction to move sensitive data to an outside destination
Fix. remove; a skill never needs the user's secrets off the machine

Gates applied: no_behavioural_pass.

Audited 2026-10-06 · audit v0.4.1 · source sha 6b63a2e7d25efull audit observations/trust-audit/mcp-server/prassanna-ravishankar__repowire.json · Report an issue / request a re-scan
05

Audit history

Every audit this server has had. A grade with a past is a grade somebody is still checking.

DateSourceVerdictGradeScoreChange
2026-10-066b63a2e7d25eCAUTIONB84first audit
06

Questions

What is the Repowire MCP server?

May the agents talk . Connect Claude Code, Opencode, Codex, Pi across projects, across machines and with your telegram

What tools does Repowire expose?

1 in total: 1 read-only, 0 that write, and 0 that can delete or overwrite. Every one is listed on this page with its risk.

Is Repowire safe to connect to an agent?

With care. The audit graded it B (84/100) and found 19 things worth knowing before you trust this server, listed below with the exact line each was found on.

What credentials does Repowire need?

It reads REPOWIRE_AUTH_TOKEN from the environment. Give it a token scoped to the least it needs — an agent that can be talked into calling a tool can be talked into calling it with your credentials.

How does Repowire run?

It speaks stdio and streamable-http, so it runs as a local process your client starts. It is published on npm as web at 0.1.0.

How current is this page?

The grade is for one exact copy of the source (6b63a2e7d25e), read on 2026-10-06. The repository is watched and re-audited when it changes.

Advertisement