Documentation

Getting started

Install the AgentKit CLI (ak), authenticate with your email or API key, and set up your kits — or migrate from the legacy ClaudeKit CLI (ck).

ak is the new AgentKit CLI — the successor to the legacy ClaudeKit ck CLI. It ships as a single native binary for macOS, Linux, and Windows (no Node.js or Bun required) and manages AgentKit workflow kits for Claude Code and Codex. Coming from ck? Jump to Migrate from the legacy ck CLI.

Installation

macOS / Linux

curl -fsSL https://agentkit.best/install.sh | sh

If your network blocks the product domain, use the trusted direct release alias:

curl -fsSL https://releases.agentkit.best/install.sh | sh

Both commands run the same release-managed installer and preserve the signed channel-pointer, pinned bootstrap-verifier, and archive-checksum chain. Never disable verification to work around a network or endpoint-protection error.

The installer detects your OS/architecture, downloads the current release for the stable channel, verifies it (SHA-256) against the signed release manifest, and installs ak into ~/.local/bin. It is idempotent and always resolves the latest release on the channel — re-run the same one-liner anytime to upgrade in place (it overwrites the existing binary; if you already have the latest, it simply reinstalls the same version).

Customize with environment variables:

# Install to a custom directory curl -fsSL https://agentkit.best/install.sh | AK_INSTALL_DIR="$HOME/bin" sh # Install the latest public beta build (default channel: stable) curl -fsSL https://agentkit.best/install.sh | AK_CHANNEL=beta sh # Pin an exact version curl -fsSL https://agentkit.best/install.sh | AK_VERSION=1.0.0 sh

Windows (PowerShell)

irm https://agentkit.best/install.ps1 | iex

If your network blocks the product domain, use the trusted direct release alias:

irm https://releases.agentkit.best/install.ps1 | iex

The direct alias uses the same signed verification chain as the primary command. Keep Windows security controls enabled; a security warning is a failed install, not a prompt to add an exclusion.

Installs ak.exe into %USERPROFILE%\bin and adds that directory to your user PATH automatically — open a new terminal afterward. Like the shell installer it is idempotent and resolves the latest release on the channel — re-run it to upgrade in place. Customize before piping:

# Install the latest public beta build (default channel: stable) $env:AK_CHANNEL = "beta"; irm https://agentkit.best/install.ps1 | iex # Pin an exact version $env:AK_VERSION = "1.0.0"; irm https://agentkit.best/install.ps1 | iex # Install to a custom directory $env:AK_INSTALL_DIR = "$env:USERPROFILE\Programs\AgentKit"; irm https://agentkit.best/install.ps1 | iex

Verify the installation

ak --version ak doctor

ak doctor checks your environment and reports anything that needs attention.

Private GitHub releases: use this only for a named private prerelease absent from the public R2 beta channel. Authenticate GitHub CLI first, then download that release's installer explicitly:

gh auth login -h github.com gh release download <private-prerelease-tag> --repo bestagentkits/agentkit -p install.sh -O - \ | AK_VERSION=latest-beta AK_DOWNLOAD_MODE=gh sh
$env:AK_VERSION = "latest-beta" $env:AK_DOWNLOAD_MODE = "gh" gh release download <private-prerelease-tag> --repo bestagentkits/agentkit -p install.ps1 -O install.ps1 --clobber & .\install.ps1

For the public R2 beta, prefer AK_CHANNEL=beta above. Do not combine AK_VERSION=latest-beta with the default HTTP mode.


Authenticate

On the CLI, sign in with your email or an API key — both open a CLI session. Find your user API key in your account dashboard.

Email — sends a one-time code (OTP) you paste back when prompted (recommended for local use):

ak login --email you@example.com

API key — a user API key from your web profile, ideal for CI and non-interactive use:

ak login --api-key ak_live_... --no-interactive

Verify your session and entitlements:

ak whoami ak licenses

License keys activate the AgentKit Desktop App — not the CLI. ak login --license-key ak_license_... performs device activation for the desktop app rather than a CLI session. On the CLI, use --email or --api-key.

Use ak logout to clear credentials on a shared machine. Never commit or share your API key — anyone holding it can use your entitlements.


Install a kit

Once authenticated, install a kit for your coding agent:

# Engineer kit for Claude Code, available in every project ak kit init engineer --target claude-code --global # Marketing kit ak kit init marketing --target claude-code --global # Codex as the target agent ak kit init engineer --target codex --global

Install only part of a kit with skill selection:

ak kit init engineer --target claude-code --global --skills ak-cook,ak-plan ak kit init engineer --target claude-code --global --exclude-skills ak-video

--select-skills opens an interactive picker. In Claude Code, kit skills are invoked with the ak: slash prefix:

/ak:cook # develop a new feature /ak:plan # scan, analyze, and plan an implementation /ak:fix # fix bugs with root-cause analysis /ak:ask # ask anything with project-aware context

Browse available kit names with ak kit list-kits; use ak versions to inspect local installed versions.


