communique-0.1.4 is not a library.
communiqué
Editorialized release notes powered by AI.
communiqué is a CLI tool that uses an AI agent to generate professional, narrative release notes from your git history, PRs, and source code. Currently powered by Claude.
Install
Quick Start
# optional, for PR context and publishing
Roadmap
Features
- Multi-provider LLM support (abstract behind a trait, add OpenAI/etc.)
- Dry-run mode — preview before publishing to GitHub
- Progress indication (spinner/status while fetching PRs and waiting on LLM)
- Output to file (
--output <path>) -
--verbose/--quietflags instead of requiringRUST_LOG - Non-GitHub forge support (GitLab, Gitea)
- Parallel PR fetching (tokio is already a dependency)
- Retry with exponential backoff on API calls (Anthropic and GitHub)
- Validate git tag exists before proceeding
- Batch mode — generate notes for multiple tags in one run
Code Quality
- Replace
.unwrap()/.expect()with proper error returns (anthropic.rs,git.rs,main.rs) - Make output parsing more resilient — fallback if
---SECTION_BREAK---is missing - Use
LazyLockfor compiled regex ingit.rs:extract_pr_numbers() - Avoid cloning full message history every agent loop iteration
- Update
anthropic-versionheader (currently pinned to2023-06-01) - Config validation (e.g.
max_tokens > 0)
Testing
- Unit tests for output parsing (
output::parse()) - Unit tests for config loading and validation
- Unit tests for all tools (
read_file,list_files,grep,get_pr,get_pr_diff) - Unit tests for changelog entry reading
- Integration tests with mocked API responses
- CI test workflow