Configuration

init()

Initialize the SDK once before using any memory APIs.

Signature

typescripttypescript
await ctx.init(options: InitOptions): Promise<void>

Options

FieldTypeDescription
organizationstringNamespace isolating memories in a shared database
databaseDatabaseConfigProvider + connection string
embeddingEmbeddingConfigOpenAI-compatible embedding endpoint
llmLlmConfigOpenAI-compatible chat endpoint for compression

Embeddings

Any OpenAI-compatible /embeddings endpoint works: OpenAI, Azure OpenAI, Ollama, LM Studio, OpenRouter, Together, Voyage, and more.

typescripttypescript
embedding: {
  baseUrl: "http://127.0.0.1:11434/v1",
  apiKey: "ollama",
  model: "nomic-embed-text",
}

LLM

Compression uses a separate chat completion endpoint. Mix providers freely.

typescripttypescript
llm: {
  baseUrl: "https://api.openai.com/v1",
  apiKey: process.env.OPENAI_API_KEY!,
  model: "gpt-4.1-mini",
  temperature: 0.2,
  maxTokens: 4096,
}

Example

typescripttypescript
const ctx = new AgentOrc();
await ctx.init({
  organization: "acme",
  database: { provider: "sqlite", connectionString: "./acme.db" },
  embedding: {
    baseUrl: "https://api.openai.com/v1",
    apiKey: process.env.OPENAI_API_KEY!,
    model: "text-embedding-3-small",
  },
  llm: {
    baseUrl: "https://api.openai.com/v1",
    apiKey: process.env.OPENAI_API_KEY!,
    model: "gpt-4.1-mini",
  },
});

Errors

  • ConfigurationError — invalid or missing options
  • InitializationError — database or endpoint setup failed
  • EmbeddingError — embedding probe failed