overmind-mcp
Version:
Orchestrateur universel agents IA multi-modeles via MCP. Inclut le protocole 'Custom-Nickname' pour identifier vos agents avec des surnoms originaux (The Chaos Prophet, Shadow Sniper, etc.), l'isolation mémoire (Private Memory Context) et le support pour
77 lines • 2.64 kB
TypeScript
/**
* overmind-client.ts — Native Node.js client for Overmind HTTP MCP
* ═══════════════════════════════════════════════════════════════════
*
* Import this module to programmatically control agents.
* No MCP library needed — raw HTTP + JSON-RPC 2.0.
*
* Usage:
* npm run build && node dist/overmind-client.js
*
* Or import in your TypeScript:
* import { OvermindClient } from './overmind-client.js';
*/
export type RunnerType = 'claude' | 'gemini' | 'kilo' | 'qwencli' | 'openclaw' | 'cline' | 'opencode' | 'hermes';
export interface AgentRunResult {
agentName: string;
runner: RunnerType;
output: string;
sessionId?: string;
error?: string;
durationMs?: number;
}
export declare class OvermindClient {
private url;
private auth;
private id;
private nextId;
constructor(opts?: {
url?: string;
auth?: string;
});
health(): Promise<boolean>;
/** Create a new agent definition (stored in registry) */
createAgent(opts: {
name: string;
runner: RunnerType;
prompt: string;
}): Promise<{
name: string;
runner: RunnerType;
}>;
/** List all registered agents */
listAgents(): Promise<string[]>;
/** Delete an agent from the registry */
deleteAgent(name: string): Promise<void>;
/**
* Run a single agent and wait for its output.
* Timeout is per-agent, not global.
*/
runAgent(opts: {
agentName: string;
prompt: string;
timeoutMs?: number;
}): Promise<AgentRunResult>;
/**
* Run multiple agents in parallel. Returns results in the same order.
*/
runPool(agents: Array<{
name: string;
runner: RunnerType;
prompt: string;
timeoutMs?: number;
}>): Promise<AgentRunResult[]>;
/** Get status of a running agent (reads from RAM, no disk I/O) */
agentStatus(agentName: string, runner?: RunnerType): Promise<string>;
/** Stream output from a running agent (non-blocking) */
agentStream(agentName: string, runner?: RunnerType): Promise<{
output: string;
isComplete: boolean;
}>;
/** Wait for an agent to finish (blocking, polls every 1s) */
agentWait(agentName: string, timeoutMs?: number, runner?: RunnerType): Promise<string>;
/** Kill a running agent */
agentKill(agentName: string, runner?: RunnerType): Promise<string>;
}
export { OvermindClient as default };
//# sourceMappingURL=overmind-client.d.ts.map