@erclx/aitk
v3.7.0
Published
Infrastructure and quality tooling for developer workflows
Downloads
23,682
Readme
aitk
One source for your repos' AI conventions. Install once, sync everywhere.

If you work across more than one repository and your AI setup has started to drift between them, this is for you. The counts above are read from the catalogs when the image is built, so they're what the repo actually ships today.
Install
Add the marketplace, then install the Claude Code plugin.
claude plugin marketplace add https://github.com/erclx/aitk
claude plugin install aitk@aitk
The skills land as /aitk:<name>. If your session was already open, run /reload-plugins to pick them up.
Several skills call the aitk CLI to read catalogs and run installs, and the plugin doesn't put it on your path. Install it from the registry.
bun install --global @erclx/aitkBun is the CLI runtime and has to be on your path first. Confirm the install by resolving aitk --help.
Update
Nothing refreshes on its own. Claude Code ships auto-update off for third-party marketplaces, so an installed copy serves whatever version it was installed at until you refresh it.
claude plugin marketplace update aitk
claude plugin update aitk@aitk
aitk upgradeThe first two update the skills, the third updates the CLI, and they move independently. Restart Claude Code, or run /reload-plugins, to pick the skills up.
aitk upgrade reads the package manager off its own install path and reinstalls with that one, so you don't have to remember which put it there. It names what it detected before it runs anything, and it refuses a source checkout rather than reinstalling over your clone.
You don't have to wait until something breaks to find out you're behind. aitk sync --check and aitk claude skills drift both report the installed version against the newest published one, and neither changes its exit code over it, so an offline machine reads unknown rather than red.
To stop doing this by hand, turn auto-update on once under /plugin in the Marketplaces tab. Confirm what you are running with aitk --version and claude plugin list.
Why
Every AI coding setup accumulates the same assets. Prompts to reuse, rules agents should follow, slash commands, skills, seed docs, sync scripts. Once you have enough projects, your copies drift and your agents stop getting consistent signals.
Three design choices shape the toolkit.
- Agent-first: every command has a non-interactive path and a JSON catalog. If a Claude Code skill or any other agent cannot drive the CLI without prompts, the design is wrong.
- Text-native: conventions, rules, and prompts are authored as markdown that you and your agents read the same way. No hidden behavior, no compiled state.
- One source, many consumers: this repo is the authoritative copy. Your projects install and sync on demand, never author in place.
Two limits worth knowing before you install. Claude Code is the only agent runtime the plugin targets, and the CLI needs Bun on your path. Snippets are the one surface that also travels to Gemini chat.
What is inside
Each domain has a canonical source in this repo and a thin install or sync CLI on your side. The links run to internal narrative, written for someone maintaining the toolkit rather than installing it, so skip them on a first pass.
- Claude Code plugin: skills for planning, review, docs sync, and the git ship chain
- Governance rules: Claude rules and stacks, installable per project
- Standards: shared authoring conventions, read by name rather than installed
- Snippets: reusable prompts for Claude and Gemini chat
- Tooling stacks: golden configs, seeds, and references per framework
- Design system:
DESIGN.mdtoken shape, extract skill and its two paths, render command - Slides:
SLIDES.mdsource, layout catalog, render command, draft skill - Transcripts: fetch a YouTube transcript with metadata frontmatter via
aitk transcripts - Sandbox: scenario-based scaffolds for verifying each domain flow
Documentation
Scaffolding your first project? Start with target projects, then the AI workflow loop. Everything else answers questions that arrive later.
- AI workflow: feature-development loop inside a toolkit-managed project
- Operating model: orchestrator and worker roles for building across parallel sessions
- Visual design workflow: tiered guide for design and wireframe authoring
- Target projects: scaffold, add a domain later, sync upstream drift
- Agents: CLI flags, exit codes, and JSON output shapes
- Docs index: every reference doc in this repo
Development
Working on the toolkit starts from a clone. Running the CLI doesn't, since it installs from the registry. Skip this section unless you're changing the toolkit itself.
Prerequisites
- Bun for the CLI runtime and scripts
- Git with worktree support
- GitHub CLI (optional) for ship flows
- Shell:
zshor bash 4+ (brew install bashon macOS).
Clone the repo, then run the bootstrap script. It installs dependencies, links the CLI globally, and adds the Claude Code shell aliases to your ~/.zshrc.
git clone https://github.com/erclx/aitk.git
cd aitk
bun install
bun run bootstrapThe script is idempotent, so re-run it after pulling upstream changes without duplicating anything. It confirms the install by resolving aitk --help on the last step. See zshrc aliases for what each alias does.
With the CLI linked, scaffold a fresh project.
mkdir ~/my-project && cd ~/my-project
git init
aitk initaitk init installs base tooling configs, Claude seeds, governance rules, and snippets in one pass, and scaffolds a .claude/wiki/ stub for your project's own reference pages. Governance defaults to the base stack, so a bare init lands the coding and doc-authoring rules in .claude/rules/. Each rule names the standard it answers to and reads it with aitk standards <name>, so no corpus is copied into your project. Pass --stack <name> for a framework stack, or --skip governance to leave rules out. Run aitk tooling list --json to see the catalog.
For the full journey from scaffold through adding a domain later to syncing upstream drift, see target projects.
Contributing
Portfolio project. Issues are welcome. Pull requests are accepted by invitation only, so open an issue rather than a branch. Read the contributing guidelines for the local loop, the authoring split, and the commit convention before you file anything.
