Skip to main content

Composable agentic framework on top of atomr actors and atomr-infer.

Project description

atomr-agents

A native Rust agentic framework built as a layered actor / strategy / harness substrate on top of atomr and atomr-infer. atomr-agents gives you a single mental model — pluggable strategies that resolve under shared budgets, channelled state with first-class checkpointing, tool-call orchestration with parallel dispatch, and durable harness loops — that scales from a one-off chatbot to a multi-tenant production agent platform.

use atomr_agents::prelude::*;

// One Pipeline composes prompt → model → parser like LCEL.
let pipeline = Pipeline::from(prompt)
    .then(model)
    .then(parser)
    .build();

let answer = pipeline.call(input, ctx).await?;

Python parity wave

The Python facade in 0.3 catches up to the Rust surface. The native extension atomr_agents._native is now split into hierarchical submodules — errors, core, observability, registry, tool, skill, persona, agent, workflow, harness, eval, guest — mirroring atomr-infer/inference-py-bindings. The top-level package re-exports the full surface, ships a PEP 561 py.typed marker, and exposes async coroutines / async iterators over pyo3-async-runtimes.

Install

pip install atomr-agents

For an editable workflow against the local checkout:

pip install maturin
maturin develop --features python -m crates/py-bindings/Cargo.toml
pip install -e ".[dev]"

Host-mode async event stream

EventBus.stream() returns an EventStream that implements the Python async iterator protocol. Drive a producer on the same loop and consume events as they fire:

import asyncio
from atomr_agents.observability import EventBus


async def main() -> None:
    bus = EventBus()
    stream = bus.stream()

    bus.emit_tool_invoked("calc", args_hash=0, elapsed_ms=5, ok=True)
    bus.emit_tool_invoked("search", args_hash=1, elapsed_ms=12, ok=True)

    async for ev in stream:
        print(ev.kind, ev.timestamp_ms)
        if ev.kind == "tool_invoked" and ev.tool == "search":
            break


asyncio.run(main())

Async registry publish

Registry.publish_async returns a Python awaitable backed by a tokio future, so version pins land without blocking the event loop:

import asyncio
from atomr_agents.registry import Registry


async def main() -> None:
    registry = Registry()
    record = await registry.publish_async(
        "tool_set", "calc", "0.1.0", {"name": "calc"}
    )
    print(record.kind, record.id, record.version)


asyncio.run(main())

Guest-mode @tool decorator

atomr_agents.guest exposes real decorators wired through _native.guest.register_*_factory. A guest tool is a class with an async def invoke(self, args, ctx) method:

from atomr_agents.guest import tool


@tool(toolset="calc")
class Add:
    name = "add"

    async def invoke(self, args: dict, ctx) -> dict:
        return {"sum": args["a"] + args["b"]}

Mirror decorators are available for @strategy, @persona, @skill, @parser, @scorer, @memory_store, and @embedder.

Where things live

The hierarchical layout is reflected in the Python facade — every submodule has a one-to-one .py mirror under atomr_agents/:

from atomr_agents.errors import RegistryError
from atomr_agents.core import TokenBudget, AgentId
from atomr_agents.agent import AgentSpec, AgentBudgets
from atomr_agents.tool import ToolDescriptor, ToolCallParser
from atomr_agents.observability import EventBus, RunTreeBuilder
from atomr_agents.registry import Registry

The top-level package keeps the 0.2.x convenience names — so from atomr_agents import EventBus, Registry still works.

Roadmap

Agent.run_turn, Harness.run, and WorkflowRunner.run are not yet exposed as Python coroutines. The Rust types are generic over four-plus strategy traits, so PyO3 cannot construct them from a stable #[pyclass] shape; they need a Boxed* adapter (BoxedAgent / BoxedHarness / BoxedWorkflow) under crates/agent / crates/harness / crates/workflow. Until that adapter lands, host code drives the loop in Rust and observes progress over the (already async-iterable) EventBus. See docs/python-api.md for the full module map.

