Skip to main content
Glama
wuwaforF

Local AI Connector

by wuwaforF

Local AI Connector

English | 简体中文

Local AI Connector lets AI agents in different desktop apps hand tasks to each other through one service on your own computer. For example, a Claude chat can ask an Antigravity chat to review some code:

  • You approve every task in the app that started it.

  • The task goes only to the chat you bound for that work.

  • The worker's real answer comes back to the chat that asked.

Supported apps: Codex, Claude Desktop (Code tab) and Antigravity, on macOS, Windows and Linux, with the support levels listed under Current support.

Public preview, not production-ready. With the setup flow described here, a bound worker chat collects its tasks when asked. Waking that chat automatically still needs the existing wake adapters to be connected to this flow and re-tested. Real-desktop verification of this flow so far covers Antigravity on macOS. An earlier macOS deployment used a different setup and is described separately.

How it works

  1. Install once per app. local-ai-connector setup <app> adds this connector to that app's MCP settings. It never grants tool or file permissions; it tells you which ones to allow.

  2. Bind a worker chat. In the chat that should receive tasks, say "Use this chat for connector tasks." The app asks you to approve.

    • The app itself identifies the chat; the model cannot choose it.

    • Binding gives no task permission by itself.

    • To switch chats later, bind another one. No reinstall is needed.

  3. Start a task. In another app's chat, ask for help, for example "Ask Antigravity to check this function."

    • You approve the task there.

    • Approval pins the task to the bound chat.

    • Re-binding later never moves an approved task.

  4. Collect and answer. In the worker chat, say "Check for connector tasks." It reads the task and replies. Other chats of the same app cannot read or answer it.

  5. Get the result. The reply returns to the chat that started the task. Follow-up rounds stay on the same chat.

Related MCP server: mcpmessage

Installation

Requirements:

  • uv, which provides Python 3.13.

  • The desktop app you want to connect.

  • For Claude, the claude command from Claude Code on your PATH. On macOS, the copy bundled with Claude Desktop is used when claude is not on your PATH.

git clone https://github.com/wuwaforF/local-ai-connector.git
cd local-ai-connector
uv sync --frozen
uv run local-ai-connector setup antigravity     # or: codex, claude
uv run local-ai-connector doctor

After setup:

  • Restart or reconnect MCP servers in that app, as setup tells you.

  • Keep the clone where it is. The app's entry points at its Python environment, so run setup again after moving it.

  • setup refuses to overwrite an MCP entry, data folder or port it did not create. To install alongside an existing setup, use --profile <name>.

  • uninstall removes only what this installation added; uninstall --purge also deletes its data.

Current support

This table covers the setup flow documented above (setup and natural-language binding).

macOS

Windows

Linux

Service, setup/doctor/uninstall, approval and binding rules

Automated tests

Automated tests

Automated tests

Antigravity exact-chat binding and isolation

Verified on a real desktop (Antigravity 2.19.1)

Automated tests only

Automated tests only

Codex and Claude Desktop Code per-chat identity

Automated tests only

Automated tests only

Automated tests only

Approval in a real initiating desktop

Needs acceptance with this flow

Needs acceptance

Needs acceptance

Automatic wake-up of the bound chat

Not yet connected to this flow

Not yet connected; no real-host test

Not yet connected; no real-host test

What these levels mean:

  • Antigravity on macOS: exact-chat binding and isolation were verified with Antigravity 2.19.1, using two real chats in an isolated test profile.

    • A bound chat received and answered its task.

    • The other chat could not read or answer it.

    • Re-binding kept an already approved task on its original chat.

    • All of this still held after restarting Antigravity.

  • Windows and Linux have automated test coverage in CI, but no real Antigravity acceptance yet (#3).

  • Wake-up: with this flow, a bound chat collects its tasks when asked. Wake adapters exist for Codex Desktop, Claude Desktop Code and Antigravity, and they worked in the earlier macOS deployment. There they woke a fixed, preconfigured chat.

    • The remaining work is to deliver to the chat pinned when a task is approved, then re-test on real desktops.

    • Windows and Linux real-host acceptance is still outstanding.

    • Tracked in #1.

  • Approval in a real initiating desktop: this was accepted in the earlier macOS deployment, but not yet with this flow (#2). In the Antigravity two-chat test, a person approved each task, but the initiating side was a terminal stand-in.

  • Antigravity's conversation metadata key is undocumented. It is antigravity.google/conversation_id, observed on 2.19.1. If a version stops sending it, binding fails safely with missing_session_identity and never falls back to an unverified identity (#4).

  • Codex and Claude chat identities are not yet confirmed on real desktops (#5).

  • Not isolated from your own programs: other programs running as your own OS user can read the connector's local data. It is protected from other users, not from processes of the same user.

Earlier macOS deployment

Before setup existed, a macOS deployment wired each worker to a preconfigured chat, using maintainer scripts and manual configuration. Real-desktop runs on that deployment showed:

  • Codex → Antigravity: automatic wake-up, a real answer, and a follow-up continuation.

  • Codex → Claude Desktop Code: automatic wake-up and a real answer.

  • Claude → Antigravity: automatic wake-up and a real answer. In that run, approval was confirmed in Codex; a later run confirmed approval with a single click in Claude.

These results apply to that deployment only. A fresh installation made with setup does not provide them yet.

  • The manual setup is described in the Reference.

  • The dated acceptance records are in docs/PROJECT_NOTES.md, in Chinese. Their evidence files are kept by the maintainer and are not published.

Capabilities

Available now

  • One local service shared by all connected apps, set up per app on macOS, Windows and Linux.

  • Separate installation profiles.

  • Natural-language binding of a worker chat, with approval in that chat. Re-binding needs no reinstall.

  • Approval of every task in the initiating app. The approval pins the target chat and its binding revision.

  • Isolation between chats of the same app, real answers, follow-up questions and further rounds on the same task.

Planned

  • Wake-up for this flow: connect the existing adapters to the chat pinned at approval and re-test them on all platforms (#1).

  • Real-desktop acceptance of this flow on all platforms (#2, #3, #5).

  • Login autostart (#6).

  • Installing from a release (#9).

  • English CLI messages (#8).

  • See all open issues.

Documentation

License

MIT. See LICENSE. Third-party notices are in NOTICE.md.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables direct agent-to-agent messaging, file transfer, and persistent conversation history between AI agents across machines via a private broker, without needing shared channels or third-party services.
    5 npm
    1
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    Enables AI chat sessions to exchange messages and structured data with each other, preserving provenance and conversation threads, so work in one chat can be reused in another without manual copying.
    5
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables two-way delegation between Codex and Cursor agents with background jobs, handoff plans, and isolated worktrees, allowing either editor to offload investigation, review, planning, or implementation to the other and continue the same native session later.
    12 npm
    Apache 2.0
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables users' AI agents to join signed, hash-chained rooms with another person's agent to negotiate, coordinate, or hand off work, while a locally enforced mandate filters every outbound message. Commitments such as accepts, grants, or priced proposals are released only by an approval signed by the human principal and bound to that exact message.
    32 npm
    Apache 2.0