by joe960913
A durable single-Agent Harness for TypeScript with recoverable Threads, explicit side-effect boundaries, and a native terminal UI.
# Add to your Claude Code skills
git clone https://github.com/joe960913/JixuJixu is an open-source ai agents skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by joe960913. A durable single-Agent Harness for TypeScript with recoverable Threads, explicit side-effect boundaries, and a native terminal UI. It has 106 GitHub stars.
Jixu's catalog security scan is still queued. You can run an instant dependency and prompt-injection check now with the "Scan for vulnerabilities" button above.
Clone the repository with "git clone https://github.com/joe960913/Jixu" and add it to your Claude Code skills directory (see the Installation section above).
Jixu is primarily written in TypeScript. It is open-source under joe960913 on GitHub, so you can review or fork the full source.
Yes. SkillsLLM lists many other AI Agents skills you can browse and compare side by side. Open the AI Agents category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh Jixu against similar tools.
No comments yet. Be the first to share your thoughts!
Unlocks once the catalog security scan passes (runs nightly).
⚠️ Third-Party Software Notice
This skill is third-party open-source software developed and hosted independently on GitHub. SkillsLLM is an informational directory and does not control or maintain the underlying repository.
Any security checks, ratings, or warnings displayed by SkillsLLM are automated and limited in scope. They do not constitute a security certification or guarantee that the software is safe, error-free, or free from malicious code, vulnerabilities, compromised dependencies, or prompt-injection risks.
Review the source code, permissions, dependencies, and configuration before installing or running any third-party skill. Use is at your own risk. To the maximum extent permitted by applicable law, SkillsLLM is not liable for losses arising from third-party software.
The deep catalog scan for this skill is still queued. Run an instant dependency check now instead.
Define one Agent. Give it Tools and Skills. Continue its work in a durable Thread.
Jixu is a small single-Agent Harness for TypeScript. Recovery, replay, context continuity, and side-effect control stay beneath one direct API.
Jixu is pre-1.0. The public API may change before 1.0.

npm install -g jixu-ai
jixu
Global installation also works with pnpm add -g jixu-ai and
bun add -g jixu-ai. Or run Jixu without installing it:
npx jixu-ai
# pnpm dlx jixu-ai
# yarn dlx jixu-ai
# bunx jixu-ai
The package launcher requires Node.js 22.19.0 or newer. The native TUI supports macOS arm64 and Linux x64 with glibc; Intel macOS is not supported. Bun is not required at runtime.
npm install jixu-core jixu-llm jixu-store-sqlite
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);
Model capacity is resolved before Agent creation and frozen in its snapshot.
Jixu accepts authoritative endpoint metadata, a versioned first-party catalogue
for recognized direct endpoints, or
explicit: { contextWindowTokens, maxOutputTokens } for a custom deployment.
Ambiguity fails closed. Context Policy works within those verified limits; it
does not silently tune provider generation defaults.
Threads begin in standard mode. await thread.setMode("ultra") durably asks
the same model and protocol for the strongest compatible reasoning effort.
Thread input can preserve ordered text and image parts. Image bytes are stored as verified immutable Artifacts; durable Events contain references, never raw bytes.
The Agent is immutable configuration. The Thread is one durable history. The ordered Event log is the sole authority, and State is its deterministic projection. External work has one path:
Event -> Reducer -> Effect -> Driver -> Event
Replay dispatches no live Driver. Unknown persisted data fails closed. Secrets never enter Events, State, Checkpoints, errors, or Signals.
Read SPEC.md for the product contract and CONTRIBUTING.md for development guidance.
MIT