Skip to main content

pico-actuator

PyPI Ask DeepWiki License: MIT CI (tox matrix) codecov Quality Gate Status Duplicated Lines (%) Maintainability Rating Docs Interactive Lab

Spring Boot-style actuator endpoints for the Pico ecosystem, built on top of pico-fastapi.

Auto-discovered by pico-boot — install it and the endpoints appear:

Endpoint Purpose
GET /actuator/health Overall status + per-component detail (200/503)
GET /actuator/health/live Liveness — process is responding, touches no deps
GET /actuator/health/ready Readiness — aggregate of all health indicators
GET /actuator/info Static config + dynamic contributors
GET /actuator/metrics Prometheus default registry (needs the metrics extra)
POST /actuator/refresh Re-reads config sources, publishes ConfigChanged (Spring Cloud style)

Install

pip install pico-actuator
# optional Prometheus /metrics:  pip install pico-actuator[metrics]

Use

Contribute health by implementing HealthIndicator and marking it @component. No registration, no wiring — pico-ioc collects them via List[HealthIndicator]:

from pico_ioc import component
from pico_actuator import HealthIndicator

@component
class DbHealth:  # satisfies HealthIndicator
    name = "db"
    def __init__(self, engine: Engine):
        self.engine = engine
    def check(self):
        self.engine.connect().close()
        return {"status": "UP"}

check() may be sync or async; return a dict ({"status": "UP", ...}) or a truthy value. Indicators run concurrently, each under a configurable timeout (actuator.check_timeout_seconds, default 5s). A raising or hanging indicator is reported DOWN in isolation — it never takes the endpoint down.

Add /info data the same way with InfoContributor, or statically via config:

# application.yaml
actuator:
  enabled: true
  show_components: true
  info:
    app: my-service
    build: "2026.06"

Documentation

Full docs at dperezcabrera.github.io/pico-actuator — getting started, user guide, how-to guides, API reference.

Built for AI-assisted development

pico-actuator is part of an ecosystem designed for humans and coding agents building software together. Every package ships AGENTS.md working conventions, an llms.txt machine-readable docs index and documented behaviour pinned by regression tests; pico-testing gives agents a verification loop for their own changes, and releases are gated by the whole ecosystem booting together against real infrastructure. The full story: Built for AI-assisted development.

Install the agent skills for Claude Code or OpenAI Codex:

curl -sL https://raw.githubusercontent.com/dperezcabrera/pico-skills/main/install.sh | bash -s -- actuator

Why

pico-ioc already exposes @health/@cleanup lifecycle primitives but nothing serves them. This package is the thin layer that turns them into operable HTTP endpoints — the one observability piece you can't improvise in ten lines.

License

MIT

Metadata

Release files for pico-actuator 0.2.2

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

Source distribution (sdist)

Source distribution for pico-actuator 0.2.2
File Size Uploaded
pico_actuator-0.2.2.tar.gz 43.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pico-actuator 0.2.2
File Interpreter ABI Platform
pico_actuator-0.2.2-py3-none-any.whl Python 3 none any Details

Total release size: 54.7 kB

Release files / pico_actuator-0.2.2.tar.gz

Download URL pico_actuator-0.2.2.tar.gz
Size 43.9 kB
Tags Source
SHA-256 checksum
How to use checksums
85ff4ff22436694b7019c7793832ed47743848492c1583d1e2201913005cddab
BLAKE2b-256 checksum
How to use checksums
6ca313bd40b54d58dedb2b59ba012d9d9082bc7cd08b4592595c88abf8f77840
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 Sep 29, 2026.

Transparency log

Release files / pico_actuator-0.2.2-py3-none-any.whl

Download URL pico_actuator-0.2.2-py3-none-any.whl
Size 10.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
9cc7fa11a898563a61cb78af0024ee6d385175e6307c194ad58afb7de564b8da
BLAKE2b-256 checksum
How to use checksums
c580a4ced68f926a7c51a850ed3f2b541ba59857fce0c956f41faa629bb7d6a4
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 Sep 29, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.2.2 This release

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.0

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