Why an agentic framework, in Rust, on actors

Agentic systems don't fail because the models aren't good enough — they fail because the substrate underneath them treats context, composition, and persistence as afterthoughts. Glue-code retry policies, opaque memory, hand-rolled tool loops, brittle handoff between agents — that's where 3 a.m. pages come from.

Composition is the unit of work. A real agent is a Pipeline of prompts, models, parsers, and tools — each with its own retry, fallback, timeout, cache, and trace policy. atomr-agents makes every component a Callable with the same composition surface, so with_retry, with_fallbacks, and with_config apply uniformly to prompts, models, retrievers, and parsers alike.

State is channelled, durable, and forkable. Long-running agents need more than chat history. They need typed channels with reducers (AppendMessages, MergeMap, LastWriteWins, MaxByTimestamp), per-super-step checkpoints keyed by (workflow, run, step), and fork-with-edit so an operator can branch a divergent run from any prior state. atomr-agents ships LangGraph's state model verbatim in atomr's actor idiom.

Tool calls are parallel and provider-agnostic. When a model emits five tool calls in one turn, atomr-agents fans them into a JoinSet and aggregates in original order. The streaming tool_call_delta parser handles OpenAI and Anthropic deltas natively; new providers plug in behind the same Provider enum. Per-call deltas are also surfaced as Event::ToolCallStreamed so tracers and UIs see tool intent in real time, distinct from the post-call Event::ToolInvoked. RichTool returns ToolReturn::{Content, ContentAndArtifact, Command} so a tool can also drive graph control flow.

Provider runtimes are opt-in feature flags. Enable provider-anthropic, provider-openai, or provider-gemini on the umbrella to pull the corresponding atomr-infer-runtime-* crate and re-export its *Config / *Pricing / *Runner via atomr_agents::agent::providers::{anthropic, openai, gemini}. Cost reports include cached_tokens (Anthropic prompt-cache, OpenAI cached input) and reasoning_tokens (o1-style) automatically.

Granular efficiency. Rust gives us deterministic resource use, zero-cost abstractions, and ownership-as-concurrency-safety. Strategy trait generics monomorphize the per-turn pipeline; Box<dyn> opt-in exists for config-driven loading. The whole 26-crate workspace builds under cargo check --workspace in seconds and ships zero runtime overhead beyond what the actor crate already pays.

What's in the box