Use kits in other coding agents (portable target)

Claude Code and Codex are AgentKit's first-class, natively supported targets. Working in a different coding agent — Cursor, Antigravity, OpenCode, Grok, or similar? Install any kit with the portable target:

# Portable export of the Engineer kit for any coding agent ak kit init engineer --target portable # Marketing kit, portable profile ak kit init marketing --target portable

The portable target emits a neutral, best-effort profile: skill and agent instructions are rewritten to use generic capability language (read file, edit file, search files, run shell command) instead of Claude Code- or Codex-specific tool names, and subagent guidance avoids prescribing a named model. It writes a portable kit folder you then import into your agent of choice.

Portable is a temporary bridge, not native support. It is the best option available today for agents AgentKit does not yet support natively — expect roughly 80–90% of the capability you get from the native Claude Code and Codex kits, with no runtime guarantees. The Claude Code and Codex outputs are unchanged and remain the fully supported path.

We're actively deepening per-agent integration. As dedicated adapters land for specific harnesses, those agents will graduate from the portable profile to first-class support with higher fidelity and a smoother experience.


Update

# Check for a binary update, then apply it ak self-update --check ak self-update --yes # Refresh an installed kit and remove stale generated files ak kit refresh engineer --global --yes # Preview updates to an AgentKit-managed project, then apply them ak update ak update --yes

ak self-update updates the ak binary; ak update refreshes AgentKit-owned project content; and ak kit refresh <kit> --yes refreshes an installed runtime kit, including removal of stale generated files. ak self-update --dry-run and ak update --dry-run are read-only previews. ak kit init uses an interactive confirmation (or --yes for scripts) and preserves unknown or user-modified files by default; kit refreshes snapshot tracked content before rewriting it.


Migrate from the legacy ck CLI

The legacy ck CLI (the claudekit-cli npm package) is deprecated. ak migrate is a transitional, one-time safety net for taking over recognized ClaudeKit installs; it is not part of the normal kit update flow:

# Preview the migration — read-only, this is the default ak migrate --from=ck # Apply it non-interactively (CI-friendly) ak migrate --from=ck --dry-run=false --yes --no-interactive

ak migrate is read-only until you pass --dry-run=false --yes, and it snapshots state before writing so you can ak migrate rollback if needed. Prefer to do it by hand? The manual steps below cover the same ground:

1. Find and remove the old ck install. A stale ck earlier on your PATH can keep old scripts running ClaudeKit even after AgentKit is installed.

# macOS / Linux — inspect every ck on PATH, then remove the npm package which -a ck npm uninstall -g claudekit-cli # or: bun remove -g claudekit-cli
# Windows Get-Command ck -All npm uninstall -g claudekit-cli

2. Install ak using the one-liners above, then authenticate with your email or API key.

3. (Optional) Keep ck as an alias. The ak binary detects when it is invoked as ck and behaves identically, so existing scripts keep working:

# macOS / Linux — symlink (future ak updates apply automatically) ln -sf ~/.local/bin/ak ~/.local/bin/ck
# Windows — copy next to ak.exe, or add a profile function Copy-Item $env:USERPROFILE\bin\ak.exe $env:USERPROFILE\bin\ck.exe

Verify the shim resolves correctly:

ak doctor --check ck_shim_collision

Command mapping

Legacy ck commandNew ak equivalent
npm install -g claudekit-clicurl -fsSL https://agentkit.best/install.sh | sh
ck newak new
ck initak init
ck updateak update
ck setupak setup
ck skills / ck agentsak skills / ak agents
ck doctorak doctor
ck versionsak versions
ck configak config
ck uninstallak uninstall
GitHub PAT authenticationak login --email <you> (or --api-key <key>)
ak kit init <kit> --target <agent> --global (kit lifecycle)
ak self-update, ak audit, ak gui (new in ak)

Troubleshooting

SymptomFix
ak: command not found after installEnsure the install dir is on PATH: echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.zshrc (or ~/.bashrc), then open a new shell
Windows: ak not recognized after installThe installer added %USERPROFILE%\bin to your user PATH — open a new terminal
Windows blocks the installerKeep security controls enabled. Retry the primary command, then use the trusted direct alias irm https://releases.agentkit.best/install.ps1 | iex. If both fail, stop and contact support with the exact warning.
Checksum or signature verification failedStop the install and retry once. If the primary domain is blocked, use the trusted direct release alias above. Never bypass verification.
Old ClaudeKit still runs when typing ckA stale ck binary sits earlier on PATH. Run which -a ck (or Get-Command ck -All), remove entries that do not point at ak, then ak doctor --check ck_shim_collision
ak login failsConfirm your API key matches the one in /account exactly (no surrounding spaces). For --email, check the OTP code hasn't expired. Still stuck? Contact support below
Kit install fails with a missing entitlementYour license covers specific kits (Engineer, Marketing, or Bundle). Check ak licenses

Need help? Join the Discord or email support@agentkit.best.