fathom-cli 0.1.7 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,10 +1,6 @@
1
1
  # fathom-cli
2
2
 
3
- Workflow intelligence for AI-augmented development. Estimate token costs before work, automatically track actuals during work, reconcile and calibrate after work, and build velocity benchmarks over time.
4
-
5
- ```
6
- intake → estimate → build (tracked) → reconcile → calibrate → velocity
7
- ```
3
+ Estimate AI token costs before work, track actuals during work, and calibrate your estimates after. One command runs the full loop.
8
4
 
9
5
  ## Install
10
6
 
@@ -12,179 +8,87 @@ intake → estimate → build (tracked) → reconcile → calibrate → velocity
12
8
  npm install -g fathom-cli
13
9
  ```
14
10
 
15
- ## Quick Start
16
-
17
- ```bash
18
- # Quick estimate — "how much will this cost?"
19
- # AI scores complexity automatically when ANTHROPIC_API_KEY is set
20
- fathom estimate "React dashboard with OAuth"
21
-
22
- # Generate a full spec sheet — "break this down into work items"
23
- fathom intake "Users say the calendar is slow and Zoom links are missing" --project myapp
24
-
25
- # Analyze a full spec with multiple features
26
- fathom analyze spec.md --project myapp
27
-
28
- # Scaffold tracking for an existing project
29
- fathom setup --project myapp
30
-
31
- # Import and auto-tag Claude Code sessions
32
- fathom track --project myapp
33
-
34
- # Compare estimates vs actuals
35
- fathom reconcile --project myapp
36
-
37
- # See velocity metrics
38
- fathom velocity --project myapp
39
- ```
11
+ Add `ANTHROPIC_API_KEY` to your project's `.env` file (auto-loaded).
40
12
 
41
- ## Commands
42
-
43
- | Command | Description |
44
- |---------|-------------|
45
- | `fathom estimate <desc>` | Quick cost estimate — AI scores complexity, returns tokens + cost |
46
- | `fathom intake <text>` | Generate spec sheet — extracts work items, estimates each, outputs markdown |
47
- | `fathom analyze <spec>` | Parse spec, estimate all features, generate registry |
48
- | `fathom track` | Import Claude Code sessions, auto-tag to features |
49
- | `fathom reconcile` | Compare estimates vs actuals per feature |
50
- | `fathom calibrate` | Show drift and suggest profile adjustments |
51
- | `fathom velocity` | Velocity metrics and benchmarks |
52
- | `fathom status` | Project overview with tracking data |
53
- | `fathom pricing` | Show current model pricing |
54
- | `fathom setup` | Scaffold `.claude/` skill + hooks + registry |
55
- | `fathom rename <name>` | Rename project across all config files |
56
- | `fathom validate <spec>` | Validate spec file format |
57
- | `fathom init` | Initialize global config |
58
-
59
- ## How It Works
60
-
61
- ### 1. Estimate vs Intake (Before Work)
62
-
63
- **`estimate`** — quick cost number from a description:
13
+ ## One Command
64
14
 
65
15
  ```bash
66
- fathom estimate "Build a real-time chat system with WebSocket support"
67
- # AI analyzes → L complexity, 205K tokens, $2.51, recommends Sonnet
68
- # Use --complexity M to override, --no-ai for heuristic-only scoring
69
- ```
70
-
71
- **`intake`** — full spec sheet from raw feedback:
72
-
73
- ```bash
74
- # Interactive mode — auto-detects project, shows local files to pick from,
75
- # prompts where to save the spec
76
- fathom intake
77
-
78
- # Or pass everything directly
79
- fathom intake --file meeting-notes.md -o intake-specs/sprint-plan.md
16
+ fathom
80
17
  ```
81
18
 
82
- Intake auto-detects your project name from `.claude/te/config.json`, scans the current directory for markdown files to offer as input, and saves specs to `intake-specs/` by default (configurable). Remembers your preferred output directory for next time.
19
+ That's it. `fathom` with no arguments walks through the entire workflow:
83
20
 
84
- Use `estimate` when you want a quick number. Use `intake` when you want a plan.
21
+ 1. **Intake** extracts work items from your requirements, estimates tokens + cost
22
+ 2. **Build** — generates a context-rich prompt and launches Claude Code
23
+ 3. **Review** — tracks sessions, reconciles estimates vs actuals, calibrates
85
24
 
86
- Both use a calibrated model: base tokens per task type × complexity multiplier × overhead (context resend, tool calls, thinking, error recovery, planning, review).
25
+ New project? It auto-scaffolds everything. Returning project? Shows progress and offers contextual next steps:
87
26
 
88
- ### 2. Track (During Work)
89
-
90
- Fathom automatically discovers Claude Code sessions from `~/.claude/projects/` and tags them to features using a 4-signal cascade:
91
-
92
- 1. **Explicit feature ID** in conversation → 99% confidence
93
- 2. **Git branch** pattern match → 85%
94
- 3. **Keyword** match → 75%
95
- 4. **File path** match → 70%
96
-
97
- Zero configuration needed — just run `fathom track`.
98
-
99
- ### 3. Reconcile + Calibrate (After Work)
100
-
101
- ```bash
102
- fathom reconcile --project myapp
103
- # Shows: Feature | Estimated | Actual | Drift% | Cost | Sessions
104
-
105
- fathom calibrate --project myapp
106
- # Shows: Feature | Drift | Suggested adjustment multiplier
107
27
  ```
28
+ $ fathom
108
29
 
109
- Over time, your estimates get more accurate as the profiles learn from real data.
110
-
111
- ### 4. Velocity Intelligence
30
+ Fathom myproject
31
+ 6/12 features complete (50%) — $8.40 of $14.20 spent
112
32
 
113
- ```bash
114
- fathom velocity --project myapp --benchmarks
115
- # "M-complexity React components: $0.85 avg, 1.1 days, 2.8 sessions"
33
+ What would you like to do?
34
+ Continue building (next: payment-integration)
35
+ New intake add more work
36
+ Review — reconcile recent sessions
37
+ Status overview
116
38
  ```
117
39
 
118
- ## Dashboard
119
-
120
- Fathom includes a real-time web dashboard (Next.js + Convex) with 7 views: overview, projects, burn-down, intake queue, cost analytics, velocity benchmarks, and calibration health.
40
+ Resume from any phase:
121
41
 
122
42
  ```bash
