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

The Python facade ships every Rust capability. The native extension atomr_agents._native is split into 28 hierarchical submodules: foundational (errors, core, callable_, strategy, instruction, context, state, observability, cache, parser, registry); tool / skill / memory / retrieval / ingest (tool, skill, memory, embed, retriever, ingest, persona); agent / workflow / harness / org / eval (agent, workflow, harness, org, eval); voice (stt, tts, voice, voice_extras); plus the guest registry. The top-level package re-exports the most-used classes, 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 the full set of 24 Rust traits: @strategy(kind=...), @persona, @skill, @parser, @scorer, @memory_store, @embedder, @callable_, @retriever, @loader, @splitter, @kv_cache, @long_store, @tracer, @conversation_agent, @diarizer, @vad, @phonemizer, @journal, @repair_model, @persona_reconciler, @inference_client, @ann_index. Each pairs with an atomr_agents.<module>.*_from_factory(key) builder that materialises the registered Python target as a Rust dyn handle.

Host-mode agent runtime

AgentBuilder assembles strategy slots into a runnable AgentRef that implements Callable, so an agent composes with the same decorators and pipeline operators as any other unit:

from atomr_agents.agent import AgentBuilder
from atomr_agents.harness import Harness, iteration_cap, loop_strategy_from_callable
from atomr_agents.workflow import Dag, Step, WorkflowRunner

# Strategy slots come from in-process factories or Python guests.
builder = AgentBuilder("research-agent", "gpt-4o-mini")
builder.with_instructions(instructions)
builder.with_tools(tool_strategy)
builder.with_memory(memory_strategy)
builder.with_skills(skill_strategy)
builder.with_inference(inference_client)
agent_ref = builder.build()
result = await agent_ref.run_turn("What's the GDP of France?")

# The agent is itself a Callable — drop it into a workflow.
dag = Dag("plan")
dag.add_step("plan", Step.invoke(agent_ref.as_callable()))
runner = WorkflowRunner("research-wf", dag.build())
await runner.run({"user": "..."})

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.

Runtime coverage

