get-marketing-done 1.1.7
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 +168 -0
- package/bin/install.js +909 -0
- package/config.example.json +24 -0
- package/hooks/context-monitor.js +84 -0
- package/hooks/session-start.js +42 -0
- package/hooks/statusline.js +73 -0
- package/package.json +28 -0
- package/scripts/db_manager.py +921 -0
- package/scripts/email_assembler.py +280 -0
- package/scripts/enrichment_runner.py +170 -0
- package/scripts/generate_emails.py +237 -0
- package/scripts/hubspot_importer.py +492 -0
- package/scripts/instantly_uploader.py +225 -0
- package/scripts/marketing-tools.js +586 -0
- package/scripts/report_server.py +503 -0
- package/skills/campaign-progress/SKILL.md +47 -0
- package/skills/campaign-verify/SKILL.md +70 -0
- package/skills/company-context-builder/SKILL.md +253 -0
- package/skills/copy-feedback/SKILL.md +160 -0
- package/skills/crm-connect/SKILL.md +136 -0
- package/skills/data-points-builder/SKILL.md +188 -0
- package/skills/email-generation/SKILL.md +146 -0
- package/skills/list-building/SKILL.md +145 -0
- package/skills/market-problems-deep-research/SKILL.md +156 -0
- package/skills/pause-work/SKILL.md +35 -0
- package/skills/report-server/SKILL.md +46 -0
- package/skills/resume-work/SKILL.md +52 -0
- package/skills/run-instantly/SKILL.md +182 -0
- package/skills/segmentation/SKILL.md +156 -0
- package/skills/table-enrichment/SKILL.md +155 -0
- package/skills/update/SKILL.md +173 -0
package/README.md
ADDED
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
<div align="center">
|
|
2
|
+
|
|
3
|
+
# Get Marketing Done
|
|
4
|
+
|
|
5
|
+
**Full-cycle GTM automation for Claude Code.**
|
|
6
|
+
**From ICP definition to closed deals. Every session compounds on the last.**
|
|
7
|
+
|
|
8
|
+
[](LICENSE)
|
|
9
|
+
[](https://docs.anthropic.com/en/docs/claude-code)
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
npx get-marketing-done
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
```
|
|
16
|
+
Context → Lists → Research → Datapoints → Enrichment → Emails → Feedback → Send → Results
|
|
17
|
+
↑ |
|
|
18
|
+
└──────────────────────────────────────────────────────────────────────────────────────┘
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
*"GTM teams start fresh every campaign, losing context across tools and people.*
|
|
22
|
+
*This system remembers everything. Every campaign makes the next one sharper."*
|
|
23
|
+
|
|
24
|
+
---
|
|
25
|
+
|
|
26
|
+
[Getting Started](#getting-started) · [The Pipeline](#the-pipeline) · [Commands](#commands) · [Configuration](#configuration)
|
|
27
|
+
|
|
28
|
+
</div>
|
|
29
|
+
|
|
30
|
+
---
|
|
31
|
+
|
|
32
|
+
## Getting Started
|
|
33
|
+
|
|
34
|
+
```bash
|
|
35
|
+
npx get-marketing-done
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
The installer prompts you to choose:
|
|
39
|
+
|
|
40
|
+
- **Location** — Global (all projects) or local (current project only)
|
|
41
|
+
|
|
42
|
+
Verify with:
|
|
43
|
+
|
|
44
|
+
```
|
|
45
|
+
/gmd:campaign-progress
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
> [!NOTE]
|
|
49
|
+
> No API keys required to start. The system uses Claude Code's built-in WebSearch, WebFetch, and Playwright MCP. API keys for Extruct, Instantly, and Perplexity unlock additional capabilities.
|
|
50
|
+
|
|
51
|
+
### Staying Updated
|
|
52
|
+
|
|
53
|
+
```bash
|
|
54
|
+
npx get-marketing-done
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
Re-running the installer updates all files. Locally modified files are backed up automatically.
|
|
58
|
+
|
|
59
|
+
### Uninstall
|
|
60
|
+
|
|
61
|
+
```bash
|
|
62
|
+
npx get-marketing-done --uninstall --global
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
Your campaign data (`data/` directory) is preserved.
|
|
66
|
+
|
|
67
|
+
---
|
|
68
|
+
|
|
69
|
+
## The Pipeline
|
|
70
|
+
|
|
71
|
+
Every step builds on the last. Results feed back to the beginning.
|
|
72
|
+
|
|
73
|
+
| Step | Command | What It Does |
|
|
74
|
+
|:----:|---------|--------------|
|
|
75
|
+
| 0 | `/gmd:company-context-builder init` | Define your company, ICP, product, wins, objections |
|
|
76
|
+
| 1 | `/gmd:list-building search <criteria>` | Build a prospect list of 200-500 companies |
|
|
77
|
+
| 2 | `/gmd:market-problems-deep-research <topic>` | Research market problems and what leaders are saying |
|
|
78
|
+
| 3 | `/gmd:data-points-builder define` | Define what signals to collect per company |
|
|
79
|
+
| 4 | `/gmd:table-enrichment run <campaign>` | Enrich companies with those signals |
|
|
80
|
+
| 7 | `/gmd:email-generation create-template` | Define email formula and generate personalized emails |
|
|
81
|
+
| 8 | `/gmd:copy-feedback <company>` | Simulate how a prospect would react to your email |
|
|
82
|
+
| 9 | `/gmd:run-instantly prepare <campaign>` | Upload to Instantly, verify before sending |
|
|
83
|
+
| 10 | `/gmd:company-context-builder update-from-results` | Feed results back — the loop closes |
|
|
84
|
+
|
|
85
|
+
> [!TIP]
|
|
86
|
+
> Start with `/gmd:company-context-builder init`. Everything downstream depends on good context.
|
|
87
|
+
|
|
88
|
+
---
|
|
89
|
+
|
|
90
|
+
## Commands
|
|
91
|
+
|
|
92
|
+
### Core Workflow
|
|
93
|
+
|
|
94
|
+
| Command | Arguments | Example |
|
|
95
|
+
|---------|-----------|---------|
|
|
96
|
+
| `company-context-builder` | `init`, `show`, `update-from-call <path>`, `update-from-results <campaign>` | `/gmd:company-context-builder init` |
|
|
97
|
+
| `list-building` | `search <criteria>`, `lookalike <company>`, `refine` | `/gmd:list-building lookalike Stripe` |
|
|
98
|
+
| `market-problems-deep-research` | `<industry or problem>` | `/gmd:market-problems-deep-research "data pipeline reliability"` |
|
|
99
|
+
| `data-points-builder` | `define`, `research <company>`, `bulk-research` | `/gmd:data-points-builder define` |
|
|
100
|
+
| `table-enrichment` | `run <campaign>`, `status`, `validate` | `/gmd:table-enrichment status` |
|
|
101
|
+
| `email-generation` | `create-template`, `generate <company>`, `bulk-generate <segment>`, `iterate` | `/gmd:email-generation bulk-generate fintech` |
|
|
102
|
+
| `copy-feedback` | `<company or person>` | `/gmd:copy-feedback "Jane Smith at Acme"` |
|
|
103
|
+
| `run-instantly` | `prepare <campaign>`, `upload <campaign>`, `verify <campaign>`, `results <campaign>` | `/gmd:run-instantly prepare q1-fintech` |
|
|
104
|
+
|
|
105
|
+
### Session Management
|
|
106
|
+
|
|
107
|
+
| Command | What It Does |
|
|
108
|
+
|---------|--------------|
|
|
109
|
+
| `/gmd:campaign-progress` | Visual pipeline dashboard — what's done, what's next |
|
|
110
|
+
| `/gmd:campaign-verify <campaign>` | Verify campaign readiness (exists / substantive / wired) |
|
|
111
|
+
| `/gmd:report-server start` | Launch a local browser dashboard at `http://127.0.0.1:8487` |
|
|
112
|
+
| `/gmd:pause-work <reason>` | Save state for cross-session persistence |
|
|
113
|
+
| `/gmd:resume-work` | Restore state and route to the next action |
|
|
114
|
+
|
|
115
|
+
---
|
|
116
|
+
|
|
117
|
+
## Configuration
|
|
118
|
+
|
|
119
|
+
### API Keys (Optional)
|
|
120
|
+
|
|
121
|
+
Edit `~/.claude/get-marketing-done/config.json`:
|
|
122
|
+
|
|
123
|
+
```json
|
|
124
|
+
{
|
|
125
|
+
"extruct_api_key": "",
|
|
126
|
+
"instantly_api_key": "",
|
|
127
|
+
"perplexity_api_key": ""
|
|
128
|
+
}
|
|
129
|
+
```
|
|
130
|
+
|
|
131
|
+
| Service | Used For | Without It |
|
|
132
|
+
|---------|----------|------------|
|
|
133
|
+
| Extruct | Structured data enrichment | Playwright scraping or web research |
|
|
134
|
+
| Instantly | Email sequencing and sending | CSV export for any email tool |
|
|
135
|
+
| Perplexity | Deep market research | Claude's built-in WebSearch |
|
|
136
|
+
|
|
137
|
+
### Quality Gates
|
|
138
|
+
|
|
139
|
+
Configurable in `config.json`. Prevents sending bad outreach:
|
|
140
|
+
|
|
141
|
+
| Gate | Default |
|
|
142
|
+
|------|---------|
|
|
143
|
+
| Context required before lists | true |
|
|
144
|
+
| Research required before emails | true |
|
|
145
|
+
| Enrichment rate minimum (50%) | true |
|
|
146
|
+
| Copy feedback before send | false |
|
|
147
|
+
| Manual verify before send | true |
|
|
148
|
+
|
|
149
|
+
---
|
|
150
|
+
|
|
151
|
+
## How It Works
|
|
152
|
+
|
|
153
|
+
- **Context compounds** — nothing gets thrown away between campaigns
|
|
154
|
+
- **Strict email assembly** — you define the formula, a script assembles it. No AI freestyling
|
|
155
|
+
- **Manual verification** — never auto-sends. Always requires human sign-off
|
|
156
|
+
- **Zero lock-in** — SQLite + CSV + Markdown. Your data is yours
|
|
157
|
+
|
|
158
|
+
---
|
|
159
|
+
|
|
160
|
+
## License
|
|
161
|
+
|
|
162
|
+
MIT
|
|
163
|
+
|
|
164
|
+
<div align="center">
|
|
165
|
+
|
|
166
|
+
*Stop starting from scratch. Start compounding.*
|
|
167
|
+
|
|
168
|
+
</div>
|