{"name":"agent-harness: Use Coding Agents from Rust Applications","description":"A Rust framework that gives multiple coding agents a shared interface and typed event stream. Use it to embed agent runs in applications without writing separate output parsers for each provider or CLI.","github":"https://github.com/getlatentic/agent-harness","url":"https://osrepos.com/repo/getlatentic-agent-harness","source":"osrepos.com","sourceDescription":"This repository profile is provided by osrepos.com, an open source repository discovery platform.","repositoryProfile":"https://osrepos.com/repo/getlatentic-agent-harness","generatedFor":"open source discovery and AI-assisted research","markdown":"https://osrepos.com/repo/getlatentic-agent-harness.md","json":"https://osrepos.com/repo/getlatentic-agent-harness.json","topics":["rust","ai-agents","library","coding-agent","agent-framework","cli-agent-adapters","normalized-event-stream"],"keywords":["rust","ai-agents","library","coding-agent","agent-framework","cli-agent-adapters","normalized-event-stream"],"stars":null,"summary":"A Rust framework that gives multiple coding agents a shared interface and typed event stream. Use it to embed agent runs in applications without writing separate output parsers for each provider or CLI.","content":"## Overview\n\n`agent-harness` is a Rust library for running coding agents from Rust programs through a common `Harness` interface. It normalizes agent output into events for text, reasoning, tool calls, plans, usage, and lifecycle, so application code can handle different backends with a consistent run loop.\n\nIt supports existing agent CLIs and ACP agents, as well as a built-in OpenAI-compatible implementation for chat APIs and local model servers. This suits developers building agent-enabled applications who want to switch providers or integrate tools without coupling their event handling to one agent's output format.\n\n## Key Features\n\n- Provides a shared `Harness` interface and `RunEvent` stream across supported agents.\n- Supports Claude Code, OpenAI Codex, ACP agents, and OpenAI-compatible chat APIs.\n- Includes a Rust tool loop for OpenAI-compatible models, including local model endpoints.\n- Exposes host functions through `ToolServer` and `HostTool` integrations.\n- Offers both receiver-based `run` and callback-based `start` execution patterns.\n- Reports agent readiness and installation hints without installing agent software.\n- Includes `cli-stream`, a standalone subprocess engine for streaming output and cancellation.\n\n## Use Cases\n\n- Rust application developers can add coding-agent runs while keeping response handling independent of a specific backend.\n- Teams comparing or changing agent providers can reuse one event-processing loop and change the harness implementation.\n- Developers using local or hosted OpenAI-compatible models can run tool-enabled agent workflows from Rust.\n- Applications with in-process functions can expose those tools to supported agents without deploying a separate tool server.\n\n## Project Facts\n\n- Language: Rust\n- License: Apache-2.0\n- Stars: 1\n- Forks: 0\n- Topics: none listed\n- Archived: No\n\n## Getting Started\n\nAdd the crate with:\n\n```sh\ncargo add agent-harness\n```\n\nSee the [repository README](https://github.com/getlatentic/agent-harness) and the crate documentation for provider setup, feature flags, and examples.\n\n## Alternatives\n\n- [harnessrouter](https://osrepos.com/repo/harnessrouter-harnessrouter): HarnessRouter unifies multiple agent harnesses behind a hosted-service API, while agent-harness is a Rust library with a typed event stream.\n\n## Considerations\n\n- The project describes itself as being in active development, and its API may change.\n- Agent CLIs and model providers must be available and configured separately; the crate reports readiness but does not install them.\n- Provider support and examples may depend on enabling crate features such as `acp` or `openai-compatible`.\n- The repository description and README differ in the agents they mention, so check the current crate documentation for the supported integrations.","metrics":{"detailViews":1,"githubClicks":0},"dates":{"published":null,"modified":"2026-10-05T20:55:23.000Z"}}