diff options
| author | Clawd <ai@clawd.bot> | 2026-02-28 18:21:09 -0800 |
|---|---|---|
| committer | Clawd <ai@clawd.bot> | 2026-02-28 18:21:09 -0800 |
| commit | ffc6c28304bc710e1151c0286e9336ead5244eb3 (patch) | |
| tree | a9216f5c35326182ae4180f503c8818941041690 | |
| parent | eee3164e682d3ed141a7369795ae89d166d176fe (diff) | |
Simplify README: focus on workflow, git integration, session structure
| -rw-r--r-- | README.md | 97 |
1 files changed, 24 insertions, 73 deletions
| @@ -2,101 +2,52 @@ | |||
| 2 | 2 | ||
| 3 | A document-centric coding assistant that enforces a structured workflow: **Research → Plan → Implement**. | 3 | A document-centric coding assistant that enforces a structured workflow: **Research → Plan → Implement**. |
| 4 | 4 | ||
| 5 | Built with Electron, React, TypeScript, better-sqlite3, and the Claude Agent SDK. | 5 | Built with Electron, React, and the Claude Agent SDK. |
| 6 | 6 | ||
| 7 | ## Concept | 7 | ## Workflow |
| 8 | 8 | ||
| 9 | The primary UI is a **markdown document viewer/editor** with a **chat sidebar**. The workflow is driven by the document, not the chat. | 9 | 1. **Research** — Claude analyzes your codebase, writes findings to session `research.md` |
| 10 | 2. **Plan** — Claude creates an implementation plan with code snippets and TODO checklist | ||
| 11 | 3. **Implement** — Claude executes the plan, committing as it goes | ||
| 10 | 12 | ||
| 11 | ### Workflow Phases | 13 | At each phase, edit the document to add notes (`// REVIEW:`, `// NOTE:`), click **Review** for feedback, then **Submit** to advance. |
| 12 | 14 | ||
| 13 | 1. **Research** — Claude researches your codebase based on your direction, writing findings to `.claude-flow/research.md` | 15 | ## Git Integration |
| 14 | 2. **Plan** — Claude creates a detailed implementation plan in `.claude-flow/plan.md` with code snippets and a TODO checklist | ||
| 15 | 3. **Implement** — Claude executes the plan, marking tasks complete as it goes | ||
| 16 | 16 | ||
| 17 | At each phase, you can edit the document to add notes (marked with `// REVIEW:` or `// NOTE:`), click **Review** to have Claude address your feedback, then **Submit** to advance to the next phase. | 17 | Each session creates an isolated git worktree: |
| 18 | |||
| 19 | ## UI Layout | ||
| 20 | 18 | ||
| 21 | ``` | 19 | ``` |
| 22 | ┌──────────────────────────────────────────────────────────────┐ | 20 | .claude-flow/ |
| 23 | │ [Project ▾] [Session ▾] [Research ● ─ Plan ─] │ | 21 | ├── sessions/{sessionId}/ |
| 24 | ├────────────────────────────────────────┬─────────────────────┤ | 22 | │ ├── research.md # Session-specific research |
| 25 | │ │ │ | 23 | │ └── plan.md # Session-specific plan |
| 26 | │ # Research Findings │ Chat Dialogue │ | 24 | └── worktrees/{sessionId}/ # Git worktree (branch: claude-flow/{sessionId}) |
| 27 | │ │ │ | ||
| 28 | │ ## Authentication System │ Claude: What │ | ||
| 29 | │ │ should I research?│ | ||
| 30 | │ The auth module uses JWT... │ │ | ||
| 31 | │ │ You: Research the │ | ||
| 32 | │ // REVIEW: check OAuth too │ auth system │ | ||
| 33 | │ │ │ | ||
| 34 | ├────────────────────────────────────────┼─────────────────────┤ | ||
| 35 | │ 42k / 200k tokens ████░░░░ │ [Send] │ | ||
| 36 | │ [Review] [Submit] │ │ | ||
| 37 | └────────────────────────────────────────┴─────────────────────┘ | ||
| 38 | ``` | 25 | ``` |
| 39 | 26 | ||
| 40 | ## Requirements | 27 | - Concurrent sessions supported — each has its own branch |
| 41 | 28 | - Implementation commits incrementally | |
| 42 | - Node.js ≥ 18 | 29 | - Review in worktree, then merge or discard |
| 43 | - macOS (Apple Silicon or Intel), Windows, or Linux | ||
| 44 | - Claude API key or Claude Code subscription | ||
| 45 | 30 | ||
| 46 | ## Install | 31 | ## Shared Context |
| 47 | 32 | ||
| 48 | ```bash | 33 | `CLAUDE.md` at project root holds persistent codebase documentation shared across all sessions. Claude reads it at the start and updates it with new architectural insights. |
| 49 | git clone <this-repo> | ||
| 50 | cd claude-flow | ||
| 51 | npm install | ||
| 52 | ``` | ||
| 53 | 34 | ||
| 54 | ## Development | 35 | ## Setup |
| 55 | 36 | ||
| 56 | ```bash | 37 | ```bash |
| 38 | npm install | ||
| 39 | export ANTHROPIC_API_KEY=your-key | ||
| 57 | npm run dev | 40 | npm run dev |
| 58 | ``` | 41 | ``` |
| 59 | 42 | ||
| 60 | This starts Vite dev server and Electron in watch mode. | ||
| 61 | |||
| 62 | ## Build | ||
| 63 | |||
| 64 | ```bash | ||
| 65 | npm run dist | ||
| 66 | ``` | ||
| 67 | |||
| 68 | Creates distributable builds via electron-builder. | ||
| 69 | |||
| 70 | ## Project Structure | ||
| 71 | |||
| 72 | ``` | ||
| 73 | claude-flow/ | ||
| 74 | ├── src/main/ # Electron main process | ||
| 75 | │ ├── index.ts # App lifecycle, window management | ||
| 76 | │ ├── preload.ts # IPC bridge with typed API | ||
| 77 | │ ├── db/ # SQLite database (projects, sessions, messages) | ||
| 78 | │ ├── claude/ # Claude SDK wrapper with phase configs | ||
| 79 | │ └── ipc/ # IPC handlers | ||
| 80 | ├── renderer/ # React frontend | ||
| 81 | │ ├── src/ | ||
| 82 | │ │ ├── App.tsx # Main app with state management | ||
| 83 | │ │ ├── components/ # Header, DocumentPane, ChatPane, ActionBar | ||
| 84 | │ │ ├── styles/ # CSS | ||
| 85 | │ │ └── types.ts # TypeScript types | ||
| 86 | │ └── index.html | ||
| 87 | ├── package.json | ||
| 88 | ├── tsconfig.json | ||
| 89 | └── vite.config.ts | ||
| 90 | ``` | ||
| 91 | |||
| 92 | ## Keyboard Shortcuts | 43 | ## Keyboard Shortcuts |
| 93 | 44 | ||
| 94 | - **Cmd/Ctrl + Enter** — Submit (advance to next phase) | 45 | - **Cmd/Ctrl + Enter** — Submit |
| 95 | - **Escape** — Interrupt Claude | 46 | - **Escape** — Interrupt |
| 96 | 47 | ||
| 97 | ## References | 48 | ## References |
| 98 | 49 | ||
| 99 | - [How I Use Claude Code](https://boristane.com/blog/how-i-use-claude-code/) — Boris Tane's post on the Research → Plan → Implement workflow | 50 | - [How I Use Claude Code](https://boristane.com/blog/how-i-use-claude-code/) — Boris Tane's post that inspired this workflow |
| 100 | 51 | ||
| 101 | ## License | 52 | ## License |
| 102 | 53 | ||
