From 196038fa26dbc11709acbce7f3d877d5e5ce1885 Mon Sep 17 00:00:00 2001 From: Auto Date: Wed, 4 Feb 2026 15:36:55 +0200 Subject: [PATCH] refactor: extract docs to standalone site at autoforge.cc - Remove embedded documentation system (18 files) from main UI: - Delete ui/src/components/docs/ (DocsPage, DocsContent, DocsSidebar, DocsSearch, docsData, and all 13 section components) - Delete ui/src/hooks/useHashRoute.ts (only used for docs routing) - Simplify ui/src/main.tsx: remove Router component, render App directly inside QueryClientProvider (no more hash-based routing) - Update docs button in App.tsx header to open https://autoforge.cc in a new tab instead of navigating to #/docs hash route - Add logo to header - Add temp-docs/ to .gitignore - Update CLAUDE.md with current architecture documentation The documentation has been extracted into a separate repository and deployed as a standalone Vite + React site at https://autoforge.cc. This reduces the main UI bundle and decouples docs from app releases. Co-Authored-By: Claude Opus 4.5 --- .gitignore | 1 + CLAUDE.md | 36 ++- ui/index.html | 2 +- ui/public/logo.png | Bin 0 -> 238920 bytes ui/src/App.tsx | 11 +- ui/src/components/docs/DocsContent.tsx | 130 -------- ui/src/components/docs/DocsPage.tsx | 215 -------------- ui/src/components/docs/DocsSearch.tsx | 78 ----- ui/src/components/docs/DocsSidebar.tsx | 189 ------------ ui/src/components/docs/docsData.ts | 224 -------------- .../components/docs/sections/AIAssistant.tsx | 75 ----- .../docs/sections/AdvancedConfig.tsx | 220 -------------- .../components/docs/sections/AgentSystem.tsx | 280 ------------------ .../components/docs/sections/AppSpecSetup.tsx | 130 -------- .../docs/sections/AppearanceThemes.tsx | 185 ------------ .../docs/sections/DeveloperTools.tsx | 104 ------- ui/src/components/docs/sections/FAQ.tsx | 157 ---------- .../docs/sections/FeaturesKanban.tsx | 182 ------------ .../docs/sections/GettingStarted.tsx | 271 ----------------- .../docs/sections/ProjectStructure.tsx | 162 ---------- .../components/docs/sections/Scheduling.tsx | 102 ------- ui/src/components/docs/sections/Security.tsx | 218 -------------- .../docs/sections/SettingsConfig.tsx | 188 ------------ ui/src/hooks/useHashRoute.ts | 36 --- ui/src/main.tsx | 11 +- 25 files changed, 41 insertions(+), 3166 deletions(-) create mode 100644 ui/public/logo.png delete mode 100644 ui/src/components/docs/DocsContent.tsx delete mode 100644 ui/src/components/docs/DocsPage.tsx delete mode 100644 ui/src/components/docs/DocsSearch.tsx delete mode 100644 ui/src/components/docs/DocsSidebar.tsx delete mode 100644 ui/src/components/docs/docsData.ts delete mode 100644 ui/src/components/docs/sections/AIAssistant.tsx delete mode 100644 ui/src/components/docs/sections/AdvancedConfig.tsx delete mode 100644 ui/src/components/docs/sections/AgentSystem.tsx delete mode 100644 ui/src/components/docs/sections/AppSpecSetup.tsx delete mode 100644 ui/src/components/docs/sections/AppearanceThemes.tsx delete mode 100644 ui/src/components/docs/sections/DeveloperTools.tsx delete mode 100644 ui/src/components/docs/sections/FAQ.tsx delete mode 100644 ui/src/components/docs/sections/FeaturesKanban.tsx delete mode 100644 ui/src/components/docs/sections/GettingStarted.tsx delete mode 100644 ui/src/components/docs/sections/ProjectStructure.tsx delete mode 100644 ui/src/components/docs/sections/Scheduling.tsx delete mode 100644 ui/src/components/docs/sections/Security.tsx delete mode 100644 ui/src/components/docs/sections/SettingsConfig.tsx delete mode 100644 ui/src/hooks/useHashRoute.ts diff --git a/.gitignore b/.gitignore index ef858e2..6a01793 100644 --- a/.gitignore +++ b/.gitignore @@ -2,6 +2,7 @@ generations/ automaker/ temp/ +temp-docs/ nul issues/ diff --git a/CLAUDE.md b/CLAUDE.md index 540ef6d..0999860 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -17,18 +17,28 @@ This is an autonomous coding agent system with a React-based UI. It uses the Cla ## Commands -### Quick Start (Recommended) +### npm Global Install (Recommended) ```bash -# Windows - launches CLI menu -start.bat +npm install -g autoforge-ai +autoforge # Start server (first run sets up Python venv) +autoforge config # Edit ~/.autoforge/.env in $EDITOR +autoforge config --show # Print active configuration +autoforge --port 9999 # Custom port +autoforge --no-browser # Don't auto-open browser +autoforge --repair # Delete and recreate ~/.autoforge/venv/ +``` -# macOS/Linux -./start.sh +### From Source (Development) +```bash # Launch Web UI (serves pre-built React app) start_ui.bat # Windows ./start_ui.sh # macOS/Linux + +# CLI menu +start.bat # Windows +./start.sh # macOS/Linux ``` ### Python Backend (Manual) @@ -136,6 +146,17 @@ Configuration in `pyproject.toml`: ## Architecture +### npm CLI (bin/, lib/) + +The `autoforge` command is a Node.js wrapper that manages the Python environment and server lifecycle: +- `bin/autoforge.js` - Entry point (shebang script) +- `lib/cli.js` - Main CLI logic: Python 3.11+ detection (cross-platform), venv management at `~/.autoforge/venv/` with composite marker (requirements hash + Python version), `.env` config loading from `~/.autoforge/.env`, uvicorn server startup with PID file, and signal handling +- `package.json` - npm package config (`autoforge-ai` on npm), `files` whitelist with `__pycache__` exclusions, `prepublishOnly` builds the UI +- `requirements-prod.txt` - Runtime-only Python deps (excludes ruff, mypy, pytest) +- `.npmignore` - Excludes dev files, tests, UI source from the published tarball + +Publishing: `npm publish` (triggers `prepublishOnly` which builds UI, then publishes ~600KB tarball with 84 files) + ### Core Python Modules - `start.py` - CLI launcher with project creation/selection menu @@ -245,6 +266,11 @@ Key components: - `ScheduleModal.tsx` - Schedule management UI - `SettingsModal.tsx` - Global settings panel +In-app documentation (`/#/docs` route): +- `src/components/docs/sections/` - Content for each doc section (GettingStarted.tsx, AgentSystem.tsx, etc.) +- `src/components/docs/docsData.ts` - Sidebar structure, subsection IDs, search keywords +- `src/components/docs/DocsPage.tsx` - Page layout; `DocsContent.tsx` - section renderer with scroll tracking + Keyboard shortcuts (press `?` for help): - `D` - Toggle debug panel - `G` - Toggle Kanban/Graph view diff --git a/ui/index.html b/ui/index.html index 22ab6dd..8a34e5b 100644 --- a/ui/index.html +++ b/ui/index.html @@ -2,7 +2,7 @@ - + AutoForge diff --git a/ui/public/logo.png b/ui/public/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..d040097940c0be5e51e04a233c909efe04bd6d55 GIT binary patch literal 238920 zcmXtfWmHt{_ck*Ojii)xmxP3fG)SkQbT<#u-2;fAbVx`msnT6TONW4f)X;;}&^5rk zhu^#YAK(LPF>vm)_qDIs_eUKqOu@>-@t9mmW9i>N8Ug>^W#oOvs5k>1SIUhdV zm^8WJr+j>4<_-V7J*2V-{%t#)#(lt{kvVyKJiv%VUv{GJsGiGtLt*>ZEbBW-AS(IFk6)Bwg87ln56|6 z)eH%ig%40cW$yB|!4R>A&u1rFBasAD{O@>}G1G^cOHo?xs%GBmarzgSa%D# zISXjk%zmz2?>u*y#c$Rs8Fti-(<%6FzM4u~=I)H@R{}li4EVi0glp&B1p@cGcE`nn zGjZtc@c=qUI^@Qp^Ljg5Vy@CGXe6D_ z^r|WsP5)aff3vHSp4;{E8xJq<1do6~r{#2srh!g!bLdKYKqu;KS{oUR$o0Et-&pdR zkkVcWK;%x`Uo>@wY@dt>gl)$OkNY1sZzKe{P8P^bc<;>~1e~Bu7aLvjC6Br=8NZUb z&tXxSx+D0SmOT40i6sS9wp$#3e|?@U=0<7Pzj^hgXfQPlMRvq~B&@QEz>hx9U{4 z06)?ML&}*{WqE@(e#K)!4zw=eVd%o9mB77!4tW9FpB18sI*tcf6WcQiF3;AY8SnY! z0$+k|4$!DhbQ|(~4mgEWZRr;8``hbM(l^Rvj)~vcLqsa}nCnYW!Yc~S%l(3J={bJn zU{BEACVsJQ`M$p-gO#N1V&f5sd{8n@@^seSF{^EVjG_4K^hC}K$8aB1a;du`LWb)3%zXiFaVHA?^o zG+|&7a-MDTD=zEzH|0cue~SL44ikBP^gc7Mn@l~2*bVMG(U)i?81VA$%2w;`QA%mK zhF7E?un{|O7$g|)Ru=CHdXI^P5L>)tV}dG>k&Loa`vh;qi`}6AX@|YsyFHyin{gr`FK*pl4DSo}^a(>C zbi}h?h@?o4V1WRyAW1U$MK_H+#GmAdxiD!HPnG^6IxwZ4M2@EI>rLQPXP-FCK>H@; z-tHYUcZLv6>@fEGqMY--^@|vfRD9X@R@m1QpZcwh-s!0{-FB;|KW&LIkIH5UIr}Y9 z)p>t|Qc9q^7FkABP5nWu0aa=tecVT$-*VWx=el*=b6jUXwyUSBI~Cy~Mf2>95KewD z-WAzZDBhsb$(`sE*Yb%hf$)5wHb`sUNX2IJ?_79GF>39d2!St=b#--&-?px2@i=pi zn3qQqrLQ+rGsd%o5ouq(eA&SJ5(zqE*YRT_d2aPG(w1~nQa$S~(A9tT*cGIh9(m2+ zPY^@kUn`B9u-Nr>N>^LfKxMZ&jJTQIJl}vZ)=rVW?NDck(S|{M zlb~qbeI`PgRyQ>$2D3vO=)?67gQ^vD%>aW$g2N(uuEu5nfwz?EpMG~kVPJYpQZXVk zmMd}Dy0EZ7jvGObXK0jWn6zqFUBO{l9w=)AbC9bW#dHQ!8y@zvCvqXe&l3W`Is0>U zUBxgc2kLx5B}{(mVv#Kb?+-%VROKdB(y58{&n0&u@cbmE9Xz@ggX%}$U>duJDo;wVeb!))ZBC)m!t}5?x;1*HV4FWL2TrJ~Hjpc5?cciO35�KAV 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℘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

