fathom-cli 0.1.0 → 0.1.1

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.
Files changed (2) hide show
  1. package/README.md +157 -0
  2. package/package.json +1 -1
package/README.md ADDED
@@ -0,0 +1,157 @@
1
+ # fathom-cli
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
+ ```
8
+
9
+ ## Install
10
+
11
+ ```bash
12
+ npm install -g fathom-cli
13
+ ```
14
+
15
+ ## Quick Start
16
+
17
+ ```bash
18
+ # Estimate a feature in seconds
19
+ fathom estimate "React dashboard with OAuth" --complexity L
20
+
21
+ # Analyze a full spec with multiple features
22
+ fathom analyze spec.md --project myapp
23
+
24
+ # Scaffold tracking for an existing project
25
+ fathom setup --project myapp
26
+
27
+ # Import and auto-tag Claude Code sessions
28
+ fathom track --project myapp
29
+
30
+ # Compare estimates vs actuals
31
+ fathom reconcile --project myapp
32
+
33
+ # See velocity metrics
34
+ fathom velocity --project myapp
35
+ ```
36
+
37
+ ## Commands
38
+
39
+ | Command | Description |
40
+ |---------|-------------|
41
+ | `fathom estimate <desc>` | Quick single-feature token + cost estimate |
42
+ | `fathom analyze <spec>` | Parse spec, estimate all features, generate registry |
43
+ | `fathom intake <text>` | Extract work items from raw feedback via Claude API |
44
+ | `fathom track` | Import Claude Code sessions, auto-tag to features |
45
+ | `fathom reconcile` | Compare estimates vs actuals per feature |
46
+ | `fathom calibrate` | Show drift and suggest profile adjustments |
47
+ | `fathom velocity` | Velocity metrics and benchmarks |
48
+ | `fathom status` | Project overview with tracking data |
49
+ | `fathom pricing` | Show current model pricing |
50
+ | `fathom setup` | Scaffold `.claude/` skill + hooks + registry |
51
+ | `fathom validate <spec>` | Validate spec file format |
52
+ | `fathom init` | Initialize global config |
53
+
54
+ ## How It Works
55
+
56
+ ### 1. Estimate (Before Work)
57
+
58
+ Write a spec with `### Feature:` headings, or just describe a feature:
59
+
60
+ ```bash
61
+ fathom estimate "Build a real-time chat system with WebSocket support" --complexity L
62
+ # → 205,865 tokens, $2.51 estimated cost, recommends Sonnet
63
+ ```
64
+
65
+ Estimates use a calibrated model: base tokens per task type × complexity multiplier × overhead (context resend, tool calls, thinking, error recovery, planning, review).
66
+
67
+ ### 2. Track (During Work)
68
+
69
+ Fathom automatically discovers Claude Code sessions from `~/.claude/projects/` and tags them to features using a 4-signal cascade:
70
+
71
+ 1. **Explicit feature ID** in conversation → 99% confidence
72
+ 2. **Git branch** pattern match → 85%
73
+ 3. **Keyword** match → 75%
74
+ 4. **File path** match → 70%
75
+
76
+ Zero configuration needed — just run `fathom track`.
77
+
78
+ ### 3. Reconcile + Calibrate (After Work)
79
+
80
+ ```bash
81
+ fathom reconcile --project myapp
82
+ # Shows: Feature | Estimated | Actual | Drift% | Cost | Sessions
83
+
84
+ fathom calibrate --project myapp
85
+ # Shows: Feature | Drift | Suggested adjustment multiplier
86
+ ```
87
+
88
+ Over time, your estimates get more accurate as the profiles learn from real data.
89
+
90
+ ### 4. Velocity Intelligence
91
+
92
+ ```bash
93
+ fathom velocity --project myapp --benchmarks
94
+ # "M-complexity React components: $0.85 avg, 1.1 days, 2.8 sessions"
95
+ ```
96
+
97
+ ## Dashboard
98
+
99
+ 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.
100
+
101
+ ```bash
102
+ # Set up Convex sync (optional — CLI works fully offline)
103
+ export CONVEX_URL=https://your-deployment.convex.cloud
104
+
105
+ # All commands auto-sync when CONVEX_URL is set
106
+ fathom analyze spec.md --project myapp # → syncs estimates
107
+ fathom track --project myapp # → syncs actuals
108
+ ```
109
+
110
+ See the [full repo](https://github.com/olivelliott/fathom) for dashboard setup.
111
+
112
+ ## Intake Pipeline
113
+
114
+ Turn raw feedback into estimated, structured work items:
115
+
116
+ ```bash
117
+ # From text
118
+ fathom intake "Users say the calendar is slow and Zoom links are missing" --project myapp
119
+
120
+ # From a file
121
+ fathom intake --file meeting-notes.md --project myapp --markdown
122
+ ```
123
+
124
+ Requires `ANTHROPIC_API_KEY` environment variable.
125
+
126
+ ## Environment Variables
127
+
128
+ | Variable | Required | Purpose |
129
+ |----------|----------|---------|
130
+ | `ANTHROPIC_API_KEY` | For `intake` only | Claude API for work item extraction |
131
+ | `CONVEX_URL` | Optional | Enable dashboard sync |
132
+
133
+ ## Spec Format
134
+
135
+ Fathom parses markdown specs with `### Feature:` headings:
136
+
137
+ ```markdown
138
+ ### Feature: User Authentication
139
+ - **Complexity**: L
140
+ - **Category**: Infrastructure
141
+ - **Description**: OAuth2 with Google + email/password login
142
+
143
+ ### Feature: Dashboard
144
+ - **Complexity**: M
145
+ - **Category**: Frontend
146
+ - **Description**: Main dashboard with metrics and charts
147
+ ```
148
+
149
+ ## Links
150
+
151
+ - [GitHub Repository](https://github.com/olivelliott/fathom)
152
+ - [Roadmap](https://github.com/olivelliott/fathom/blob/main/ROADMAP.md)
153
+ - [Report an Issue](https://github.com/olivelliott/fathom/issues)
154
+
155
+ ## License
156
+
157
+ MIT
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "fathom-cli",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "description": "Workflow intelligence for AI-augmented development — estimate, track, reconcile, calibrate",
5
5
  "type": "module",
6
6
  "bin": {