Skip to main content

Reusable runtime core for durable agent applications.

Project description

Soveren logo

Soveren Agent Platform

Reusable runtime core for durable agent applications.

This repository is the extraction target for the shared runtime currently implemented inside poruchen. It is intentionally separate from both application repositories:

  • soveren-agent-platform owns reusable mechanics: durable queueing, run tracking, decision/action framework, batching, scheduler, sessions, integration contracts, and bundled SQLite adapters for the default embedded runtime.
  • poruchen owns private product behavior: prompts, ClickUp tools, approval copy, policies, and app-specific schema.
  • pulsell-agent owns Pulsell-specific media, transcription, vision, task, and workflow behavior.

The first usable slice in this repo contains:

  • SQLite connection setup
  • durable queue port with a SQLite adapter
  • layered migration runner with platform/app migration providers
  • platform migrations for event_queue and agent_runs
  • durable queue API
  • inbound batching module with SQLite state and flush wakeups
  • agent worker module that consumes queue events and calls app-provided agents
  • cron module with due-job leasing and app-provided handlers
  • Telegram interface module that normalizes Telegram ingress into queue events
  • optional python-telegram-bot adapter for inbound normalization and outbound sending
  • optional python-telegram-bot runtime builder with message and callback hooks
  • LLM backend contracts and reusable OpenAI-compatible/session-backed backends
  • agent run persistence helpers
  • rich planner context builder for batches, sessions, mailbox, actions, outbound, cron, and routing metadata
  • optional app-neutral prompt formatter for rich planner context
  • planner envelope that injects session routing and rich context into LLM requests
  • execution session mailbox for prompts queued behind busy sessions
  • persistent execution-session events, snapshots, and deterministic routing
  • reusable stub and tmux execution session backends
  • reusable Codex app-server execution session backend
  • Codex app-server dynamic tool contracts, registry, and fail-closed JSON-RPC tool-call handling
  • session backend registry for wiring reusable and custom backends
  • platform SQLite migration and schema compatibility checks
  • generic actions/approvals lifecycle with app-registered executors
  • generic outbound channel queue with app-registered senders
  • decision dispatcher that maps typed decisions to outbound, actions, session mailbox, or cron side effects
  • planner-dispatch helper for fake-tested context to side-effect pipelines
  • runtime supervisor and AgentPlatformApp composition helper for standard platform workers

See docs/ARCHITECTURE.md for the current architecture. See docs/API.md for the consumer integration API and quick start. See docs/EXTRACTION_PLAN.md for the rollout plan. See docs/PORTS.md for the queue/store abstraction strategy.

Consumer Quick Start

from pathlib import Path

from soveren_agent_platform.agent import AgentEvent, AgentHandler
from soveren_agent_platform.app_api import AgentPlatformApp


class AppAgentHandler(AgentHandler):
    async def handle(self, event: AgentEvent) -> None:
        ...


app = (
    AgentPlatformApp(db_path=Path("data/app.db"))
    .use_batching()
    .use_agent(handler=AppAgentHandler())
)

AgentPlatformApp applies and validates platform migrations before workers start. Apps with a separate migration pipeline can call soveren_agent_platform.storage.bootstrap_platform_storage(db_path) themselves and pass bootstrap_storage=False.

Local Development

uv sync --group dev
uv run ruff check src tests
uv run mypy
uv run pytest

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

soveren_agent_platform-0.2.0.tar.gz (128.8 kB view details)

Uploaded Source

Built Distribution

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

soveren_agent_platform-0.2.0-py3-none-any.whl (108.1 kB view details)

Uploaded Python 3

File details

Details for the file soveren_agent_platform-0.2.0.tar.gz.

File metadata

  • Download URL: soveren_agent_platform-0.2.0.tar.gz
  • Upload date:
  • Size: 128.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for soveren_agent_platform-0.2.0.tar.gz
Algorithm Hash digest
SHA256 0d536e46ea775d7d341b5b6eaee21e6d2ea2461ebdc65ffb7b5c9a46c9ba5622
MD5 1a071488e3c3f57323cd71ddbfa6ad18
BLAKE2b-256 69989708bcdf2adb59948e5bca2beb37814605819e74ee0bf444c8823dfa0798

See more details on using hashes here.

Provenance

The following attestation bundles were made for soveren_agent_platform-0.2.0.tar.gz:

Publisher: publish.yml on neureca/soveren-agent-platform

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

File details

Details for the file soveren_agent_platform-0.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for soveren_agent_platform-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4949b979a1c1e39fb4cf6c15380eabf8c71c10d832d5fe13fb5395f22ff8a304
MD5 5f4c3176efe1231fc1a92b574befcdf4
BLAKE2b-256 db328713835ba28e4cca39d56039728ce0505ad87e0f60125916b265dd15b6c1

See more details on using hashes here.

Provenance

The following attestation bundles were made for soveren_agent_platform-0.2.0-py3-none-any.whl:

Publisher: publish.yml on neureca/soveren-agent-platform

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