RepoMind Bridge
RepoMind Bridge
An MCP server that hands your coding agent the tasks you dictated — in the words you actually said, not a tidied-up title.
You find a bug on your phone, away from the keyboard. You say it out loud. Later you open the repository and Claude Code, Cursor or Codex already knows what you asked for, picks it up, and closes it when the work is done.
phone (dictate) ──► RepoMind ──► GitHub issue ──► this bridge ──► your agentTasks travel as GitHub issues labelled repomind-task. There is no server to deploy and
nothing to pay for: GitHub is the postbox.
Install
git clone https://github.com/idanidev/repomind-bridge.git
cd repomind-bridge
npm install
npm run buildAuthentication
No token needs to be written into a config file. If you are already signed in with the GitHub CLI, the bridge uses those credentials:
gh auth loginOtherwise set GITHUB_TOKEN to a token with repo scope:
export GITHUB_TOKEN=...GITHUB_TOKEN wins when both are present. If GitHub rejects it, the bridge resolves it again and
retries once — an MCP server stays up for days, and gh rotates its token underneath it.
Point your agent at it
Claude Code — add to ~/.claude.json:
{
"mcpServers": {
"repomind": {
"command": "node",
"args": ["/absolute/path/to/repomind-bridge/dist/index.js"]
}
}
}Cursor — the same block in .cursor/mcp.json. Codex — in .codex/config.toml.
Tools
Tool | What it does |
| Everything captured for this repository. Call it before asking what to work on. |
| One task in full, including |
| Marks it in progress — visible on the phone — and returns the full context. |
| Posts a note to the thread, which reaches the developer's phone. |
| Marks it blocked and asks one specific question. Do not wait for the answer. |
| Closes the issue. Attach a PR url if there is one. |
| The screenshot attached when the task was captured. |
rawInput is the specification
title is a cleaned-up label. rawInput is what the developer dictated. When the two seem to
disagree, rawInput wins — it is the only record of what they meant.
Screenshots never leave the machine
get_task_image reads the image from the RepoMind app's local database, not from GitHub.
Committing screenshots into the repository would grow it permanently, and in a private repo the image would not even render: GitHub does not authenticate image URLs on the reader's behalf. Making the repo public to fix that would publish bug screenshots, which routinely contain personal data.
So nothing is uploaded anywhere. The image is already on the machine, synced by iCloud; the bridge reads it and hands it over. It follows that this tool only works where the Mac app is installed.
Session briefing
src/brief.ts can run as a SessionStart hook so the agent opens already knowing what is waiting.
It stays silent when there is no token, no network, or no tasks — a hook that fails loudly on a
plane is worse than no hook.
Requires
The RepoMind iOS/macOS app to capture the tasks, and a GitHub account. Node 18+.
License
MIT