Skip to content

Commit c45330d

Browse files
nficanoclaude
andcommitted
docs: bust badge cache + document Provides-Extra entries
- Adds `?cacheSeconds=60` (or `?branch=main` for the GH Actions badge) to every badge URL so version/coverage shields refresh quickly after a release instead of sticking on a stale shields.io render. - Adds an "Available extras" table to the install section listing every `Provides-Extra` entry from the wheel metadata (client / jwks / otel / runtime / test) with a note explaining the no-op semantics of the side-of-wire markers. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent 1084f3a commit c45330d

1 file changed

Lines changed: 20 additions & 6 deletions

File tree

README.md

Lines changed: 20 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,12 @@
33
<p align="center"><strong>Python SDK for the Agent Runtime Control Protocol (ARCP) — submit, observe, and control long-running agent jobs from Python.</strong></p>
44

55
<p align="center">
6-
<a href="https://pypi.org/project/agentruntimecontrolprotocol/"><img alt="PyPI" src="https://img.shields.io/pypi/v/agentruntimecontrolprotocol.svg"></a>
7-
<a href="https://pypi.org/project/agentruntimecontrolprotocol/"><img alt="Python versions" src="https://img.shields.io/pypi/pyversions/agentruntimecontrolprotocol.svg"></a>
8-
<a href="https://github.com/agentruntimecontrolprotocol/python-sdk/actions/workflows/test.yml"><img alt="CI" src="https://github.com/agentruntimecontrolprotocol/python-sdk/actions/workflows/test.yml/badge.svg"></a>
9-
<a href="https://codecov.io/gh/agentruntimecontrolprotocol/python-sdk"><img alt="codecov" src="https://codecov.io/gh/agentruntimecontrolprotocol/python-sdk/graph/badge.svg?token=RHW2K4B7C8"></a>
10-
<a href="https://github.com/agentruntimecontrolprotocol/spec/blob/main/docs/draft-arcp-1.1.md"><img alt="ARCP" src="https://img.shields.io/badge/ARCP-v1.1%20draft-blue"></a>
11-
<a href="LICENSE"><img alt="License" src="https://img.shields.io/badge/license-Apache--2.0-lightgrey"></a>
6+
<a href="https://pypi.org/project/agentruntimecontrolprotocol/"><img alt="PyPI" src="https://img.shields.io/pypi/v/agentruntimecontrolprotocol.svg?cacheSeconds=60"></a>
7+
<a href="https://pypi.org/project/agentruntimecontrolprotocol/"><img alt="Python versions" src="https://img.shields.io/pypi/pyversions/agentruntimecontrolprotocol.svg?cacheSeconds=60"></a>
8+
<a href="https://github.com/agentruntimecontrolprotocol/python-sdk/actions/workflows/test.yml"><img alt="CI" src="https://github.com/agentruntimecontrolprotocol/python-sdk/actions/workflows/test.yml/badge.svg?branch=main"></a>
9+
<a href="https://codecov.io/gh/agentruntimecontrolprotocol/python-sdk"><img alt="codecov" src="https://codecov.io/gh/agentruntimecontrolprotocol/python-sdk/graph/badge.svg?token=RHW2K4B7C8&cacheSeconds=60"></a>
10+
<a href="https://github.com/agentruntimecontrolprotocol/spec/blob/main/docs/draft-arcp-1.1.md"><img alt="ARCP" src="https://img.shields.io/badge/ARCP-v1.1%20draft-blue?cacheSeconds=60"></a>
11+
<a href="LICENSE"><img alt="License" src="https://img.shields.io/badge/license-Apache--2.0-lightgrey?cacheSeconds=60"></a>
1212
</p>
1313

1414
<p align="center">
@@ -39,11 +39,25 @@ pip install agentruntimecontrolprotocol
3939
# in its lockfile or dependency manifest)
4040
pip install "agentruntimecontrolprotocol[client]"
4141
pip install "agentruntimecontrolprotocol[runtime]"
42+
pip install "agentruntimecontrolprotocol[jwks]"
43+
pip install "agentruntimecontrolprotocol[otel]"
4244

4345
# pytest stack for running the test suite
4446
pip install "agentruntimecontrolprotocol[test]"
4547
```
4648

49+
**Available extras** (as declared in the wheel's `Provides-Extra` metadata):
50+
51+
| Extra | What it adds | When to use |
52+
|-------|-------------|-------------|
53+
| `client` | _(none — included by default)_ | Document that a service is a job submitter / observer. |
54+
| `runtime` | _(none — included by default)_ | Document that a service hosts agents and accepts jobs. |
55+
| `jwks` | _(none — included by default)_ | Document that a service verifies bearer tokens against a remote JWKS. |
56+
| `otel` | _(none — included by default)_ | Document that a service emits OpenTelemetry spans through `arcp.middleware.otel`. |
57+
| `test` | `pytest`, `pytest-cov`, `pytest-asyncio`, `pytest-randomly`, `pytest-timeout`, `hypothesis`, `dirty-equals`, `aiohttp`, `starlette`, `opentelemetry-sdk` | Run the SDK's own pytest suite against an installed wheel. |
58+
59+
> Python extras can only **add** dependencies, not subtract — so the `client` / `runtime` / `jwks` / `otel` extras are no-ops at install time. They exist as semantic markers in lockfiles and dependency manifests, so a consumer can declare *which side of the wire they're using* without affecting what `pip` resolves.
60+
4761
## Quick start
4862

4963
Connect to a runtime, submit a job, stream its events to completion:

0 commit comments

Comments
 (0)