AgentRef.run_turn, Harness.run, WorkflowRunner.run, and Conversation are all callable from Python. The Rust runtimes are type-erased through BoxedAgent (in crates/agent) and Box<dyn LoopStrategy> / Box<dyn TerminationStrategy> (in crates/harness); the blanket impl Trait for Box<dyn Trait> impls live in their respective trait crates so the composition contract holds regardless of whether a strategy is monomorphic or boxed. See docs/python-api.md for the full module map and async-surface table.

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 — 28 hierarchical submodules exposing every framework capability to Python (callable composition, strategies, instruction templates, memory + retriever zoo + ingest, agent / workflow / harness runtimes via BoxedAgent, eval, tracers, voice + conversation, 24 guest-trait decorators)
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.19.0.tar.gz (1.1 MB 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.19.0-cp313-cp313-win_amd64.whl (9.1 MB view details)

Uploaded CPython 3.13Windows x86-64

atomr_agents-0.19.0-cp313-cp313-musllinux_1_2_x86_64.whl (8.4 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

atomr_agents-0.19.0-cp313-cp313-musllinux_1_2_aarch64.whl (7.9 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

atomr_agents-0.19.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.1 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

atomr_agents-0.19.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (7.7 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

atomr_agents-0.19.0-cp313-cp313-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (15.0 MB view details)

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

atomr_agents-0.19.0-cp312-cp312-win_amd64.whl (9.1 MB view details)

Uploaded CPython 3.12Windows x86-64

atomr_agents-0.19.0-cp312-cp312-musllinux_1_2_x86_64.whl (8.4 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

atomr_agents-0.19.0-cp312-cp312-musllinux_1_2_aarch64.whl (7.9 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

atomr_agents-0.19.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.1 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

atomr_agents-0.19.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (7.7 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

atomr_agents-0.19.0-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (15.0 MB view details)

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

atomr_agents-0.19.0-cp311-cp311-win_amd64.whl (9.0 MB view details)

Uploaded CPython 3.11Windows x86-64

atomr_agents-0.19.0-cp311-cp311-musllinux_1_2_x86_64.whl (8.3 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

atomr_agents-0.19.0-cp311-cp311-musllinux_1_2_aarch64.whl (7.9 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

atomr_agents-0.19.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.0 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

atomr_agents-0.19.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (7.7 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

atomr_agents-0.19.0-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (14.9 MB view details)

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

atomr_agents-0.19.0-cp310-cp310-win_amd64.whl (9.0 MB view details)

Uploaded CPython 3.10Windows x86-64

atomr_agents-0.19.0-cp310-cp310-musllinux_1_2_x86_64.whl (8.3 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

atomr_agents-0.19.0-cp310-cp310-musllinux_1_2_aarch64.whl (7.9 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

atomr_agents-0.19.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.0 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

atomr_agents-0.19.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (7.7 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

atomr_agents-0.19.0-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (14.9 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.19.0.tar.gz.

File metadata

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

File hashes

Hashes for atomr_agents-0.19.0.tar.gz
Algorithm Hash digest
SHA256 bf68932a9f04132e0c4d3d8894dd98eb2e068297ade4bd40efb580b844e811b3
MD5 231463d159fb9d33e0a2ad4c6b27a53c
BLAKE2b-256 89d8380729210e7a77f8b14670569d48eb68cb4143c059555fc396ff9d34584e

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.19.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.19.0-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for atomr_agents-0.19.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 0de7925e6c3141103d9f21ca2cec93f081ed553ad1f4c4be1b206e2c136dd5b3
MD5 8294cfc1e4b4b562e8543311ffbec4aa
BLAKE2b-256 a0802f8ab4d96f07b92d18072733361ff2b9c5758d47fb8074c5be5760368305

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.19.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.19.0-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for atomr_agents-0.19.0-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 44c5e4fce03c83da790546569a674394a59513fc59beb240522ccfee46f6db46
MD5 c2f216ca84e5c5faa5b168a74fe1c09e
BLAKE2b-256 3715a0ba6ec1d1fd907d4fdb5d3557612025f2e96c618d26afc9f4618a8d7444

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.19.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.19.0-cp313-cp313-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for atomr_agents-0.19.0-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 a56709432d68ef8e208d3a9d4c93c799c69095265f9211cfad4163c83bd3230b
MD5 ee72c8482e1c2714c527477e1c25e328
BLAKE2b-256 dae722d722171ba065152c44874b152f3dfb121fc402d622b57715aeefcb47f4

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.19.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.19.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for atomr_agents-0.19.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d6d5ce0e0058ae29051f708e53367183082213d48d9fe7a5799a5da5af4233af
MD5 76791fa4d1fb667879844959d4ff1a3d
BLAKE2b-256 63e1997acff81e123c4c121300a86f2e18d72ee612c039fd6d6c0e2a24313ef1

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.19.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.19.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for atomr_agents-0.19.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 fecc9f80d303a13490c5d201a4df31149a753e749233d652dedc1e2dfb945944
MD5 3eb92313d36c51ce7358b2eb684d5179
BLAKE2b-256 24ad0425e4298357d11bb098a39876e01e3fc5a3e2200fd146bee852c1139207

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.19.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.19.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.19.0-cp313-cp313-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 eb65c742a4c03050278aab1059aaf019377bb12c93b18ea891a1eb4df6f1d3aa
MD5 e2fcd604fb6adb33124c5542e2893671
BLAKE2b-256 19f2709bf5e0b506449a12a77abfaf3cba4d0aa2fd9aa10628c3e9219e620584

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.19.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.19.0-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for atomr_agents-0.19.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 db50ed4982822f20e332fe03266ab155fad7e8d4428de5d4d84e9818f6ce1f43
MD5 45822aed166a233df33f00661b5fe96c
BLAKE2b-256 5bfeeb9a188d151e1cffe1383be8675330d4bc28d4f12ed16d45c10c2beb0530

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.19.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.19.0-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for atomr_agents-0.19.0-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 1ed04f646171ac31afa85a9d6981539f5a80af18fbddcbc3504917b2e42bc865
MD5 5c837a11668c49227520a49fd8b01016
BLAKE2b-256 1ad5d804764e033ecc651c8cf1b63cc22e8ec3d6b8e9a50f73c4abeac705dc34

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.19.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.19.0-cp312-cp312-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for atomr_agents-0.19.0-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 26a78303b681c2072139730fba39e3d82623d8790b38994df06f89b7a652e739
MD5 b041860a2a61ebe55ebf0dec1451eac1
BLAKE2b-256 8f93d30900903a02c9912ce57f32fd45fa16428caaef211d0fe915ca37f92df8

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.19.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.19.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for atomr_agents-0.19.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 62f7839ee9b77f5110dee95fb672d091a4392f024f36eddd8c5ec5e45bc2182f
MD5 e969f658916f8f3acfb698184137f1a2
BLAKE2b-256 2fa83236f11ff9fe082b43dce1142b744bc6661698edcb65d9949389f61f5e3f

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.19.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.19.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for atomr_agents-0.19.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 ca07ccca0d5f3274efd83fc97d80a052a6ccdd4825e8cd4c8357c6bc7e791e86
MD5 33616975e2e9591d67dccb57e9649af0
BLAKE2b-256 9c10988a54c169094542313815b9c4d0646b82000bd31baf808b0207ed016d5c

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.19.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.19.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.19.0-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 8bf44c97deeb4bae3ddef9b846d11ece0137f72842be2eba5889788ac53ca84f
MD5 d4269a10ceac450573a05b2e6f0fce94
BLAKE2b-256 9e4280e0150c6893547db1ae8215d8fb8ee6642870efb1e6486718703dacd300

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.19.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.19.0-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for atomr_agents-0.19.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 6294d5750094dfe49e353c3544c005dcad5b3e9b5e5634d78bb16ae5309e19b5
MD5 201815738419d91f15380a7ec3e36548
BLAKE2b-256 8dfd4e68f866ae7abfdf78ba4b8aac234481627433b817260a4fdf588b51108b

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.19.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.19.0-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for atomr_agents-0.19.0-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 ee9bf85f38421d0d2030c13a01ae539e0ef09ba17d6a1eb8dc988a15110392b1
MD5 49b9fb7bea5fd93ccf2e7d7fd16e492e
BLAKE2b-256 06308158d01fd08e822b0d4567c58afe831a8aa347a10a8e6b4ad9484a27b308

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.19.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.19.0-cp311-cp311-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for atomr_agents-0.19.0-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 10bc0130be29e400eb69025dbce7356038bdc8425822e8136a1f1502f51e6ad0
MD5 888316b2686917083389c22c328c67b0
BLAKE2b-256 bdfb29338a518c14135b499329cea6f5ef19f9a7c0d389f8c0f24575a3369946

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.19.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.19.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for atomr_agents-0.19.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 716e55b58a982bf51a3e0025efb7d5568fef8d16a7278327cbcb849425429c39
MD5 ece05be9655e8fb2901172b8ed91da53
BLAKE2b-256 29f82a681c2c93742e8ccfd28c13b9ac38cfc17587ec6fb8497fe9fe4a5b2510

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.19.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.19.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for atomr_agents-0.19.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 37d79d008ef8690e84259dc7c0b8c17b3e28154c24c6456d03270369d801d56b
MD5 7e1bb1869d2d55b1dc8e127492faa767
BLAKE2b-256 bce7fe683c8f58db7f37f7758fe59f0f7ea6cde07f316a8e2df67b984aebd7db

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.19.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.19.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.19.0-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 235322944adf509fcb5daf5d69fbdbe747df3bdf3f3b5e7cf4eedb84c0c55606
MD5 0cd0b0a340d190e7ba2ca1577ead774b
BLAKE2b-256 6e31a97d2fdef6d627c86087636fc467bbc5eae98be428cbcccbd4e3008d05d8

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.19.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.19.0-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for atomr_agents-0.19.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 72181f7c03d1daa00261f852357b1b471abd21795778de9ddaa9bd4655eb5874
MD5 63d01f2c10e2a37f703cc3d2258be70e
BLAKE2b-256 9c6654f7c829bf6876837702aaafaee405fb63c85ee34f9a067338022c57c4b2

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.19.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.19.0-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for atomr_agents-0.19.0-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 f99724a3c0e843691d7083079a6c448679f084941387e128c56ff2d002f10109
MD5 8d7a02031ce63eedc88fe1e405bb7c2c
BLAKE2b-256 492a37ebf0786959de70747aeb11a6b0c7bcb44b855ee8a4686822b5968b4c66

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.19.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.19.0-cp310-cp310-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for atomr_agents-0.19.0-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 a85b8c89c66d8a0ca337511bee486b245fece5d41cace55d4e81e3c2db935e98
MD5 5e58acd3f91cb5939b03e1b695e5ac7d
BLAKE2b-256 56735c94db6f34adb4ac9a0e5cd0c57673864c020dea8bfaf37098df79865164

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.19.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.19.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for atomr_agents-0.19.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 42be125c49540bb3e9d7917397d8a54c3158d11349d2d98277e17632e9acc070
MD5 b8e67d78f50270bc497f7481103f764a
BLAKE2b-256 41193859258433334913641122db9ff865ef5fe79249b121bf300a1f4c1d5ec4

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.19.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.19.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for atomr_agents-0.19.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 d200ee1575cbd5f1d4664f125e4fc4ca8a51df6a6e572e30b31e4e973b6dadea
MD5 e8d3db606f09ebb133c4c0edf02ad4e8
BLAKE2b-256 7cc79bfdcc4571ebacd75b9dc748ea6371ed33ce4a3ea3a94eeb04cfa5ade2eb

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.19.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.19.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.19.0-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 6263f929beeb06ddc289aa718ad0a2eb0ea6a15228fcd08b3b4f7cb681794eab
MD5 ec6cc4fad094999e9e4e2124d1b278ec
BLAKE2b-256 e2451270a77be398befedee08b65f9f69a94096d465b9ad0acaa97270314e74a

See more details on using hashes here.

Provenance

The following attestation bundles were made for atomr_agents-0.19.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