VA

vaayne/agent-kit

Developer tools
53 stars 5 forks Quality 66 Trend 49MIT

Reusable components for AI coding agents: skills, subagents, MCP servers, and extensions.

Overview

A Git repository for public agent configuration, skills, BB extensions, and shared instructions. Claude Code, Codex, and Pi configuration deploys from config/. Skills sync to the BB server; _AGENTS.md provides shared instructions. Requires mise, Python 3.12+, and the agent CLIs you use. Skills sync also needs gh skill, rsync, and SSH access for a remote target. On each machine, update the checkout and sync it: Sync uses the checked-out files. It does not pull, commit, push, or run on a schedule. Local source edits take effect on that machine; commit and push them before other machines can pull the changes. Edit public settings in config/claude/, config/codex/, and config/pi/, then run mise run sync:config. Claude settings, three role definitions, one routing rule, Codex settings, and Pi settings deploy as individual files. Unrelated agents, rules, skills, credentials, and session files remain in place.

README

Agent Kit

A Git repository for public agent configuration, skills, BB extensions, and shared instructions. Claude Code, Codex, and Pi configuration deploys from config/. Skills sync to the BB server; _AGENTS.md provides shared instructions.

Setup

Requires mise, Python 3.12+, and the agent CLIs you use. Skills sync also needs gh skill, rsync, and SSH access for a remote target.

git clone https://github.com/vaayne/agent-kit.git
cd agent-kit

mise install             # install the tools declared by this repository

# Set the BB destination once per checkout. This local file is ignored by Git.
cat > .mise.local.toml <<'EOF'
[env]
BB_SKILLS_TARGET = "MacMini:/Users/vaayne/.bb-machines/vaayne-mbp.getbb.app/skills/"
EOF

mise run sync             # configuration, then instructions and skills
mise run sync:config      # Claude Code, Codex, and Pi configuration
mise run sync:config -- --check  # check configuration without writing files
mise run sync:skills      # copy local and remote skills to BB
mise run sync:agents      # _AGENTS.md → CLAUDE.md / AGENTS.md symlinks for every framework

On each machine, update the checkout and sync it:

git pull --ff-only
mise run sync

Sync uses the checked-out files. It does not pull, commit, push, or run on a schedule. Local source edits take effect on that machine; commit and push them before other machines can pull the changes.

Agent configuration

Edit public settings in config/claude/, config/codex/, and config/pi/, then run mise run sync:config. Claude settings, three role definitions, one routing rule, Codex settings, and Pi settings deploy as individual files. Unrelated agents, rules, skills, credentials, and session files remain in place. CODEX_HOME, CLAUDE_CONFIG_DIR, and PI_CODING_AGENT_DIR select different destinations when set. Pi defaults to ~/.pi/agent.

Within Pi’s settings.json, sync manages only defaultProjectTrust and packages. The package list replaces the corresponding local list. All other settings in that file, including model selection, extension settings, and version state, stay local. Pi’s mcp.json and pi-vcc-config.json sync as complete files, with backups and local-edit protection. Keep MCP credentials outside the repository; use environment variable references when a server needs authentication. Pi authentication, provider definitions, and installed package files are not copied. Pi loads package declarations on startup; sync does not run pi install or remove installed files.

Copies keep application writes separate from the Git source. Sync checks all files before writing, backs up changed targets under ~/.local/state/agent-kit/backups/, and records a deployment baseline. It refuses local edits or a differing file on a machine’s first sync. Review and reconcile the file with the repository, or run mise run sync:config -- --replace to save a backup and apply the repository version.

In JSON and TOML files, the repository owns only the keys it sets. Keys that only the target sets stay local, including when --replace is used: Codex project trust, gateway routing such as Magpie’s env and model_providers entries, and other machine state. A local change to a repository key counts as a local edit. A key removed from the repository is removed from the target on the next sync. The script respects XDG_STATE_HOME for deployment state and backups. File operations are logged to ~/.agents/sessions/agent-kit/logs/sync-config.log.

To restore a backed-up file, read its target from journal.json and copy the matching numbered file back to that target. Each journal entry’s array index is the backup filename; a null before means the target did not exist. Copy a file back before the next sync if it needs further review.