G}))- 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

{4B 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

ofrBKz%{CLB0% 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 VhHaBu>+l!EIb(}61%?ix{{wCi-AMod literal 0 HcmV?d00001 diff --git a/ui/src/App.tsx b/ui/src/App.tsx index fc809c5..8a185a2 100644 --- a/ui/src/App.tsx +++ b/ui/src/App.tsx @@ -263,9 +263,12 @@ function App() {

{/* Logo and Title */} -

- AutoForge -

+
+ AutoForge +

+ AutoForge +

+
{/* Controls */}
@@ -337,7 +340,7 @@ function App() { {/* Docs link */} - - - AutoForge - - - - Documentation - -
- - {/* Right side: theme controls + back button */} -
- - - - - -
-
-
- - - {/* Body: sidebar + content */} -
- {/* ---------------------------------------------------------------- - Desktop sidebar -- visible at lg and above - Fixed width, sticky below the header, independently scrollable - ---------------------------------------------------------------- */} - - - {/* ---------------------------------------------------------------- - Mobile sidebar overlay -- visible below lg breakpoint - ---------------------------------------------------------------- */} - {mobileSidebarOpen && ( - <> - {/* Backdrop */} -
setMobileSidebarOpen(false)} - aria-hidden="true" - /> - - {/* Sidebar panel */} - - - )} - - {/* ---------------------------------------------------------------- - Content area -- fills remaining space, scrollable - ---------------------------------------------------------------- */} -
-
- -
-
-
-
- ) -} diff --git a/ui/src/components/docs/DocsSearch.tsx b/ui/src/components/docs/DocsSearch.tsx deleted file mode 100644 index 896f3cd..0000000 --- a/ui/src/components/docs/DocsSearch.tsx +++ /dev/null @@ -1,78 +0,0 @@ -/** - * DocsSearch Component - * - * Search input for the documentation sidebar. - * Supports Ctrl/Cmd+K keyboard shortcut to focus, - * and shows a keyboard hint when the input is empty. - */ - -import { useRef, useEffect } from 'react' -import { Search, X } from 'lucide-react' - -interface DocsSearchProps { - value: string - onChange: (value: string) => void -} - -export function DocsSearch({ value, onChange }: DocsSearchProps) { - const inputRef = useRef(null) - - // Global keyboard shortcut: Ctrl/Cmd+K focuses the search input - useEffect(() => { - const handleKeyDown = (e: KeyboardEvent) => { - if ((e.ctrlKey || e.metaKey) && e.key === 'k') { - e.preventDefault() - inputRef.current?.focus() - } - } - - window.addEventListener('keydown', handleKeyDown) - return () => window.removeEventListener('keydown', handleKeyDown) - }, []) - - return ( -
- {/* Search icon */} - - - onChange(e.target.value)} - placeholder="Search docs..." - className="w-full pl-9 pr-16 py-2 text-sm bg-muted border border-border rounded-lg - text-foreground placeholder:text-muted-foreground - focus:outline-none focus:ring-2 focus:ring-ring/50 focus:border-ring - transition-colors" - /> - - {/* Right side: clear button when has value, otherwise Ctrl+K hint */} - {value ? ( - - ) : ( - - Ctrl+K - - )} -
- ) -} diff --git a/ui/src/components/docs/DocsSidebar.tsx b/ui/src/components/docs/DocsSidebar.tsx deleted file mode 100644 index 4be7576..0000000 --- a/ui/src/components/docs/DocsSidebar.tsx +++ /dev/null @@ -1,189 +0,0 @@ -/** - * DocsSidebar Component - * - * Left sidebar navigation for the documentation page. - * Lists all sections from docsData with expandable subsections. - * Supports search filtering with auto-expansion of matching sections. - */ - -import { useState, useMemo } from 'react' -import { ChevronRight } from 'lucide-react' -import { DOC_SECTIONS, type DocSection } from './docsData' - -interface DocsSidebarProps { - activeSectionId: string | null - onSectionClick: (id: string) => void - searchQuery: string - onMobileClose?: () => void -} - -export function DocsSidebar({ - activeSectionId, - onSectionClick, - searchQuery, - onMobileClose, -}: DocsSidebarProps) { - // Track which top-level sections are manually expanded by the user - const [expandedSections, setExpandedSections] = useState>(() => { - // Start with the first section expanded so the sidebar is not fully collapsed - const initial = new Set() - if (DOC_SECTIONS.length > 0) { - initial.add(DOC_SECTIONS[0].id) - } - return initial - }) - - const normalizedQuery = searchQuery.trim().toLowerCase() - - // Filter sections based on search query, matching against section title, - // subsection titles, and keywords - const filteredSections = useMemo(() => { - if (!normalizedQuery) { - return DOC_SECTIONS - } - - return DOC_SECTIONS.filter((section) => { - // Check section title - if (section.title.toLowerCase().includes(normalizedQuery)) return true - - // Check keywords - if (section.keywords.some((kw) => kw.toLowerCase().includes(normalizedQuery))) return true - - // Check subsection titles - if (section.subsections.some((sub) => sub.title.toLowerCase().includes(normalizedQuery))) { - return true - } - - return false - }) - }, [normalizedQuery]) - - // Determine which sections should appear expanded: - // - When searching: auto-expand all matching sections - // - Otherwise: use manual expanded state, plus expand whichever section contains the active item - const isSectionExpanded = (sectionId: string): boolean => { - if (normalizedQuery) return true - - if (expandedSections.has(sectionId)) return true - - // Also expand the section that contains the currently active subsection - if (activeSectionId) { - const section = DOC_SECTIONS.find((s) => s.id === sectionId) - if (section) { - if (section.id === activeSectionId) return true - if (section.subsections.some((sub) => sub.id === activeSectionId)) return true - } - } - - return false - } - - const toggleSection = (sectionId: string) => { - setExpandedSections((prev) => { - const next = new Set(prev) - if (next.has(sectionId)) { - next.delete(sectionId) - } else { - next.add(sectionId) - } - return next - }) - } - - /** - * Checks whether a given id (section or subsection) is the currently active item. - * Active items get a highlighted visual treatment. - */ - const isActive = (id: string): boolean => activeSectionId === id - - /** - * Checks whether a section contains the active subsection. - * Used to highlight parent sections in a muted way. - */ - const sectionContainsActive = (section: DocSection): boolean => { - if (!activeSectionId) return false - return section.subsections.some((sub) => sub.id === activeSectionId) - } - - const handleItemClick = (id: string) => { - onSectionClick(id) - // On mobile, close the sidebar after navigation - onMobileClose?.() - } - - return ( - - ) -} diff --git a/ui/src/components/docs/docsData.ts b/ui/src/components/docs/docsData.ts deleted file mode 100644 index 8db7b26..0000000 --- a/ui/src/components/docs/docsData.ts +++ /dev/null @@ -1,224 +0,0 @@ -import { - Rocket, - FileText, - FolderTree, - LayoutGrid, - Bot, - Settings, - Terminal, - MessageSquare, - Clock, - Palette, - Shield, - Wrench, - HelpCircle, - type LucideIcon, -} from 'lucide-react' - -export interface DocSubsection { - id: string - title: string -} - -export interface DocSection { - id: string - title: string - icon: LucideIcon - subsections: DocSubsection[] - keywords: string[] -} - -export const DOC_SECTIONS: DocSection[] = [ - { - id: 'getting-started', - title: 'Getting Started', - icon: Rocket, - subsections: [ - { id: 'what-is-autoforge', title: 'What is AutoForge?' }, - { id: 'installation', title: 'Installation' }, - { id: 'quick-start', title: 'Quick Start' }, - { id: 'cli-commands', title: 'CLI Commands' }, - { id: 'creating-a-project', title: 'Creating a New Project' }, - { id: 'existing-project', title: 'Adding to an Existing Project' }, - { id: 'system-requirements', title: 'System Requirements' }, - ], - keywords: ['install', 'setup', 'start', 'begin', 'new', 'requirements', 'prerequisites', 'npm', 'config', 'port', 'repair'], - }, - { - id: 'app-spec-setup', - title: 'App Spec & Project Setup', - icon: FileText, - subsections: [ - { id: 'what-is-app-spec', title: 'What is an App Spec?' }, - { id: 'creating-spec-with-claude', title: 'Creating a Spec with Claude' }, - { id: 'writing-spec-manually', title: 'Writing a Spec Manually' }, - { id: 'initializer-agent', title: 'The Initializer Agent' }, - { id: 'starting-after-spec', title: 'Starting After Spec Creation' }, - ], - keywords: ['spec', 'specification', 'xml', 'app_spec', 'initializer', 'prompt', 'template'], - }, - { - id: 'project-structure', - title: 'Target Project Structure', - icon: FolderTree, - subsections: [ - { id: 'autoforge-directory', title: '.autoforge/ Directory Layout' }, - { id: 'features-db', title: 'Features Database' }, - { id: 'prompts-directory', title: 'Prompts Directory' }, - { id: 'allowed-commands-yaml', title: 'Allowed Commands Config' }, - { id: 'claude-md', title: 'CLAUDE.md Convention' }, - { id: 'legacy-migration', title: 'Legacy Layout Migration' }, - { id: 'claude-inheritance', title: 'Claude Inheritance' }, - ], - keywords: ['folder', 'directory', 'structure', 'layout', 'files', 'database', 'sqlite', 'migration'], - }, - { - id: 'features-kanban', - title: 'Features & Kanban Board', - icon: LayoutGrid, - subsections: [ - { id: 'kanban-overview', title: 'Kanban Board Overview' }, - { id: 'feature-cards', title: 'Feature Cards' }, - { id: 'dependency-graph', title: 'Dependency Graph View' }, - { id: 'adding-features', title: 'Adding Features' }, - { id: 'editing-features', title: 'Editing & Deleting Features' }, - { id: 'feature-dependencies', title: 'Feature Dependencies' }, - { id: 'expanding-with-ai', title: 'Expanding Project with AI' }, - { id: 'feature-priority', title: 'Priority & Ordering' }, - ], - keywords: ['kanban', 'board', 'feature', 'card', 'dependency', 'graph', 'priority', 'pending', 'progress', 'done'], - }, - { - id: 'agent-system', - title: 'Agent System', - icon: Bot, - subsections: [ - { id: 'maestro-orchestrator', title: 'Maestro: The Orchestrator' }, - { id: 'coding-agents', title: 'Coding Agents' }, - { id: 'testing-agents', title: 'Testing Agents' }, - { id: 'agent-lifecycle', title: 'Agent Lifecycle' }, - { id: 'concurrency', title: 'Concurrency Control' }, - { id: 'mission-control', title: 'Agent Mission Control' }, - { id: 'agent-mascots', title: 'Agent Mascots & States' }, - { id: 'agent-logs', title: 'Viewing Agent Logs' }, - { id: 'process-limits', title: 'Process Limits' }, - ], - keywords: ['agent', 'maestro', 'orchestrator', 'coding', 'testing', 'parallel', 'concurrency', 'mascot', 'spark', 'fizz', 'octo', 'batch'], - }, - { - id: 'settings-config', - title: 'Settings & Configuration', - icon: Settings, - subsections: [ - { id: 'opening-settings', title: 'Opening Settings' }, - { id: 'yolo-mode', title: 'YOLO Mode' }, - { id: 'headless-browser', title: 'Headless Browser' }, - { id: 'model-selection', title: 'Model Selection' }, - { id: 'regression-agents', title: 'Regression Agents' }, - { id: 'features-per-agent', title: 'Features per Agent (Batch Size)' }, - { id: 'concurrency-setting', title: 'Concurrency' }, - { id: 'settings-persistence', title: 'How Settings are Persisted' }, - ], - keywords: ['settings', 'config', 'yolo', 'headless', 'model', 'opus', 'sonnet', 'haiku', 'batch', 'regression'], - }, - { - id: 'developer-tools', - title: 'Developer Tools', - icon: Terminal, - subsections: [ - { id: 'debug-panel', title: 'Debug Panel' }, - { id: 'agent-logs-tab', title: 'Agent Logs Tab' }, - { id: 'dev-server-logs', title: 'Dev Server Logs Tab' }, - { id: 'terminal', title: 'Terminal' }, - { id: 'dev-server-control', title: 'Dev Server Control' }, - { id: 'per-agent-logs', title: 'Per-Agent Logs' }, - ], - keywords: ['debug', 'terminal', 'logs', 'dev server', 'console', 'xterm', 'shell'], - }, - { - id: 'ai-assistant', - title: 'AI Assistant', - icon: MessageSquare, - subsections: [ - { id: 'what-is-assistant', title: 'What is the Assistant?' }, - { id: 'opening-assistant', title: 'Opening the Assistant' }, - { id: 'assistant-capabilities', title: 'What It Can Do' }, - { id: 'assistant-limitations', title: 'What It Cannot Do' }, - { id: 'conversation-history', title: 'Conversation History' }, - ], - keywords: ['assistant', 'ai', 'chat', 'help', 'question', 'conversation'], - }, - { - id: 'scheduling', - title: 'Scheduling', - icon: Clock, - subsections: [ - { id: 'what-scheduling-does', title: 'What Scheduling Does' }, - { id: 'creating-schedule', title: 'Creating a Schedule' }, - { id: 'schedule-settings', title: 'Schedule Settings' }, - { id: 'schedule-overrides', title: 'Schedule Overrides' }, - { id: 'crash-recovery', title: 'Crash Recovery' }, - ], - keywords: ['schedule', 'timer', 'automated', 'cron', 'run', 'recurring', 'utc'], - }, - { - id: 'appearance-themes', - title: 'Appearance & Themes', - icon: Palette, - subsections: [ - { id: 'themes-overview', title: 'Themes Overview' }, - { id: 'dark-light-mode', title: 'Dark & Light Mode' }, - { id: 'theme-selector', title: 'Theme Selector' }, - { id: 'keyboard-shortcuts', title: 'Keyboard Shortcuts' }, - ], - keywords: ['theme', 'dark', 'light', 'color', 'appearance', 'twitter', 'claude', 'neo', 'brutalism', 'retro', 'aurora', 'business', 'keyboard', 'shortcut'], - }, - { - id: 'security', - title: 'Security', - icon: Shield, - subsections: [ - { id: 'command-validation', title: 'Command Validation Overview' }, - { id: 'command-hierarchy', title: 'Command Hierarchy' }, - { id: 'hardcoded-blocklist', title: 'Hardcoded Blocklist' }, - { id: 'global-allowlist', title: 'Global Allowlist' }, - { id: 'project-allowlist', title: 'Per-Project Allowed Commands' }, - { id: 'org-config', title: 'Organization Configuration' }, - { id: 'extra-read-paths', title: 'Extra Read Paths' }, - { id: 'filesystem-sandboxing', title: 'Filesystem Sandboxing' }, - ], - keywords: ['security', 'sandbox', 'allowlist', 'blocklist', 'command', 'bash', 'permission', 'filesystem'], - }, - { - id: 'advanced-config', - title: 'Advanced Configuration', - icon: Wrench, - subsections: [ - { id: 'vertex-ai', title: 'Vertex AI Setup' }, - { id: 'ollama', title: 'Ollama Local Models' }, - { id: 'env-variables', title: 'Environment Variables' }, - { id: 'cli-arguments', title: 'CLI Arguments' }, - { id: 'webhooks', title: 'Webhook Support' }, - { id: 'project-registry', title: 'Project Registry' }, - ], - keywords: ['vertex', 'gcloud', 'ollama', 'local', 'env', 'environment', 'cli', 'webhook', 'n8n', 'registry', 'api'], - }, - { - id: 'faq', - title: 'FAQ & Troubleshooting', - icon: HelpCircle, - subsections: [ - { id: 'faq-new-project', title: 'Starting a New Project' }, - { id: 'faq-existing-project', title: 'Adding to Existing Project' }, - { id: 'faq-agent-crash', title: 'Agent Crashes' }, - { id: 'faq-custom-commands', title: 'Custom Bash Commands' }, - { id: 'faq-blocked-features', title: 'Blocked Features' }, - { id: 'faq-parallel', title: 'Running in Parallel' }, - { id: 'faq-local-model', title: 'Using Local Models' }, - { id: 'faq-reset', title: 'Resetting a Project' }, - { id: 'faq-agent-types', title: 'Coding vs Testing Agents' }, - { id: 'faq-real-time', title: 'Monitoring in Real Time' }, - ], - keywords: ['faq', 'troubleshoot', 'help', 'problem', 'issue', 'fix', 'error', 'stuck', 'reset', 'crash'], - }, -] diff --git a/ui/src/components/docs/sections/AIAssistant.tsx b/ui/src/components/docs/sections/AIAssistant.tsx deleted file mode 100644 index cceb297..0000000 --- a/ui/src/components/docs/sections/AIAssistant.tsx +++ /dev/null @@ -1,75 +0,0 @@ -/** - * AIAssistant Documentation Section - * - * Covers the project assistant: what it is, how to open it, - * its capabilities and limitations, and conversation history. - */ - -import { Badge } from '@/components/ui/badge' - -export function AIAssistant() { - return ( -
- {/* What is the Assistant? */} -

- What is the Assistant? -

-

- The AI Assistant is a read-only project helper that can answer questions about your project, search - code, view progress, and help you understand what’s happening — without making any changes. -

- - {/* Opening the Assistant */} -

- Opening the Assistant -

-
    -
  • - Press A to toggle the assistant panel -
  • -
  • Or click the floating action button (chat bubble) in the bottom-right corner
  • -
  • The panel slides in from the right side
  • -
- - {/* What It Can Do */} -

- What It Can Do -

-
    -
  • Read and search your project’s source code
  • -
  • Answer questions about code architecture and implementation
  • -
  • View feature progress and status
  • -
  • Create new features based on your description
  • -
  • Explain what agents have done or are currently doing
  • -
  • Help debug issues by analyzing code and logs
  • -
- - {/* What It Cannot Do */} -

- What It Cannot Do -

-
    -
  • Modify files (read-only access)
  • -
  • Run bash commands
  • -
  • Mark features as passing/failing
  • -
  • Start or stop agents
  • -
  • Access external APIs or the internet
  • -
-
- This is a deliberate security design — the assistant is a safe way to interact with your project - without risk of unintended changes. -
- - {/* Conversation History */} -

- Conversation History -

-
    -
  • Conversations are stored per-project in SQLite database
  • -
  • Multiple conversations supported — start new ones as needed
  • -
  • Switch between conversations using the conversation selector
  • -
  • History persists across browser sessions
  • -
-
- ) -} diff --git a/ui/src/components/docs/sections/AdvancedConfig.tsx b/ui/src/components/docs/sections/AdvancedConfig.tsx deleted file mode 100644 index 89d206a..0000000 --- a/ui/src/components/docs/sections/AdvancedConfig.tsx +++ /dev/null @@ -1,220 +0,0 @@ -/** - * AdvancedConfig Documentation Section - * - * Covers Vertex AI setup, Ollama local models, environment variables, - * CLI arguments, webhook support, and the project registry. - */ - -import { Badge } from '@/components/ui/badge' - -/** Environment variable descriptor for the reference table. */ -interface EnvVar { - name: string - description: string -} - -const ENV_VARS: EnvVar[] = [ - { name: 'CLAUDE_CODE_USE_VERTEX', description: 'Enable Vertex AI (1)' }, - { name: 'CLOUD_ML_REGION', description: 'GCP region' }, - { name: 'ANTHROPIC_VERTEX_PROJECT_ID', description: 'GCP project ID' }, - { name: 'ANTHROPIC_BASE_URL', description: 'Custom API base URL (for Ollama)' }, - { name: 'ANTHROPIC_AUTH_TOKEN', description: 'API auth token' }, - { name: 'API_TIMEOUT_MS', description: 'API timeout in milliseconds' }, - { name: 'EXTRA_READ_PATHS', description: 'Comma-separated extra read directories' }, - { name: 'ANTHROPIC_DEFAULT_OPUS_MODEL', description: 'Override Opus model name' }, - { name: 'ANTHROPIC_DEFAULT_SONNET_MODEL', description: 'Override Sonnet model name' }, - { name: 'ANTHROPIC_DEFAULT_HAIKU_MODEL', description: 'Override Haiku model name' }, -] - -/** CLI argument descriptor for the reference table. */ -interface CliArg { - name: string - description: string -} - -const CLI_ARGS: CliArg[] = [ - { name: '--project-dir', description: 'Project directory path or registered name' }, - { name: '--yolo', description: 'Enable YOLO mode' }, - { name: '--parallel', description: 'Enable parallel mode' }, - { name: '--max-concurrency N', description: 'Max concurrent agents (1-5)' }, - { name: '--batch-size N', description: 'Features per coding agent (1-3)' }, - { name: '--batch-features 1,2,3', description: 'Specific feature IDs to implement' }, - { name: '--testing-batch-size N', description: 'Features per testing batch (1-5)' }, - { name: '--testing-batch-features 1,2,3', description: 'Specific testing feature IDs' }, -] - -export function AdvancedConfig() { - return ( -
- {/* Vertex AI Setup */} -

- Vertex AI Setup -

-

- Run coding agents via Google Cloud Vertex AI: -

-
    -
  1. - Install and authenticate the gcloud CLI:{' '} - - gcloud auth application-default login - -
  2. -
  3. - Configure your{' '} - .env file: -
  4. -
-
-
{`CLAUDE_CODE_USE_VERTEX=1
-CLOUD_ML_REGION=us-east5
-ANTHROPIC_VERTEX_PROJECT_ID=your-gcp-project-id
-ANTHROPIC_DEFAULT_OPUS_MODEL=claude-opus-4-5@20251101
-ANTHROPIC_DEFAULT_SONNET_MODEL=claude-sonnet-4-5@20250929
-ANTHROPIC_DEFAULT_HAIKU_MODEL=claude-3-5-haiku@20241022`}
-
-
- Use @{' '} - instead of -{' '} - in model names for Vertex AI. -
- - {/* Ollama Local Models */} -

- Ollama Local Models -

-

- Run coding agents using local models via Ollama v0.14.0+: -

-
    -
  1. - Install Ollama from{' '} - - ollama.com - -
  2. -
  3. - Start Ollama:{' '} - ollama serve -
  4. -
  5. - Pull a coding model:{' '} - ollama pull qwen3-coder -
  6. -
  7. - Configure your{' '} - .env: -
  8. -
-
-
{`ANTHROPIC_BASE_URL=http://localhost:11434
-ANTHROPIC_AUTH_TOKEN=ollama
-API_TIMEOUT_MS=3000000
-ANTHROPIC_DEFAULT_SONNET_MODEL=qwen3-coder`}
-
-

- Recommended models:{' '} - qwen3-coder{' '} - deepseek-coder-v2{' '} - codellama -

-

- Limitations: Smaller context windows than Claude - (model-dependent), extended context beta disabled (not supported by Ollama), and performance - depends on local hardware (GPU recommended). -

- - {/* Environment Variables */} -

- Environment Variables -

-

- Key environment variables for configuring AutoForge: -

- - - - - - - - - {ENV_VARS.map((v) => ( - - - - - ))} - -
- Variable - - Description -
- {v.name} - {v.description}
- - {/* CLI Arguments */} -

- CLI Arguments -

-

- Command-line arguments for{' '} - - autonomous_agent_demo.py - - : -

- - - - - - - - - {CLI_ARGS.map((arg) => ( - - - - - ))} - -
- Argument - - Description -
- {arg.name} - {arg.description}
- - {/* Webhook Support */} -

- Webhook Support -

-
    -
  • AutoForge can send webhook notifications on feature completion
  • -
  • Compatible with N8N and similar automation tools
  • -
  • Configure the webhook URL in project settings
  • -
  • - Payload includes: feature name, status, and project info -
  • -
- - {/* Project Registry */} -

- Project Registry -

-
    -
  • - All projects are registered in{' '} - ~/.autoforge/registry.db{' '} - (SQLite) -
  • -
  • Maps project names to filesystem paths
  • -
  • Uses POSIX path format (forward slashes) for cross-platform compatibility
  • -
  • SQLAlchemy ORM with SQLite's built-in transaction handling
  • -
-
- ) -} diff --git a/ui/src/components/docs/sections/AgentSystem.tsx b/ui/src/components/docs/sections/AgentSystem.tsx deleted file mode 100644 index 0edc2d3..0000000 --- a/ui/src/components/docs/sections/AgentSystem.tsx +++ /dev/null @@ -1,280 +0,0 @@ -/** - * AgentSystem Documentation Section - * - * Covers the orchestrator (Maestro), coding agents, testing agents, - * agent lifecycle, concurrency control, mission control dashboard, - * agent mascots and states, viewing logs, and process limits. - */ - -import { Badge } from '@/components/ui/badge' - -export function AgentSystem() { - return ( -
- {/* Maestro: The Orchestrator */} -

- Maestro: The Orchestrator -

-

- Maestro is the central orchestrator that coordinates all agents. It acts as the conductor, - ensuring features are implemented efficiently and in the correct order. -

-
    -
  • Manages the full lifecycle of coding and testing agents
  • -
  • Schedules which features to work on based on dependencies and priority
  • -
  • Monitors agent health and restarts crashed agents automatically
  • -
  • Reports status to the UI in real time via WebSocket
  • -
- - {/* Coding Agents */} -

- Coding Agents -

-
    -
  • Implement features one at a time, or in batches of 1–3
  • -
  • - Claim features atomically via the{' '} - - feature_claim_and_get - {' '} - MCP tool — no two agents work on the same feature -
  • -
  • Run in isolated environments with their own browser context
  • -
  • - Use the Claude Code SDK with project-specific tools and{' '} - CLAUDE.md -
  • -
- - {/* Testing Agents */} -

- Testing Agents -

-
    -
  • Run regression tests after features are implemented
  • -
  • Verify that new code does not break existing features
  • -
  • Configurable ratio: 0–3 testing agents per coding agent
  • -
  • Can batch-test multiple features per session (1–5)
  • -
- - {/* Agent Lifecycle */} -

- Agent Lifecycle -

-

- Agents are controlled through the UI or CLI. The lifecycle states are: -

- - - - - - - - - - - - - - - - - - - - - - - - - -
- Action - - Behavior -
Start - Click the Play button or run the CLI command -
Stop - Gracefully terminates all running agents -
Pause - Temporarily halts work (agents finish their current task first) -
Resume - Continues from where the agents were paused -
-

- Agents auto-continue between sessions with a 3-second delay, so they keep working until - all features are complete or they are explicitly stopped. -

- - {/* Concurrency Control */} -

- Concurrency Control -

-
    -
  • - A slider in the agent control bar sets the number of concurrent coding agents - (1–5) -
  • -
  • - More agents means faster progress, but also higher API usage -
  • -
  • Each agent runs as an independent subprocess
  • -
  • - Feature claiming is atomic — no two agents will ever work on the same feature - simultaneously -
  • -
- - {/* Agent Mission Control */} -

- Agent Mission Control -

-

- The Mission Control dashboard provides a real-time overview of all active agents: -

-
    -
  • Active agent cards with mascot icons and current status
  • -
  • The feature each agent is currently working on
  • -
  • Agent state indicators (thinking, working, testing, etc.)
  • -
  • Orchestrator status and a recent activity feed
  • -
- - {/* Agent Mascots & States */} -

- Agent Mascots & States -

-

- Each agent is assigned a unique mascot for easy identification:{' '} - Spark,{' '} - Fizz,{' '} - Octo,{' '} - Hoot,{' '} - Buzz, and more. Agent states include: -

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- State - - Animation - - Description -
- Thinking - BouncingAgent is planning its approach
- Working - ShakeActively writing code
- Testing - RotatingRunning tests
- Success - CelebrationFeature completed
- Error - Red shakeEncountered an issue
- Struggling - Concerned expressionMultiple consecutive failures
- - {/* Viewing Agent Logs */} -

- Viewing Agent Logs -

-
    -
  • Click any agent card in Mission Control to see its log output
  • -
  • Logs are color-coded by level (info, warning, error)
  • -
  • Output streams in real time via WebSocket
  • -
  • Each agent's logs are isolated and filterable
  • -
- - {/* Process Limits */} -

- Process Limits -

-

- The orchestrator enforces strict bounds on concurrent processes to prevent resource - exhaustion: -

- - - - - - - - - - - - - - - - - - - - - - - - - -
- Limit - - Value -
- - MAX_PARALLEL_AGENTS - - 5 (maximum concurrent coding agents)
- - MAX_TOTAL_AGENTS - - - 10 (hard limit on coding + testing combined) -
Testing agents - Capped at the same count as coding agents -
Total Python processes - Never exceeds 11 (1 orchestrator + 5 coding + 5 testing) -
-
- ) -} diff --git a/ui/src/components/docs/sections/AppSpecSetup.tsx b/ui/src/components/docs/sections/AppSpecSetup.tsx deleted file mode 100644 index 50f9726..0000000 --- a/ui/src/components/docs/sections/AppSpecSetup.tsx +++ /dev/null @@ -1,130 +0,0 @@ -/** - * AppSpecSetup Documentation Section - * - * Explains what an app spec is, how to create one interactively - * or manually, the initializer agent, and starting after spec creation. - */ - -export function AppSpecSetup() { - return ( -
- {/* What is an App Spec? */} -

- What is an App Spec? -

-

- The app spec is an XML document that describes the application to be built. It lives at{' '} - - .autoforge/prompts/app_spec.txt - {' '} - and tells the initializer agent what features to create. The spec defines your app's name, - description, tech stack, and the features that should be implemented. -

-
-
{`
-  My App
-  A task management app
-  
-    User authentication with login/signup
-    Task CRUD with categories
-  
-`}
-
- - {/* Creating a Spec with Claude */} -

- Creating a Spec with Claude -

-
    -
  • - In the UI, select your project and click{' '} - Create Spec -
  • -
  • - An interactive chat with Claude helps you define your app — it asks about - your app's purpose, features, and tech stack -
  • -
  • The spec is generated and saved automatically
  • -
  • After creation, the initializer agent can be started immediately
  • -
- - {/* Writing a Spec Manually */} -

- Writing a Spec Manually -

-
    -
  • - Create{' '} - - .autoforge/prompts/app_spec.txt - {' '} - in your project directory -
  • -
  • - Use XML format with app name, description, tech stack, and a feature list -
  • -
  • - Be specific about each feature — the initializer creates test cases from these - descriptions -
  • -
  • - Include technical constraints where needed (e.g.,{' '} - - "use PostgreSQL" - - ,{' '} - - "React with TypeScript" - - ) -
  • -
- - {/* The Initializer Agent */} -

- The Initializer Agent -

-

- The initializer agent is the first agent to run on a new project. It bridges the gap between - your spec and the coding agents that implement features. -

-
    -
  • Runs automatically on first agent start when no features exist in the database
  • -
  • Reads the app spec and creates features with descriptions, steps, and priorities
  • -
  • - Sets up feature dependencies (e.g., "auth must be done before user profile") -
  • -
  • - Creates the feature database at{' '} - - .autoforge/features.db - -
  • -
- - {/* Starting After Spec Creation */} -

- Starting After Spec Creation -

-

- Once your spec is ready, you can kick off the agents: -

-
    -
  • - From the UI, click the Play button to start - the agent -
  • -
  • - Or run from the CLI: -
  • -
-
-
python autonomous_agent_demo.py --project-dir your-project
-
-

- The initializer runs first to create features, then coding agents take over to implement - them. Progress is shown in real time on the Kanban board. -

-
- ) -} diff --git a/ui/src/components/docs/sections/AppearanceThemes.tsx b/ui/src/components/docs/sections/AppearanceThemes.tsx deleted file mode 100644 index d501e6e..0000000 --- a/ui/src/components/docs/sections/AppearanceThemes.tsx +++ /dev/null @@ -1,185 +0,0 @@ -/** - * AppearanceThemes Documentation Section - * - * Covers built-in themes with color previews, dark/light mode toggling, - * the theme selector dropdown, and global keyboard shortcuts. - */ - -import { Badge } from '@/components/ui/badge' - -/** Theme descriptor used to render the preview rows. */ -interface ThemePreview { - name: string - description: string - colors: { label: string; hex: string }[] -} - -const THEMES: ThemePreview[] = [ - { - name: 'Twitter', - description: 'Clean, modern blue design. Primary: blue, Background: white/dark gray.', - colors: [ - { label: 'Background', hex: '#ffffff' }, - { label: 'Primary', hex: '#4a9eff' }, - { label: 'Accent', hex: '#e8f4ff' }, - ], - }, - { - name: 'Claude', - description: "Warm beige/cream tones with orange accents. Inspired by Anthropic's Claude brand.", - colors: [ - { label: 'Background', hex: '#faf6f0' }, - { label: 'Primary', hex: '#c75b2a' }, - { label: 'Accent', hex: '#f5ede4' }, - ], - }, - { - name: 'Neo Brutalism', - description: 'Bold colors, hard shadows, no border radius. High contrast, expressive design.', - colors: [ - { label: 'Background', hex: '#ffffff' }, - { label: 'Primary', hex: '#ff4d00' }, - { label: 'Accent', hex: '#ffeb00' }, - ], - }, - { - name: 'Retro Arcade', - description: 'Vibrant pink and teal with pixel-art inspired styling.', - colors: [ - { label: 'Background', hex: '#f0e6d3' }, - { label: 'Primary', hex: '#e8457c' }, - { label: 'Accent', hex: '#4eb8a5' }, - ], - }, - { - name: 'Aurora', - description: 'Deep violet and luminous teal, inspired by the northern lights.', - colors: [ - { label: 'Background', hex: '#faf8ff' }, - { label: 'Primary', hex: '#8b5cf6' }, - { label: 'Accent', hex: '#2dd4bf' }, - ], - }, - { - name: 'Business', - description: 'Professional deep navy and gray monochrome palette for corporate use.', - colors: [ - { label: 'Background', hex: '#eaecef' }, - { label: 'Primary', hex: '#000e4e' }, - { label: 'Accent', hex: '#6b7280' }, - ], - }, -] - -/** Keyboard shortcut descriptor for the shortcuts table. */ -interface Shortcut { - key: string - action: string -} - -const SHORTCUTS: Shortcut[] = [ - { key: '?', action: 'Show keyboard shortcuts help' }, - { key: 'D', action: 'Toggle debug panel' }, - { key: 'T', action: 'Toggle terminal' }, - { key: 'G', action: 'Toggle Kanban/Graph view' }, - { key: 'N', action: 'Add new feature' }, - { key: 'E', action: 'Expand project with AI' }, - { key: 'A', action: 'Toggle AI assistant' }, - { key: ',', action: 'Open settings' }, - { key: 'R', action: 'Reset project' }, - { key: 'Escape', action: 'Close current modal' }, -] - -export function AppearanceThemes() { - return ( -
- {/* Themes Overview */} -

- Themes Overview -

-

- AutoForge comes with 6 built-in themes. Each theme provides a complete visual identity including - colors, accents, and dark mode variants. -

-
- {THEMES.map((theme) => ( -
- {/* Color swatches */} -
- {theme.colors.map((color) => ( -
- ))} -
- {/* Description */} -
- {theme.name} - {theme.name === 'Twitter' && ( - <> - {' '} - Default - - )} - — {theme.description} -
-
- ))} -
- - {/* Dark & Light Mode */} -

- Dark & Light Mode -

-
    -
  • Toggle with the sun/moon icon in the header
  • -
  • All 6 themes have dedicated dark mode variants
  • -
  • - Preference is saved in browser{' '} - localStorage -
  • -
  • Dark mode affects all UI elements including the docs page
  • -
- - {/* Theme Selector */} -

- Theme Selector -

-
    -
  • Hover over the palette icon in the header to open the theme dropdown
  • -
  • Preview themes by hovering over each option (live preview)
  • -
  • Click to select — the change is applied instantly
  • -
  • Theme preference persists across sessions
  • -
- - {/* Keyboard Shortcuts */} -

- Keyboard Shortcuts -

-

- Press ? anywhere in the UI to see the shortcuts help overlay. -

- - - - - - - - - {SHORTCUTS.map((shortcut) => ( - - - - - ))} - -
KeyAction
- {shortcut.key} - {shortcut.action}
-
- ) -} diff --git a/ui/src/components/docs/sections/DeveloperTools.tsx b/ui/src/components/docs/sections/DeveloperTools.tsx deleted file mode 100644 index 06a5999..0000000 --- a/ui/src/components/docs/sections/DeveloperTools.tsx +++ /dev/null @@ -1,104 +0,0 @@ -/** - * DeveloperTools Documentation Section - * - * Covers the debug panel, agent logs tab, dev server logs, - * terminal, dev server control, and per-agent logs. - */ - -import { Badge } from '@/components/ui/badge' - -export function DeveloperTools() { - return ( -
- {/* Debug Panel */} -

- Debug Panel -

-
    -
  • - Press D to toggle the debug panel at the bottom of the screen -
  • -
  • Resizable by dragging the top edge
  • -
  • - Three tabs: Agent Logs,{' '} - Dev Server Logs, and{' '} - Terminal -
  • -
  • Shows real-time output from agents and dev server
  • -
- - {/* Agent Logs Tab */} -

- Agent Logs Tab -

-
    -
  • - Color-coded log levels:{' '} - Error,{' '} - Warning,{' '} - Info,{' '} - Debug,{' '} - Success -
  • -
  • Timestamps on each log entry
  • -
  • Auto-scrolls to latest entry
  • -
  • Clear button to reset log view
  • -
- - {/* Dev Server Logs Tab */} -

- Dev Server Logs Tab -

-
    -
  • - Shows stdout/stderr from the project’s dev server (e.g.,{' '} - npm run dev) -
  • -
  • Useful for seeing compilation errors, hot reload status
  • -
  • Clear button available
  • -
- - {/* Terminal */} -

- Terminal -

-
    -
  • - Press T to open terminal (opens debug panel on the terminal tab) -
  • -
  • Full xterm.js terminal emulator with WebSocket backend
  • -
  • Multi-tab support: create multiple terminal sessions
  • -
  • Rename tabs by double-clicking the tab title
  • -
  • Each tab runs an independent PTY (pseudo-terminal) session
  • -
  • Supports standard terminal features: colors, cursor movement, history
  • -
- - {/* Dev Server Control */} -

- Dev Server Control -

-
    -
  • Start/stop button in the header bar
  • -
  • - Auto-detects project type (Next.js, Vite, CRA, etc.) and runs the appropriate dev command -
  • -
  • Shows the dev server URL when running
  • -
  • Automatic crash detection and restart option
  • -
  • Dev server output piped to the Dev Server Logs tab
  • -
- - {/* Per-Agent Logs */} -

- Per-Agent Logs -

-
    -
  • In Agent Mission Control, click any agent card to see its individual logs
  • -
  • - Logs include: what feature the agent is working on, code changes, test results -
  • -
  • Separate logs for coding agents and testing agents
  • -
  • Real-time streaming — see agent output as it happens
  • -
-
- ) -} diff --git a/ui/src/components/docs/sections/FAQ.tsx b/ui/src/components/docs/sections/FAQ.tsx deleted file mode 100644 index c557f3d..0000000 --- a/ui/src/components/docs/sections/FAQ.tsx +++ /dev/null @@ -1,157 +0,0 @@ -/** - * FAQ Documentation Section - * - * Covers frequently asked questions about project setup, agent behavior, - * customization, troubleshooting, and real-time monitoring. - */ - -export function FAQ() { - return ( -
- {/* Starting a New Project */} -

- Starting a New Project -

-

- How do I use AutoForge on a new project? -

-

- From the UI, select "Create New Project" in the project dropdown. Choose a folder and - name. Then create an app spec using the interactive chat or write one manually. Click Start to run - the initializer agent, which creates features from your spec. Coding agents then implement features - automatically. -

- - {/* Adding to Existing Project */} -

- Adding to Existing Project -

-

- How do I add AutoForge to an existing project? -

-

- Register the project folder through the UI project selector using "Add Existing". - AutoForge creates a{' '} - .autoforge/ directory - alongside your existing code. Write an app spec describing what to build (new features), and the - agent works within your existing codebase. -

- - {/* Agent Crashes */} -

- Agent Crashes -

-

- What happens if an agent crashes? -

-

- The orchestrator (Maestro) automatically detects crashed agents and can restart them. Features - claimed by a crashed agent are released back to the pending queue. Scheduled runs use exponential - backoff with up to 3 retries. Check the agent logs in the debug panel for crash details. -

- - {/* Custom Bash Commands */} -

- Custom Bash Commands -

-

- How do I customize which bash commands the agent can use? -

-

- Create{' '} - - .autoforge/allowed_commands.yaml - {' '} - in your project with a list of allowed commands. Supports exact names, wildcards (e.g.,{' '} - swift*), and local - scripts. See the Security section for full details on the command hierarchy. -

- - {/* Blocked Features */} -

- Blocked Features -

-

- Why are my features stuck in "blocked" status? -

-

- Features with unmet dependencies show as blocked. Check the Dependency Graph view (press{' '} - G) to see which - features are waiting on others. A feature can only start when all its dependencies are marked as - "passing". Remove or reorder dependencies if needed. -

- - {/* Running in Parallel */} -

- Running in Parallel -

-

- How do I run multiple agents in parallel? -

-

- Use the concurrency slider in the agent control bar (1–5 agents) or pass{' '} - - --parallel --max-concurrency N - {' '} - on the CLI. Each agent claims features atomically, so there is no conflict. More agents means - faster progress but higher API cost. -

- - {/* Using Local Models */} -

- Using Local Models -

-

- Can I use a local model instead of the Claude API? -

-

- Yes, via Ollama v0.14.0+. Install Ollama, pull a coding model (e.g.,{' '} - qwen3-coder), and - configure your{' '} - .env to point to - localhost. See the Advanced Configuration section for full setup instructions. -

- - {/* Resetting a Project */} -

- Resetting a Project -

-

- How do I reset a project and start over? -

-

- Press R (when agents - are stopped) to open the Reset modal. Choose between: "Reset Features" (clears the - feature database, keeps the spec) or "Full Reset" (removes the spec too, starts fresh). - After a full reset, you will be prompted to create a new spec. -

- - {/* Coding vs Testing Agents */} -

- Coding vs Testing Agents -

-

- What's the difference between coding and testing agents? -

-

- Coding agents implement features — they write code, create files, and run feature-specific - tests. Testing agents run regression tests across completed features to ensure new code does not - break existing functionality. Configure the testing agent ratio (0–3) in settings. -

- - {/* Monitoring in Real Time */} -

- Monitoring in Real Time -

-

- How do I view what an agent is doing in real time? -

-

- Multiple ways: (1) Watch the Kanban board for feature status changes. (2) Open the debug panel - (D key) for live - agent logs. (3) Click agent cards in Mission Control for per-agent logs. (4) The progress bar - updates in real time via WebSocket. -

-
- ) -} diff --git a/ui/src/components/docs/sections/FeaturesKanban.tsx b/ui/src/components/docs/sections/FeaturesKanban.tsx deleted file mode 100644 index 4076af8..0000000 --- a/ui/src/components/docs/sections/FeaturesKanban.tsx +++ /dev/null @@ -1,182 +0,0 @@ -/** - * FeaturesKanban Documentation Section - * - * Covers the Kanban board, feature cards, dependency graph view, - * adding/editing features, dependencies, expanding with AI, - * and priority ordering. - */ - -import { Badge } from '@/components/ui/badge' - -export function FeaturesKanban() { - return ( -
- {/* Kanban Board Overview */} -

- Kanban Board Overview -

-

- The main view organizes features into three columns representing their current status: -

- - - - - - - - - - - - - - - - - - - - - - - - - -
- Column - - Color - - Meaning -
Pending - Yellow - Waiting to be picked up
In Progress - Cyan - An agent is actively working on it
Done - Green - Implemented and passing
-

- Each feature appears as a card showing its name, priority, and category. The board updates - in real time as agents work. -

- - {/* Feature Cards */} -

- Feature Cards -

-
    -
  • - Each card displays a priority badge (P1 through{' '} - P5), a category tag, and the feature name -
  • -
  • Status icons indicate the current state of the feature
  • -
  • Click a card to open the detail modal with the full description and test steps
  • -
  • - Cards in the "In Progress" column show which agent is currently working on them -
  • -
- - {/* Dependency Graph View */} -

- Dependency Graph View -

-

- An alternative to the Kanban board that visualizes feature relationships as a directed graph. -

-
    -
  • - Press G to toggle between Kanban and Graph view -
  • -
  • Uses the dagre layout engine for automatic node positioning
  • -
  • - Nodes are colored by status — pending, in-progress, and done each have - distinct colors -
  • -
  • Arrows show dependency relationships between features
  • -
  • Click any node to open the feature detail modal
  • -
  • Supports both horizontal and vertical layout orientations
  • -
- - {/* Adding Features */} -

- Adding Features -

-
    -
  • - Press N to open the Add Feature form -
  • -
  • Fill in: name, description, category, and priority
  • -
  • Optionally define steps (test criteria the agent must pass to complete the feature)
  • -
  • New features are added to the Pending column immediately
  • -
- - {/* Editing & Deleting Features */} -

- Editing & Deleting Features -

-
    -
  • Click a feature card to open the detail modal
  • -
  • - Click Edit to modify the name, description, - category, priority, or steps -
  • -
  • - Delete removes the feature permanently -
  • -
  • - Skip moves a feature to the end of the queue - without deleting it -
  • -
- - {/* Feature Dependencies */} -

- Feature Dependencies -

-

- Features can declare dependencies on other features, ensuring they are implemented in the - correct order. -

-
    -
  • Set dependencies in the feature edit modal
  • -
  • - Cycle detection prevents circular dependencies (uses Kahn's algorithm combined - with DFS) -
  • -
  • - Blocked features display a lock icon and cannot be claimed by agents until their - dependencies are met -
  • -
  • The Dependency Graph view makes these relationships easy to visualize
  • -
- - {/* Expanding Project with AI */} -

- Expanding Project with AI -

-
    -
  • - Press E to open the Expand Project modal -
  • -
  • Chat with Claude to describe the new features you want to add
  • -
  • Supports image attachments for UI mockups or design references
  • -
  • Claude creates properly structured features with appropriate dependencies
  • -
  • New features appear on the board immediately after creation
  • -
- - {/* Priority & Ordering */} -

- Priority & Ordering -

-
    -
  • - Features are ordered by priority: P1 is the highest - and P5 is the lowest -
  • -
  • Within the same priority level, features are ordered by creation time
  • -
  • Agents always pick up the highest-priority ready feature first
  • -
-
- ) -} diff --git a/ui/src/components/docs/sections/GettingStarted.tsx b/ui/src/components/docs/sections/GettingStarted.tsx deleted file mode 100644 index 3d7eb0b..0000000 --- a/ui/src/components/docs/sections/GettingStarted.tsx +++ /dev/null @@ -1,271 +0,0 @@ -/** - * GettingStarted Documentation Section - * - * Covers what AutoForge is, quick start commands, - * creating and adding projects, and system requirements. - */ - -import { Badge } from '@/components/ui/badge' - -/** CLI command descriptor for the reference table. */ -interface CliCommand { - command: string - description: string -} - -const CLI_COMMANDS: CliCommand[] = [ - { command: 'autoforge', description: 'Start the server (default)' }, - { command: 'autoforge config', description: 'Open ~/.autoforge/.env in your editor' }, - { command: 'autoforge config --path', description: 'Print config file path' }, - { command: 'autoforge config --show', description: 'Show active configuration values' }, - { command: 'autoforge --port PORT', description: 'Custom port (default: auto from 8888)' }, - { command: 'autoforge --host HOST', description: 'Custom host (default: 127.0.0.1)' }, - { command: 'autoforge --no-browser', description: "Don't auto-open browser" }, - { command: 'autoforge --repair', description: 'Delete and recreate virtual environment' }, - { command: 'autoforge --version', description: 'Print version' }, - { command: 'autoforge --help', description: 'Show help' }, -] - -export function GettingStarted() { - return ( -
- {/* What is AutoForge? */} -

- What is AutoForge? -

-

- AutoForge is an autonomous coding agent system that builds complete applications over multiple - sessions using a two-agent pattern: -

-
    -
  1. - Initializer Agent — reads your app spec - and creates features in a SQLite database -
  2. -
  3. - Coding Agent — implements features one by - one, marking each as passing when complete -
  4. -
-

- It comes with a React-based UI for monitoring progress, managing features, and controlling agents - in real time. -

- - {/* Installation */} -

- Installation -

-

- Install AutoForge globally via npm: -

-
-
{`npm install -g autoforge-ai`}
-
-

- This requires{' '} - Node.js 20+ and{' '} - Python 3.11+. - Python is auto-detected on first run. -

- - {/* Quick Start */} -

- Quick Start -

-

- After installing, start AutoForge with a single command: -

-
-
{`autoforge`}
-
-

- On first run, AutoForge automatically: -

-
    -
  1. Checks for Python 3.11+
  2. -
  3. Creates a virtual environment at{' '} - ~/.autoforge/venv/ -
  4. -
  5. Installs Python dependencies
  6. -
  7. Copies a default config file to{' '} - ~/.autoforge/.env -
  8. -
  9. Starts the server and opens your browser
  10. -
-

- On subsequent runs, AutoForge starts instantly — the environment is already set up. -

- -

- Running from Source -

-

- If you prefer to clone the repository (for development or contributing): -

-
-
{`# Windows
-start_ui.bat       # Web UI
-
-# macOS/Linux
-./start_ui.sh      # Web UI`}
-
- - {/* CLI Commands */} -

- CLI Commands -

-

- The{' '} - autoforge{' '} - command supports these options: -

- - - - - - - - - {CLI_COMMANDS.map((c) => ( - - - - - ))} - -
- Command - - Description -
- {c.command} - {c.description}
-

- Configuration -

-

- AutoForge reads configuration from a{' '} - .env{' '} - file. The location depends on your install method: -

- - - - - - - - - - - - - - - - - -
- Install method - - Config location -
npm (global) - ~/.autoforge/.env -
From source - .env{' '} - in the project root -
-

- Run{' '} - autoforge config{' '} - to open the config file in your editor, or{' '} - autoforge config --show{' '} - to print the active values. See{' '} - Advanced Configuration{' '} - for API provider setup (Ollama, Vertex AI, z.ai). -

- - {/* Creating a New Project */} -

- Creating a New Project -

-
    -
  • - From the UI, click the project dropdown and select{' '} - Create New Project -
  • -
  • Enter a name and select or browse to a folder for the project
  • -
  • - Create an app spec interactively with Claude, or write one manually in XML format -
  • -
  • - The initializer agent reads your spec and creates features automatically -
  • -
- - {/* Adding to an Existing Project */} -

- Adding to an Existing Project -

-
    -
  • Register the project folder via the UI project selector
  • -
  • - AutoForge creates a{' '} - .autoforge/{' '} - directory inside your project -
  • -
  • - Existing code is preserved — AutoForge adds its configuration alongside it -
  • -
  • Write or generate an app spec describing what to build
  • -
- - {/* System Requirements */} -

- System Requirements -

- - - - - - - - - - - - - - - - - - - - - - - - - -
- Requirement - - Details -
Node.js - 20+{' '} - (required for CLI and UI) -
Python - 3.11+{' '} - (auto-detected on first run) -
Claude Code CLI - Required for running agents -
Operating System - Windows, macOS, or Linux -
-
- ) -} diff --git a/ui/src/components/docs/sections/ProjectStructure.tsx b/ui/src/components/docs/sections/ProjectStructure.tsx deleted file mode 100644 index 2217d3c..0000000 --- a/ui/src/components/docs/sections/ProjectStructure.tsx +++ /dev/null @@ -1,162 +0,0 @@ -/** - * ProjectStructure Documentation Section - * - * Covers the .autoforge/ directory layout, features database, - * prompts directory, allowed commands, CLAUDE.md convention, - * legacy migration, and Claude inheritance. - */ - -export function ProjectStructure() { - return ( -
- {/* .autoforge/ Directory Layout */} -

- .autoforge/ Directory Layout -

-

- Every AutoForge project stores its configuration and runtime files in a{' '} - .autoforge/{' '} - directory at the project root. -

-
-
{`your-project/
-\u251C\u2500\u2500 .autoforge/
-\u2502   \u251C\u2500\u2500 features.db              # SQLite feature database
-\u2502   \u251C\u2500\u2500 .agent.lock              # Lock file (prevents multiple instances)
-\u2502   \u251C\u2500\u2500 .gitignore               # Ignores runtime files
-\u2502   \u251C\u2500\u2500 allowed_commands.yaml    # Per-project bash command allowlist
-\u2502   \u2514\u2500\u2500 prompts/
-\u2502       \u251C\u2500\u2500 app_spec.txt         # Application specification (XML)
-\u2502       \u251C\u2500\u2500 initializer_prompt.md # First session prompt
-\u2502       \u2514\u2500\u2500 coding_prompt.md     # Continuation session prompt
-\u251C\u2500\u2500 CLAUDE.md                    # Claude Code convention file
-\u2514\u2500\u2500 app_spec.txt                 # Root copy for template compatibility`}
-
- - {/* Features Database */} -

- Features Database -

-
    -
  • - SQLite database managed by SQLAlchemy, stored at{' '} - - .autoforge/features.db - -
  • -
  • - Each feature record includes: id, priority, category, name, description, steps, status - (pending,{' '} - in_progress,{' '} - passing,{' '} - failing), - and dependencies -
  • -
  • Agents interact with features through MCP server tools, not direct database access
  • -
  • Viewable in the UI via the Kanban board or the Dependency Graph view
  • -
- - {/* Prompts Directory */} -

- Prompts Directory -

-

- Prompts control how agents behave during each session: -

-
    -
  • - app_spec.txt{' '} - — your application specification in XML format -
  • -
  • - - initializer_prompt.md - {' '} - — prompt for the initializer agent (creates features from the spec) -
  • -
  • - - coding_prompt.md - {' '} - — prompt for coding agents (implements features) -
  • -
-

- These can be customized per project. If not present, defaults from{' '} - - .claude/templates/ - {' '} - are used as a fallback. -

- - {/* Allowed Commands Config */} -

- Allowed Commands Config -

-

- The optional{' '} - - .autoforge/allowed_commands.yaml - {' '} - file lets you grant project-specific bash commands to the agent. This is useful when your - project requires tools beyond the default allowlist (e.g., language-specific compilers or - custom build scripts). -

-

- See the Security section for full details on - the command hierarchy and how project-level commands interact with global and organization - policies. -

- - {/* CLAUDE.md Convention */} -

- CLAUDE.md Convention -

-
    -
  • - CLAUDE.md{' '} - lives at the project root, as required by the Claude Code SDK -
  • -
  • - Contains project-specific instructions that the agent follows during every coding session -
  • -
  • - Automatically inherited by all agents working on the project — no additional - configuration needed -
  • -
- - {/* Legacy Layout Migration */} -

- Legacy Layout Migration -

-

- Older projects stored configuration files directly at the project root (e.g.,{' '} - features.db,{' '} - prompts/). -

-
    -
  • - On the next agent start, these files are automatically migrated into{' '} - .autoforge/ -
  • -
  • Dual-path resolution ensures both old and new layouts work transparently
  • -
  • No manual migration is needed — it happens seamlessly
  • -
- - {/* Claude Inheritance */} -

- Claude Inheritance -

-

- Agents inherit all MCP servers, tools, skills, custom commands, and{' '} - CLAUDE.md{' '} - from the target project folder. -

-
- If your project has its own MCP servers or Claude commands, the coding agent can use them. - The agent essentially runs as if Claude Code was opened in your project directory. -
-
- ) -} diff --git a/ui/src/components/docs/sections/Scheduling.tsx b/ui/src/components/docs/sections/Scheduling.tsx deleted file mode 100644 index 1e47046..0000000 --- a/ui/src/components/docs/sections/Scheduling.tsx +++ /dev/null @@ -1,102 +0,0 @@ -/** - * Scheduling Documentation Section - * - * Covers schedule creation, per-schedule settings, - * overrides, and crash recovery with exponential backoff. - */ - -import { Badge } from '@/components/ui/badge' - -export function Scheduling() { - return ( -
- {/* What Scheduling Does */} -

- What Scheduling Does -

-

- Scheduling automates agent runs at specific times. Set up a schedule and AutoForge will automatically - start agents on your project — useful for overnight builds, periodic maintenance, or continuous - development. -

- - {/* Creating a Schedule */} -

- Creating a Schedule -

-
    -
  • Click the clock icon in the header to open the Schedule modal
  • -
  • Set: start time, duration (how long agents run), days of the week
  • -
  • Optionally configure: YOLO mode, concurrency, model selection
  • -
  • Schedule is saved and starts at the next matching time
  • -
- - {/* Schedule Settings */} -

- Schedule Settings -

-

- Each schedule can override global settings: -

- - - - - - - - - - - - - - - - - - - - - - - - - -
SettingDetails
YOLO modeOn/off per schedule
Concurrency - 1–5 agents -
Model tierOpus / Sonnet / Haiku
DurationHow long the session runs before auto-stopping
-
- All schedule times are in UTC timezone. -
- - {/* Schedule Overrides */} -

- Schedule Overrides -

-
    -
  • Manually skip a scheduled run (one-time override)
  • -
  • Pause a schedule temporarily (resumes on next period)
  • -
  • - View upcoming runs with{' '} - Running until /{' '} - Next run indicators -
  • -
  • Override without deleting the schedule
  • -
- - {/* Crash Recovery */} -

- Crash Recovery -

-
    -
  • If a scheduled agent crashes, it uses exponential backoff for retries
  • -
  • - Maximum 3 retry attempts per scheduled run -
  • -
  • Backoff prevents rapid restart loops
  • -
  • Failed runs are logged for troubleshooting
  • -
-
- ) -} diff --git a/ui/src/components/docs/sections/Security.tsx b/ui/src/components/docs/sections/Security.tsx deleted file mode 100644 index f3e2b1b..0000000 --- a/ui/src/components/docs/sections/Security.tsx +++ /dev/null @@ -1,218 +0,0 @@ -/** - * Security Documentation Section - * - * Covers the defense-in-depth security model: command validation layers, - * the hierarchical allowlist/blocklist system, per-project and org-level - * configuration, extra read paths, and filesystem sandboxing. - */ - -import { Badge } from '@/components/ui/badge' - -export function Security() { - return ( -
- {/* Command Validation Overview */} -

- Command Validation Overview -

-

- AutoForge uses a defense-in-depth approach for security. All three layers must pass before any - command is executed: -

-
    -
  1. - OS-level sandbox — bash commands run inside - a restricted sandbox environment -
  2. -
  3. - Filesystem restriction — agents can only - access the project directory (plus configured extra read paths) -
  4. -
  5. - Hierarchical allowlist — every bash command - is validated against a multi-level allowlist system -
  6. -
- - {/* Command Hierarchy */} -

- Command Hierarchy -

-

- Commands are evaluated against a 5-level hierarchy, from highest to lowest priority: -

-
    -
  1. - Hardcoded Blocklist{' '} - security.py{' '} - — NEVER allowed, cannot be overridden -
  2. -
  3. - Org Blocklist{' '} - ~/.autoforge/config.yaml{' '} - — org-wide blocks, cannot be project-overridden -
  4. -
  5. - Org Allowlist{' '} - ~/.autoforge/config.yaml{' '} - — available to all projects -
  6. -
  7. - Global Allowlist{' '} - security.py{' '} - — default commands (npm, git, curl, etc.) -
  8. -
  9. - Project Allowlist{' '} - - .autoforge/allowed_commands.yaml - {' '} - — project-specific additions -
  10. -
-
- Higher priority levels always win. A command blocked at level 1 or 2 can never be allowed by - lower levels. -
- - {/* Hardcoded Blocklist */} -

- Hardcoded Blocklist -

-

- The following commands can never be allowed, regardless - of any configuration. They are hardcoded in{' '} - security.py and - cannot be overridden: -

-
- {['dd', 'sudo', 'su', 'shutdown', 'reboot', 'poweroff', 'mkfs', 'fdisk', 'mount', 'umount', 'systemctl'].map( - (cmd) => ( - - {cmd} - - ), - )} -
- - {/* Global Allowlist */} -

- Global Allowlist -

-

- Default commands available to all projects out of the box. These are the standard development - commands needed for most projects: -

-
- {['npm', 'npx', 'node', 'git', 'curl', 'python', 'pip', 'cat', 'ls', 'mkdir', 'cp', 'mv', 'rm', 'grep', 'find'].map( - (cmd) => ( - - {cmd} - - ), - )} -
- - {/* Per-Project Allowed Commands */} -

- Per-Project Allowed Commands -

-

- Each project can define additional allowed commands in{' '} - - .autoforge/allowed_commands.yaml - - : -

-
-
{`# .autoforge/allowed_commands.yaml
-version: 1
-commands:
-  # Exact command name
-  - name: swift
-    description: Swift compiler
-
-  # Wildcard - matches swiftc, swiftlint, swiftformat
-  - name: swift*
-    description: All Swift tools (wildcard)
-
-  # Local project scripts
-  - name: ./scripts/build.sh
-    description: Project build script`}
-
-

- Pattern matching: exact match ( - swift), wildcard ( - swift* matches swiftc, - swiftlint, etc.), and scripts ( - ./scripts/build.sh). - Limit: 100 commands per project. -

- - {/* Organization Configuration */} -

- Organization Configuration -

-

- System administrators can set org-wide policies in{' '} - ~/.autoforge/config.yaml: -

-
-
{`# ~/.autoforge/config.yaml
-version: 1
-
-# Commands available to ALL projects
-allowed_commands:
-  - name: jq
-    description: JSON processor
-
-# Commands blocked across ALL projects (cannot be overridden)
-blocked_commands:
-  - aws        # Prevent accidental cloud operations
-  - kubectl    # Block production deployments`}
-
-

- Org-level blocked commands cannot be overridden by any project configuration. -

- - {/* Extra Read Paths */} -

- Extra Read Paths -

-

- Allow agents to read files from directories outside the project folder via the{' '} - EXTRA_READ_PATHS{' '} - environment variable: -

-
-
EXTRA_READ_PATHS=/path/to/docs,/path/to/shared-libs
-
-
    -
  • Must be absolute paths and must exist as directories
  • -
  • Only read operations allowed (Read, Glob, Grep — no Write/Edit)
  • -
  • - Sensitive directories are always blocked:{' '} - .ssh,{' '} - .aws,{' '} - .gnupg,{' '} - .docker,{' '} - .kube, etc. -
  • -
- - {/* Filesystem Sandboxing */} -

- Filesystem Sandboxing -

-
    -
  • Agents can only write to the project directory
  • -
  • Read access is limited to the project directory plus configured extra read paths
  • -
  • - Path traversal attacks are prevented via canonicalization ( - Path.resolve()) -
  • -
  • File operations are validated before execution
  • -
-
- ) -} diff --git a/ui/src/components/docs/sections/SettingsConfig.tsx b/ui/src/components/docs/sections/SettingsConfig.tsx deleted file mode 100644 index c5a5eb5..0000000 --- a/ui/src/components/docs/sections/SettingsConfig.tsx +++ /dev/null @@ -1,188 +0,0 @@ -/** - * SettingsConfig Documentation Section - * - * Covers global settings: opening the modal, YOLO mode, headless browser, - * model selection, regression agents, batch size, concurrency, and persistence. - */ - -import { Badge } from '@/components/ui/badge' - -export function SettingsConfig() { - return ( -
- {/* Opening Settings */} -

- Opening Settings -

-

- Press the , (comma) key or click the gear icon in the header bar to - open the Settings modal. Settings are global and apply to all projects. -

- - {/* YOLO Mode */} -

- YOLO Mode -

-

- YOLO mode is for rapid prototyping — it skips testing for faster iteration: -

-
    -
  • - What’s skipped: Regression testing, Playwright MCP - server (browser automation disabled) -
  • -
  • - What still runs: Lint and type-check (to verify code - compiles), Feature MCP server for tracking -
  • -
  • - Toggle via the lightning bolt button in the UI or the{' '} - --yolo CLI flag -
  • -
  • - When to use: Early prototyping when you want to scaffold - features quickly without verification overhead -
  • -
  • Switch back to standard mode for production-quality development
  • -
- - {/* Headless Browser */} -

- Headless Browser -

-
    -
  • When enabled, Playwright runs without a visible browser window
  • -
  • Saves CPU/GPU resources on machines running multiple agents
  • -
  • Tests still run fully — just no visible browser UI
  • -
  • Toggle in settings or via the UI button
  • -
- - {/* Model Selection */} -

- Model Selection -

-

- Choose which Claude model tier to use for your agents: -

- - - - - - - - - - - - - - - - - - - - - -
Tier - Characteristics -
- Opus - Most capable, highest quality
- Sonnet - Balanced speed and quality
- Haiku - Fastest, most economical
-
    -
  • Model can be set globally in settings
  • -
  • Per-schedule model override is also available
  • -
  • - When using Vertex AI, model names use{' '} - @ instead of{' '} - - (e.g.,{' '} - - claude-opus-4-5@20251101 - - ) -
  • -
- - {/* Regression Agents */} -

- Regression Agents -

-

- Controls how many testing agents run alongside coding agents (0–3): -

-
    -
  • - 0: No regression testing (like YOLO but coding agents - still test their own feature) -
  • -
  • - 1: One testing agent runs in background verifying - completed features -
  • -
  • - 2–3: Multiple testing agents for thorough - verification -
  • -
  • Testing agents batch-test 1–5 features per session
  • -
- - {/* Features per Agent / Batch Size */} -

- Features per Agent (Batch Size) -

-

- Controls how many features each coding agent implements per session (1–3): -

-
    -
  • - 1: One feature per session (most focused, lower risk of - conflicts) -
  • -
  • - 2–3: Multiple features per session (more efficient, - fewer session startups) -
  • -
  • - Set via settings UI or the{' '} - --batch-size CLI flag -
  • -
  • - Can also target specific features:{' '} - --batch-features 1,2,3 -
  • -
- - {/* Concurrency */} -

- Concurrency -

-
    -
  • Per-project default concurrency saved in project settings
  • -
  • Override at runtime with the concurrency slider in agent controls
  • -
  • - Range: 1–5 concurrent coding agents -
  • -
  • Higher concurrency = faster progress but more API cost
  • -
- - {/* How Settings are Persisted */} -

- How Settings are Persisted -

-
    -
  • - Global settings stored in SQLite registry at{' '} - ~/.autoforge/registry.db -
  • -
  • Per-project settings (like default concurrency) stored in the project registry entry
  • -
  • UI settings (theme, dark mode) stored in browser localStorage
  • -
  • Settings survive app restarts and are shared across UI sessions
  • -
-
- ) -} diff --git a/ui/src/hooks/useHashRoute.ts b/ui/src/hooks/useHashRoute.ts deleted file mode 100644 index 1482199..0000000 --- a/ui/src/hooks/useHashRoute.ts +++ /dev/null @@ -1,36 +0,0 @@ -import { useState, useEffect, useCallback } from 'react' - -export type Route = 'app' | 'docs' - -interface HashRouteState { - route: Route - section: string | null - navigate: (hash: string) => void -} - -function parseHash(hash: string): { route: Route; section: string | null } { - const cleaned = hash.replace(/^#\/?/, '') - if (cleaned === 'docs' || cleaned.startsWith('docs/')) { - const section = cleaned.slice(5) || null // Remove 'docs/' prefix - return { route: 'docs', section } - } - return { route: 'app', section: null } -} - -export function useHashRoute(): HashRouteState { - const [state, setState] = useState(() => parseHash(window.location.hash)) - - useEffect(() => { - const handleHashChange = () => { - setState(parseHash(window.location.hash)) - } - window.addEventListener('hashchange', handleHashChange) - return () => window.removeEventListener('hashchange', handleHashChange) - }, []) - - const navigate = useCallback((hash: string) => { - window.location.hash = hash - }, []) - - return { ...state, navigate } -} diff --git a/ui/src/main.tsx b/ui/src/main.tsx index b4d89a2..e8d9888 100644 --- a/ui/src/main.tsx +++ b/ui/src/main.tsx @@ -1,11 +1,8 @@ import { StrictMode } from 'react' import { createRoot } from 'react-dom/client' import { QueryClient, QueryClientProvider } from '@tanstack/react-query' -import { useHashRoute } from './hooks/useHashRoute' import App from './App' -import { DocsPage } from './components/docs/DocsPage' import './styles/globals.css' -// Note: Custom theme removed - using shadcn/ui theming instead const queryClient = new QueryClient({ defaultOptions: { @@ -16,16 +13,10 @@ const queryClient = new QueryClient({ }, }) -function Router() { - const { route } = useHashRoute() - if (route === 'docs') return - return -} - createRoot(document.getElementById('root')!).render( - + , )