Continuously sync your AI setups with one command. Codebase tailor suited agent skills, MCPs and config files for Claude Code, Cursor, and Codex.
# Add to your Claude Code skills
git clone https://github.com/caliber-ai-org/ai-setupLast scanned: 5/3/2026
{
"issues": [
{
"type": "npm-audit",
"message": "gaxios: Vulnerability found",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "postcss: PostCSS has XSS via Unescaped </style> in its CSS Stringify Output",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "uuid: uuid: Missing buffer bounds check in v3/v5/v6 when buf is provided",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "vite: Vite Vulnerable to Path Traversal in Optimized Deps `.map` Handling",
"severity": "high"
}
],
"status": "WARNING",
"scannedAt": "2026-05-03T06:26:13.659Z",
"semgrepRan": false,
"npmAuditRan": true,
"pipAuditRan": true
}See how ai-setup compares with popular alternatives.
ai-setup is an open-source ai agents skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by caliber-ai-org. Continuously sync your AI setups with one command. Codebase tailor suited agent skills, MCPs and config files for Claude Code, Cursor, and Codex. It has 1,280 GitHub stars.
ai-setup returned warnings in SkillsLLM's automated security scan. It has no critical vulnerabilities, but review the flagged issues in the Security Report section before adding it to your workflow.
Clone the repository with "git clone https://github.com/caliber-ai-org/ai-setup" and add it to your Claude Code skills directory (see the Installation section above).
ai-setup is primarily written in TypeScript. It is open-source under caliber-ai-org on GitHub, so you can review or fork the full source.
Yes. SkillsLLM lists many other AI Agents skills you can browse and compare side by side. Open the AI Agents category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh ai-setup against similar tools.
No comments yet. Be the first to share your thoughts!
⚠️ Third-Party Software Notice
This skill is third-party open-source software developed and hosted independently on GitHub. SkillsLLM is an informational directory and does not control or maintain the underlying repository.
Any security checks, ratings, or warnings displayed by SkillsLLM are automated and limited in scope. They do not constitute a security certification or guarantee that the software is safe, error-free, or free from malicious code, vulnerabilities, compromised dependencies, or prompt-injection risks.
Review the source code, permissions, dependencies, and configuration before installing or running any third-party skill. Use is at your own risk. To the maximum extent permitted by applicable law, SkillsLLM is not liable for losses arising from third-party software.
Hand-written CLAUDE.md files go stale the moment you refactor — Caliber keeps every agent's context accurate as the code changes.
Requires Node.js >= 20.
npx @rely-ai/caliber bootstrap
Then, in your terminal (not the IDE chat), start Claude Code or Cursor CLI and type:
/setup-caliber
The agent detects the stack, writes CLAUDE.md / Cursor rules / AGENTS.md / Copilot instructions, and installs the hooks.
No Claude Code or Cursor? caliber init is the same setup as a CLI wizard — Anthropic, OpenAI, MiniMax, or Vertex, your key.
Your code stays on your machine. Bootstrap is local — no LLM calls, no code sent anywhere. Generation uses your seat or your key. Caliber never sees your source.
cd into the project, then npx @rely-ai/caliber bootstrap.curl | bash. Then agent login.A typical hand-written CLAUDE.md and nothing else. Scoring is filesystem math — no LLM, no API calls. It checks whether referenced paths exist, whether code blocks are present, and whether the config drifted since the last commit.
Before After /setup-caliber
────────────────────────────── ──────────────────────────────
Agent Config Score 35 / 100 Agent Config Score 94 / 100
Grade D Grade A
FILES & SETUP 6 / 25 FILES & SETUP 24 / 25
QUALITY 12 / 25 QUALITY 22 / 25
GROUNDING 7 / 20 GROUNDING 19 / 20
ACCURACY 5 / 15 ACCURACY 13 / 15
FRESHNESS 5 / 10 FRESHNESS 10 / 10
BONUS 0 / 5 BONUS 5 / 5
caliber score --compare main # how this branch moved the score
caliber sync — no LLM, cheap enough for every session start.
caliber sync # mirror into every detected agent
caliber sync --status # what each agent currently holds
caliber sync --dry-run # preview without writing
caliber sync --from cursor # pick the source of truth
Caliber Sync
Source: Claude Code — 4 item(s)
Targets: Cursor, Codex, GitHub Copilot
wrote .cursor/skills/deploy/SKILL.md
wrote .cursor/rules/house-style.mdc
wrote .cursor/mcp.json
wrote .agents/skills/deploy/SKILL.md
wrote .github/instructions/deploy.instructions.md
skipped mcp:linear for codex — Codex MCP servers are configured globally
refresh rewrites the prose documents. sync owns the artifacts. They stay in their lanes.
Providers are not symmetric, so sync degrades instead of dropping. Copilot has no skills directory — a skill becomes .github/instructions/*.instructions.md with applyTo from the skill's paths. Codex has no plugin system — a plugin expands into its skills. Anything that cannot be represented is reported with a reason.
Hand edits are never clobbered. Sync hashes every file it writes. A file you edited is a conflict until you pass --force.
Two optional hooks (caliber hooks) keep it continuous:
| Hook | Effect |
|---|---|
Agent sync (SessionStart) |
Every agent starts holding the same skills and rules |
Agent sync (on edit) |
Editing a skill in one agent mirrors it immediately |
The on-edit hook is path-filtered to provider skill/rule directories, so ordinary edits cost nothing.
TypeSafe's Jev scores each tool call and result. Stale ones drop. Everything kept stays byte-for-byte verbatim.
BYOK:
AI_GATEWAY_API_KEYis a Vercel AI Gateway key.TYPESAFE_API_KEYis a TypeSafe key. They authenticate different hosts and are not interchangeable. Caliber does not ship, share, or proxy either.
export CLAUDE_CODE_ENABLE_FUNCTION_HOOKS=1 # function hooks are early-access, off by default
export AI_GATEWAY_API_KEY=... # Vercel AI Gateway — not a TypeSafe key
# or: export TYPESAFE_API_KEY=... # direct TypeSafe System One
claude plugin marketplace add caliber-ai-org/ai-setup
claude plugin install caliber-jev-compaction@caliber
Or vendor it into a repo Caliber already set up:
caliber plugin install --dry-run # print the loadable file tree, write nothing
caliber plugin install # .claude/plugins/ + a local marketplace
caliber plugin list
5-minute install → key → live-gate → /compact: FUNCTIONAL_CHECKLIST.md.
Preview the same scoring without installing anything:
caliber compact # report what would be dropped — read-only
Jev Compaction
Messages: 248 -> 201
Chars: 412,880 -> 190,344 (53.9% smaller)
Calls: 96 scored — 41 kept, 23 results dropped, 26 calls dropped, 6 pinned
| Key | Host | Model |
|---|---|---|
AI_GATEWAY_API_KEY |
Vercel AI Gateway (/v4/ai/evaluation-model) |
typesafe-ai/jev |
TYPESAFE_API_KEY |
TypeSafe System One (api.typesafe.ai/v1/systemone) |
jev-latest |
Set one in the environment, or enter it when claude plugin install prompts for gatewayApiKey / apiKey.
| Hook | What it does |
|---|---|
session.compact |
Substitutes the verbatim-trimmed transcript for Claude Code's summary |
turn.complete |
Requests compaction once context passes compactAtPercent (60% by default) |
If Jev fails, the key is missing, the transcript will not fit the state budget, or the reduction is below minReductionRatio, the hook logs a fallback and delegates to Claude Code's built-in compaction — a bad Jev day degrades compaction, it does not break the session.
Configuration is plugin userConfig (apiKey, gatewayApiKey, gatewayBaseUrl, keepThreshold, preserveRecentMessages, compactAtPercent, minReductionRatio, maxStateTokens, maxRequestTokens, truncateHeadChars, model) — editable from Claude Code, not a Caliber config file.
Function hooks are an early-access Claude Code surface and stay off unless
CLAUDE_CODE_ENABLE_FUNCTION_HOOKS=1is set.caliber plugin installprints the enable steps. Authored against Claude Code 2.1.274; revisit after an upgrade.
The unit suite substitutes the network. To hit the real Jev API:
# Direct TypeSafe System One (a TypeSafe key — not a Vercel key)
TYPESAFE_API_KEY=sk-... npm run e2e:jev
# Vercel AI Gateway — live gate for a Gateway key.
# A Gateway key 401s against api.typesafe.ai. Do not put it in TYPESAFE_API_KEY.
AI_GATEWAY_API_KEY=... npm run e2e:jev:gateway
e2e:jev:gateway skips when the key is unset (no fake pass). HTTP 403 "AI Gateway requires a valid credit card on file" is Vercel billing, not a Caliber bug. They never use a Caliber-hosted or shared secret.
caliber compact is the same scoring as a one-off report — useful before enabling the plugin, or from an agent that is not Claude Code. Below a 25% reduction it tells you compaction is not worth the request. It never rewrites the transcript.
caliber sync also installs a jev-compaction skill into every agent, which is the clearest demo of plugin expansion: Claude Code and Cursor get a skill, Copilot gets an instruction file.
The scoring library is bundled under src/vendor/ (MIT) — no extra install.
Claude Code is the only host with a function-hook plugin that can replace /compact in-session. Cu