Skip to main content

AXIS SDK

Version: 0.3.0 Status: Production Ready License: MIT

Purpose

The axis-sdk is a zero-dependency boundary layer that defines contracts between AXIS components.

✅ Included

  • Protocol definitions (typing.Protocol)
  • Type definitions (pydantic.BaseModel)
  • Interface contracts for:
    • Agents (AgentProtocol)
    • Orchestrators (OrchestratorProtocol)
    • Telemetry (TelemetryProtocol)
    • Ledger (LedgerProtocol)
    • Skills (SkillProtocol)
    • Reasoning (ReasoningProtocol)

❌ Excluded

  • Business logic
  • Runtime implementations
  • Side effects (I/O, network, database)
  • External dependencies (except pydantic for validation)

Installation

pip install axis-sdk

Quick Start

from axis_sdk.protocols import AgentProtocol
from axis_sdk.types import AgentConfig

# Define your agent implementing the protocol
class MyAgent:
    """Custom agent implementation."""

    def __init__(self, config: AgentConfig):
        self.config = config

    @property
    def agent_id(self) -> str:
        return self.config.agent_id

    def validate_invocation(self, context: dict) -> bool:
        """Validate if agent can handle this invocation."""
        return True

    def run(self, task: str, context: dict) -> tuple:
        """Execute the agent task."""
        result = {"status": "completed", "output": "Task done"}
        tokens_used = 150
        metadata = {"model": "gemini-2.0-flash"}
        return True, result, tokens_used, metadata

API Reference

Protocols

AgentProtocol

from axis_sdk.protocols import AgentProtocol

@runtime_checkable
class AgentProtocol(Protocol):
    @property
    def agent_id(self) -> str: ...

    def validate_invocation(self, context: Dict[str, Any]) -> bool: ...

    def run(self, task: str, context: Dict[str, Any]) -> Tuple[bool, Any, int, Dict]: ...

OrchestratorProtocol

from axis_sdk.protocols import OrchestratorProtocol

@runtime_checkable
class OrchestratorProtocol(Protocol):
    def route_task(self, task: str, context: Dict[str, Any]) -> str: ...

    def execute_agent(self, agent_id: str, task: str, context: Dict[str, Any]) -> Dict: ...

Types

AgentConfig

from axis_sdk.types import AgentConfig

config = AgentConfig(
    agent_id="my-agent",
    model="gemini-2.0-flash",
    temperature=0.7,
    max_tokens=1000
)

Development

Install Dev Dependencies

pip install -e ".[dev]"

Run Tests

pytest

Run Linter

ruff check axis_sdk

Run Type Checker

mypy axis_sdk

License

MIT License - See LICENSE file.

Links


Part of AXIS Migration Project Separated from monorepo: https://github.com/emilyveigaai/AXIS

Metadata

Release files for axis-sdk 0.3.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for axis-sdk 0.3.1
File Size Uploaded
axis_sdk-0.3.1.tar.gz 10.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for axis-sdk 0.3.1
File Interpreter ABI Platform
axis_sdk-0.3.1-py3-none-any.whl Python 3 none any Details

Total release size: 22.2 kB

Release files / axis_sdk-0.3.1.tar.gz

Download URL axis_sdk-0.3.1.tar.gz
Size 10.8 kB
Tags Source
SHA-256 checksum
How to use checksums
e7210d11832487582e8debee64860fff2b0a7ae118a8d478453b1cc448311d75
BLAKE2b-256 checksum
How to use checksums
8e200bb6fabac9eab031f9fcbeecfa8e329e2b301ab274596a00ec13c883cd60
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.0

Release files / axis_sdk-0.3.1-py3-none-any.whl

Download URL axis_sdk-0.3.1-py3-none-any.whl
Size 11.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ba97e5a776461fd7fd9e7b5001b4104b3c63117e01349061522026d50552ff94
BLAKE2b-256 checksum
How to use checksums
999b35816f44d82e7aad6d0683f3f742a149d9376203fdb674659cec9a985356
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.0

Release history Release notifications | RSS feed

This release

0.3.1 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page