PromptCadence
A plan-approved, tier-routed agent loop over LoadCoach in which every step is proposed in a plan, the plan is approved against governance policy and remaining budget before any step executes, and every turn that does execute is fully reconstructable afterwards — which model ran it, on which tier, on what data, at what cost, under whose approval.
Status: 1.0.0 (M12). Every phase of the development plan is built and gated: planning with
corrective retries and three approval modes, the ExecutionIntent every turn runs under, sandboxed
tools under ToolYard's isolation ladder, the budget over LoadLedger with three ceilings, egress
governance over Commissioner with a durable decision per turn, per-step retry, context compaction
as a view, the composed and materialized explanation, the operator console, the retention sweep,
the security checklist and the prompt-injection corpus as release gates, and every spec §15
budget asserted. Remote tiers refuse honestly until LoadCoach has a registration declaring
remote = true and the tier is priced (ADR-0098). See docs/ for the operator
set and the development plan for what each phase
added.
Part of the Local AI Suite. Reaches a model only through LoadCoach's HTTP API — it never imports a model provider directly (ADR-0045 in the suite's shared documentation).
Install
pip install promptcadence
promptcadence serve
Starts on 127.0.0.1:8768 with zero configuration. Health reports the loadcoach component
degraded (not unavailable) when no LoadCoach is reachable — PromptCadence requires LoadCoach for
execution, never for startup. See
docs/apps/promptcadence/spec.md §12 for the full configuration
surface and PROMPTCADENCE_* environment variables.
Quickstart
pip install promptcadence
promptcadence serve # starts the API on 127.0.0.1:8768
promptcadence health --json # same health data the API reports, from the CLI
promptcadence run "summarize the files in ./notes" --follow # plan, approve, execute, explain
promptcadence run "summarize the files in ./notes" --bypass-planning --follow
promptcadence trajectory explain <id> # every model, tier, tool call, debit, egress verdict
promptcadence --help
Open http://127.0.0.1:8768/ for the console. Read docs/quickstart.md next.
PromptCadence 1.0 is tested against LoadCoach 1.1.0 and needs ≥ 1.1: the declared finish
reason on the wire (spec §11 contract 6 — an undeclared finish is never read as success), tool
definitions and tool_calls on /generate, and the serving registration's is_remote on every
response. See docs/upgrading.md for the compatibility table.
Documentation
| Read this | For |
|---|---|
| docs/README.md | The operator set: quickstart, configuration reference, tiers, security, operations, troubleshooting, upgrading, the OpenAPI snapshot |
| docs/apps/promptcadence/spec.md | Purpose, scope, non-goals, public contracts, configuration, acceptance criteria |
| docs/apps/promptcadence/lifecycle.md | The trajectory state machine, deviation categories and estimator |
| docs/apps/promptcadence/development-plan.md | The phased build plan: goals, work, tests, acceptance criteria per phase |
Development
python -m venv .venv && source .venv/bin/activate
pip install -e ".[dev]"
pre-commit install
pytest -m "not live and not performance"
See SECURITY.md for how to report a vulnerability.
License
Apache-2.0 — see LICENSE.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file promptcadence-1.0.1.tar.gz.
File metadata
- Download URL: promptcadence-1.0.1.tar.gz
- Upload date:
- Size: 768.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
394a06253594e95bdb422e5e920a0517171189b944063b21e5aa9925b74686cb
|
|
| MD5 |
5712d5542b86043f2fcbe634fe854aee
|
|
| BLAKE2b-256 |
08848eca1d11fa560b00c700c55ae7e67cae9cd25fb909a836b00b8c47e94ddc
|
Provenance
The following attestation bundles were made for promptcadence-1.0.1.tar.gz:
Publisher:
release.yml on JPKell/PromptCadence
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
promptcadence-1.0.1.tar.gz -
Subject digest:
394a06253594e95bdb422e5e920a0517171189b944063b21e5aa9925b74686cb - Sigstore transparency entry: 2747500662
- Sigstore integration time:
-
Permalink:
JPKell/PromptCadence@b6c3f1908db8b23649dcf04d00e4e44facb6c906 -
Branch / Tag:
refs/tags/v1.0.1 - Owner: https://github.com/JPKell
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@b6c3f1908db8b23649dcf04d00e4e44facb6c906 -
Trigger Event:
push
-
Statement type:
File details
Details for the file promptcadence-1.0.1-py3-none-any.whl.
File metadata
- Download URL: promptcadence-1.0.1-py3-none-any.whl
- Upload date:
- Size: 425.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5334344fcdb570e6d7d744830863bfc2220db9db4a980f0fbbe1b2905931d195
|
|
| MD5 |
f9ac742669ce274507be1a114f4ce6fe
|
|
| BLAKE2b-256 |
66a9b65256b7290bafae0deef91121be21d960aa48f43ffa3202fd416fdda359
|
Provenance
The following attestation bundles were made for promptcadence-1.0.1-py3-none-any.whl:
Publisher:
release.yml on JPKell/PromptCadence
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
promptcadence-1.0.1-py3-none-any.whl -
Subject digest:
5334344fcdb570e6d7d744830863bfc2220db9db4a980f0fbbe1b2905931d195 - Sigstore transparency entry: 2747500721
- Sigstore integration time:
-
Permalink:
JPKell/PromptCadence@b6c3f1908db8b23649dcf04d00e4e44facb6c906 -
Branch / Tag:
refs/tags/v1.0.1 - Owner: https://github.com/JPKell
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@b6c3f1908db8b23649dcf04d00e4e44facb6c906 -
Trigger Event:
push
-
Statement type: