1.5 KiB
1.5 KiB
pi-crew Development Notes
This package is a Pi extension for team orchestration.
Rules
- Keep
index.tsminimal; register functionality fromsrc/extension/register.ts. - Prefer small modules over large orchestrator files.
- Do not copy source from SUL-licensed projects.
oh-my-openagentis concept-only inspiration. - MIT sources such as
pi-subagentsandoh-my-claudecodemay be adapted with attribution inNOTICE.md. - Avoid
any; useunknownplus validation for tool/config inputs. - Avoid dynamic inline imports.
- Do not hardcode global keybindings without user configurability.
- Default execution uses child Pi workers. Keep it safe through runtime limits, depth guards, and explicit disable controls (
executeWorkers=false,runtime.mode=scaffold,PI_CREW_EXECUTE_WORKERS=0, orPI_TEAMS_EXECUTE_WORKERS=0). - Worktree cleanup must preserve dirty worktrees unless
forceis explicitly set. - Management deletes must require
confirm: true; referenced resources should be blocked unlessforce: true. - After code changes, run
npm testfrompi-crew/unless explicitly told not to.
Important commands
npm test
Important paths
src/extension/team-tool.ts— main tool actionssrc/runtime/team-runner.ts— workflow schedulersrc/runtime/task-runner.ts— task execution and artifactssrc/state/— durable state/event/artifact storesrc/worktree/— worktree creation and cleanupagents/,teams/,workflows/— builtin resources