Seed

Seed is the Union Street starter for agent-native products: a minimal control plane with auth, billing, API keys, and clean extension points for API/CLI growth. New orgs get a one-time 1,000-request trial, then billing becomes a hard requirement.

Purpose

This repo exists for one core agent workflow:

  1. fork the template
  2. build a new app
  3. deploy it

If you are an agent working in this repo, start with the canonical skill:

  • fork-build-deploy

That skill coordinates the lower-level repo skills for product setup, quality gates, database safety, and deployment promotion.

For the short operational path, read:

  • WORKFLOW.md

Local Development

bun install
bun run dev

Open http://localhost:3000.

Product Rails

Use the rail scripts when a product can start from brand info, a schema contract, OpenAPI, and agent skills:

bun run product:init -- --slug dataroom --name "Due Diligence Data Room Analyst"
bun run product:generate -- --product-dir product/dataroom --root .factory/generated/dataroom --force
bun run product:check -- --product-dir product/dataroom --root .factory/generated/dataroom

Generated dry-run output under .factory/generated/ is ignored. In a real product fork, point --root at the fork root with --apply only after reviewing the contract.

Then wire live infrastructure and deploy:

bun run product:provision -- --product-dir product/dataroom --root <fork-root>
bun run product:deploy -- --product-dir product/dataroom --root <fork-root> --prod
bun run product:smoke -- --product-dir product/dataroom --root <fork-root> --url https://dataroom.unionstreet.ai
bun run product:ship-report -- --product-dir product/dataroom --root <fork-root>

Quality Gates

Run these before handoff:

bun run db:check
bun run env:check
bun run test
bun run lint
bun run build

Database Workflow

  • Decide schema strategy before editing lib/schema.ts: strict, hybrid, or flexible.
  • Keep platform control-plane data strict; put customer/agent customization behind explicit flexible schema definitions instead of per-customer migrations.
  • Generate migrations: bunx drizzle-kit generate
  • Validate migration state: bun run db:check
  • bun run db:push is intentionally banned in this repo.
  • For hosted environments, commit the migration and let bun run deploy apply it during the Vercel build.

Testing Docs

  • Test workflow and commands: docs/testing.md
  • Architecture and composition guide: docs/architecture.md
  • Release and promotion workflow: docs/release-flow.md
  • Short fork/build/deploy workflow: WORKFLOW.md
  • Test-specific agent guidance: tests/AGENTS.md
  • Repo-wide agent guidance: AGENTS.md
  • Canonical fork/build/deploy skill: .claude/skills/fork-build-deploy/SKILL.md