Lite Harness banner
LiteLLM-Labs LiteLLM-Labs

Lite Harness

Development community

Description

Unified API for running OpenCode, Claude Code, Codex agents

Installation

This entry records only its repository, not the path inside it, so there is no exact command to give. Open the source below and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

README

lite-harness

Call all agent harnesses using the Claude Agent SDK format.

lite-harness manages:

  • One TypeScript and Python interface for multiple agent harnesses
  • Harness switching with harness, model switching with model
  • Claude Agent SDK-compatible streaming messages and errors

Preview: the SDK is not published to npm or PyPI yet. Clone this repo to try it. If you want a packaged release, please [file an issue](https://github.com/LiteLLM-Labs/lite-harness/issues).

[![Discord](https://img.shields.io/badge/Discord-Chat-5865F2?logo=discord&logoColor=white)](https://discord.gg/Nkxw3rm3EE)

Setup (clone)

git clone https://github.com/LiteLLM-Labs/lite-harness.git
cd lite-harness

# install the backend server's deps once — the SDK auto-spawns it from the clone
npm install --prefix src/sdk/server

# pick a model — set the key for your provider:
export ANTHROPIC_API_KEY=sk-ant-...   # for harness "claude-code"
export OPENAI_API_KEY=sk-...          # for harness "codex"

TypeScript Usage

npm install --prefix src/sdk/typescript && npm run build --prefix src/sdk/typescript
import { query } from "@lite-harness/sdk";

const prompt = "Fix the failing test";

// Claude Code harness
for await (const message of query({
  prompt,
  options: { harness: "claude-code", model: "claude-opus-4-8" },
})) {
  console.log(message);
}

// Codex harness
for await (const message of query({
  prompt,
  options: { harness: "codex", model: "gpt-5.5" },
})) {
  console.log(message);
}

Python Usage

pip install -e src/sdk/python      # editable install of the client (Python 3.10+)
from lite_harness import query, AgentOptions

prompt = "Fix the failing test"

# Claude Code harness
async for message in query(
    prompt=prompt,
    options=AgentOptions(harness="claude-code", model="claude-opus-4-8"),
):
    print(message)

# Codex harness
async for message in query(
    prompt=prompt,
    options=AgentOptions(harn