ai-setup
Continuously sync your AI setups with one command. Codebase tailor suited agent skills, MCPs and config files for Claude Code, Cursor, and Codex.
Install / Use
npx skills add caliber-ai-org/ai-setupInstalls into whichever agent you are using.
.cursorrules
Cursor IDE rules (legacy)
Quality Score
Category
AI & Machine LearningSupported Platforms
Tags
Our assessment of ai-setup
ai-setup scores 93/100 on our quality scale, 206th of 966 AI & Machine Learning skills we index (top 22%).
Its .cursorrules is 27 KB long, well organised into 25 sections with 21 code examples: a thorough specification that gives an agent plenty to work with.
With 1,309 GitHub stars, it is one of the more widely adopted skills in the catalogue.
Maintenance, license and trust
- The repository was last updated 42 days ago, so ai-setup is actively maintained.
- Our last check on 2026-10-20 found the source still online.
- It is released under the MIT license, a permissive license that allows use, modification and commercial use with attribution.
- Its trust signals score 100/100, with no cautions. These come from repository metadata, not a code audit — read the skill file before letting an agent act on it.
Safety scan
No issues foundOur scan of the whole file found no instruction hijacking, hidden characters, credential access, data exfiltration or destructive commands (1 minor note below). An AI review of the same text found nothing harmful.
- noteInstalls by piping a downloaded script into a shellline 54
…all it, download from [cursor.com/downloads](https://www.cursor.com/downloads) instead of the macOS/Linux `curl | bash`. Then `agent login`.
AI review by kimi-k2.7-code on 2026-09-24. Automated pattern scan on 2026-09-24. It catches known dangerous patterns, not every risk — read a skill before letting an agent act on it.
ai-setup compared with similar skills
All 4 of these similar skills score higher than ai-setup; compare them before choosing.
| Skill | Score | Stars | Updated | Format |
|---|---|---|---|---|
| ai-setup (this skill)by caliber-ai-org | 93 | 1.3k | 42d ago | .cursorrules |
| claude-memby thedotmack | 100 | 113.5k | today | CLAUDE.md |
| Agent-Reachby Panniantong | 100 | 109.2k | today | CLAUDE.md |
| Understand-Anythingby Egonex-AI | 100 | 90.9k | 10d ago | CLAUDE.md |
| headroomby headroomlabs-ai | 100 | 78.9k | today | CLAUDE.md |
Frequently asked questions
- How do I install ai-setup?
- Run
npx skills add caliber-ai-org/ai-setup. The install tabs above show the steps for each supported agent. - Which AI agents does ai-setup work with?
- It is written for Cursor, Claude Code and OpenAI Codex, as a .cursorrules file. Other agents that read the same format can often use it too.
- Is ai-setup safe to use?
- Our scan of the whole file found no instruction hijacking, hidden characters, credential access, data exfiltration or destructive commands (1 minor note below). An AI review of the same text found nothing harmful. It is MIT-licensed and scores 100/100 on trust signals. Skills are instructions an agent will follow, so read the file before installing it and do not approve commands you do not understand.
- Is ai-setup still maintained?
- The repository was last updated 42 days ago, so ai-setup is actively maintained.
Skill content
View source on GitHubCaliber
Hand-written CLAUDE.md files go stale the moment you refactor — Caliber keeps every agent's context accurate as the code changes.
Start
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.
<details> <summary><strong>Windows</strong></summary>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.
- Run from your terminal (PowerShell, CMD, or Git Bash) — not from an IDE chat.
cdinto the project, thennpx @rely-ai/caliber bootstrap. - Git Bash is recommended. Pre-commit hooks and auto-sync scripts use shell syntax. PowerShell-only setups may skip hooks silently.
- Cursor Agent CLI: If prompted to install it, download from cursor.com/downloads instead of the macOS/Linux
curl | bash. Thenagent login. - One terminal at a time. Two Caliber processes in one repo will fight over provider detection.
Proof
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
Write a skill once. Every agent gets it.
<p align="center"> <img src="assets/sync-flow.svg" alt="A skill written in Claude Code is mirrored by caliber sync into Cursor, Codex, OpenCode, and Copilot native folders" width="900"> </p>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
<details>
<summary>What sync writes, what it refuses to clobber</summary>
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.
</details>Compact without summarizing
<p align="center"> <img src="assets/compaction-compare.svg" alt="Left: a lossy built-in summary drops paths and errors. Right: Jev drops stale tool calls and results; user and assistant text stay verbatim" width="900"> </p>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
<details>
<summary>Keys, fallback, and how to verify the real API</summary>
| 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.
Agents beyond Claude Code
Claude Code is the only host with a function-hook plugin that can replace /compact in-session. Cursor agents, Codex, Grok Bot, and similar hosts have no such hook surface today — they get the same Jev scoring through the skill + CLI, and they apply the report themselves.
| Host | Auto /compact toast | CLI | --write |
|---|---|---|---|
| Claude Code | Yes (caliber-jev-compaction plugin) | caliber compact (auto-discovers ~/.claude/projects/…) | No — Claude owns the file; the plugin replaces the session |
| Cursor agents | No | caliber compact --provider cursor --transcript <jsonl> | No — on-disk JSONL is unofficial, usually has tool_use without ids and no tool_result, so a rewrite would invent fields |
| Grok Bot / Codex / others | No | caliber compact --provider generic --transcript <path> | Yes — documented caliber.transcript.v1 (or OpenAI-compatible messages JSON) has a proven round-trip |
--provider auto (default) detects the file. --transcript is required when the format is not Claude auto-discover.
# Report (any host). Same BYOK as the plugin.
export AI_GATEWAY_API_KEY=... # Vercel AI Gateway — model typesafe-ai/jev
# or: export TYPESAFE_API_KEY=... # direct TypeSafe — not a Gateway key
caliber compact --provider generic --transcript ./session.json
caliber compact --provider generic --transcript ./session.json --write
caliber compact --provider cursor --transcript ~/.cursor/projects/<slug>/agent-transcripts/<id>/<id>.jsonl
Prefer exporting caliber.transcript.v1 from the agent's in-memory conversation (tool results included). Cursor's ~/.cursor/projects/.../agent-transcripts/ file is a thin log: Jev cannot drop results that were never written. The synced jev-compaction skill tells the agent to export, run the CLI, and apply decisions — it does not create a Grok Bot / Cursor toast.
Generic envelope (also accepted: a bare Message[] JSON array, JSONL of those objects, or an OpenAI-compatible messages array):
{
"schema": "caliber.transcript.v1",
"messages": [
{ "role": "
Truncated for display — read the full file on GitHub.
Related Skills
claude-mem
113.5kPersistent Context Across Sessions for Every Agent – Captures everything your agent does during sessions, compresses it with AI, and injects relevant context back into future sessions. Works with Claude Code, OpenClaw, Codex, Gemini, Hermes, Copilot, OpenCode + More
Agent-Reach
109.2kGive your AI agent eyes to see the entire internet. Read & search Twitter, Reddit, YouTube, GitHub, Bilibili, XiaoHongShu — one CLI, zero API fees.
Understand-Anything
90.9kGraphs that teach > graphs that impress. Turn any code into an interactive knowledge graph you can explore, search, and ask questions about. Works with Claude Code, Codex, Cursor, Copilot, Gemini CLI, and more.
headroom
78.9kCompress tool outputs, logs, files, and RAG chunks before they reach the LLM. 20% fewer tokens for coding agents, 60-95% fewer tokens for JSON, same answers. Library, proxy, MCP server.
Languages
Trust signals
From repository metadata: license, adoption, age and documentation. Not a code audit — see the Safety scan above for what the skill file itself contains.
