Agent Harness — Development skill for Claude Code
Unified harness for hot-swapping between OpenAI Agents SDK and Anthropic Claude Agent SDK with shared tool registry.
How to install Agent Harness
This entry records only its repository, not the path inside it, so there is no
exact command to give. Open haasonsaas/agent-harness and copy the folder into
~/.claude/skills/, or the file into ~/.claude/agents/.
What Agent Harness does
Unified harness for hot-swapping between OpenAI Agents SDK and Anthropic Claude Agent SDK with shared tool registry.
Alternatives in Development
- Claude API — Build apps with the Claude API or Anthropic SDK 94.1k ★
- IPolloWork — Enterprise-grade, local-first Agent Workbench for people and agent teams 4.9k ★
- Anthropic SDK Python — PyPI version 3.9k ★
README
Agent Harness
Agent Harness is a small Python adapter for running the same tool registry through OpenAI Agents SDK or Anthropic Claude Agent SDK provider implementations. The core package has no runtime SDK dependency; provider SDKs are imported lazily only when that provider is used.
[](https://github.com/evalops/agent-harness/actions/workflows/ci.yml) [](https://github.com/evalops/agent-harness/actions/workflows/bazel-rbe.yml) [](https://www.python.org/downloads/)
What It Provides
- A thread-safe global tool registry via
@register_tool. - JSON Schema generation from Python type hints, including
Optional,T | None,list[T],dict,Literal, and multi-type unions. - A common
HarnessConfigandAgentResponseshape across providers. - Lazy OpenAI and Claude provider adapters.
- Provider comparison helpers for running the same prompt against multiple adapters.
- A built-in optional You.com search tool adapter.
The registry and schema generation work without OpenAI or Anthropic packages installed. Actual model runs require the provider extras and API credentials.
Install
pip install -e .
pip install -e ".[openai]"
pip install -e ".[anthropic]"
pip install -e ".[all]"
pip install -e ".[dev]"
Provider credentials:
export OPENAI_API_KEY="sk-..."
export ANTHROPIC_API_KEY="sk-ant-..."
Quick Start
import asyncio
from agent_harness import AgentHarness, HarnessConfig, register_tool
@register_tool(description="Get weather for a city")
def get_weather(city: str) -> str:
return f"Weather in {city}: sunny, 72F"
async def main() -> None:
config = HarnessConfig(
system_prompt="You are a helpful assistant.",
tool_names=["get_weather"],
ma
Related Skills
Openapis
Free Claude API + free OpenAI API in one unified proxy. Drop-in compatible with Anthropic SDK, OpenAI SDK, Cla
Litellm Rust
Minimal Rust SDK port of LiteLLM – unified async client for OpenAI, Anthropic, Gemini, and xAI
Unified Agent Memory
Unified fleet-wide agent memory system for DeepSeek Harness — shared Obsidian Vault for dsh, Codex, Claude Cod
Dario
A local OpenAI- and Anthropic-compatible proxy that brings your Claude Pro/Max subscription to Cursor, Cline,
Codebuddy2api
Proxy CodeBuddy with OpenAI-compatible and Anthropic-compatible APIs for Codex, Claude Code, and standard SDK
Otaman Adapters
Otaman harness drivers: Claude Code adapter, OpenAI Agents SDK adapter, future
Related Agents
AI ML
AI/ML 통합 전문가 + LLM API 최신 모델/SDK 코딩 가이드. RAG 시스템, 문서 분석, OpenAI/Anthropic/Gemini/Ollama 최신 API 보장. "AI integra
Anthropic SDK Upgrader
Use this agent when the user needs to upgrade Anthropic SDK packages. This includes: upgrading @anthropic-ai/s
AI LLM Engineer
Use this agent when the user types /ai or asks for ai/llm engineer work — e.g., build a RAG pipeline over our