How furkaanasik/clauflow works
ClauFlow is an agentic kanban product: users manage project tasks on a board, move work into execution, review the resulting pull request, and merge it. The UI calls the Express API and receives live updates over WebSocket. Backend task transitions dispatch agent runners that use Claude Code and Git/GitHub tooling; review comments trigger work on the existing branch. Project setup, agent topology, skills, GitHub integration, CI, and insights support this workflow. Some subsystem wiring is documented in the README but its implementation was not sampled, so uncertain links are omitted.
Main entry points: claudeService.ts Claude service · index.ts HTTP and WS server · tasks.ts Task routes · executor.ts Task executor
Components 31
Board UI
- Kanban board
gui/src/components/Board/Board.tsx - Board hooks
gui/src/hooks/useBoard.ts - Live updates
gui/src/hooks/useAgentSocket.ts - Board state
gui/src/store/boardStore.ts - API client
gui/src/lib/api.ts
Core API
- HTTP and WS server
core/src/index.ts - Task routes
core/src/routes/tasks.ts - Project routes
core/src/routes/projects.ts - GitHub routes
core/src/routes/github.ts - Comment routes
core/src/routes/comments.ts - Insights routes
core/src/routes/insights.ts
Task lifecycle
- Task executor
core/src/agents/executor.ts - Comment runner
core/src/agents/commentRunner.ts - PR review runner
core/src/agents/prReviewRunner.ts - Project planner
core/src/agents/projectPlanner.ts - Task breakdown
core/src/agents/taskBreakdownRunner.ts - Git and PR service
core/src/services/gitService.ts - Claude service
core/src/services/claudeService.ts
Project tools
- Claude project tools
core/src/routes/projectsClaude.ts - Agent graph routes
core/src/routes/graphs.ts - Skills CLI
core/src/services/claudePluginCli.ts - Project GitHub
core/src/routes/projectsGithub.ts - CI service
core/src/services/ciService.ts
State and integrations
- WebSocket service
core/src/services/wsService.ts - Task and project store
core/src/services/taskService.ts - Comment store
core/src/services/commentService.ts
Other components
- Engineer
- Claude Code CLI
- Git CLI
- GitHub CLI
- GitHub
Connections 37
- Engineer → Kanban board: manages tasks
- Kanban board → Board hooks: moves cards
- Board hooks → API client: updates tasks
- Board hooks → Board state: updates state
- API client → HTTP and WS server: HTTP requests
- HTTP and WS server → Task routes: dispatches
- HTTP and WS server → Project routes: dispatches
- HTTP and WS server → GitHub routes: dispatches
- HTTP and WS server → Comment routes: dispatches
- HTTP and WS server → Insights routes: dispatches
- Task routes → Task and project store: reads and writes
- Task routes → Task executor: queues on DOING
- Task executor → Git and PR service: manages branch
- Task executor → Claude service: runs agent
- Claude service → Claude Code CLI: spawns
- Git and PR service → Git CLI: runs git
- Git and PR service → GitHub CLI: creates and merges PRs
- GitHub CLI → GitHub: operates on
- Comment routes → Comment store: stores comments
- Comment routes → Comment runner: dispatches feedback
- Comment runner → Git and PR service: checks out branch
- Comment runner → Claude service: applies feedback
- PR review runner → Claude service: requests review
- Task routes → PR review runner: queues PR review
- Project planner → Claude service: plans project
- Task breakdown → Claude service: breaks down task
- Claude project tools → Skills CLI: manages skills
- Claude project tools → Claude service: generates agents
- Agent graph routes → Task and project store: stores graphs
- Project GitHub → GitHub CLI: lists and clones repos
- CI service → Claude service: runs CI fixes
- Task routes → WebSocket service: broadcasts changes
- Task executor → WebSocket service: broadcasts progress
- Comment runner → WebSocket service: broadcasts comments
- WebSocket service → Live updates: streams events
- Live updates → Board state: applies updates
- Insights routes → Task and project store: reads task data