Development guide
June 15, 2026 ยท View on GitHub
Baseline
Use Node.js 24 and npm workspaces:
nvm use
npm ci
npm run check-versions
npm run sync:deps:check
Workflow
See the active refactor plan for prioritized framework-first cleanup work.
- Read
ROADMAP.md,AGENTS.md, and the relevant package README. - Add or update a behavior-focused test near the package.
- Implement the smallest framework-first change.
- Run targeted package validation.
- Run broader gates before deploy/PR.
Framework-first placement
- Shared behavior goes in framework packages.
packages/screeps-botis runtime wiring/config/adaptation only.- Package APIs should be small and exported from
src/index.ts. - Do not add bot-local copies of role/economy/spawn/defense/pathfinding utilities.
Targeted commands
npm run build -w @ralphschuler/screeps-roles
npm test -w @ralphschuler/screeps-roles
npm run lint -w screeps-typescript-starter -- --max-warnings=0
npm run build -w screeps-typescript-starter
Full gate
npm run build
npm run typecheck
npm run lint:all
npm run test:all
npm run test:server:smoke
npm run build:docs
Generated files
Do not hand-edit generated outputs:
wiki/documentation build output,- coverage directories,
- private-server artifacts unless updating intentional checked-in fixtures/reports,
- TypeScript/Rollup
dist/except intentionally tracked Screeps bundle/mod outputs.
Safety
- Never commit credentials or Memory dumps.
- Preserve ally filtering for
TooAngelandTedRoastBeef. - Use private-server smoke for runtime behavior changes.