.claude/skills/build/SKILL.md
Build commands, CI/CD workflows, branching strategy, npm publishing
npx skillsauth add finlaysonstudio/jaypie buildInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
How to build, deploy, and publish in this monorepo.
npm run build # Build all packages (core deps first)
npm run build -w packages/<name> # Build a specific package
npm run build -w workspaces/<name> # Build a specific workspace
npm run build:core-deps # Build types, errors, fabric (dependency order)
npm run clean # Remove all dist/ directories
Build order matters: types -> errors -> fabric -> everything else. The top-level npm run build handles this automatically via build:core-deps.
npm run typecheck # Typecheck all workspaces
npm run typecheck -w packages/<name> # Typecheck a specific package
npm run lint # Lint everything (quiet mode)
npm run format # Auto-fix lint + sort package.json
npm-check.yml)Runs on pushes to feature branches. Validates code quality before merge.
| Trigger | Branches/Tags |
|---------|---------------|
| Push | branch/*, claude/*, codex/*, devin/*, fix/*, feat/* |
| Tag | check-* |
Jobs (all parallel):
npm run lintnpm run typecheck (continue-on-error)npm test with optional Datadog tracingpackages/llm/** changesnpm-deploy.yml)Publishes packages to npm. Skips already-published versions automatically.
| Trigger | Effect |
|---------|--------|
| Push to main | Publish stable versions |
| Tag deploy-* | Publish stable versions |
| Tag dev-* | Publish with --tag dev (only -dev.N versions) |
| Tag rc-* | Publish with --tag rc (only -rc.N versions) |
CDK infrastructure deploys via separate workflows:
| Workflow | Trigger | Environment |
|----------|---------|-------------|
| deploy-env-sandbox.yml | branch/*, claude/*, feat/*, fix/*, sandbox/* branches; sandbox-* tags; only workspaces/** path changes | sandbox |
| deploy-env-development.yml | main branch, development/* branches, development-* tags; only workspaces/** path changes | development |
| deploy-env-production.yml | production-* tags, v0.*/v1.* tags | production |
| deploy-stacks.yml | Manual (workflow_dispatch) | sandbox/development/production |
| deploy-stack-documentation.yml | main/feat/*/sandbox/* branches when workspaces/documentation/** changes; stack-documentation-*/sandbox-* tags; manual | sandbox/development/production |
| Branch Pattern | Purpose | Triggers |
|---------------|---------|----------|
| main | Stable releases | npm-deploy, stack deploy to development |
| feat/* | Feature development | npm-check, stack deploy to sandbox |
| fix/* | Bug fixes | npm-check, stack deploy to sandbox |
| branch/* | General work | npm-check, stack deploy to sandbox |
| claude/* | AI agent work | npm-check, stack deploy to sandbox |
| codex/* | AI agent work | npm-check |
| devin/* | AI agent work | npm-check |
| sandbox/* | Sandbox testing | stack deploy to sandbox |
| development/* | Development testing | stack deploy to development |
| Tag Pattern | Purpose |
|-------------|---------|
| check-* | Trigger npm-check manually |
| deploy-* | Trigger npm publish (stable) |
| dev-* | Publish with dev dist-tag |
| rc-* | Publish with rc dist-tag |
| sandbox-* | Deploy stacks to sandbox |
| development-* | Deploy stacks to development |
| production-* | Deploy stacks to production |
| v0.*, v1.* | Deploy stacks to production |
| stack-documentation-* | Deploy documentation stack only |
Packages publish automatically when merged to main. The workflow:
packages/*/private: true packages--provenance)To publish a pre-release:
-rc.0 or -dev.0 suffixnpm i --package-lock-onlygit tag rc-description && git push origin rc-descriptionSee .claude/skills/green/SKILL.md.
testing
Work a GitHub issue -- validate, test, plan, implement, report
testing
Run and write Vitest tests, mock Jaypie with testkit, CI matrix
testing
Merge process -- push, CI check, PR, merge, deploy monitor, prune branches
documentation
Prepare a release by committing, versioning, updating docs and skills