OP

OpenHarness

14,800Pythonagent-harness

Open-source provider-agnostic agent harness framework with 43+ built-in tools.

PythonAgent HarnessProvider-AgnosticMulti-AgentPersonal AgentSkills

Overview

OpenHarness by HKUDS is a provider-agnostic agent infrastructure framework with 14,800 GitHub stars. It separates the LLM from agent behavior, supporting any OpenAI/Anthropic-compatible API plus subscriptions to Claude Code, Codex, and Copilot. It includes 43+ tools, MCP support, a Claude Code-compatible skills system, and the Ohmo personal agent running across chat platforms.

Features

  • Provider-agnostic — any OpenAI/Anthropic-compatible API
  • Subscription support for Claude Code, Codex, Copilot
  • 43+ built-in tools including MCP integration
  • Skills system compatible with anthropics/skills
  • Ohmo personal agent for Feishu, Slack, Telegram, Discord
  • Multi-agent coordination with subagent spawning

Installation

pip install openharness-ai

Pros

  • +Truly provider-agnostic — no vendor lock-in
  • +Built-in personal agent for multi-channel deployment
  • +Full Claude Code skills and plugin compatibility
  • +Multi-agent coordination built into the core
  • +Cost tracking and performance monitoring

Cons

  • Newer project with smaller community
  • Documentation still expanding
  • Requires understanding of harness abstraction
  • Some advanced features need configuration expertise

Alternatives

Documentation

OpenHarness

Overview

OpenHarness is an open-source agent harness framework developed by HKUDS (HKU DeepSeek) that provides the infrastructure layer between an LLM and its agent behavior. With 14,800 GitHub stars, it embodies the principle: "The model is the agent. The code is the harness."

OpenHarness supports a wide range of model backends — from Claude and OpenAI to DeepSeek, Ollama, and even subscriptions to Claude Code, Codex, and GitHub Copilot — making it genuinely provider-agnostic. It includes 43+ built-in tools, a Claude Code-compatible skills system, MCP integration, and a built-in personal agent called Ohmo that runs across Feishu, Slack, Telegram, and Discord.

Features

  • Provider-Agnostic: Works with any OpenAI/Anthropic-compatible API, including local Ollama models
  • Subscription Support: Leverages existing Claude Code, Codex, and Copilot subscriptions
  • Agent Loop: Streaming tool-call cycle with retry backoff, parallel execution, and cost tracking
  • 43+ Built-in Tools: File I/O, shell, web search, Jupyter notebook, MCP integration
  • Skills System: On-demand knowledge loading compatible with anthropics/skills standard
  • Plugin Ecosystem: Compatible with Claude Code plugins
  • Permissions: Multi-level access modes with path-level and command-level rules
  • Multi-Agent Coordination: Subagent spawning, team registry, background tasks
  • Ohmo Personal Agent: Built-in persistent agent for Feishu, Slack, Telegram, Discord
  • React TUI: Interactive terminal UI with command picker and permission dialogs
  • Dry-Run Mode: Preview configurations without executing model calls
  • Lifecycle Hooks: PreToolUse and PostToolUse hooks for customization

Installation

Via Install Script:

curl -fsSL https://raw.githubusercontent.com/HKUDS/OpenHarness/main/scripts/install.sh | bash

Via pip:

pip install openharness-ai

On Windows PowerShell, use openh instead of oh to avoid the built-in Out-Host alias.

Quick Start

# Launch the interactive agent
oh

# Switch to a specific model
oh --model claude-opus-4-7

# Run with dry-run to preview
oh --dry-run

Core Concepts

The Harness Pattern

OpenHarness separates the LLM (the intelligence) from the harness (the behavior). The harness handles tool calling, memory management, skill loading, permission enforcement, and multi-agent coordination. This separation allows the same harness to work with any model provider.

Skills

Skills are markdown-based knowledge modules loaded on demand. OpenHarness is compatible with the Anthropic skills standard, enabling skill portability across Claude Code and OpenHarness.

Multi-Agent Swarm

The framework supports native subagent spawning with a team registry and background task lifecycle — enabling complex multi-agent workflows without external orchestration.

Advanced Features

Custom Tool Definition

from openharness import Tool

tool = Tool(
    name="custom-search",
    description="Search internal knowledge base",
    function=search_fn
)

Skills Configuration

skills:
  - path: "./skills/research.md"
    trigger: "research"
  - path: "./skills/code-review.md"
    trigger: "review"

Multi-Agent Team

from openharness import Team, Agent

researcher = Agent("researcher", model="deepseek-r1")
writer = Agent("writer", model="claude-opus-4-7")

team = Team([researcher, writer])
team.run("Write a market analysis report")

Model Provider Support

CategoryProviders
Anthropic-compatibleClaude, Moonshot/Kimi, GLM, MiniMax
OpenAI-compatibleOpenAI, OpenRouter, DashScope, DeepSeek, Groq, Ollama, GitHub Models, NVIDIA NIM, Google Gemini
SubscriptionsClaude Code, Codex, GitHub Copilot

Examples

  • Local Model Agent: Run a fully local agent with Ollama and no cloud dependencies
  • Subscription Agent: Use your existing Claude Code subscription as the agent backend
  • Personal Assistant: Deploy Ohmo across multiple chat platforms with persistent memory
  • Research Team: Multi-agent research pipeline with cost tracking and parallel execution

Pros

  • ✅ Truly provider-agnostic — no lock-in to any single model or vendor
  • ✅ Built-in personal agent (Ohmo) for multi-channel deployment
  • ✅ Full Claude Code skills and plugin compatibility
  • ✅ Multi-agent coordination built into the core
  • ✅ Dry-run mode for safe experimentation
  • ✅ Cost tracking and performance monitoring

Cons

  • ❌ Newer project with smaller community than established frameworks
  • ❌ Documentation still expanding with feature velocity
  • ❌ Requires understanding of the harness abstraction pattern
  • ❌ Some advanced features require configuration expertise

When to Use

Use OpenHarness when you want provider flexibility, need a transparent and inspectable agent infrastructure, or are building research-grade agent systems. Ideal for developers who want to experiment with different models, build custom agent behaviors, or deploy persistent personal agents across chat platforms.

Resources