agentic-loadout
One command that gives a project a coding-agent setup, for Claude Code, Cursor and Codex.
- Memory: agemem keeps current state, decisions and durable notes in
memory/, so a new session picks up where the last one stopped. For Claude Code, agemem (0.1.1+) also disables Claude's built-in auto-memory for the project, to avoid double memory. - Spec-driven development: the
sdd-featureskill takes a feature through design, spec, tests, implementation and an independent grade, with an approval gate between phases. - Subagents: an orchestrator delegates to
architect(design),coder(implementation),code-grader(review) andutility(commits, checks), following one shared workflow. - Language coders:
coder-python,coder-typescriptandcoder-swiftcome with code-navigation MCPs, so they rename and refactor through the compiler or type checker instead ofgrepandsed.
Each piece is handed to the tool that already installs it; agentic-loadout only writes what no tool covers.
Needs uv (agemem, Python coder) and Node.js 20+ (skill, TypeScript coder).
--python 3.12 makes uvx use a tested Python instead of whichever is newest on your machine. For a reproducible run,
also pin the version: uvx --python 3.12 agentic-loadout@0.1.0 .
Use
uvx --python 3.12 agentic-loadout . # detects your clients and languages, asks before installing
uvx --python 3.12 agentic-loadout . --dry-run # prints the commands and the files they write; changes nothing
uvx --python 3.12 agentic-loadout . --personal-settings --yes
Or let your coding agent do it: a prompt to paste into Claude Code, Cursor or Codex, opened in the project
Install agentic-loadout in this project. It is a PyPI package (
agentic-loadout), run withuvx --python 3.12 agentic-loadout(it needsuvand Node.js 20+; tell me if either is missing). First read the project's existing instructions, agents, skills, MCP config and settings (AGENTS.md,CLAUDE.md,.claude/,.cursor/,.codex/,.agents/,.mcp.json). Runuvx --python 3.12 agentic-loadout . --dry-runand review the plan with me: which clients to target (--tools claude,cursor,codex), which parts to leave out (--without sdd|agemem|agents|coders|worktree), which language coders it detected (--with python,swift,typescript), the memory provider (--memory-model jev|qsiv), and anything that contradicts the project's current rules or setup. Never overwrite or move my existing rules; resolve conflicts with me, and ask before using--force. Ask me before it runs Homebrew for the Swift coder. Then run the real install, review the resulting diff, warnings and next steps, adapt the generated sections (quality-gate command, layering, conventions, how to set up the environment in a new worktree) to this project, and tell me what is left for me to do, such as restarting the client and approving the new MCP servers and hooks. If memory uses the jev provider, tell me where the API key goes; never ask me to paste it into the chat. Also ask me whether the changes should be added to git and committed, or kept as my personal settings; if personal, run the install with--personal-settings, then walk me through every file that could still be changed or was changed (e.g.AGENTS.md,.claude/,CLAUDE.local.md,.mcp.json) so I can choose what to do with each: ignore it (.gitignore), exclude it locally (.git/info/exclude, or--git-exclude), hide just those edits withgit update-index --skip-worktree, or commit it anyway. Note that agemem writes this machine's absolute project path into its MCP and hook entries, so those files shouldn't be committed as they are.
Everything stays inside the project. Nothing is written to ~/.claude, ~/.codex, ~/.cursor or any user-wide
config. The two exceptions: agemem keeps its own private ~/.config/agemem/config.yaml for the API key, and the Swift
coder's binary is installed with Homebrew, only after you say yes (even with --yes; --allow-brew skips the question).
Rules go to AGENTS.md, or to CLAUDE.md if the project already has one that isn't just an @AGENTS.md import. Each
section sits between <!-- agentic-loadout:begin NAME --> markers, so re-running updates it in place.
What gets installed
| Piece | Installed by |
|---|---|
Project memory (memory/, notes, MCP, hooks) |
agemem project init |
| Spec-driven development skill | npx skills add illescasDaniel/sdd-feature-skill |
Worktree skill (/worktree create|save|apply|delete) |
npx skills add illescasDaniel/worktree-skill |
Subagents (architect, coder, code-grader, utility) and the workflow rules |
agentic-loadout |
Language coders (coder-python, coder-typescript, coder-swift) with their navigation MCPs |
agentic-loadout |
Worktrees
The worktree skill runs a task in an isolated git worktree. /worktree create branches from the current branch and
sets up the environment, save commits, apply merges into the branch the worktree came from, and delete removes
it. agentic-loadout adds a short rule to your instructions: when your checkout has uncommitted changes the agent didn't
make, it asks once whether to use a worktree, and after the task it offers save, apply and delete. It never
merges, pushes or deletes without your yes. Leave it out with --without worktree.
Language coders
A coder is one unit: the coder-<lang> subagent, the language's navigation MCP and a routing rule. They are always
installed together, because without the subagent's instructions the agent doesn't use the MCP.
uvx --python 3.12 agentic-loadout coders # detect languages, confirm, install
uvx --python 3.12 agentic-loadout coders python typescript # or name them (python, typescript, swift, all)
uvx --python 3.12 agentic-loadout coders --list # catalogue, what is detected, what is installed
| Language | MCP | Detected by |
|---|---|---|
| python | codenav | pyproject.toml, setup.py, requirements*.txt, Pipfile, uv.lock |
| typescript | webnav | package.json, tsconfig.json, jsconfig.json, deno.json |
| swift | codenav-swift (needs the Homebrew binary, macOS) | Package.swift, *.xcodeproj, *.xcworkspace, Podfile |
Keeping it out of git
--personal-settings writes rules to CLAUDE.local.md (Claude Code only; it starts with @AGENTS.md if you have one),
Claude settings to .claude/settings.local.json, and adds every file the run created to .git/info/exclude. A file
that already existed and was changed (for example a committed .mcp.json) can't be hidden by git, so the final message
lists it with your options. With Cursor or Codex selected the rules go to AGENTS.md and you are told.
--git-exclude does the exclusion without the personal files.
Flags
--tools claude,cursor,codex · --with python,swift,typescript|all · --without sdd|agemem|agents|coders|worktree ·
--memory-model jev|qsiv · --no-hooks · --model ALIAS · --claude-compat · --dry-run · --no-input · --yes ·
--allow-brew · --force. With --no-input and no --yes/--with, no language coder is installed and the command to
run is printed.
The Jev key is never asked for here. Set AGEMEM_JEV_API_KEY or edit ~/.config/agemem/config.yaml.
Development
uv run pytest
The design and the decisions behind it are in PLAN.md. The real Homebrew path can only be checked on macOS.
Metadata
Release files for agentic-loadout 0.1.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 | Provenance | Actions |
|---|---|---|---|---|
| agentic_loadout-0.1.0.tar.gz | 60.5 kB | With provenance | Details for agentic_loadout-0.1.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| agentic_loadout-0.1.0-py3-none-any.whl | Python 3 | none | any | Details for agentic_loadout-0.1.0-py3-none-any.whl |
Total release size: 109.6 kB
Release files / agentic_loadout-0.1.0.tar.gz
| Download URL | agentic_loadout-0.1.0.tar.gz |
|---|---|
| Size | 60.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
72e3d834b2d2b171d83dbda6b0cc3ca96ab9cada4ca9bf4a7523a88feef870df
|
|
BLAKE2b-256 checksum How to use checksums |
6f3974bb58c28c425385fb20c0383f32d07c19d56f20e734554dd69123a91b24
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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 Oct 29, 2026.
Transparency logRelease files / agentic_loadout-0.1.0-py3-none-any.whl
| Download URL | agentic_loadout-0.1.0-py3-none-any.whl |
|---|---|
| Size | 49.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
ece64d4884cb8bcd1749a3dd4a63cf408d92bde004bdaf977f762f4a5f4fba5c
|
|
BLAKE2b-256 checksum How to use checksums |
245a1440535b3673df0d66a4cb2dd9923d6d98b326b9a40862122c7834a557de
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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 Oct 29, 2026.
Transparency logSecurity for agentic-loadout 0.1.0
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.
Full provenance
Both files in this release have been uploaded with provenance metadata.
Attestation for agentic_loadout-0.1.0.tar.gz
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 Oct 29, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.