✓ Verified 💻 Development ✓ Enhanced Data

Web Architecture

Multi-agent orchestration for complex TypeScript/Next.js/Convex projects.

Rating
4.5 (258 reviews)
Downloads
3,160 downloads
Version
1.0.0

Overview

Multi-agent orchestration for complex TypeScript/Next.js/Convex projects.

Complete Documentation

View Source →

Web Architecture

Multi-agent development workflow for TypeScript/Next.js/Convex projects.

Born from: 29 agents, 50K lines, 212 errors, 1 hard lesson


⚠️ SUB-AGENT POLICY (READ FIRST)

No Timeouts

Sub-agents MUST run without timeout limits. A 10-minute timeout that cuts off an agent mid-implementation leaves broken, partial code. Let agents finish.

Completion Means Working, Not Compiling

"Build passes" is necessary but NOT sufficient.

Before marking ANY phase complete, verify:

  • Functions actually work — Call them, verify data flows
  • UI actually renders data — Not just loading spinners forever
  • User flows complete end-to-end — Click through, verify state changes persist
  • Error states are handled — Not just happy path

The Lesson

An agent produced 15K lines of "working" code that:
  • ✅ Compiled with zero TypeScript errors
  • ✅ Passed bun run build
  • ❌ Had ZERO actual functionality
  • ❌ All data was mocked or hardcoded
  • ❌ Every button was a no-op
Self-grade: 5/10 — A prototype, not a product.


The Core Lesson

Single agent with full context > Many agents with partial context

29 parallel agents wrote 50K lines of code that didn't compile. Why?

  • No schema coordination → duplicate table definitions
  • No type contracts → frontend expected user.role, backend returned profile.plan
  • No initialization → npx convex dev never ran, no generated types
  • No integration checkpoints → errors discovered only at the end
The fix: One agent with full context rewrote the entire Convex backend in 11 minutes.


When to Use Multi-Agent

Good for parallel work:

  • Marketing pages (after design system exists)
  • Documentation files (independent)
  • Isolated features with clear contracts
Bad for parallel work:
  • Schema design (needs single owner)
  • Core type definitions (must be shared)
  • Interconnected backend functions
  • Component library (needs consistency)

The Workflow

Phase 0: Bootstrap (SEQUENTIAL — One Agent)

Must complete before spawning ANY other agents.

  • Initialize project structure
  • Initialize Convex: npx convex dev --once
  • Create complete schema.ts (ALL tables)
  • Run npx convex dev to generate types
  • Create CONTRACTS.md (all data shapes)
  • Create shared types in lib/types.ts
  • Verify: bun run build passes
Deliverables:
  • [ ] convex/schema.ts — Complete, no TODOs
  • [ ] convex/_generated/ — Types generated
  • [ ] CONTRACTS.md — API shapes documented
  • [ ] lib/types.ts — Shared frontend types
  • [ ] bun run build — Passes with 0 errors

Phase 1: Foundation Documents (CAN BE PARALLEL)

Only spawn AFTER Phase 0 completes.

AgentOutputDependencies
Tech RequirementsTECH-REQ.mdNone
ComplianceCOMPLIANCE.mdNone
Design PrinciplesDESIGN.mdNone
Coding StandardsSTANDARDS.mdNone
Rule: These agents READ the schema. They do NOT modify it.


Phase 2: Backend Implementation (SEQUENTIAL or CAREFUL PARALLEL)

Option A: Single Backend Agent (Recommended)

  • One agent implements all Convex functions
  • Consistent patterns, no conflicts
Option B: Parallel with File Locks
  • Each agent owns specific files
  • NO shared file writes
  • Must reference CONTRACTS.md
Functional Requirements:
  • Test CRUD operations — Create, read, update, delete
  • Verify queries return data — Not empty arrays
  • Check mutations persist — Data survives refresh
  • Test auth guards — Protected functions reject unauthorized
  • Verify indexes work — Queries return correct filtered data

Phase 3: Component Library (SEQUENTIAL)

Single agent builds the component library.

Why? Components reference each other. Parallel work creates duplicate components with different APIs.

Functional Requirements:

  • Interactive states work — Buttons trigger onClick
  • Form components submit — Not just styled divs
  • Loading/error states exist
  • Accessibility basics — Labels, ARIA, keyboard nav
  • Consistent API — All components follow same patterns

Phase 4: Features & Pages (CAN BE PARALLEL)

Now safe to parallelize because schema is locked, types exist, components exist.

AgentScopeCan Modify
Admin Suite/app/(admin)/Own files only
Support Portal/app/(support)/Own files only
Marketing Pages/app/(marketing)/Own files only
User Flows/app/(app)/Own files only
Rules:
  • Read schema, types, contracts — don't modify
  • Use existing components — don't recreate
  • Write to assigned directories only