123
- # Set up Convex sync (optional — CLI works fully offline)
124
- export CONVEX_URL=https://your-deployment.convex.cloud
125
-
126
- # All commands auto-sync when CONVEX_URL is set
127
- fathom analyze spec.md --project myapp # → syncs estimates
128
- fathom track --project myapp # → syncs actuals
43
+ fathom --from build # Skip intake
44
+ fathom --from review # Just track + reconcile + calibrate
45
+ fathom --auto # Skip all confirmations
129
46
  ```
130
47
 
131
- See the [full repo](https://github.com/olivelliott/fathom) for dashboard setup.
48
+ ## Build Modes
132
49
 
133
- ## Intake Pipeline
50
+ Fathom offers three ways to build (choice is remembered):
134
51
 
135
- Turn raw feedback into estimated, structured work items:
52
+ - **Launch Claude Code** — opens Claude with full project context, priority queue, and feature details
53
+ - **Worktree** — creates an isolated git branch per feature, launches Claude in it
54
+ - **Manual** — prints the spec path and build prompt so you can build however you want
136
55
 
137
- ```bash
138
- # Interactive — detects files in cwd, prompts for everything
139
- fathom intake
140
-
141
- # Direct — pass input and output explicitly
142
- fathom intake --file meeting-notes.md -o intake-specs/plan.md
143
-
144
- # Pipe-friendly — markdown to stdout
145
- fathom intake --file feedback.md --markdown
146
- ```
147
-
148
- When run interactively, intake will:
149
- 1. Auto-detect your project name (or prompt + save it)
150
- 2. List markdown/text files in your current directory to pick from
151
- 3. Show a results table, then ask where to save the spec
152
- 4. Remember your preferred output directory for next time
56
+ ## Individual Commands
153
57
 
154
- Output is a buildable markdown spec with task checkboxes, acceptance criteria, priority grouping, and cost estimates.
58
+ All commands also work standalone:
155
59
 
156
- Requires `ANTHROPIC_API_KEY` environment variable (auto-loaded from `.env`).
60
+ | Command | What it does |
61
+ |---------|-------------|
62
+ | `fathom` | **Full workflow** — intake → build → review |
63
+ | `fathom intake` | Generate a spec from raw feedback (interactive) |
64
+ | `fathom estimate <desc>` | Quick cost estimate for a single feature |
65
+ | `fathom analyze <spec>` | Parse an existing spec and estimate all features |
66
+ | `fathom setup` | Scaffold project tracking in `.claude/` |
67
+ | `fathom track` | Import Claude Code sessions, auto-tag to features |
68
+ | `fathom reconcile` | Compare estimates vs actuals |
69
+ | `fathom calibrate` | Adjust profiles from real data |
70
+ | `fathom velocity` | Throughput metrics and benchmarks |
71
+ | `fathom status` | Project overview |
72
+ | `fathom rename <name>` | Rename project across config files |
73
+ | `fathom pricing` | Show model pricing |
157
74
 
158
75
  ## Environment Variables
159
76
 
160
- Fathom auto-loads `.env` files from the current directory, so you can set these in your project's `.env` instead of exporting them globally.
161
-
162
- | Variable | Required | Purpose |
163
- |----------|----------|---------|
164
- | `ANTHROPIC_API_KEY` | For `estimate` + `intake` | AI complexity scoring and work item extraction |
165
- | `CONVEX_URL` | Optional | Enable dashboard sync |
166
-
167
- ## Spec Format
77
+ Auto-loaded from `.env` in your project directory.
168
78
 
169
- Fathom parses markdown specs with `### Feature:` headings:
79
+ | Variable | Purpose |
80
+ |----------|---------|
81
+ | `ANTHROPIC_API_KEY` | Required for `intake` and `estimate` |
82
+ | `CONVEX_URL` | Optional — enables real-time dashboard sync |
170
83
 
171
- ```markdown
172
- ### Feature: User Authentication
173
- - **Complexity**: L
174
- - **Category**: Infrastructure
175
- - **Description**: OAuth2 with Google + email/password login
84
+ ## Dashboard
176
85
 
177
- ### Feature: Dashboard
178
- - **Complexity**: M
179
- - **Category**: Frontend
180
- - **Description**: Main dashboard with metrics and charts
181
- ```
86
+ Optional web dashboard (Next.js + Convex) with project burn-down, velocity charts, cost analytics, and more. All CLI commands auto-sync when `CONVEX_URL` is set. See the [repo](https://github.com/olivelliott/fathom) for setup.
182
87
 
183
88
  ## Links
184
89
 
185
- - [GitHub Repository](https://github.com/olivelliott/fathom)
186
- - [Roadmap](https://github.com/olivelliott/fathom/blob/main/ROADMAP.md)
187
- - [Report an Issue](https://github.com/olivelliott/fathom/issues)
90
+ - [GitHub](https://github.com/olivelliott/fathom)
91
+ - [Issues](https://github.com/olivelliott/fathom/issues)
188
92
 
189
93
  ## License
190
94