Catalog PyPI
PACKAGE EXPLORERView in registry

agent-launch

PyPI

Draft platform-native release announcements (HN, Reddit, X, Mastodon, LinkedIn) from CHANGELOG + README (Python port of @p-vbordei/agent-launch)

changelogclilinkedinmastodonopen-sourceredditrelease-announcementsrelease-notesshow-hntwitter
Versions collected1
Direct dependencies9From release 0.1.0
Last observed20 Oct, 22:32 UTC

README

Version 0.1.0 documentation

agent-launch (Python)

CI Spec License

Idiomatic Python port of @p-vbordei/agent-launch. Draft platform-native release announcements (HN, Reddit, X, Mastodon, LinkedIn) from your repo's CHANGELOG + README. v0.1: drafts only — you post. Output is textually identical to the TS reference when given the same inputs.

What's in the box

  • draft_one(platform, project, context, repo, anthropic) — produce a platform-tuned post draft
  • Platforms: hn, reddit, x, mastodon, linkedin
  • gather_context(cwd, version) — collect CHANGELOG section + README + recent commits
  • load_launch_config(path) — strict pydantic-validated launch.yaml
  • CLI: agent-launch draft <version> [--platforms hn,x] [--out drafts/]
  • Strict input validation — no surprises in output

Install

pip install agent-launch
# or
uv add agent-launch

Quickstart

CLI (run inside any repo with a CHANGELOG.md, README.md, and launch.yaml):

cp launch.yaml.example launch.yaml && $EDITOR launch.yaml
ANTHROPIC_API_KEY=... agent-launch draft 0.2.0
# → launches/v0.2.0/{hn,reddit-*,x,mastodon,linkedin}.md

Library (offline — uses a scripted fake Anthropic client):

python examples/quickstart.py

See examples/quickstart.py for the 40-line walkthrough.

How it relates

RepoLangInstall
agent-launchTypeScript (reference)npm i -g @p-vbordei/agent-launch
agent-launch-pyPython (this repo)pip install agent-launch
agent-launch-rsRustcargo install agent-launch

All three share the same launch.yaml schema, the same vendored prompt templates, and the same conformance clauses.

Conformance

uv sync --extra dev
uv run pytest -v

The TS reference defines five conformance clauses (see SPEC.md §6). All pass here:

  • C1 — Determinism. Same inputs → same output (with temperature=0 and a scripted client, byte-identical).
  • C2 — Length caps. Per-platform caps enforced with up to 2 retries; over-cap drafts marked capped: false.
  • C3 — Repo URL. Every draft body contains the GitHub URL.
  • C4 — No secrets / declared fields only. Env-var values are never echoed; DraftResult exposes only declared fields.
  • C5 — Strict launch.yaml. Missing/extra/invalid fields fail fast with a clear error.

Plus security clauses S2 (no tools field in the Anthropic call — model has no shell access), S4 (no sockets opened during drafting with a scripted client), S5 (--out sandboxed under cwd).

Architecture

See docs/architecture.md.

Development

git clone https://github.com/p-vbordei/agent-launch-py
cd agent-launch-py
uv sync --extra dev
uv run pytest -v

License

Apache-2.0

Downloads & popularity

Awaiting observations

No metric observations yet

Download counts and popularity will appear here as the collector receives them.

Versions 1

Collected releases
VersionPublishedDirect dependenciesOpen version
0.1.020 May 20269

Package advisories

0
No matching advisories collected

This describes our collected data; it is not a security assessment.

Repository

PENDING
p-vbordei/agent-launch-py

Shared repository data · GitHub

License detected in repository
Not collected

Repository

PENDING
p-vbordei/agent-launch

Shared repository data · GitHub

License detected in repository
Not collected

Metadata history

Meaningful changes
Current collected state Current

Observed since 20 Oct, 22:32 UTC

No superseded metadata states collected. Unchanged observations do not create new revisions.

Record identity

package:1eb7b5a79c85b614277431cd4cfc40379e708b638834687478e522743411b218