create-battle-plan 1.1.1 → 1.1.2
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/package.json +1 -1
- package/template/CLAUDE.md +71 -0
package/package.json
CHANGED
package/template/CLAUDE.md
CHANGED
|
@@ -152,3 +152,74 @@ When the user says `/wrap-up`, run this end-of-day sequence:
|
|
|
152
152
|
- Tomorrow's top priorities
|
|
153
153
|
|
|
154
154
|
**Step 6 — Commit:** Ask: "Want me to commit today's updates?" If yes, commit with message: `eod YYYY-MM-DD: [summary]`
|
|
155
|
+
|
|
156
|
+
---
|
|
157
|
+
|
|
158
|
+
## Outreach System (Add-on)
|
|
159
|
+
|
|
160
|
+
**Trigger:** If `outreach/leads.csv` exists in the project, the outreach system is active.
|
|
161
|
+
|
|
162
|
+
### Overview
|
|
163
|
+
|
|
164
|
+
The outreach system tracks a LinkedIn (or any channel) outreach pipeline through `outreach/leads.csv`. This CSV is the **single source of truth** for all outreach metrics — `metrics.yml` is derived from it, never edited directly for outreach numbers.
|
|
165
|
+
|
|
166
|
+
### First-Time Setup
|
|
167
|
+
|
|
168
|
+
If `outreach/leads.csv` exists but `.outreach-initialized` does NOT exist, read `outreach/README.md` and follow the Interactive Setup instructions to onboard the user.
|
|
169
|
+
|
|
170
|
+
### Daily Workflow Integration
|
|
171
|
+
|
|
172
|
+
The outreach system plugs into the cascade protocol:
|
|
173
|
+
|
|
174
|
+
1. User runs `node tools/outreach/daily-targets.js` → generates blitz checklist
|
|
175
|
+
2. User sends messages, ticks checkboxes
|
|
176
|
+
3. User runs `node tools/outreach/flush-targets.js` → updates leads.csv
|
|
177
|
+
4. `flush-targets.js` calls `sync-metrics.js` → derives metrics.yml from CSV
|
|
178
|
+
5. `sync-metrics.js` calls `update-dashboard.js` → regenerates mermaid dashboard
|
|
179
|
+
6. The cascade protocol takes over: metrics.yml → battle-plan.md → domain docs
|
|
180
|
+
|
|
181
|
+
### Scripts Reference
|
|
182
|
+
|
|
183
|
+
| Script | Purpose |
|
|
184
|
+
|--------|---------|
|
|
185
|
+
| `tools/outreach/daily-targets.js [N]` | Generate daily blitz checklist |
|
|
186
|
+
| `tools/outreach/flush-targets.js` | Process checked items from blitz |
|
|
187
|
+
| `tools/outreach/flush-updates.js` | Parse free-form natural language updates |
|
|
188
|
+
| `tools/outreach/flush-accepts.js` | Batch-process connection accepts |
|
|
189
|
+
| `tools/outreach/flush-inbox.js` | Add leads from manual URL list |
|
|
190
|
+
| `tools/outreach/sync-metrics.js` | Derive metrics.yml from leads.csv |
|
|
191
|
+
| `tools/outreach/update-dashboard.js` | Regenerate mermaid conversion dashboard |
|
|
192
|
+
| `tools/outreach/stats.js` | Print pipeline summary |
|
|
193
|
+
| `tools/outreach/lookup.js "Name"` | Fuzzy-search leads |
|
|
194
|
+
|
|
195
|
+
### Metrics Derivation
|
|
196
|
+
|
|
197
|
+
These metrics in `metrics.yml` are **derived** from leads.csv (never hand-edit):
|
|
198
|
+
|
|
199
|
+
- `outreach_sent` = leads with status past `new` or `contacted_at` set
|
|
200
|
+
- `responses` = `replied_at` set or status past `replied`
|
|
201
|
+
- `invitations_accepted` = leads tagged `accepted`
|
|
202
|
+
- `discovery_calls` = `call_at` in the past or status `call_done`
|
|
203
|
+
- `calls_booked` = status `call_booked` (snapshot)
|
|
204
|
+
- `verbal_commitments` = status `verbal`, `loi`, or `paying`
|
|
205
|
+
|
|
206
|
+
### Template System
|
|
207
|
+
|
|
208
|
+
Message templates live in `tools/outreach/templates.json`. The daily blitz assigns templates based on the `country_template_map` field (or round-robin if no mapping). Template performance (sent/accepted/replied/calls) is tracked automatically and displayed in the blitz checklist.
|
|
209
|
+
|
|
210
|
+
### Mermaid Dashboard
|
|
211
|
+
|
|
212
|
+
`docs/analysis/icp-conversion.md` is auto-generated — never hand-edit. It contains:
|
|
213
|
+
- Overall funnel chart (contacted → accepted → replied → call → verbal)
|
|
214
|
+
- Conversion breakdown by role, company size, country, company type
|
|
215
|
+
- Template A/B comparison
|
|
216
|
+
- Kill/Keep/Scale verdicts per segment
|
|
217
|
+
|
|
218
|
+
View in any mermaid-capable renderer (GitHub, VS Code preview, etc.).
|
|
219
|
+
|
|
220
|
+
### Adapting the System
|
|
221
|
+
|
|
222
|
+
- **Different metrics:** Edit the derivation rules in `tools/outreach/sync-metrics.js`
|
|
223
|
+
- **Different time horizon:** The system tracks weekly breakdowns — adjust `daily-targets.js` count parameter
|
|
224
|
+
- **Different channels:** The `channel` column supports any value (connection, inmail, email, etc.)
|
|
225
|
+
- **Different statuses:** Add to `VALID_STATUS` in `tools/outreach/lib/leads.js` and update derivation rules
|