agent-workflow-kit
A Python CLI that packages, installs, and manages Claude Code subagent personas and workflow knowledge assets. It is the opinionated workflow layer that sits on top of awesome-claude-hooks -- the two projects complement each other but remain independent.
Why
Setting up a Claude Code workflow system on a new machine means manually copying 12+ markdown files into the right directories, editing ~/.claude/CLAUDE.md to add @ references, and hoping you remember which version is current. agent-workflow-kit automates that entire lifecycle: install, update, customize, and uninstall -- with checksums, backups, and conflict detection.
Installation
pipx install agent-workflow-kit
Or with uv:
uv tool install agent-workflow-kit
Requires Python 3.12+.
Quick Start
# Install all assets into ~/.claude/
agent-kit install
# Check installation health
agent-kit doctor
# See what's available
agent-kit list
Commands
| Command | Description |
|---|---|
agent-kit install |
Copy agents, workflows, and guidelines to ~/.claude/, inject managed section into CLAUDE.md, save manifest |
agent-kit uninstall |
Remove managed files, CLAUDE.md section, and manifest |
agent-kit update |
Detect upstream changes, handle conflicts with user-modified files |
agent-kit status |
Show the current state of all managed files |
agent-kit list [category] |
List available assets (agents, workflows, guidelines, or all) |
agent-kit diff <file> |
Show diff between installed and bundled version of a file |
agent-kit doctor |
Validate installation health (directories, manifest, CLAUDE.md) |
Common Flags
agent-kit install --dry-run # Preview without making changes
agent-kit install --force # Overwrite existing files (creates backups)
agent-kit install --skip-claude-md # Install files without touching CLAUDE.md
agent-kit install --claude-home /path/to/dir # Override default ~/.claude/
agent-kit update --check-only # Report status without modifying
agent-kit update --force # Overwrite user-modified files
agent-kit uninstall --keep-files # Only remove manifest and CLAUDE.md section
Bundled Assets
Agents (installed to ~/.claude/agents/)
| Agent | Description |
|---|---|
| Ada | Pair programming agent -- TDD, architecture, mentoring |
| Norwood | Discovery and planning -- code archaeology, solution design, risk analysis |
| Eco | Research agent -- web search, documentation review, synthesis |
| Ive | UX design -- accessibility, interaction patterns, component specs |
| Shelly | Task generation and sprint planning -- story points, task breakdown |
| Zod | Technical review -- security, performance, maintainability audits |
| Sentinel | Security review -- STRIDE threat modeling, attack surface analysis, risk assessment |
Workflows (installed to ~/.claude/knowledge/workflows/)
| Workflow | Description |
|---|---|
| tasks-workflow | Task Workflow System -- structured task tracking in tasks/ directories |
| retro | Sprint retrospective process |
| project-initialization | New project setup with discovery, scaffolding, and task generation |
Guidelines (installed to ~/.claude/knowledge/)
| Guideline | Description |
|---|---|
| file-and-context-optimization | File size targets (100-500 lines), splitting strategies |
| tool-utilization | ReAct framework for tool calls |
| testing-strategy | TDD rules, testing pyramid, Red-Green-Refactor |
How It Works
Install Flow
- Creates target directories under
~/.claude/(agents, knowledge/workflows, etc.) - Copies each bundled markdown asset to its target location
- Injects a sentinel-bounded managed section into
~/.claude/CLAUDE.mdwith@references - Writes a manifest (
~/.claude/.workflow-kit/manifest.json) tracking installed files with SHA-256 checksums
Update Flow
- Reads the manifest to identify installed files
- Compares on-disk checksums against manifest (detects user modifications)
- Compares bundled assets against manifest (detects upstream changes)
- For each file, reports one of:
current,user modified,outdated,missing,conflict - Applies updates with backup, skipping user-modified files unless
--forceis used
CLAUDE.md Management
The kit uses HTML comment sentinels to manage its section:
<!-- agent-kit:begin -- managed by agent-workflow-kit, do not edit -->
## Agent Kit Agents
- Pair programming agent: @~/.claude/agents/Ada.md
...
## Agent Kit Workflows
...
## Agent Kit Guidelines
...
<!-- agent-kit:end -->
User content outside the sentinels is never touched. The section is cleanly removed on uninstall.
Development
This project uses just as a task runner and uv for package management.
Requirements
Setup
git clone https://github.com/mandelbro/agent-workflow-kit.git
cd agent-workflow-kit
uv sync --extra dev
Running locally
# Run via just
just run -- install --dry-run
# Or directly with uv
uv run agent-kit --help
Commands
# Run all checks (format, lint, typecheck, test)
just
# Individual commands
just test # uv run pytest
just lint # uv run ruff check --fix src/ tests/
just format # uv run ruff format src/ tests/
just typecheck # uv run pyright
just coverage # pytest --cov --cov-fail-under=80
Releasing
Releases are automated via release-please. On every push to main, release-please opens (or updates) a release PR with a changelog derived from Conventional Commits. Merging that PR triggers a GitHub Release and publishes to PyPI via trusted OIDC publishing.
To publish manually: Actions > Release > Run workflow with a git tag (e.g. v0.2.0).
Project Structure
src/claude_workflow_kit/
├── cli/
│ ├── app.py # Typer app entry point (7 commands)
│ ├── install.py # install / uninstall
│ ├── update.py # update / diff
│ └── status.py # status / list / doctor
├── core/
│ ├── config.py # Pydantic settings (CLAUDE_HOME, derived paths)
│ ├── manifest.py # Manifest read/write, SHA-256 checksums, file status
│ ├── file_ops.py # Atomic write, backup, copy, remove
│ ├── claude_md.py # Sentinel-based CLAUDE.md section management
│ └── registry.py # Asset registry mapping bundled files to targets
└── assets/ # 12 bundled markdown files
├── agents/ # 6 agent personas
├── workflows/ # 3 workflow definitions
├── guidelines/ # 2 guideline files
└── coding-principles/ # 1 coding principle
Configuration
The default install target is ~/.claude/. Override it with:
# Environment variable
export CLAUDE_HOME=/path/to/custom/dir
agent-kit install
# CLI flag (per command)
agent-kit install --claude-home /path/to/custom/dir
License
Release files for agent-workflow-kit 0.3.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| agent_workflow_kit-0.3.0.tar.gz | 71.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| agent_workflow_kit-0.3.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 105.5 kB
Release files / agent_workflow_kit-0.3.0.tar.gz
| Download URL | agent_workflow_kit-0.3.0.tar.gz |
|---|---|
| Size | 71.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
8e4b38fb0595154bc423bb01a92ceb72cf5df9e6f8b24ece5f4e18f8021399bc
|
|
BLAKE2b-256 checksum How to use checksums |
10418e4df5611e5220e2b702dd0a748023e19701b68536adb86ebb877831e5ff
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 7, 2026.
Transparency logRelease files / agent_workflow_kit-0.3.0-py3-none-any.whl
| Download URL | agent_workflow_kit-0.3.0-py3-none-any.whl |
|---|---|
| Size | 33.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
30f5475339508f349c9b77b63e5a3ec1ca97ef6dc9414840988b1d56e7f28f6f
|
|
BLAKE2b-256 checksum How to use checksums |
b55c5092d46a8b0fcf85ba2af57aaa72b0280f302d402c5d319c4578f8c33b48
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 7, 2026.
Transparency log