Crate What it does
atomr-agents Umbrella facade re-exporting the public surface, feature-flag-driven
atomr-agents-core Ids, budgets (token / time / money / iteration), AgentContext, RunId, structured Event taxonomy, error types
atomr-agents-callable Callable trait, CallableHandle, Pipeline builder (then / fan_out / assign), decorators (with_retry / with_fallbacks / with_config / with_timeout / Branch / Lambda)
atomr-agents-strategy Strategy trait family (ToolStrategy, MemoryStrategy, SkillStrategy, RoutingStrategy, PolicyStrategy, LoopStrategy, TerminationStrategy) + combinators
atomr-agents-context ContextAssembler — priority-merge under a TokenBudget
atomr-agents-observability EventBus, RunTree builder, Tracer trait, StdoutTracer / JsonlTracer / LangSmithTracer
atomr-agents-state StateSchema + 5 reducers, RunState, Checkpointer trait + InMemoryCheckpointer, fork-with-edit; SQLite/Postgres backend stubs behind features
atomr-agents-tool Tool / RichTool traits, ToolDescriptor, ToolSet + ToolSetRegistry, PermissionSpec, provider-aware ToolCallParser (OpenAI / Anthropic), HandoffTool
atomr-agents-skill Skill, SkillSet, Static / Keyword skill strategies
atomr-agents-memory MemoryStore (short-term) + LongStore (long-term, namespace-tupled), RecencyMemoryStrategy / SummarizingMemoryStrategy / ChainedMemoryStrategy, WriteMemoryTool / UpdateMemoryTool / RecallMemoryTool
atomr-agents-embed Embedder trait, MockEmbedder, AnnIndex + InMemoryAnnIndex, EmbeddingToolStrategy
atomr-agents-retriever Retriever zoo: Bm25 / Vector / MultiQuery / ContextualCompression / ParentDocument / Ensemble (RRF) / SelfQuery / EmbeddingsFilter / TimeWeighted
atomr-agents-ingest Loader (text / md / json / csv) + splitters (Recursive / MarkdownHeader / Code / Token / Semantic) + CachedEmbedder + IngestPipeline
atomr-agents-persona All five structural strategies (Static, BigFive, Mbti, Jungian, Composite) + emphasis strategies (Static, AudienceAdaptive, TaskAdaptive, MoodState, GoalConditioned)
atomr-agents-instruction ComposedInstructionStrategy<P, T, B>, ChatPromptTemplate, MessagesPlaceholder, FewShotChatTemplate, LengthBasedSelector / SemanticSimilaritySelector
atomr-agents-agent Agent<I, T, Ms, Sk> actor + per-turn pipeline, tool-call loop with parallel dispatch, AgentMiddleware (logging / retry / rate-limit / redaction / tool-error-recovery), InferenceClient adapter for any ModelRunner
atomr-agents-workflow DAG primitives, WorkflowRunner, StatefulRunner (channelled state), Interruptible (interrupt() + interrupt_before / _after + Command::{Continue, Resume, Update, Goto}), Subgraph, dispatch_fan_out (Send-API analogue)
atomr-agents-harness Harness<L, T> actor, LoopStrategy / TerminationStrategy, durable iteration log; Harness is itself a Callable
atomr-agents-org Org / Department / Team, OrgRoutingStrategy impls (RoundRobin / LoadAware / CapabilityMatch), Policy::narrow, NamespacedMemory (read-cascade + write-gating), swarm_loop helper
atomr-agents-registry Versioned artifact registry with (kind, id, version) keys + publish_gated for eval-regression blocking
atomr-agents-eval EvalSuite, Scorer (Contains / Equality / Regex / LlmJudgeScorer / RubricScorer / PairwiseScorer), RegressionGate, AnnotationQueue
atomr-agents-cache LlmCache trait + InMemoryLlmCache + SemanticLlmCache (cosine match on prompt embedding); SQLite/Redis backend stubs behind features
atomr-agents-parser Parser<T> trait, JsonParser / JsonSchemaParser / SchemaParser<T> / EnumParser / CommaListParser / XmlParser / YamlParser, OutputFixingParser, RetryWithErrorParser, StreamingPartialJsonParser
atomr-agents-stt-core SpeechToText / StreamingSession traits, Capabilities (advertised per backend via a pub const), AudioInput / Transcript / StreamEvent, MockSpeechToText
atomr-agents-stt-remote-core Shared HTTP / WebSocket plumbing for cloud STT backends: reqwest client builder, tokio-tungstenite connect helper, SecretRef (env / literal / file), retry / rate-limit / timeout config
atomr-agents-stt-audio symphonia-based decoder, rubato resampler, and (feature mic) cpal-based MicCaptureSession with backpressure-aware mpsc producer
atomr-agents-stt-runtime-openai OpenAI Whisper / gpt-4o-transcribe REST batch backend
atomr-agents-stt-runtime-deepgram Deepgram REST + WebSocket backend; speaker-count diarization, partial results, VAD endpointing
atomr-agents-stt-runtime-assemblyai AssemblyAI REST upload + Universal-Streaming WebSocket; named-speaker diarization
atomr-agents-stt-runtime-whisper Local whisper.cpp via whisper-rs (gated behind the whisper-cpp feature). Optional download-models helper fetches ggml weights
atomr-agents-stt-diarize-sherpa Diarizer trait, MockDiarizer, sherpa-onnx-backed SherpaDiarizer (gated behind sherpa-onnx), apply_to_transcript stitching
atomr-agents-stt-voice VoiceSession (Live vs TurnBased { silence_ms }), Vad trait + EnergyVad/SileroVad, pump_mic_to_stream glue
atomr-agents-stt-tool TranscribeTool (a Tool the model can call) and voice_input_skill(stt) -> (Skill, DynTool) for declarative agent integration
atomr-agents-py-bindings atomr_agents._native PyO3 module — Event / EventBus / Registry / stt.SpeechToText / voice.VoiceSession exposed to Python
atomr-agents-cli atomr-agents binary with eval / registry / harness / serve (Studio-style read+resume inspector) subcommands
atomr-agents-testkit Stub crate today. For tests, depend on atomr-infer-testkit (re-exports MockRunner / MockScript) directly — that's what crates/agent tests use.

