Guide

Tech stack

Agent Zero is a TypeScript monorepo. Every tool below was chosen deliberately; the toolchain rules in AGENTS.md are binding for contributors and coding agents alike.

Agent Zero is a TypeScript monorepo. Every tool below was chosen deliberately; the toolchain rules in AGENTS.md are binding for contributors and coding agents alike.

Runtime and package management

  • Node.js 24.2+ — the minimum runtime for every package and generated bundle.
  • aube — the package manager, pinned through packageManager in package.json. aube reads and writes the existing pnpm-lock.yaml and pnpm-workspace.yaml in place, so the lockfile stays in pnpm's v9 format for anyone who still runs pnpm. Do not use npm, Yarn, or Bun in this repository, and do not add a second lockfile.
  • misemise.toml pins both Node.js and aube, so one mise install sets up the whole toolchain.

Build and orchestration

  • Turborepo — schedules workspace tasks in dependency order and caches build outputs. All orchestration goes through the root scripts; packages do not duplicate it.
  • tsdown — builds publishable packages as ESM and CommonJS with matching declarations and source maps, through the shared scripts/tsdown.config.ts. The Nuxt dashboard uses the Nuxt build pipeline instead.
  • typescript-native-bridge — overrides typescript repo-wide in pnpm-workspace.yaml, so tsc keeps the classic package surface while the checker runs on tsgo in-process. The pin is exact because the fork only publishes prerelease versions.

Quality gates

  • Oxlint + Oxfmt — type-aware linting and repository-wide formatting, extended with @e18e/eslint-plugin for modernization and performance rules. ESLint and Prettier are deliberately absent.
  • Knip — detects unused files, exports, and dependencies across the workspace as part of lint:ci.
  • Vitest — deterministic unit tests beside the source as *.test.ts; Playwright drives the dashboard's end-to-end suite.
  • @arethetypeswrong/cli + Publint — validate every package build.

Application stack

  • Nuxt 4 — the dashboard, the single deployable app: UI, control plane, and authentication from one origin, served by Nuxt's own Nitro server.
  • UnoCSS (preset-wind4) with @nuxt/icon (Lucide, bundled locally) — styling and icons.
  • oRPC — one typed router served over both a typed RPC transport (/rpc/**) and OpenAPI/REST (/api/v1/**).
  • Better Auth via @onmax/nuxt-better-auth — authentication mounted in-process at /api/auth/**.
  • Drizzle + Postgres — the session store, the only database in the repository, owned by packages/database with reviewable checked-in SQL migrations.
  • Maizzle — transactional email templates in packages/mail.
  • @nuxtjs/i18n + Lunaria — English and Italian dictionaries with translation-staleness reporting.
  • Vercel AI SDK — the model-provider integrations behind one ModelProvider contract in packages/models.

Agent tooling

Copyright © 2026