Skip to main content

One typed runtime API for Claude, Codex, and Antigravity agent SDKs.

Project description

agent-runtime-kit

agent-runtime-kit is a small Python runtime layer for agent SDKs. It gives applications one typed async API for dispatching an agentic task through Claude Agent SDK, OpenAI Codex SDK, or Google Antigravity SDK while keeping provider capabilities visible.

Tags: agent-sdk agent-runtime coding-agents claude-code openai-codex google-antigravity mcp typed-python async-python developer-tools

About

agent-runtime-kit is for Python developers who want to run coding-agent tasks through vendor runtimes without rewriting their application around each SDK. It normalizes the runtime boundary: task inputs, capability checks, event streams, tool audits, availability diagnostics, and typed results.

The library keeps vendor differences visible. Claude, Codex, and Antigravity still expose different capabilities, permission models, setup requirements, and unsupported fields. agent-runtime-kit gives those differences a consistent shape instead of hiding them behind a lowest-common-denominator wrapper.

The package is intentionally not a router, benchmark harness, queue, hosted service, or full agent framework. It is the reusable layer underneath those systems: task models, runtime capabilities, event sinks, availability diagnostics, and adapters.

Install

If you want all first-party runtimes available, install the all extra:

pip install "agent-runtime-kit[all]"

Install the dependency-free core when you only need the public models, fake runtime, registry, diagnostics types, or you plan to add provider SDKs later:

pip install agent-runtime-kit

Install a single provider extra when your application only dispatches through one vendor runtime:

pip install "agent-runtime-kit[claude]"
pip install "agent-runtime-kit[codex]"
pip install "agent-runtime-kit[antigravity]"

Provider extras are a packaging boundary, not a separate API. They keep the core importable without vendor SDKs, avoid forcing every user to install every CLI binary or compiled runtime wheel, and contain dependency drift when one fast-moving vendor SDK changes independently of the others. Missing adapters raise typed setup errors that point to the matching extra.

import asyncio

from agent_runtime_kit import AgentTask, FakeAgentRuntime


async def main() -> None:
    runtime = FakeAgentRuntime(output="done")
    result = await runtime.run(AgentTask(goal="Summarize this repository"))
    print(result.output)


asyncio.run(main())

The core package has no Claude, Codex, or Antigravity dependency. Vendor SDKs are added through optional extras.

Real Providers

import asyncio

from agent_runtime_kit import AgentTask
from agent_runtime_kit.adapters import ClaudeAgentRuntime


async def main() -> None:
    runtime = ClaudeAgentRuntime(default_model="claude-sonnet-4-6")
    diagnostic = runtime.availability()
    if not diagnostic.available:
        raise RuntimeError(diagnostic.message)
    result = await runtime.run(AgentTask(goal="Summarize this repository"))
    print(result.output)


asyncio.run(main())

Runtime Fields

AgentTask supports goal, system prompt, model, reasoning effort, working directory, permission profile, MCP stdio servers, session/resume handles, output schema, budget, metadata, and an async event sink. (model and reasoning_effort are first-class fields; the legacy metadata["model"] / metadata["reasoning_effort"] aliases still work.) Where a runtime cannot honor a field (for example only Claude maps budget_usd; Codex and Antigravity reject it with a typed UnsupportedTaskInputError) the adapter raises rather than silently dropping it.

AgentResult returns output, finish reason (see FinishReason), parsed structured output, usage, cost, session id, tool-call audits, and provider metadata. artifacts is a reserved field: no built-in runtime populates it yet, so it is always an empty tuple today.

Docs

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

agent_runtime_kit-0.3.0.tar.gz (122.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

agent_runtime_kit-0.3.0-py3-none-any.whl (47.7 kB view details)

Uploaded Python 3

File details

Details for the file agent_runtime_kit-0.3.0.tar.gz.

File metadata

  • Download URL: agent_runtime_kit-0.3.0.tar.gz
  • Upload date:
  • Size: 122.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for agent_runtime_kit-0.3.0.tar.gz
Algorithm Hash digest
SHA256 fc839f91a825ec9a6459eacb382cb9f3fbbc693b171d6a58079f69e64225bcd3
MD5 d06b57d31c725ddfa138cd15a994985a
BLAKE2b-256 5272a345d052a9b6e7ff8d36f12cb968c44634ee095086c0cd8ca09a172964f7

See more details on using hashes here.

Provenance

The following attestation bundles were made for agent_runtime_kit-0.3.0.tar.gz:

Publisher: publish-pypi.yml on ebarti/agent-runtime-kit

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file agent_runtime_kit-0.3.0-py3-none-any.whl.

File metadata

File hashes

Hashes for agent_runtime_kit-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3b5079c5250a9ce3cc11afa74b72003191ca9e53c9dfe724e65d47f21bc9dec6
MD5 a75972f56ad2aca5f79b9c49a66d0032
BLAKE2b-256 da70df924e8e4b0c6eeed4456c34f19c0b98b0464d895563515fb0c37bd8810d

See more details on using hashes here.

Provenance

The following attestation bundles were made for agent_runtime_kit-0.3.0-py3-none-any.whl:

Publisher: publish-pypi.yml on ebarti/agent-runtime-kit

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page