Sync the setup behind your AI coding workflow.
A native CLI, terminal dashboard and background sync for your assistants.
Install the native CLI through npm:
npm i -g skillpouch
skillpouchskillpouch opens the terminal dashboard. The first time, it signs this computer in through your browser and helps you choose a pouch and assistants. On a machine without a browser, use skillpouch login <token> with a one-time token from the SkillPouch app.
| Command | What it does |
|---|---|
skillpouch |
Open the TUI in a terminal; show a concise summary when non-interactive |
skillpouch login [<token>] [--name <name>] [--no-browser] |
Connect this computer |
skillpouch status [--json] |
Show account and device status |
skillpouch sync |
Sync now in the foreground |
skillpouch daemon start|stop|status |
Manage background sync |
skillpouch select [--on <name>] [--off <name>] |
Choose assistants and item kinds for this computer |
skillpouch conflicts |
Open the app to resolve conflicting edits |
skillpouch unlink [--assistant <id>] |
Stop syncing an assistant or the whole computer |
skillpouch logout |
Remove this computer's local credentials and keys |
Use skillpouch --help or skillpouch <command> --help for current options.
The CLI detects Claude Code, Codex, OpenCode, Gemini CLI, Antigravity, Copilot CLI, Cursor, Windsurf, Qwen Code, Factory Droid and Crush. Depending on the assistant and its formats, SkillPouch can sync skills, agent definitions, instruction and command files, MCP server configurations, hooks, plugins and marketplace references. Shared skills folders are also recognized. Coverage differs by item type and assistant; the source of truth is sp-harness.
The pouch is kept as ordinary files on the computer. The CLI links supported assistant locations to those files, translates supported formats where necessary, and backs up files before replacing links. Turn off an assistant or unlink a computer and linked files are released as regular files so assistants can continue to use them.
skillpouch login configures this computer and starts the background sync service. Start or inspect it later with skillpouch daemon start and skillpouch daemon status. The daemon keeps the local pouch in sync without needing a terminal open. Auto-update checks are enabled by default for normal installations; turn them off with SKILLPOUCH_NO_UPDATE=1 or auto_update = false in ~/.skillpouch/config.toml.
Pouch content is encrypted on the client before upload; the service stores and relays ciphertext. The CLI also signs updates and uses device credentials when talking to the API. Metadata and operational details may remain visible to the service. Review the cryptographic implementation and server threat model before making a security decision for your use case.
The TUI includes a token-usage view. The CLI reads usage counts from local Claude Code, Codex and OpenCode logs and reports counts—not prompt text—to the service during background sync. The view is informational; counts depend on what those assistants record locally.
| Setting | Meaning |
|---|---|
SKILLPOUCH_API_URL |
API base URL; defaults to https://app.skillpouch.net |
SKILLPOUCH_HOME |
Local SkillPouch data directory; defaults to ~/.skillpouch |
SKILLPOUCH_NO_UPDATE=1 |
Disable automatic update checks |
auto_update = false |
Disable auto-update in ~/.skillpouch/config.toml |
For local development, SKILLPOUCH_HOME=/tmp/sp-dev SKILLPOUCH_API_URL=http://localhost:5173 cargo run -- login targets the local web/API dev origin. See the server repository for setup.
The Rust workspace is pinned by rust-toolchain.toml and requires a working Rust toolchain via rustup.
git clone https://github.com/skillpouch/skillpouch-cli.git
cd skillpouch-cli
cargo build --workspace
cargo run -- --helpWorkspace checks:
cargo fmt --all
cargo clippy --workspace --all-targets --locked -- -D warnings
cargo test --workspace --lockedThe npm package launches the native platform binary; the workspace contains the CLI, terminal UI, API client, core, crypto, sync, assistant harness and usage crates.
Focused issues and pull requests are welcome. Please run the relevant Rust checks, keep changes scoped, and use Conventional Commit messages. Documentation-only commits use docs: and do not trigger a release.
This project is licensed under AGPL-3.0-only.


