[package]
edition = "2021"
rust-version = "1.78"
name = "unified-agent-api"
version = "0.3.5"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Agent-agnostic facade and registry for wrapper backends"
homepage = "https://github.com/atomize-hq/unified-agent-api"
documentation = "https://docs.rs/unified-agent-api"
readme = "README.md"
license = "MIT OR Apache-2.0"
repository = "https://github.com/atomize-hq/unified-agent-api"
[features]
aider = [
"dep:aider",
"dep:tokio",
"dep:futures-util",
]
claude_code = [
"dep:claude_code",
"dep:tokio",
"dep:futures-util",
]
codex = [
"dep:codex",
"dep:tokio",
"dep:futures-util",
]
default = []
gemini_cli = [
"dep:gemini_cli",
"dep:tokio",
"dep:futures-util",
]
opencode = [
"dep:opencode",
"dep:tokio",
"dep:futures-util",
]
[lib]
name = "agent_api"
path = "src/lib.rs"
[[bin]]
name = "fake_aider_stream_json_agent_api"
path = "src/bin/fake_aider_stream_json_agent_api.rs"
[[bin]]
name = "fake_claude_mcp_agent_api"
path = "src/bin/fake_claude_mcp_agent_api.rs"
[[bin]]
name = "fake_claude_stream_json_agent_api"
path = "src/bin/fake_claude_stream_json_agent_api.rs"
[[bin]]
name = "fake_codex_app_server_jsonrpc_agent_api"
path = "src/bin/fake_codex_app_server_jsonrpc_agent_api.rs"
[[bin]]
name = "fake_codex_mcp_agent_api"
path = "src/bin/fake_codex_mcp_agent_api.rs"
[[bin]]
name = "fake_codex_stream_exec_scenarios_agent_api"
path = "src/bin/fake_codex_stream_exec_scenarios_agent_api.rs"
[[bin]]
name = "fake_codex_stream_json_agent_api"
path = "src/bin/fake_codex_stream_json_agent_api.rs"
[[test]]
name = "c0_core_contract"
path = "tests/c0_core_contract.rs"
[[test]]
name = "c1_aider_runtime_follow_on"
path = "tests/c1_aider_runtime_follow_on.rs"
[[test]]
name = "c1_claude_exec_policy"
path = "tests/c1_claude_exec_policy.rs"
[[test]]
name = "c1_claude_live_events"
path = "tests/c1_claude_live_events.rs"
[[test]]
name = "c1_codex_exec_policy"
path = "tests/c1_codex_exec_policy.rs"
[[test]]
name = "c1_codex_stream_exec_adapter"
path = "tests/c1_codex_stream_exec_adapter.rs"
[[test]]
name = "c1_external_sandbox_validation"
path = "tests/c1_external_sandbox_validation.rs"
[[test]]
name = "c2_claude_session_resume_v1"
path = "tests/c2_claude_session_resume_v1.rs"
[[test]]
name = "c2_codex_session_resume_v1"
path = "tests/c2_codex_session_resume_v1.rs"
[[test]]
name = "c2_codex_stream_exec_parity"
path = "tests/c2_codex_stream_exec_parity.rs"
[[test]]
name = "c3_explicit_cancellation"
path = "tests/c3_explicit_cancellation.rs"
[[test]]
name = "c3_explicit_cancellation_claude_code"
path = "tests/c3_explicit_cancellation_claude_code.rs"
[[test]]
name = "c4_claude_session_fork_v1"
path = "tests/c4_claude_session_fork_v1.rs"
[[test]]
name = "c5_claude_add_dirs_runtime_rejection"
path = "tests/c5_claude_add_dirs_runtime_rejection.rs"
[[test]]
name = "c5_mcp_management_v1"
path = "tests/c5_mcp_management_v1.rs"
[[test]]
name = "c6_codex_add_dirs_preflight_rejection"
path = "tests/c6_codex_add_dirs_preflight_rejection.rs"
[[test]]
name = "session_fork_v1_codex"
path = "tests/session_fork_v1_codex.rs"
[dependencies.aider]
version = "=0.3.5"
optional = true
package = "unified-agent-api-aider"
[dependencies.claude_code]
version = "=0.3.5"
optional = true
package = "unified-agent-api-claude-code"
[dependencies.codex]
version = "=0.3.5"
optional = true
package = "unified-agent-api-codex"
[dependencies.futures-core]
version = "0.3"
[dependencies.futures-util]
version = "0.3"
optional = true
[dependencies.gemini_cli]
version = "=0.3.5"
optional = true
package = "unified-agent-api-gemini-cli"
[dependencies.opencode]
version = "=0.3.5"
optional = true
package = "unified-agent-api-opencode"
[dependencies.serde_json]
version = "1.0"
[dependencies.thiserror]
version = "1.0"
[dependencies.tokio]
version = "1.38"
features = [
"process",
"io-util",
"io-std",
"macros",
"rt",
"rt-multi-thread",
"time",
"sync",
"fs",
]
optional = true
[dependencies.url]
version = "2"
[dev-dependencies.tempfile]
version = "3.12"
[dev-dependencies.tokio]
version = "1.38"
features = [
"process",
"io-util",
"io-std",
"macros",
"rt",
"rt-multi-thread",
"time",
"sync",
"fs",
]