English | 한국어
LAO is a macOS-native AI design workflow application built with SwiftUI. It transforms ideas into AI-execution-friendly design documents through CLI-based AI agents.
| IdeaBoard | Approach Selection |
|---|---|
![]() |
![]() |
| AI expert panels explore an idea | Compare multiple approaches side-by-side |
| Planning — Work Graph | Planning — Details & Decisions |
|---|---|
![]() |
![]() |
| Visualize the design structure | Drill into specs and resolve questions |
- AI-powered design structuring: idea exploration, approach selection, deliverable elaboration
- Multi-phase execution: Input → Analyzing → Approach Selection → Planning → Completed
- Human-in-the-loop decisions at key checkpoints
- Background execution with notification system
- Design session persistence and resume capability
- Idea exploration with AI expert panels
- Direction synthesis and Work Graph extraction
- Seamless transition from idea to design workflow
- Multi-project workspace with launcher
- Agent configuration (Director, Fallback, Step tiers)
- Provider support: Claude, Codex, Gemini
- Skill management per project
- On workflow completion, exports a fixed set of design artifacts (
design.json,DESIGN_SPEC.md,BRD.md,PLAN.md,TEST.md, …) to{project_root}/.lao/{ideaId}/{requestId}/ - Auto-writes
.mcp.jsonto the project root, registering the bundledLAOMCPServerso MCP-aware AI tools auto-discover the design - One-click "Open in Claude Code / Codex" launches the chosen CLI in Terminal with an initial prompt that points at
DESIGN_SPEC.md - See docs/handoff.md for the full file list, MCP resource/tool surface, and prerequisites
LAO/
├── project.yml # XcodeGen spec
├── Package.swift # SPM package definition
├── LAOApp/ # SwiftUI application
│ ├── App/
│ │ ├── LAOApp.swift # @main entry point (multi-window Scene API)
│ │ ├── AppContainer.swift # DI container
│ │ ├── LAOAppDelegate.swift # App delegate
│ │ ├── DesignDocumentWindowCoordinator.swift # Design doc window lifecycle
│ │ ├── ProjectWindowRoute.swift # Window routing
│ │ ├── LAOWindowLayoutMode.swift # Window sizing
│ │ └── DemoSeedMode.swift # Demo/seed data
│ ├── Features/
│ │ ├── Design/ # Design workflow (main feature)
│ │ │ ├── DesignModels.swift # Data models, enums
│ │ │ ├── DesignPromptBuilder.swift # LLM prompt templates
│ │ │ ├── DesignWorkflowViewModel.swift # State management, execution engine
│ │ │ ├── DesignWorkflowView.swift # Main UI (phase-based screens)
│ │ │ ├── ActiveWorkflowCoordinator.swift # Background lifecycle, project queue
│ │ │ └── ... # Overlays, converters, validators
│ │ ├── IdeaBoard/ # Idea management hub
│ │ │ ├── IdeaBoardView.swift
│ │ │ ├── IdeaDetailView.swift
│ │ │ ├── IdeaPromptBuilder.swift
│ │ │ └── IdeaBoardModels.swift
│ │ ├── Launcher/ # Project launcher & workspace
│ │ ├── ProjectDashboard/ # Project settings (General, Agents, Skills)
│ │ └── SharedUI/ # Theme, components, button styles
│ └── ViewModels/ # Shared ViewModels
├── Packages/
│ ├── LAODomain/ # Domain models, enums, protocols
│ ├── LAOServices/ # Service protocol definitions
│ ├── LAOPersistence/ # SQLite CRUD, schema bootstrap
│ ├── LAORuntime/ # CLI agent execution, git, model catalog
│ ├── LAOProviders/ # Provider registry and support
│ └── LAOMCPServer/ # MCP server executable
- Multi-window architecture: Scene API-based windows (Launcher, ProjectWorkspace, Settings, DesignDocument)
- ActiveWorkflowCoordinator: Singleton managing background design execution, project-level queuing, and ViewModel lifecycle
- DesignPromptBuilder: Centralized prompt construction for all LLM interactions
- AppContainer: Dependency injection container holding all services
- macOS 15.0+ (Sequoia)
- Xcode 16.0+
- XcodeGen (
brew install xcodegen)
- Generate the Xcode project:
xcodegen generate
- Open
LAO.xcodeprojin Xcode - Select the
LAOscheme and run
xcodebuild -project LAO.xcodeproj -scheme LAO -destination 'platform=macOS' buildConfigure at least one CLI agent provider in Settings → Agents:
- Claude:
claudeCLI must be available in PATH - Codex:
codexCLI must be available in PATH - Gemini:
geminiCLI must be available in PATH
- SQLite database at
~/Library/Application Support/LAO/ - Design documents saved per-request at
{project_root}/.lao/{ideaId}/{requestId}/
- Why LAO — the problem LAO is designed to solve
- Operating Principles — workflow phases, roles, and deliverable structure
- Design Principles — quality standards for design output
- Handoff Mechanism — how completed designs are delivered to Claude Code / Codex (export artifacts,
.mcp.json, MCP server surface)
Bug reports and feature requests are welcome via GitHub Issues. See CONTRIBUTING.md for details. Pull requests are not currently accepted.
For security vulnerabilities, please follow the process described in SECURITY.md — do not open a public issue.
This project is licensed under the MIT License - see the LICENSE file for details.



