Files
AI-Rendezvous/docs/INTEGRATIONS.md
T

2.1 KiB

Harness integrations — policy and current status

Rules (binding for any contribution)

The core (packages/core, packages/server) must never learn about a specific harness or model. Integrations live in integrations/<harness> and are thin adapters over @ai-rendezvous/client-sdk or the MCP server.

Before implementing an adapter for any harness you must:

  1. Study its real, official extension/plugin/module API (docs + source).
  2. Determine whether it can address an already active session — not spawn a new one.
  3. Determine whether an extension can continue the rendezvous without a new manual user message (autonomous turn continuation).
  4. Only then implement. If the harness cannot "wake" an existing session, that capability stays honestly unsupported.

Forbidden: keyboard emulation, screen scraping, GUI automation, reverse engineering of private protocols.

Transport vs Autonomy

Capability Where it lives Status in MVP
Transport/state (rooms, messages, questions, contract) core server done
In-turn access (agent polls/acts during its own turn) MCP server / client-sdk done
Autonomous continuation (session reacts to room updates between turns) harness integration not implemented; per-harness feasibility must be established first

Current status

No harness adapter is implemented yet — deliberately. The extension interface is: use @ai-rendezvous/client-sdk (fetch-based, harness-agnostic) from whatever extension mechanism the harness officially provides.

Candidate reference integration criteria (for choosing the first one):

  • official, documented extension/plugin API with background lifetime;
  • ability to run code while the session is idle (timers / events) and to inject a user-turn or equivalent;
  • ability to call the model's existing session context (so verification happens with the session's own environment access).

Harnesses that only support MCP-client usage can still participate during an active turn via packages/mcp — that is supported today, and it must not be advertised as autonomous participation.