Skip to main content

AuctionSI

Let agents compete to solve the work.

AuctionSI is an open-source marketplace and auction framework for autonomous agents. Instead of a central orchestrator choosing which agent does a task, the task is announced to a market, capable agents bid, an auction mechanism picks the winner, and the work is contracted, executed, verified, settled and fed back into reputation.

Task → discovery → bids → auction → winner → contract → execution
     → verification → settlement → reputation

Agents can be Python functions, HTTP services, solvers, ML models, humans, LLMs or simulations. Nothing requires an LLM, an API key or a cloud service. Everything runs locally, and simulations are deterministic when seeded.

The auction mechanism, the winner-selection policy, the bidding strategy, the verifier, the settlement policy, the reputation system and the experiment are all plugins.

Install

pip install auctionsi           # Python 3.11+
pip install -e ".[dev]"        # from a clone, for development
pip install "auctionsi[plotly]"  # optional figures

Quick start

from auctionsi import Marketplace, PythonFunctionAgent, RecoveryPolicy, Task
from auctionsi.verification import ExactMatchVerifier

def right(task, contract):
    return {"answer": 42}

def wrong(task, contract):
    return {"answer": 41}

market = Marketplace(
    verifier=ExactMatchVerifier(42, key="answer"),
    recovery=RecoveryPolicy(next_best=1),
)
market.register(PythonFunctionAgent("agent-a", right, capabilities=["qa"], price=0.05))
market.register(PythonFunctionAgent("agent-b", wrong, capabilities=["qa"], price=0.07))
market.register(PythonFunctionAgent("agent-c", wrong, capabilities=["qa"], price=0.03))

result = market.submit_task(Task(task_id="task-001", task_type="qa", budget=0.10))
print(result.explain())                 # ranking with per-term score contributions
print("\n".join(result.trace()))        # every lifecycle event
assert result.winner == "agent-a"       # C was cheapest, failed verification, A took over

What is in v0.1

area contents
Mechanisms first-price (pay-as-bid), second-price (critical value), multi-winner (pay-as-bid or uniform), open descending with bid revisions
Selection lowest price, highest quality, lowest latency, weighted score, risk-adjusted cost, reputation-adjusted cost; every score is broken into named contributions
Bids multi-dimensional (price, latency, quality, cost, confidence, capacity, validity); validated with structured rejection reasons
Verification schema, exact match, tolerance, metric threshold, unit tests, composite, human approval; quality score always derived from checks
Settlement pay on pass (penalties, late penalties, bonuses), quality-proportional, partial payment
Reputation per agent and per task type: success, quality, timeliness, estimate calibration, violations; no/exponential/rolling decay
Recovery retry, fail over to backup bids, re-open the auction
Observability immutable events, traces, JSON logs, counters, SQLite persistence, deterministic replay
Simulation synthetic agents/tasks, 12 bid strategies, market dynamics, collusion/Sybil/misreporting tools, market metrics (HHI, Gini, surplus, efficiency...)
Experiments YAML configs, common random numbers, CIs, paired tests with Holm adjustment, run manifests, Markdown reports
Adapters Python function, HTTP, OpenAI-compatible (optional), human-in-the-loop
CLI auctionsi init / agent / task / auction / market / experiment / replay / report

Not in v0.1 (see the roadmap): REST/WebSocket API, web dashboard, distributed execution, combinatorial and forward auctions, learning bidders.

Simulate and experiment

from auctionsi.experiments import compare_mechanisms
from auctionsi.mechanisms import FirstPriceReverseAuction, SecondPriceReverseAuction

result = compare_mechanisms(
    [FirstPriceReverseAuction(), SecondPriceReverseAuction()],
    environment={"agents": {"count": 20}, "tasks": {"count": 100}},
    replications=5,
    seed=42,
    metrics=["total_cost", "completion_rate"],
)
for c in result.comparisons():
    print(c.metric, c.treatment, round(c.mean_diff, 4), (round(c.ci_low, 4), round(c.ci_high, 4)))
auctionsi market simulate --agents 100 --tasks 1000 --seed 42
auctionsi experiment run research/experiments/mechanisms.yaml

Six reproducible experiments (mechanisms, market size, reliability, reputation, strategies, concentration) with their reports are in research/. All results there come from synthetic markets and say so.

Examples

examples/: data-analysis (fail-over after deterministic checks), SQL (queries executed against a read-only test database), scheduling optimisation (constraint and objective checks), research reports (structure and citation checks), compute capacity (constraints and multi-winner uniform pricing), and a simulated collusion experiment. python scripts/run_examples.py runs them all.

Benchmarks

Measured on an Apple-silicon laptop, Python 3.12 (details and method in benchmarks/):

scenario agents tasks auctions/s bids/s peak MB
A 10 100 4,715 11,551 0
B 100 1,000 2,449 19,600 2
C 1,000 10,000 456 22,032 17

Documentation

docs/: concepts, architecture, mechanisms (with assumptions and limitations), selection, simulation and metrics, extending, CLI, and security.

Roadmap

  • v0.1 core marketplace (this release)
  • v0.2 more mechanisms (scoring auctions, reserve-price variants)
  • v0.3 richer simulation and experiment designs (factorial sweeps)
  • v0.4 reputation research and stronger adversarial models and defences
  • v0.5 persistence backends (PostgreSQL) and distributed execution
  • v0.6 REST/WebSocket API and web dashboard
  • v0.7 agent protocol interoperability
  • v0.8 advanced mechanism research (combinatorial, forward, capacity auctions, learning bidders)
  • v1.0 stable public API

No dates are promised.

Contributing and licence

See CONTRIBUTING.md and CODE_OF_CONDUCT.md. MIT licensed (LICENSE, NOTICE).

Metadata

Release files for auctionsi 0.1.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 auctionsi 0.1.1
File Size Uploaded
auctionsi-0.1.1.tar.gz 127.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for auctionsi 0.1.1
File Interpreter ABI Platform
auctionsi-0.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 253.3 kB

Release files / auctionsi-0.1.1.tar.gz

Download URL auctionsi-0.1.1.tar.gz
Size 127.7 kB
Tags Source
SHA-256 checksum
How to use checksums
880f60ec1fc6f8b1cda1d3e20da6a839341e05cd0eae31099a8b77eafc0e5609
BLAKE2b-256 checksum
How to use checksums
4dd0816334714a1fd333623baade3d157b0a93a8b78ab217ca23fd8cc1174f55
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 3, 2026.

Transparency log

Release files / auctionsi-0.1.1-py3-none-any.whl

Download URL auctionsi-0.1.1-py3-none-any.whl
Size 125.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
1ce04f75806f7dd7d05e2821527ec58032ef1cf1de4e44abb9eef6203dc2ee03
BLAKE2b-256 checksum
How to use checksums
db354cb4606b45c44a06d7a835f4f8507a389e8e0e1c5aa684228b9ab214db91
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 3, 2026.

Transparency log

Release history Release notifications | RSS feed

0.2.0

2 release files

This release

0.1.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