Plus a Python facade — pip install atomr-agents — that exposes the host-mode Registry / EventBus and the guest-mode @tool / @strategy / @persona decorators.

Quick start (Rust)

The umbrella crate is published on crates.io as atomr-agents:

[dependencies]
atomr-agents = { version = "0.2", features = ["agent", "harness", "eval"] }
atomr-infer  = { version = "0.6", features = ["openai"] }   # or any provider

Or, to pull a provider runtime through the umbrella so Agent / LocalRunnerClient / OpenAiRunner come from one crate:

atomr-agents = { version = "0.2", features = ["agent", "provider-openai"] }
# or features = ["agent", "provider-anthropic"], ["agent", "provider-gemini"]

A minimal agent against MockRunner (good for tests; swap for any ModelRunner in production):

use std::sync::Arc;
use atomr_agents::prelude::*;
use atomr_agents::agent::{Agent, AgentBudgets, InferenceClient, LocalRunnerClient, Provider};
use atomr_agents::tool::{StaticToolStrategy, DynTool};
use atomr_agents::memory::{InMemoryStore, RecencyMemoryStrategy};
use atomr_agents::skill::StaticSkillStrategy;
use atomr_agents::persona::StaticPersonaStrategy;
use atomr_agents::instruction::{
    ComposedInstructionStrategy, StaticBehaviorStrategy, StaticTaskStrategy,
};
use atomr_agents::observability::EventBus;
use atomr_infer_testkit::{MockRunner, MockScript};

let runner = MockRunner::new(MockScript::from_text(["the answer is ", "42"]));
let inference: Arc<dyn InferenceClient> =
    Arc::new(LocalRunnerClient::new(runner, Provider::OpenAi));

let agent = Agent {
    id: AgentId::from("a-1"),
    model: "mock".into(),
    instructions: ComposedInstructionStrategy::new(
        StaticPersonaStrategy::new("You are a helpful assistant."),
        StaticTaskStrategy("Answer arithmetic questions.".into()),
        StaticBehaviorStrategy("Reply tersely.".into()),
    ),
    tools: StaticToolStrategy::new(Vec::<DynTool>::new()),
    memory: RecencyMemoryStrategy::new(Arc::new(InMemoryStore::new()), 5, 30),
    skills: StaticSkillStrategy::new(vec![]),
    inference,
    bus: EventBus::new(),
    max_tool_iterations: 3,
};

let r = agent
    .run_turn("what's 1+2".into(), AgentBudgets::default())
    .await?;
println!("{}", r.text);

Add tools, switch the MockRunner to a real ModelRunner (OpenAI, Anthropic, vLLM, …), and the same code runs unchanged.

Quick start (Python)

pip install atomr-agents
from atomr_agents import EventBus, Registry

bus = EventBus()
bus.subscribe(lambda ev: print(ev.kind, ev.timestamp_ms))

registry = Registry()
registry.publish("tool_set", "ts", "0.1.0", {"tools": ["calc"]})
print(registry.latest("tool_set", "ts"))

See docs/python.md for the full host/guest model and the subinterpreter-pool dispatcher pattern inherited from atomr's pycore.

