Runtime supervision and orchestration layer for AI coding agents.
- Launches and manages agent sessions.
- Tracks lifecycle, permissions, and session state.
- Exposes local HTTP and WebSocket APIs for control and monitoring.
- Supports discovery and resume flows for existing sessions.
- Node.js 20+
- npm 10+
curl -fsSL https://raw.githubusercontent.com/viewportai/daemon/main/scripts/install.sh | bashThis installs @viewportai/daemon globally, then runs vpd setup.
Local development install (from this repo, no npm publish needed):
./scripts/install-dev.sh --yes --no-service --no-prereqs --no-hooksLocal development link mode:
./scripts/install-dev.sh --link --yes --no-service --no-prereqs --no-hooksLocal uninstall/reinstall:
npm run dev:uninstall # removes global package + launchd/systemd user service
npm run dev:uninstall:all # also removes daemon home/state
npm run dev:reinstallnpm ci
npm run build
npm run test
npm run checkFlag-driven test entry (single command surface):
npm run test # unit suite (default)
npm run test --verify # setup/service-focused verification suite
npm run test --e2e # protocol e2e suite
npm run test --fullstack # localhost fullstack CLI e2e
npm run test --env # local environment verification
npm run test --service # local environment + service verificationFirst-run onboarding:
vpd setupNon-interactive recommended defaults:
vpd setup --yesCustom choices:
vpd setup --choosenpm run build
node dist/index.js --helpBoot service setup (user-level):
vpd service install
vpd service statusLinux VPS note: For user-level systemd service auto-start after reboot, enable linger once:
sudo loginctl enable-linger "$USER"npm run typecheck
npm run lint
npm run format:check
npm run test
npm run check# fast setup-related tests
npm run test:setup
# full repository quality gate
npm run check
# manual verification test (no service or package installs)
VIEWPORT_HOME="$(mktemp -d)" vpd setup --yes --no-service --no-prereqs --no-hooks
# full local environment verification (isolated home + dedicated listen target)
npm run verify:env
# include OS service checks (launchd/systemd)
npm run verify:env:service
# package/install verification from local tarball in isolated prefix
npm run verify:install
# one-command verification gate
npm run verify:repo
# CI-aligned Linux verification path
npm run verify:linux:ci- Semantic commits (
feat:,fix:,refactor:,test:,docs:,chore:). - One logical change per commit.
- Changes to protocol or runtime behavior require matching tests.
This package publishes as @viewportai/daemon.
- Merge semantic commits to
main. - CI must pass.
- Release workflow computes version (
feat=> minor,fix=> patch,BREAKING CHANGE=> major), tags, and publishes to npm usingNPM_TOKEN.
See docs/releasing.md for setup and operations. See docs/testing.md and docs/developer-workflows.md for local validation workflows.