Routine is a desktop app that turns natural-language prompts into runnable, visual automation flows. Describe what you want ("daily digest of GitHub trending repos to my team's email"), and Routine generates a node-based flow you can inspect, edit on a canvas, refine via chat, and execute step by step.
Built as an Electron + React app with electron-vite, packaged with electron-builder.
- src/main/ — Electron main process
- src/preload/ — preload bridge
- src/renderer/ — React UI (sidebar, chat thread, flow canvas, node inspector, tweaks panel)
- packages/core/ —
@flow-build/core, Cursor SDK wrapper (foundation for in-app agent integration) - packages/cli/ —
@flow-build/cli, standalone CLI exercising the core wrapper
The packages currently power a standalone CLI. Integrating them into the Electron app is a future iteration.
- Node.js 20+
- pnpm (managed via Corepack —
corepack enable pnpm)
pnpm installpnpm dev # start the app in development mode (HMR)
pnpm start # preview a production buildpnpm run build # compile main, preload, and renderer bundles
pnpm run build:packages # build the @flow-build/* workspace packages
pnpm run build:unpack # build an unpacked app directory (no installer)
pnpm run build:mac # build a macOS distributable
pnpm run build:win # build a Windows distributable
pnpm run build:linux # build a Linux distributablepnpm test # run all package test suites
pnpm typecheck # typecheck app + packages
pnpm icons # regenerate app icons from resources/icon.svgThe @flow-build/cli package wraps the Cursor SDK and streams agent output with tool-call indicators. Spec and implementation plan live under docs/superpowers/; manual smoke checks live in docs/smoke.md.