From gaia-ops
Use when testing, validating, or publishing Gaia releases (live testing, dry-run, beta, stable)
npx claudepluginhub metraton/gaia --plugin gaia-opsThis skill uses the workspace's default tool permissions.
Each mode tests a different surface. Live tests your code changes. Dry-run tests the install pipeline. Beta and release test the distribution channel. Skipping a layer means discovering its bugs in production -- a broken symlink in live mode does not predict a missing file in `package.json`'s `files` array, and a clean dry-run does not prove npm registry delivery works.
Triggers research for existing libraries, tools, and patterns before coding new features. Searches npm, PyPI, MCP/skills, GitHub; evaluates matches and decides adopt/extend/build.
Audits cross-stack repos (C++/Android/iOS/Web), classifies files as project/third-party/artifacts, detects embedded libraries, assigns module verdicts, generates interactive HTML reports.
Reorganizes X and LinkedIn networks: review-first pruning of low-value follows, priority-based add/follow recommendations, and drafts warm outreach in user's voice.
Share bugs, ideas, or general feedback.
Each mode tests a different surface. Live tests your code changes. Dry-run tests the install pipeline. Beta and release test the distribution channel. Skipping a layer means discovering its bugs in production -- a broken symlink in live mode does not predict a missing file in package.json's files array, and a clean dry-run does not prove npm registry delivery works.
"I want to test Gaia"
├─ Quick iteration on code? -> live (LOCAL)
├─ Validate before publishing? -> dry-run (LOCAL)
├─ Share pre-release with testers? -> beta (PIPELINE)
└─ Ship to all users? -> release (PIPELINE)
Symlinks point directly to source -- edits are instant, no build step.
When: "test here", "try this out", "put it in live mode"
.claude/hooks point?.claude/ to gaia-dev/: agents, hooks, skills, config, tools, commandsnpx gaia-doctorDefault path: Current project (cwd). If user says "here" -> cwd. If user specifies a project -> that path.
Revert: npm install @jaguilar87/gaia restores release symlinks.
Live mode does not test build output, package contents, or install pipeline. A file present in source but missing from package.json files array will work in live and break in dry-run.
Validates the full install flow without publishing. Tests exactly what npm publish would ship.
When: "test the install", "dry-run", "validate before release"
Core sequence: build plugins -> validate build -> npm pack -> install .tgz in clean /tmp/ project -> run gaia-doctor + gaia-status -> test both plugin modes (ops and security).
For step-by-step commands, see reference.md.
Test both modes: default (ops) validates orchestration and delegation. Security mode (GAIA_PLUGIN_MODE=security) validates the stripped-down path with no agents and native T3 dialog. A change that works in one mode can break the other because they load different skill sets and hook configurations.
Pre-release published to npm via GitHub Actions. Install with @beta tag.
When: "publish beta", "beta release", "pre-release"
Dry-run must pass first. Then: bump version with beta pre-release tag -> merge PR to main -> create GitHub Release with beta version tag -> publish.yml triggers automatically.
For version bump details and verification steps, see reference.md.
Stable release published to npm via GitHub Actions. Install with @latest tag.
When: "publish release", "stable release", "ship it"
Same flow as beta with a stable version bump. The pipeline owns publishing -- NPM_TOKEN is in GitHub Secrets.
For step-by-step commands, see reference.md.
Triggered by GitHub Release events. Builds plugins, validates artifacts, auto-detects npm tag from version string (-beta. -> beta, -rc. -> rc, else -> latest), and publishes. Details in reference.md.
npm run build:plugins before pack means validating old code.