@wyvrn/cli
v0.1.10
Published
Internal package manager for Wyvrn dev tooling for Claude
Downloads
1,324
Readme
@wyvrn/cli
Internal package manager for Wyvrn's Claude developer tooling. Installs and updates internal modules (MCP servers, Claude config wrappers, skill packs) from a central manifest.
Install
npm install -g @wyvrn/cli
wyvrn authwyvrn auth prompts for your Atlassian email and an API token with Bitbucket scopes. Create a token at https://id.atlassian.com/manage-profile/security/api-tokens using the "Create API token with scopes" flow and tick at minimum:
read:repository:bitbucketread:pullrequest:bitbucketwrite:pullrequest:bitbucket
If you previously installed wyvrn-reviewer standalone, wyvrn auth will migrate your existing credentials from ~/.config/wyvrn-reviewer/credentials.json to the new shared location.
Commands
wyvrn auth # one-time credential setup, with reviewer migration
wyvrn list # show all available modules and which you've installed
wyvrn install <module> # install latest version (runs the module's setup hook)
wyvrn install <module> --skip-post-install # install without running the setup hook
wyvrn uninstall <module> # remove
wyvrn update # check whether the CLI itself is up to date
wyvrn update <module> # update one module
wyvrn update --all # update every installed module
wyvrn update [...] --skip-post-install # update without running setup hooks
wyvrn info <module> # detailed metadata
wyvrn doctor # run environment checkswyvrn list and wyvrn info use the manifest cache (refreshed every 24h). wyvrn list --refresh forces a fresh fetch. wyvrn update always fetches a fresh manifest.
What it does and doesn't do
- It downloads modules from internal Bitbucket repos, installs them, and automatically runs each module's own setup hook (typically
<module> install) when the manifest declares one. - Pass
--skip-post-installto skip the setup hook (useful for CI or manual debugging). If a module's setup hook fails, the package itself is still installed and you'll get a clear hint to re-run it manually. - Module-specific configuration (e.g. how to wire up an MCP server in your Claude client) lives in each module's own README.
Updating the CLI itself
wyvrn update # tells you whether you're outdated, and how to fix it
npm install -g @wyvrn/cli@latest # the actual upgradeLocal state
Everything lives under your per-user config dir.
- macOS / Linux:
~/.config/wyvrn/(or$XDG_CONFIG_HOME/wyvrn) - Windows:
%APPDATA%\wyvrn\
wyvrn/
credentials.json chmod 0600 on Unix, { "email", "apiToken" }
state.json tracks installed modules and versions
cache/manifest.json cached manifest (TTL 24h)
logs/wyvrn.log rotates at 10 MBEnvironment variables
| Variable | Effect |
|---|---|
| BB_EMAIL / BITBUCKET_EMAIL | Override Atlassian email |
| BB_API_TOKEN / BITBUCKET_API_TOKEN | Override API token |
| WYVRN_MANIFEST_WORKSPACE | Override manifest source workspace (default razersw) |
| WYVRN_MANIFEST_REPO | Override manifest repo (default wyvrn-manifest) |
| WYVRN_MANIFEST_BRANCH | Override manifest branch (default master) |
| WYVRN_CLAUDE_SKILLS_DIR | Override target dir for skill packs (default ~/.claude/skills) |
| GITHUB_TOKEN | Optional: lifts GitHub rate limits when installing external skills |
| NO_COLOR / FORCE_COLOR | Standard color controls |
| --debug flag | Print stack traces on errors |
Troubleshooting
auth_failed/ 401 or 403 — Token revoked or wrong email. Re-runwyvrn auth.not_found/ 404 — The module isn't in the manifest, or your account doesn't have access to its source repo.rate_limited/ 429 — Bitbucket or GitHub rate limit. Wait and retry.- Manifest fails to load — Check
wyvrn doctor. The CLI falls back to a stale cache when fetch fails, but only if a cache exists.
Development
npm install
npm run dev -- list # run a command from source via tsx
npm run typecheck # tsc --noEmit
npm run build # produce dist/
npm run package # produce a local @wyvrn-cli-<version>.tgzReleases are cut by tagging vX.Y.Z on master; CI runs npm publish --access public and the package is live on the public npm registry.
License
Internal use only.
