CLI Reference All Syphon CLI commands. Current version: 0.2.4
Global flags Flag Description --registry <url> Override registry URL (env: SYPHON_API_URL) --quiet Suppress non-essential output -v / -vv Enable debug / trace logging --color auto|always|never Color output (default: auto) -V, --version Print version with banner
Setup setupsyphon setup
Interactive first-run wizard. Guides through login, key generation, and installing your first package.
statussyphon status
Show a system dashboard: installed packages, linked agent frameworks, sync status, and registry health.
doctorsyphon doctor
Run diagnostic checks on the syphon installation: signing key, lockfile, network connectivity, and framework config paths.
Auth loginsyphon login
Authenticate via device-code OAuth. Opens a browser window, waits for approval, then saves a bearer token and generates an ed25519 signing key locally.
logoutsyphon logout
Delete the local auth token and clear the saved username from config.
whoamisyphon whoami [--json]
Print the currently authenticated user, their email, package count, and total downloads.
Flag Type Default Description --json — — Output as JSON
copy
syphon whoami
syphon whoami --json Packages installsyphon install <spec> [flags]
Download, verify, and install a package. Aliases: i, add. spec is name or name@version (exact, semver range, or tag).
Flag Type Default Description --force — — Reinstall even if already at this version --dangerously-skip-verify — — Skip ed25519 signature verification (use with caution) --link — — Link to detected agent frameworks after install --scope <label> — — Install into a named profile/scope --no-sync — — Do not push this install to the sync server
copy
syphon install github-tools
syphon install github-tools@1.0.0
syphon install github-tools@^1.0.0
syphon install github-tools@beta
syphon install github-tools --link
syphon i github-tools json-toolkit --link uninstallsyphon uninstall <name> [--yes]
Remove a package from the local install directory and lockfile. Aliases: rm, remove.
Flag Type Default Description --yes, -y — — Skip the confirmation prompt
copy
syphon uninstall github-tools
syphon uninstall github-tools --yes upgradesyphon upgrade [name] [--dry-run]
Check for newer versions and upgrade installed packages. Alias: up. Omit name to upgrade all.
Flag Type Default Description --dry-run — — Preview what would be upgraded without applying
copy
syphon upgrade
syphon upgrade github-tools
syphon upgrade --dry-run listsyphon list [--json] [--outdated]
List all installed packages with their versions and install timestamps. Alias: ls.
Flag Type Default Description --json — — Output as JSON --outdated — — Highlight packages behind their latest version
copy
syphon list
syphon list --outdated
syphon list --json outdatedsyphon outdated [--json]
Show all installed packages that have a newer version available in the registry.
Flag Type Default Description --json — — Output as JSON
copy
syphon outdated
syphon outdated --json inspectsyphon inspect <name>
Inspect an installed package: list its tools, env vars, signature status, and which frameworks it's linked into.
copy
syphon inspect github-tools searchsyphon search <query> [flags]
Search the registry by keyword. Aliases: s, find.
Flag Type Default Description --category string — Filter by category (devtools, data, ai, etc.) --verified — — Show only verified publishers --limit number 20 Max results to return --installed — — Filter to only show currently installed packages --tool <name> — — Search by tool name --json — — Output as JSON
copy
syphon search github
syphon search database --category data
syphon search tools --limit 50 --json
syphon s stripe --verified infosyphon info <spec> [--json]
Show full details about a package: description, tools, env vars, frameworks, download count, and latest version.
Flag Type Default Description --json — — Output as JSON
copy
syphon info github-tools
syphon info github-tools@1.0.0
syphon info github-tools --json browsesyphon browse <name>
Open the package page in the browser.
copy
syphon browse github-tools Development devsyphon dev
Start a local development server for the package in the current directory. Watches for file changes, hot-reloads, and streams live logs.
runsyphon run <package> <tool> [args]
Run a tool from an installed package locally, without going through an agent.
copy
syphon run github-tools search_issues --query "open bugs"
syphon run json-toolkit format_json testsyphon test <tool> [--input <json>]
Test a tool in the current package via JSON-RPC. Useful during development.
Flag Type Default Description --input <json> — — JSON object of tool arguments
copy
syphon test search_issues
syphon test search_issues --input '{"query":"open bugs","repo":"my-repo"}' Publishing createsyphon create <name>
Scaffold a new MCP server package from a template. Creates a directory, generates source files and syphon.json.
copy
syphon create my-mcp-server
syphon create stripe-tools initsyphon init [--yes] [--name <name>]
Initialize a syphon.json in an existing project directory. Prompts for required fields.
Flag Type Default Description --yes, -y — — Accept all defaults without prompting --name string — Override the package name
copy
syphon init
syphon init -y
syphon init --name my-package packsyphon pack [--dry-run] [--out <path>]
Create a .tgz tarball from the current directory, respecting .syphonignore. Runs validation and secret scanning first.
Flag Type Default Description --dry-run — — List files that would be included/excluded without writing anything --out path — Output path for the tarball (default: <name>-<version>.tgz in cwd)
copy
syphon pack --dry-run
syphon pack
syphon pack --out /tmp/my-package.tgz publishsyphon publish [--tag <tag>] [--access <access>] [--dry-run]
Pack, sign, and upload the current package to the registry. Runs validation and secret scanning before uploading. Alias: pub.
Flag Type Default Description --tag string latest Release tag --access public|private public Package visibility --dry-run — — Show what would be published without uploading
copy
syphon publish
syphon publish --tag beta
syphon publish --tag rc
syphon publish --dry-run unpublishsyphon unpublish <name>@<version> [--yes]
Remove a published version. Must specify exact version. Only available within the 72-hour post-publish window.
Flag Type Default Description --yes, -y — — Skip confirmation
copy
syphon unpublish my-package@0.1.0
syphon unpublish my-package@0.1.0 --yes deprecatesyphon deprecate <name> [--message <msg>] [--undo]
Mark a package as deprecated with an optional replacement message shown on install.
Flag Type Default Description --message string — Deprecation message (e.g. "use new-package instead") --undo — — Remove the deprecation notice
copy
syphon deprecate old-tools --message "use new-tools@2 instead"
syphon deprecate old-tools --undo Framework linking linksyphon link <name> [--framework <fw>]
Wire an installed package into one or more agent framework config files. Without --framework, links to all detected frameworks.
Flag Type Default Description --framework <fw> — — Target a specific framework (e.g. cursor, claude-code) --list — — List detected agent frameworks and their config paths
copy
syphon link github-tools
syphon link github-tools --framework cursor
syphon link --list unlinksyphon unlink <name> [--framework <fw>]
Remove a package from agent framework config files.
Flag Type Default Description --framework <fw> — — Target a specific framework
copy
syphon unlink github-tools
syphon unlink github-tools --framework cursor Security verifysyphon verify <name>
Re-verify the ed25519 signature of an installed package against the registry's recorded public key.
copy
syphon verify github-tools auditsyphon audit [--json]
Check all installed packages against the advisory database for known vulnerabilities.
Flag Type Default Description --json — — Output as JSON
copy
syphon audit
syphon audit --json trustsyphon trust <subcommand>
Manage TOFU (trust-on-first-use) publisher key pins. Subcommands: list, pin <name>, unpin <name>.
copy
syphon trust list
syphon trust pin github-tools
syphon trust unpin github-tools Sync syncsyphon sync [--profile <label>]
Restore all packages from the sync server onto the current machine. Useful when setting up a new machine or after reinstalling.
Flag Type Default Description --profile <label> — — Restore a specific named profile
copy
syphon sync
syphon sync --profile work pushsyphon push [--profile <label>]
Push the current machine's installs to the sync server. Happens automatically on install/uninstall unless --no-sync is passed.
Flag Type Default Description --profile <label> — — Push under a named profile
copy
syphon push
syphon push --profile work locksyphon lock
Snapshot the current install state to syphon.lock in the current directory.
Account tokensyphon token <create|list|revoke>
Manage API tokens for programmatic access (CI/CD pipelines etc.).
Flag Type Default Description create --name string — Create a named token create --expires number — Expiry in days create --scope string — Repeatable scope; valid: read, publish, admin:org, token:write, profile:write, webhook:write revoke <id> — — Revoke a token by ID
copy
syphon token list
syphon token create --name ci-deploy
syphon token create --name ci-deploy --expires 30 --scope publish
syphon token revoke tok_abc123 orgsyphon org <subcommand>
Manage organisations for scoped packages. Subcommands: create, list, invite, remove, leave.
copy
syphon org list
syphon org create my-org
syphon org invite my-org --user alice
syphon org remove my-org --user bob
syphon org leave my-org Misc envsyphon env <name> [--set KEY=value] [--list]
View and manage environment variables for an installed package.
Flag Type Default Description --set KEY=value — — Set an environment variable --list — — List all configured env vars
copy
syphon env github-tools --list
syphon env github-tools --set GITHUB_TOKEN=ghp_... diffsyphon diff <name>@<v1> <name>@<v2>
Compare the manifests (tools, env, permissions) of two versions of a package.
copy
syphon diff github-tools@1.0.0 github-tools@1.1.0 logsyphon log [--limit <n>]
View your activity history: installs, upgrades, publishes, and logins.
Flag Type Default Description --limit number 20 Number of entries to show
copy
syphon log
syphon log --limit 50 update (self)syphon update
Update the syphon CLI binary to the latest released version. Alias: self-update.
copy
syphon update
syphon self-update configsyphon config [get|set|list]
Read and write persistent configuration values (registry URL, default access, etc.).
copy
syphon config list
syphon config get registry
syphon config set registry https://my-registry.example.com completionssyphon completions <shell>
Generate shell completion scripts. Supported shells: bash, zsh, fish, powershell.
copy
syphon completions zsh > ~/.zsh/completions/_syphon
syphon completions bash > /etc/bash_completion.d/syphon