Do not put tokens, login state, transcripts, or machine-specific provider credentials in config/. Authentication is set up separately on each machine. The script does not delete files removed from the repository. Remove a retired agent or rule from HOME after reviewing it. Close settings editors before sync; the checks do not provide a transaction against other processes.

Claude Code 2.1.293+ resolves the Haiku alias to Haiku 5.5. Opus owns the approach and final review; Sonnet worker edits and tests at medium effort. Haiku Explore and researcher use read-only tools at low effort. Opus 5.5 uses high effort, and Fable is the configured advisor for substantial decisions and long tasks. Codex settings preserve the imported local configuration.

In BB, Claude Code and Codex native subagents are disabled. BB Custom Instructions manages delegation rules separately from this repository. BB’s explicit model and effort can override native defaults. Fable advisor calls require account access, feature-flag fetching, and a compatible gateway. Some plans require usage-credits consent through /model fable; then /model opus returns to the main model. Configuration sync does not accept billing consent.

Restart Claude Code and Codex sessions after sync. Run /reload in Pi or start a new Pi session. For BB, stop an idle thread and send its next message so the provider creates a process with the new files.

BB server skills

Use the BB server’s data directory, which bb status --json reports as dataDir. A connected machine’s ~/.bb directory may belong to another server. Set BB_SKILLS_TARGET in .mise.local.toml, or pass the destination directly. The destination must end with /skills/. Use a local path when running on the server, or an SSH destination when running on a connected machine:

mise run sync:skills
mise run sync:skills -- MacMini:/Users/vaayne/.bb-machines/vaayne-mbp.getbb.app/skills/
bb skill list --json

The existing gh skill flow installs or updates the entries in skills/remote-skills.txt. Pinned tags and commits stay pinned. Downloads use ~/.cache/agent-kit/bb-skills/, with XDG_CACHE_HOME supported. The task combines the selected remote skills with the local skills before copying them to BB. If a remote operation fails or names collide, the task does not copy to BB.

BB provides these user skills to threads on its connected machines. Sync copies scripts and references, preserves unrelated skills, and backs up overwritten files under /skill-backups/. It does not delete retired skills or files; review and remove them in BB. Existing sessions load new skill content when their agent configuration is rebuilt. sync:bb is an alias for the same flow.

Skills that call a CLI still need that CLI and its credentials on the execution machine. Sync does not install skills into ~/.agents/skills or ~/.claude/skills. Existing native copies from earlier syncs remain until they are backed up and removed. For agents running outside BB, install the required skills separately.

Development workflow skills

The kit’s workflow skills each stand alone — pick the one that fits the moment:

Skill Role
scout Find your unknowns before they get expensive — blindspot pass, prototypes, references, quadrant diagnostic
ambition Raise a task to a higher level — altitude, depth, and range proposals, each with an outside judge
project-setup Set up or audit a repository with the project baseline — instructions, tooling, testing, docs, GitHub, and stack rules
refine-code Improve existing code without changing behavior — Code, Architecture, and Entropy modes: sharpen, deepen, or prove-and-delete

Tool & service skills

Skill Description
humanizer Strip AI writing patterns from prose
python-script Robust Python automation with logging and safety checks
cmail Manage Cloud Mail (Skymail) domain email
lark-cli Lark/Feishu workspace operations via lark-cli
tap Search public sources, read pages, and run site scripts

Remote skills installed during sync (see skills/remote-skills.txt): skill-creator, gh-stack, herdr, bento-slides, tailscale, use-modern-go, grilling, documd-visuals, baoyu-design, design-taste-frontend.

BB extensions

Extension Description
magpie Route Pi, Codex, and Claude Code through a shared Magpie gateway
workspace-navigator Browse projects, worktrees, and sessions in a compact sidebar

Install the Workspace Navigator from this repository with:

npm --prefix bb-extensions/workspace-navigator install
bb plugin install ./bb-extensions/workspace-navigator --yes

Project structure

agent-kit/
├── _AGENTS.md    # Shared agent instructions, symlinked to every framework
├── config/       # Public Claude Code, Codex, and Pi configuration
├── skills/       # Local skills + remote-skills.txt registry
└── bb-extensions/   # BB plugins

License

MIT

View this README on GitHub

Install

This server does not publish a one-line install command.

Open the repository installation guide