1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
|
# Claude Code Project Guidelines
## Project Overview
A unified web dashboard aggregating Trello (PRIMARY), Todoist, Obsidian, and PlanToEat.
**Stack:** Go backend + HTMX + Tailwind CSS + SQLite.
## Key Documents (Read These First)
| Document | Purpose | When to Read |
|----------|---------|--------------|
| `DESIGN.md` | Authoritative design doc: architecture, patterns, visual design, dev guide | Before any significant work |
| `SESSION_STATE.md` | Current task state, next steps | Start of every session |
| `docs/adr/*.md` | Architecture Decision Records | Before implementing features in that area |
### Multi-Agent Workflow
This project uses a three-role development workflow. **Read your role definition before starting work:**
| Role | Definition File | Responsibilities |
|------|-----------------|------------------|
| Architect | `ARCHITECT_ROLE.md` | Plans, documents, creates ADRs. Does NOT edit code. |
| Implementor | `IMPLEMENTOR_ROLE.md` | Executes plans, writes code, runs tests. |
| Reviewer | `REVIEWER_ROLE.md` | Reviews code quality and tests. Does NOT edit code. |
**Handoff docs:** `instructions.md` (Architect → Implementor), `review_feedback.md` (Reviewer → Implementor)
## Efficiency & Token Management
- **Context Minimization:** Do not read entire files if `grep`, `sed`, or `ls` can answer a question.
- **Surgical Edits:** Perform small, targeted file edits. Avoid rewriting entire files for single changes.
- **Dependency Awareness:** Use `go test`, `go build`, and `lint` to verify state rather than asking the agent to "think" through logic.
- **Proactive Checkpointing:** Treat every 3-4 turns as a potential session end. Update `SESSION_STATE.md` frequently.
## Workflow: Plan-then-Execute
1. **Discovery:** Use terminal tools to locate relevant Go code/handlers.
2. **Planning:** Propose a specific plan and **wait for user confirmation** before editing.
3. **Execution:** Apply changes incrementally, verifying with `go test ./...`.
4. **Handoff:** If a task is incomplete or the user mentions "limit" or "handoff," immediately summarize progress in `SESSION_STATE.md`.
## Essential Commands
- **Run:** `go run cmd/dashboard/main.go`
- **Test:** `go test ./...`
- **Build:** `go build -o dashboard cmd/dashboard/main.go`
## State Management
- **SESSION_STATE.md:** The source of truth for resuming work. Must include:
- Current Task Goal
- Completed Items
- **Next 3 Specific Steps**
- **Status tags:** `[TODO]` → `[IN_PROGRESS]` → `[REVIEW_READY]` → `[APPROVED]` (or `[NEEDS_FIX]`)
## Technical Context
- **Trello is PRIMARY:** Key + Token required in query params.
- **Architecture:** chi router → Handlers (`internal/handlers/`) → Store (`internal/store/sqlite.go`).
- **Errors:** Partial data/cache fallback preferred over hard failure.
- **Full details:** See `DESIGN.md` → Architecture section.
## Coding Style
- Use concise, idiomatic Go.
- Avoid verbose explanations or comments for self-evident logic.
- Prioritize terminal-based verification over manual code review.
- **Patterns:** See `DESIGN.md` → Development Guide for handler/template patterns.
## Documentation
- **ADR-first:** Capture architectural decisions in `docs/adr/*.md`, not one-off design docs.
- **Update DESIGN.md** for new features, endpoints, or schema changes.
- **Do NOT create** standalone design documents—use ADRs instead.
|