Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

StarPulse's star map: tasks, workflow runs and agents moving live

StarPulse

Every task, workflow run and agent in flight, on one live page.

CI status PyPI version Python version License: MIT

Live demo · Configure · Sources · Agent CLI · Adapters · Consumers · Security · Compatibility · Development loop · Contributing

What it is and why

I wanted to see where my agents were in their sessions and which skills they were using. Then I watched a video that mapped agent actions onto state machines, and I wanted to map the whole agent lifecycle and pair it with the Dagu workflows I already run, so scripts and DAGs could take over manual AI commands and cut the step count.

StarPulse is what I built. It shows tasks, workflow runs and agents on one live page. It produces data and leaves what to do with that data to you. It is not tied to one agent harness or one lifecycle: you define the states, and it draws and records them.

Quick start

uvx starpulse init    # writes starpulse.toml, board.yaml and .claude/settings.json (--harness, --dir)
export STARPULSE_TOKEN=$(openssl rand -hex 16)
uvx starpulse serve   # then open http://localhost:8766

init scaffolds a board machine with its roles declared, a [[board.guards]] rule, a [scheduler] table, a producer whose token is read from STARPULSE_TOKEN, and the Claude Code telemetry export settings; it refuses to overwrite an existing file. The board starts empty.

Working with AI agents

An agent works the board through the starpulse CLI, every verb printing JSON (Agent CLI). uvx starpulse skills install --claude --codex copies the bundled skills into the project. For any other agent, add a section to AGENTS.md or CLAUDE.md:

## Tasks

This project tracks work on a StarPulse board. Run `uvx starpulse help --agent` for every verb, its
arguments and exit codes. Read the board with `uvx starpulse board` and open a task with
`uvx starpulse task create "<title>"`.

Working without AI agents

The same verbs work typed by hand, and New task on the Kanban adds a task from the page. Both write the same board.

Views

Kanban Star Map Workflow runs
Kanban view Star Map view Workflow runs view

Reads tasks from its own Markdown board, Backlog.md or Jira; runs from Dagu, GitHub Actions or systemd; agents from Claude Code and Copilot.

Status

StarPulse is early. This is my first open source project, and I am still learning how to run one. What is rough today:

  • The UI is messy and not fully implemented.
  • The data it captures is not yet acted on in full; the feedback loop from captured signal to changed behavior is incomplete.
  • Performance is good but could be better.

Feedback

Something broke, confused you or is missing? Open an issue. Say what you ran and what you expected. A confusing first run is a bug I want to hear about.

MIT licensed.

Metadata

Release files for starpulse 0.5.1b1829

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

Source distribution (sdist)

Source distribution for starpulse 0.5.1b1829
File Size Uploaded Provenance
starpulse-0.5.1b1829.tar.gz 1.2 MB Without provenance Details

Built distribution (wheel)

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

Total release size: 2.5 MB

Release files / starpulse-0.5.1b1829.tar.gz

Download URL starpulse-0.5.1b1829.tar.gz
Size 1.2 MB
Tags Source
SHA-256 checksum
How to use checksums
cc574f5047d601844cec03e2a89539e17eb8161b0ea88c641723eedd817d3b03
BLAKE2b-256 checksum
How to use checksums
2f98814186f5c056ef43bb9f7720e27e8163b2558a94db211523abee63b8723b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.5 {"installer":{"name":"uv","version":"0.13.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / starpulse-0.5.1b1829-py3-none-any.whl

Download URL starpulse-0.5.1b1829-py3-none-any.whl
Size 1.3 MB
Tags Python 3
SHA-256 checksum
How to use checksums
3a8ad9a9da1fff0cf80c60871cf5c62ca156c4a876808fe9571b289c0966a903
BLAKE2b-256 checksum
How to use checksums
7388c310c624e611396e5e32a38322e43d02abe14656d27b32687a402263882c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.5 {"installer":{"name":"uv","version":"0.13.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Security for starpulse 0.5.1b1829

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.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release
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