Imported from runta-dev/errand (
AGENTS.md). Install upstream withnpx skills add runta-dev/errand. Copyright stays with the author.
Errand development rules
- Keep the Electron main process, typed preload bridge, domain model, transports, state orchestration, and renderer UI as separate layers.
- Renderer code must not import Node.js or Electron. Keep
contextIsolationand sandbox enabled, andnodeIntegrationdisabled. - Never expose generic IPC, filesystem access, shell execution, or decrypted credentials through preload.
- Keep Runta Cloud Agents routes and event framing aligned with the
runtaCloud Agents implementation and its end-to-end tests. - Do not add product-side mock data or simulated computer surfaces. Tests may use bounded transport doubles, but the application must surface unavailable backend capabilities honestly.
- Default to the light theme and preserve both theme token sets.
- Keep every UI change minimal: add only necessary controls or decoration, and justify every visible border.
- Use strict TypeScript; do not add
anyescapes. - Run
npm run typecheck,npm run lint,npm test,npm run build, and packaging/smoke checks for release-facing changes. - Use Conventional Commits. Errand is currently in rapid iteration: commit and push directly to the active remote branch. A pull request is not required unless the user explicitly asks for one. Keep branch history linear and never introduce merge commits.
- Errand is temporarily not onboarded to Runta Review. Do not trigger, wait for, or treat Runta Review as a merge gate for this repository.