JIXUDOCS

Framework setup

Define an Agent, bind Drivers and a Store, then create a durable Thread.

Install the core path

npm install jixu-core jixu-llm jixu-store-sqlite

Create a Harness

import { createHarness, defineAgent } from "jixu-core";
import {
  createLLMModelDriver,
  resolveLLMModelCapabilities,
} from "jixu-llm";
import { SqliteEventStore } from "jixu-store-sqlite";

const connection = {
  api: "openai-chat-completions" as const,
  apiKey: process.env.MODEL_API_KEY,
  baseURL: "https://api.openai.com/v1",
  model: "gpt-5.6-sol",
};

const modelCapabilities = await resolveLLMModelCapabilities(connection);

const agent = defineAgent({
  instructions: "Be precise and verify your work.",
  model: { provider: "model", model: connection.model },
  modelCapabilities,
  tools: [],
});

const harness = createHarness({
  agent,
  modelDrivers: {
    model: createLLMModelDriver({
      api: connection.api,
      apiKey: connection.apiKey,
      baseURL: connection.baseURL,
      maxOutputTokens: modelCapabilities.maxOutputTokens,
    }),
  },
  store: new SqliteEventStore("./jixu.db"),
});

const thread = await harness.createThread();
const state = await thread.send(
  "Review this design and identify its main risk.",
);

console.log(state.result);

Why capability resolution comes first

The Model Capability Profile is frozen into the Agent snapshot. The Context Compiler then uses verified limits rather than a guessed fallback.

If a custom endpoint cannot report complete limits, declare them explicitly:

const connection = {
  // provider connection fields
  explicit: {
    contextWindowTokens: 128_000,
    maxOutputTokens: 16_384,
  },
};

Public packages

PackagePurpose
jixu-aiInstallable jixu command, public facade, configuration, and reference TUI
jixu-coreKernel, Harness, Agent, Thread, Events, State, and ports
jixu-llmOpenAI Chat Completions and Anthropic Messages model Drivers
jixu-store-sqliteTransactional local SQLite Event, Artifact, and Checkpoint Store
jixu-store-jsonlInspectable JSONL Event, Artifact, and Checkpoint Store
jixu-tools-nodeFirst-party local file and Bash Tools
jixu-tools-jinaBounded Jina Search and Reader Tools
jixu-testkitDeterministic fixtures and the shared Store contract suite

Adapters depend on core ports. jixu-core does not import provider SDKs, database drivers, web frameworks, or CLI frameworks.