One source of truth for every AI agent.
skillkit is an open-source CLI that lets teams define project AI rules once in .skillkit/ and sync them to native formats like AGENTS.md, CLAUDE.md, .cursorrules, .cursor/rules/*.mdc, and .github/copilot-instructions.md.
Repository: https://github.com/PuvaanRaaj/skillkit
Website / docs site: https://skillset-v1.netlify.app/
- Single source of truth: keep rules in
.skillkit/rules/+ optional scoped rules in.skillkit/scoped/. - Deterministic outputs:
skillkit syncregenerates tool-native files and tracks them in.skillkit/skillkit.lock. - CI-friendly drift checks:
skillkit sync --checkexits2when outputs would change. - Monorepo-friendly: optional parent/child
.skillkit/layers can be merged whenmonorepo.inherit: true(default).
Shell script (Linux / macOS — recommended):
curl -fsSL https://raw.githubusercontent.com/PuvaanRaaj/skillkit/main/install.sh | shInstall a specific version or to a custom directory:
SKILLKIT_VERSION=v0.1.0 SKILLKIT_INSTALL_DIR=~/.local/bin \
curl -fsSL https://raw.githubusercontent.com/PuvaanRaaj/skillkit/main/install.sh | shGo toolchain:
go install github.com/PuvaanRaaj/skillkit@latestThe binary is installed to $(go env GOPATH)/bin (often ~/go/bin). Add it to your PATH or the shell won’t find skillkit:
# zsh — add to ~/.zshrc
export PATH="$(go env GOPATH)/bin:$PATH"npm wrapper (expects the Go binary installed separately):
npm install skillkitIf the script can’t find a GitHub Release (404 / empty version), it will try the latest git tag, then fall back to go install github.com/PuvaanRaaj/skillkit@latest (Go must be installed). You can always pin a version: SKILLKIT_VERSION=v0.1.0 curl -fsSL … | sh. For API rate limits, set optional GITHUB_TOKEN.
skillkit init
skillkit add base
skillkit sync
skillkit statusFrom a clone of this repo you can use go run . instead of skillkit.
See docs/RULES_EXAMPLES.md for sample global and scoped rules (Markdown + frontmatter).
Import them into .skillkit/rules/, then one sync updates every target (Cursor, Copilot, AGENTS.md, …):
skillkit init
skillkit import --from claude # or: skillkit import --claude
skillkit syncOne-shot (init + import CLAUDE.md + sync):
skillkit init --import --import-claude --sync
# equivalent: --import --import-from claude --syncTo import everything skillkit can detect (CLAUDE.md, .cursorrules, Copilot instructions, AGENTS.md):
skillkit init --import --syncDry-run: skillkit import --dry-run or skillkit import --from claude --dry-run.
skillkit init— create.skillkit/and apply basic detection defaults (--import,--import-from,--import-claude,--sync)skillkit sync— generate enabled targetsskillkit status— show per-target drift vs lockfileskillkit diff— preview changesskillkit import— migrate existing tool configs into.skillkit/(--from,--claude,--merge,--dry-run)skillkit add|remove|list— manage built-in rules packs (addauto-runssyncunless--no-sync)skillkit validate— basic rules validation (including scoped globs)skillkit export <target>— print generated output to stdoutskillkit sync --check— CI-friendly check (exits2if outputs would change)skillkit watch— watch.skillkit/and rerunsyncskillkit doctor— quick diagnostics for common issuesskillkit generate— generate starter rules from repo heuristicsskillkit mcp— minimal MCP server over stdio (experimental)
| Enabled by default | Target key | Output |
|---|---|---|
| ✓ | claude |
CLAUDE.md + .claude/rules/ |
| ✓ | cursor |
.cursorrules + .cursor/rules/ |
| ✓ | copilot |
.github/copilot-instructions.md |
| ✓ | agents_md |
AGENTS.md (Codex CLI compatible) |
| opt-in | gemini |
GEMINI.md |
| opt-in | windsurf |
.windsurfrules |
| opt-in | aider |
CONVENTIONS.md |
| opt-in | goose |
.goosehints |
| opt-in | jules |
JULES.md |
| opt-in | continue |
.continuerules |
| opt-in | amazon_q |
.amazonq/dev/prompts.md |
| opt-in | kodu |
kodu.md |
| opt-in | zed |
.rules |
See docs/TARGET_PLUGINS.md for details and how to add your own.
docs/RULES_EXAMPLES.md(example.skillkitrules)docs/RELEASE.md(how to tag and publish a version)docs/SITE_URL.md(Netlify / canonical URL checklist)docs/ARCHITECTURE.mddocs/CONTRIBUTING.mddocs/GITHUB_RULES.md(branch ruleset notes + GitHub push-restriction limits on personal repos)docs/PACK_AUTHORING.mddocs/TARGET_PLUGINS.mddocs/STRETCH.md
MIT — see LICENSE.