Back to Documentation

Getting started – TypeScript SDK

TypeScript SDK Reference

Installation

npm install @consilium/sdk
yarn add @consilium/sdk
pnpm add @consilium/sdk

Client Configuration

import { ConsiliumClient } from "@consilium/sdk";

const client = new ConsiliumClient({
  apiUrl: "http://localhost:4000/api/v1",
  apiKey: "your-api-key",
  timeout: 120000,     // ms
  maxRetries: 2,
  retryDelay: 1000,    // ms
});

Methods


Types

Error Classes


Full Example

import { ConsiliumClient } from "@consilium/sdk";

const client = new ConsiliumClient({
  apiUrl: "http://localhost:4000/api/v1",
  apiKey: "your-api-key",
});

// Estimate cost
const estimate = await client.estimateCost({
  topic: "Should we migrate from REST to GraphQL?",
  mode: "council",
  models: ["claude-sonnet-4-20250514", "gpt-4o", "gemini-2.0-flash"],
});
console.log(`Estimated: $${estimate.estimatedCost.toFixed(4)}`);

// Run deliberation
const result = await client.deliberate({
  topic: "Should we migrate from REST to GraphQL?",
  mode: "council",
  models: ["claude-sonnet-4-20250514", "gpt-4o", "gemini-2.0-flash"],
  maxRounds: 3,
});
console.log(result.goldenPrompt);

// Stream events
for await (const event of client.streamDeliberation({
  topic: "Is Kubernetes overkill?",
  mode: "jury",
  models: ["claude-sonnet-4-20250514", "gpt-4o", "gemini-2.5-flash"],
})) {
  if (event.event === "agent:chunk") process.stdout.write(event.chunk ?? "");
  if (event.event === "convergence:detected") console.log("\nConsensus!");
}