Documentation map

License

Apache-2.0.

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

atomr_agents-0.8.0.tar.gz (578.2 kB view details)

Uploaded Source

Built Distributions

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

atomr_agents-0.8.0-cp313-cp313-win_amd64.whl (4.4 MB view details)

Uploaded CPython 3.13Windows x86-64

atomr_agents-0.8.0-cp313-cp313-musllinux_1_2_x86_64.whl (4.4 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

atomr_agents-0.8.0-cp313-cp313-musllinux_1_2_aarch64.whl (4.2 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

atomr_agents-0.8.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.1 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

atomr_agents-0.8.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (4.0 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

atomr_agents-0.8.0-cp313-cp313-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (7.7 MB view details)

Uploaded CPython 3.13macOS 10.12+ universal2 (ARM64, x86-64)macOS 10.12+ x86-64macOS 11.0+ ARM64

atomr_agents-0.8.0-cp312-cp312-win_amd64.whl (4.4 MB view details)

Uploaded CPython 3.12Windows x86-64

atomr_agents-0.8.0-cp312-cp312-musllinux_1_2_x86_64.whl (4.4 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

atomr_agents-0.8.0-cp312-cp312-musllinux_1_2_aarch64.whl (4.2 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

atomr_agents-0.8.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.1 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

atomr_agents-0.8.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (4.0 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

atomr_agents-0.8.0-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (7.7 MB view details)

Uploaded CPython 3.12macOS 10.12+ universal2 (ARM64, x86-64)macOS 10.12+ x86-64macOS 11.0+ ARM64

atomr_agents-0.8.0-cp311-cp311-win_amd64.whl (4.4 MB view details)

Uploaded CPython 3.11Windows x86-64

atomr_agents-0.8.0-cp311-cp311-musllinux_1_2_x86_64.whl (4.4 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

atomr_agents-0.8.0-cp311-cp311-musllinux_1_2_aarch64.whl (4.1 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

atomr_agents-0.8.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.1 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

atomr_agents-0.8.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (4.0 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

atomr_agents-0.8.0-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (7.7 MB view details)

Uploaded CPython 3.11macOS 10.12+ universal2 (ARM64, x86-64)macOS 10.12+ x86-64macOS 11.0+ ARM64

atomr_agents-0.8.0-cp310-cp310-win_amd64.whl (4.4 MB view details)

Uploaded CPython 3.10Windows x86-64

atomr_agents-0.8.0-cp310-cp310-musllinux_1_2_x86_64.whl (4.4 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

atomr_agents-0.8.0-cp310-cp310-musllinux_1_2_aarch64.whl (4.1 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

atomr_agents-0.8.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.1 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

atomr_agents-0.8.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (4.0 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

atomr_agents-0.8.0-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (7.7 MB view details)

Uploaded CPython 3.10macOS 10.12+ universal2 (ARM64, x86-64)macOS 10.12+ x86-64macOS 11.0+ ARM64

File details

Details for the file atomr_agents-0.8.0.tar.gz.

File metadata

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

File hashes

Hashes for atomr_agents-0.8.0.tar.gz
Algorithm Hash digest
SHA256 94e029632d202e6c14098a94406cf9bc2939c57455b14d3ebd839a4dbe544ba7
MD5 fbf1a79427ed5586732e3589996f7e33
BLAKE2b-256 fc51da1d1337596a62b1c0dc8a57a77e78961d2ffab5ccdb56dd7caa21011d12

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.8.0.tar.gz:

Publisher: release.yml on rustakka/atomr-agents

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

File details

Details for the file atomr_agents-0.8.0-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for atomr_agents-0.8.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 792994e6c4efc19892141d4a3f00c2ea72436199864f304a046d8563423daae2
MD5 43e5773bc4b486d5559cc9984aab9660
BLAKE2b-256 ced75c14336ae87d8db9177bbe6ef58f7d310fc69597aa6f65aa8834b40908e9

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.8.0-cp313-cp313-win_amd64.whl:

Publisher: release.yml on rustakka/atomr-agents

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

File details

Details for the file atomr_agents-0.8.0-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for atomr_agents-0.8.0-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 d54ab3b78d65e5300806238cfd9237b1b661018cd257b37fa5454e35aa597620
MD5 c32c35a4f2f2a4576a5bbd84e2d9400a
BLAKE2b-256 8f5e057d37abcde122ca4bec78d7e768c9aae8458bfae191b18e55764c5f733c

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.8.0-cp313-cp313-musllinux_1_2_x86_64.whl:

Publisher: release.yml on rustakka/atomr-agents

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

File details

Details for the file atomr_agents-0.8.0-cp313-cp313-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for atomr_agents-0.8.0-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 72c60614b0782ed043b300d865d48bf71bf4750883483cd6d101e305edb621d0
MD5 bbf4bd46abee38a343a74b5569f69b99
BLAKE2b-256 e211029651ee232bc676841917dc3af95dccccd8b05b3298c79ffb2742f2651f

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.8.0-cp313-cp313-musllinux_1_2_aarch64.whl:

Publisher: release.yml on rustakka/atomr-agents

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

File details

Details for the file atomr_agents-0.8.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for atomr_agents-0.8.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 803e1a5c45913f9b1e43df072b36ca0c29f00aa98c92308b4be83aeef16d30eb
MD5 036649f99f7e2714ef7b5bd08c1910fa
BLAKE2b-256 3200d3de071973ab1782c7855a28472c9cec06d4522f5afe287031079671027f

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.8.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on rustakka/atomr-agents

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

File details

Details for the file atomr_agents-0.8.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for atomr_agents-0.8.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 5fc9e729337adcdfecbd80c9638d73e63f039c07f913367ce7cd28301b3962a6
MD5 b6637464d5e670a11446a6795109a770
BLAKE2b-256 cf41cd923202861ab9e726075c6297fd9f60d6fa3fb35ec19b0c9a0b61bb8ed8

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.8.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: release.yml on rustakka/atomr-agents

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

File details

Details for the file atomr_agents-0.8.0-cp313-cp313-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for atomr_agents-0.8.0-cp313-cp313-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 31079376f2357c20fa6162d3163f476b53feaac8e8b14331bde923ea70f8ce58
MD5 4673165c94d7e7d6cf7dacc50ebfcc23
BLAKE2b-256 a501fa99e9931f1b4926eedfe750831dd6156f04d1c7fe5803a35c125232c8cf

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.8.0-cp313-cp313-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl:

Publisher: release.yml on rustakka/atomr-agents

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

File details

Details for the file atomr_agents-0.8.0-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for atomr_agents-0.8.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 ab5950209372b96d8a207fd5bbcee3897e89a8af79b5b63ae770b3ad731e3a5d
MD5 2a51a4504efefc8f60dc9d7e0c46fa71
BLAKE2b-256 78cbfb253df2510b05ea86bb618c9f3bb655be2b1f419ab122f1b07d42b559b2

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.8.0-cp312-cp312-win_amd64.whl:

Publisher: release.yml on rustakka/atomr-agents

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

File details

Details for the file atomr_agents-0.8.0-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for atomr_agents-0.8.0-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 c75db5de3dde4cbcb243a20205856f8f86eb54debedfda0512033862f736142d
MD5 6f971f1dd8ee3d1c195b3e55622be486
BLAKE2b-256 2e7340a4fe17edf444bff83035129f5d89951e01f97eae91c374c7770c5ce240

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.8.0-cp312-cp312-musllinux_1_2_x86_64.whl:

Publisher: release.yml on rustakka/atomr-agents

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

File details

Details for the file atomr_agents-0.8.0-cp312-cp312-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for atomr_agents-0.8.0-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 aa70b512a94866ae4b048ba82324034f57198bf1baca581dc7a4a57e23a216d0
MD5 2489640ded42172b1628ed881b6906f8
BLAKE2b-256 db95d0e323a0e56c0c754048658419cd892b31420f094ace3f67ac8d8631ed1b

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.8.0-cp312-cp312-musllinux_1_2_aarch64.whl:

Publisher: release.yml on rustakka/atomr-agents

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

File details

Details for the file atomr_agents-0.8.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for atomr_agents-0.8.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b11ac25d32b4e352fe607df7644b99e5da3c8960dade9e864691e045755dc731
MD5 72f95c22ead9ef62164f686c971cc998
BLAKE2b-256 a09bea164c4df40e511eac7a984014602194a2d4d9b15c66a572345922bae402

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.8.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on rustakka/atomr-agents

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

File details

Details for the file atomr_agents-0.8.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for atomr_agents-0.8.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 b95f7345646a7d878615bfaa2993643c890b2dbcb6e174a8964a04ffd6b422e0
MD5 a06dd93c1892d9a1ad03df2640f6db26
BLAKE2b-256 53c132c1572edd22eb68f54cd4b48ff85fc1b616b53ab89e5a28b0aaef312486

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.8.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: release.yml on rustakka/atomr-agents

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

File details

Details for the file atomr_agents-0.8.0-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for atomr_agents-0.8.0-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 af5b1ae9f7ed7abada16f225cde01fa3c05c7fbbf88b41d72dea1a79a3417bd0
MD5 e5319cb9e9e2263c7cc6ff824ea09eb4
BLAKE2b-256 eedc324e891aed4520412108c6e346a10242e4e9f6dbfd5822f2f9a8e6b7a679

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.8.0-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl:

Publisher: release.yml on rustakka/atomr-agents

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

File details

Details for the file atomr_agents-0.8.0-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for atomr_agents-0.8.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 526a1a2f39bb7fe75d81cae6dfe4e7a545e68a5ef6aebead7c1cc1a0776563e1
MD5 ab282ca451f39234ea1dd0b3d5001398
BLAKE2b-256 d91ab79fd41a8758ea3c0956e0cc70b8963ae493d0a79d89f9a78b44f6435843

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.8.0-cp311-cp311-win_amd64.whl:

Publisher: release.yml on rustakka/atomr-agents

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

File details

Details for the file atomr_agents-0.8.0-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for atomr_agents-0.8.0-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 86e00741cfecdeb74cece3ce57d65c0d6672b7a048dc849551e33c90dc7db35b
MD5 f497980a7a8eaa70d2dcb653f344505a
BLAKE2b-256 c43121f50646e2cb3416dcc62c6c51c8fb09c052c6c2b3d59ddb3c9d0245c24d

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.8.0-cp311-cp311-musllinux_1_2_x86_64.whl:

Publisher: release.yml on rustakka/atomr-agents

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

File details

Details for the file atomr_agents-0.8.0-cp311-cp311-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for atomr_agents-0.8.0-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 af78e5193eb2336f3ae70a9c8402a2a5a8c893bea6980a5722f9f0813eebed03
MD5 f2ed494df0440a37f45630878780a331
BLAKE2b-256 a9d46aa92c2e44013cc4839f110f3b8c529dd878aa72abfe0604dfbbc5828d49

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.8.0-cp311-cp311-musllinux_1_2_aarch64.whl:

Publisher: release.yml on rustakka/atomr-agents

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

File details

Details for the file atomr_agents-0.8.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for atomr_agents-0.8.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4304eaa886a9cd14523ac75cf02e77e601231ad4e25e07093e20ba72b6751584
MD5 041791cda096f3ee6cc6dc2b4f981199
BLAKE2b-256 99545764370fc13f0bbded0f5703a380741f6e80650cb75579dd1950119fe364

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.8.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on rustakka/atomr-agents

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

File details

Details for the file atomr_agents-0.8.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for atomr_agents-0.8.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 d4b62cdfef8d5f46a6c93f2438bbf5e7de058ee2a6c432501e75180c5dd42d64
MD5 9db414b0fd666a64ae129cd976628cff
BLAKE2b-256 d6010c2e19d0bdb918954314ccab77f256ea0e3a300719b5e642c44a8fb2f6e0

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.8.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: release.yml on rustakka/atomr-agents

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

File details

Details for the file atomr_agents-0.8.0-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for atomr_agents-0.8.0-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 cda24efcda13813d09d74ad16df75017729364185fcec2073d57615c7395ec04
MD5 7e5c72db81d2005cccea0f50979187f1
BLAKE2b-256 0b3a7b50799b7647a3d3a4e8e12c3ddc9c2937a75a1ba2eb4d6a9c6084c5f461

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.8.0-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl:

Publisher: release.yml on rustakka/atomr-agents

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

File details

Details for the file atomr_agents-0.8.0-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for atomr_agents-0.8.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 f1738eef8f1f2dcac03d74ddcd838ddf7a1e902624ca7d6580bf84f2ff78ed06
MD5 b9b4058d795750f6ba860ae95f90d4ea
BLAKE2b-256 9cad36814869893a029d18504c230b594111a98518f4fb633387b20dc08183d0

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.8.0-cp310-cp310-win_amd64.whl:

Publisher: release.yml on rustakka/atomr-agents

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

File details

Details for the file atomr_agents-0.8.0-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for atomr_agents-0.8.0-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 fe788f687ab7d9c89b9e1913c86a1066fcce325290d7fca116539b3cc65cc91f
MD5 4cecfd1b29a48fbcb9cbfe9aa12d0280
BLAKE2b-256 5eac5fa7dbdc747f4476433b3a21e8e0b985bb103bbfced62c2e00178c78de4c

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.8.0-cp310-cp310-musllinux_1_2_x86_64.whl:

Publisher: release.yml on rustakka/atomr-agents

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

File details

Details for the file atomr_agents-0.8.0-cp310-cp310-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for atomr_agents-0.8.0-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 5e8fb38b83fd519485d833bfb8150319b2c897fda635991e3332ed6ddb8ecb05
MD5 adb6e0f468686722bf892b533c74ac46
BLAKE2b-256 64a7c752a1f102d421857f99d113e79e5e742349c8f0bef9653976ef899be200

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.8.0-cp310-cp310-musllinux_1_2_aarch64.whl:

Publisher: release.yml on rustakka/atomr-agents

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

File details

Details for the file atomr_agents-0.8.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for atomr_agents-0.8.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d1b24136251dba1dc8625a98dccf2c12eed93595b2492832ddad7bafc5e073a2
MD5 a359f72fc85dd0f0c0bc9b955e02f228
BLAKE2b-256 ae1a9a8da671f2848ef0d04f07df57c5a4ff4b6440b6e6cc2218fdb163d65f02

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.8.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on rustakka/atomr-agents

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

File details

Details for the file atomr_agents-0.8.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for atomr_agents-0.8.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 7a9e72ec13fc0fcaa80a8c769f9006e7ce4dfef7a0d5a422a06274b737e63517
MD5 61b2c5db072f1016df79a44a39d48857
BLAKE2b-256 c9cf933f8f5e903278b00f93bc1b41fb57594c41fe65ec9a634f7c5751ab4fed

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.8.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: release.yml on rustakka/atomr-agents

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

File details

Details for the file atomr_agents-0.8.0-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for atomr_agents-0.8.0-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 7d4418f81ba233ef7824ea13dab680fa704b95a933ebadab6acf573e71a7c59d
MD5 2fe2456189ce884735e7ce8d5310efd0
BLAKE2b-256 a65147f2fa4ed1e8d62cb8ecdb7941d3b28cbfce53fe12ae2ccac27a1950cf53

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.8.0-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl:

Publisher: release.yml on rustakka/atomr-agents

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