Functional Requirements:
  • [ ] Page loads without console errors
  • [ ] Data appears (not mock/placeholder)
  • [ ] Forms submit and persist data
  • [ ] Can complete full user flow (create → view → edit → delete)
  • [ ] Refresh preserves state
Red flags (NOT complete):
  • // TODO comments in business logic
  • Hardcoded arrays instead of useQuery
  • onClick handlers that console.log instead of mutate
  • "Coming soon" placeholders in core features

Phase 5: Integration & QA (SEQUENTIAL)

  • bun run build (must pass)
  • npx convex dev --once (must pass)
  • Generate sitemap from routes
  • Route crawl & 404 check
  • Browser smoke test (all routes return 200)
  • End-to-end flow verification
E2E Verification Checklist:

Auth Flow:

  • [ ] Sign up creates user in database
  • [ ] Sign in authenticates and redirects
  • [ ] Protected routes redirect to sign-in
Core CRUD Flow:
  • [ ] Create: Form submits → record appears
  • [ ] Read: List shows real data
  • [ ] Update: Edit form saves → changes persist
  • [ ] Delete: Remove action → record gone

Directory Structure

text
project/
├── convex/
│   ├── schema.ts            # 🔒 Phase 0 only
│   ├── _generated/          # 🔒 Auto-generated
│   └── [domain].ts
├── lib/
│   ├── types.ts             # 🔒 Phase 0 only
│   └── utils.ts
├── components/
│   ├── ui/                  # Component library agent
│   └── [domain]/            # Feature agents
├── app/
│   ├── (admin)/             # Admin agent
│   ├── (app)/               # App agent
│   └── (marketing)/         # Marketing agents
└── CONTRACTS.md             # 🔒 Phase 0 only

🔒 = Locked after Phase 0. Agents read, don't modify.


Agent Spawn Order

text
1. Bootstrap Agent (MUST COMPLETE FIRST)
   └── schema.ts, types, contracts
   
2. Doc Agents (parallel)
   ├── TECH-REQ.md
   ├── COMPLIANCE.md
   └── DESIGN.md
   
3. Backend Agent (single)
   └── All convex/*.ts functions
   
4. Component Agent (single)
   └── All components/ui/*
   
5. Feature Agents (parallel, isolated directories)
   ├── Admin Suite
   ├── Support Portal
   ├── Marketing Pages
   └── User Flows
   
6. Integration Agent (single)
   └── Final build, fixes, QA


Anti-Patterns

Spawn all agents at once — No coordination, duplicate work

Let agents invent types — Use CONTRACTS.md, not imagination

Skip Phase 0 — "We'll figure out the schema later" = disaster

Parallel schema writes — One owner only

Frontend before backend types — Generates type mismatches

No build checkpoints — Errors compound


Related Files

Installation

Terminal bash

openclaw install web-architecture
    
Copied!

💻Code Examples

└── CONTRACTS.md # 🔒 Phase 0 only

-contractsmd---phase-0-only.txt
🔒 = Locked after Phase 0. Agents read, don't modify.

---

## Agent Spawn Order
example.txt
project/
├── convex/
│   ├── schema.ts            # 🔒 Phase 0 only
│   ├── _generated/          # 🔒 Auto-generated
│   └── [domain].ts
├── lib/
│   ├── types.ts             # 🔒 Phase 0 only
│   └── utils.ts
├── components/
│   ├── ui/                  # Component library agent
│   └── [domain]/            # Feature agents
├── app/
│   ├── (admin)/             # Admin agent
│   ├── (app)/               # App agent
│   └── (marketing)/         # Marketing agents
└── CONTRACTS.md             # 🔒 Phase 0 only
example.txt
1. Bootstrap Agent (MUST COMPLETE FIRST)
   └── schema.ts, types, contracts
   
2. Doc Agents (parallel)
   ├── TECH-REQ.md
   ├── COMPLIANCE.md
   └── DESIGN.md
   
3. Backend Agent (single)
   └── All convex/*.ts functions
   
4. Component Agent (single)
   └── All components/ui/*
   
5. Feature Agents (parallel, isolated directories)
   ├── Admin Suite
   ├── Support Portal
   ├── Marketing Pages
   └── User Flows
   
6. Integration Agent (single)
   └── Final build, fixes, QA

Tags

#web_and-frontend-development #script #web

Quick Info

Category Development
Model Claude 3.5
Complexity Advanced
Author michaelmonetized
Last Updated 3/10/2026
🚀
Optimized for
Claude 3.5
🧠

Ready to Install?

Get started with this skill in seconds

openclaw install web-architecture