openads-ai 0.3.0 β 0.5.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 +110 -20
- package/dist/cli.js +790 -106
- package/dist/doctor.js +39 -0
- package/dist/mcp-extension.js +139 -10
- package/dist/schedule.js +58 -5
- package/dist/setup.js +141 -9
- package/package.json +1 -1
- package/skills/analytics/analytics.md +92 -22
- package/skills/automation/autoresearch-plan.md +2 -1
- package/skills/automation/autoresearch.md +7 -0
- package/skills/express/analytics.md +23 -0
- package/skills/express/audit.md +28 -0
- package/skills/express/autoresearch.md +32 -0
- package/skills/express/copywriting.md +31 -0
- package/skills/express/cro.md +26 -0
- package/skills/express/organic-social.md +24 -0
- package/skills/express/product.md +11 -0
- package/skills/express/research.md +26 -0
- package/skills/express/strategy.md +28 -0
- package/skills/organic/facebook-page.md +47 -0
- package/skills/organic/organic-social.md +171 -0
- package/skills/research/competitors.md +74 -33
- package/skills/research/customer-research.md +70 -22
package/README.md
CHANGED
|
@@ -36,7 +36,49 @@ OpenAds is an **open-source CLI tool** that turns any AI model into a marketing
|
|
|
36
36
|
| π **Direct platform access** | Connect your Google Ads, Google Analytics (GA4), and Meta accounts. The AI reads your live data β no more copy-pasting reports. |
|
|
37
37
|
| π€ **Bring your own model** | Use Google Gemini, OpenAI, Claude, or a local model running on your machine. Your choice. |
|
|
38
38
|
| π‘οΈ **Nothing goes live without you** | The AI can read freely, but every write operation (campaign change, budget edit) requires your explicit approval. |
|
|
39
|
-
| β‘ **
|
|
39
|
+
| β‘ **Three experience tiers** | Express for local models, Standard for mid-tier, Full for frontier β the same beautiful UI adapts its depth to your model's capability. |
|
|
40
|
+
|
|
41
|
+
---
|
|
42
|
+
|
|
43
|
+
## β‘ Three Experience Tiers β One Beautiful Interface
|
|
44
|
+
|
|
45
|
+
OpenAds automatically adapts its entire experience based on your AI model's capability. Same menus, same polish, fundamentally different depth.
|
|
46
|
+
|
|
47
|
+
```
|
|
48
|
+
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
|
|
49
|
+
β β‘ Express π Standard π Full β
|
|
50
|
+
β Llama 8B Gemini Flash GPT-4o β
|
|
51
|
+
β Mistral 7B GPT-4o Mini Claude Sonnet β
|
|
52
|
+
β Phi-3 Llama 70B Gemini Pro β
|
|
53
|
+
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
|
|
54
|
+
β System prompt: System prompt: System prompt: β
|
|
55
|
+
β ~150 words ~300 words ~500 words β
|
|
56
|
+
β β
|
|
57
|
+
β Skills: compact Skills: full Skills: full β
|
|
58
|
+
β (~100 words each) (~400 words each) + advanced β
|
|
59
|
+
β β
|
|
60
|
+
β MCP tools: none MCP tools: 6 MCP tools: 11 β
|
|
61
|
+
β (context-based) (read-only) (read + write) β
|
|
62
|
+
β β
|
|
63
|
+
β Menu: 7 items Menu: 9 items Menu: 10 items β
|
|
64
|
+
β AR: 4 commands AR: 8 commands AR: 12 commands β
|
|
65
|
+
β β
|
|
66
|
+
β Output: bullets Output: tables Output: deep β
|
|
67
|
+
β & quick tables & structured analysis with β
|
|
68
|
+
β reports cross-platform β
|
|
69
|
+
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
### Why tiers matter
|
|
73
|
+
|
|
74
|
+
A marketing manager running **Llama 3.1 8B** locally shouldn't get a *worse* experience β they should get a *different but equally polished* experience. Express mode delivers:
|
|
75
|
+
|
|
76
|
+
- **Fewer menu items** β less decision fatigue
|
|
77
|
+
- **Compact skill files** β the model follows instructions reliably
|
|
78
|
+
- **No MCP tool chains** β no multi-step failures
|
|
79
|
+
- **Structured output templates** β consistent, useful results every time
|
|
80
|
+
|
|
81
|
+
When you're ready for more depth, just run `openads` β Settings β Change experience tier.
|
|
40
82
|
|
|
41
83
|
---
|
|
42
84
|
|
|
@@ -78,8 +120,10 @@ Paste this command into your Terminal and press **Enter**:
|
|
|
78
120
|
```bash
|
|
79
121
|
openads setup
|
|
80
122
|
```
|
|
81
|
-
This launches a
|
|
82
|
-
* **Select your
|
|
123
|
+
This launches a 6-step interactive setup wizard where you can:
|
|
124
|
+
* **Select your AI model** (Google Gemini, OpenAI, Claude, or a free local model)
|
|
125
|
+
* **Choose your experience tier** (Express β‘, Standard π, or Full π β auto-recommended based on your model)
|
|
126
|
+
* **Set your operational mode** (Audit for read-only safety, or Launch for active campaign changes)
|
|
83
127
|
* **Link your ad accounts** (Google Ads, GA4, and/or Meta Ads)
|
|
84
128
|
* **Describe your business** (so the AI writes copy tailored exactly to your brand)
|
|
85
129
|
|
|
@@ -102,6 +146,24 @@ openads setup
|
|
|
102
146
|
openads
|
|
103
147
|
```
|
|
104
148
|
|
|
149
|
+
### π Want to run 100% locally and offline?
|
|
150
|
+
|
|
151
|
+
```bash
|
|
152
|
+
# 1. Install Ollama (free, open-source)
|
|
153
|
+
brew install ollama # Mac
|
|
154
|
+
# or: curl -fsSL https://ollama.com/install.sh | sh # Linux
|
|
155
|
+
|
|
156
|
+
# 2. Pull a model
|
|
157
|
+
ollama pull llama3.1
|
|
158
|
+
|
|
159
|
+
# 3. Install OpenAds and pick "Local AI" + "Express" in setup
|
|
160
|
+
npm install -g openads-ai
|
|
161
|
+
openads setup
|
|
162
|
+
|
|
163
|
+
# 4. Run β no internet required
|
|
164
|
+
openads
|
|
165
|
+
```
|
|
166
|
+
|
|
105
167
|
---
|
|
106
168
|
|
|
107
169
|
## π‘ What can I do with it?
|
|
@@ -142,6 +204,22 @@ Here are some real examples β just type what you need:
|
|
|
142
204
|
|
|
143
205
|
---
|
|
144
206
|
|
|
207
|
+
## π¬ Autoresearch β Autonomous Marketing Loops
|
|
208
|
+
|
|
209
|
+
Autoresearch is OpenAds' marquee feature: an autonomous loop that generates, scores, and iterates on marketing hypotheses without you lifting a finger.
|
|
210
|
+
|
|
211
|
+
The menu adapts to your tier:
|
|
212
|
+
|
|
213
|
+
| Tier | Available Commands | What you get |
|
|
214
|
+
|---|---|---|
|
|
215
|
+
| β‘ Express | Generate, Plan, Debug, Fix | 4 commands, flat menu, 2 loop cycles |
|
|
216
|
+
| π Standard | + Discover, Analyze, Ship | 8 commands, 5 phases, 3 loop cycles |
|
|
217
|
+
| π Full | + Validate (Predict, Probe, Reason, Scenario) | 12 commands, 6 phases, 5 loop cycles |
|
|
218
|
+
|
|
219
|
+
**Full tier exclusive**: The Validate phase includes multi-persona debates (5 expert personas evaluate your idea), stress-tests (8 personas attack your brief), and adversarial reasoning on key strategy calls.
|
|
220
|
+
|
|
221
|
+
---
|
|
222
|
+
|
|
145
223
|
## π§ Memory β Gets Smarter Every Session
|
|
146
224
|
|
|
147
225
|
OpenAds remembers what it learns about your business. After each conversation, the AI appends key insights to a plain markdown file at `~/.openads/context/my-business.md`:
|
|
@@ -197,20 +275,11 @@ To align with our **Radical Simplicity & Safety by Default** principles, OpenAds
|
|
|
197
275
|
* **Audit Mode (Safe / Read-only β Recommended)**: Strict read-only guidelines. The AI can pull live campaign statistics, analyze keywords, find budget waste, and recommend landing page optimizations, but is entirely blocked from making active changes.
|
|
198
276
|
* **Launch Mode (Read-Write)**: Active campaign changes. Authorizes write modifications (e.g. pausing campaigns, scaling bids, altering budgets, or testing ad creative) but strictly mandates a clear visual preview card and an explicit **confirmation prompt (Y/N)** before executing.
|
|
199
277
|
|
|
200
|
-
Configure your default mode anytime by running `openads
|
|
278
|
+
Configure your default mode anytime by running `openads` β Settings β Change operational mode.
|
|
201
279
|
|
|
202
280
|
---
|
|
203
281
|
|
|
204
|
-
##
|
|
205
|
-
|
|
206
|
-
- **Runs 100% locally.** OpenAds is not a cloud service. Nothing leaves your machine except the API calls you authorize.
|
|
207
|
-
- **No telemetry.** We don't track usage, store data, or phone home.
|
|
208
|
-
- **Your keys stay on disk.** API keys and tokens are saved to `~/.openads/` on your hard drive. They never touch our servers.
|
|
209
|
-
- **Explicit approval for all writes.** The AI previews every campaign change before execution. Nothing goes live without your `Y`.
|
|
210
|
-
|
|
211
|
-
---
|
|
212
|
-
|
|
213
|
-
## π©Ί Troubleshooting
|
|
282
|
+
## π©Ί Diagnostics
|
|
214
283
|
|
|
215
284
|
Run the built-in diagnostics to check your setup:
|
|
216
285
|
|
|
@@ -218,24 +287,44 @@ Run the built-in diagnostics to check your setup:
|
|
|
218
287
|
openads doctor
|
|
219
288
|
```
|
|
220
289
|
|
|
221
|
-
This verifies your config file, API keys, platform connections (live token checks),
|
|
290
|
+
This verifies your config file, API keys, platform connections (live token checks), required tools like `uvx`, and **local AI readiness** (checks if Ollama is running and your model is available).
|
|
291
|
+
|
|
292
|
+
---
|
|
293
|
+
|
|
294
|
+
## π Security & Privacy
|
|
295
|
+
|
|
296
|
+
- **Runs 100% locally.** OpenAds is not a cloud service. Nothing leaves your machine except the API calls you authorize.
|
|
297
|
+
- **No telemetry.** We don't track usage, store data, or phone home.
|
|
298
|
+
- **Your keys stay on disk.** API keys and tokens are saved to `~/.openads/` on your hard drive. They never touch our servers.
|
|
299
|
+
- **Explicit approval for all writes.** The AI previews every campaign change before execution. Nothing goes live without your `Y`.
|
|
222
300
|
|
|
223
301
|
---
|
|
224
302
|
|
|
225
303
|
## πΊοΈ Roadmap
|
|
226
304
|
|
|
305
|
+
### Shipped β
|
|
227
306
|
- [x] Google Ads & GA4 integration via MCP
|
|
228
307
|
- [x] Meta Ads integration via MCP
|
|
229
308
|
- [x] Interactive setup wizard with live token verification
|
|
230
|
-
- [x]
|
|
231
|
-
- [x]
|
|
309
|
+
- [x] 24 pre-built marketing skills across 7 categories
|
|
310
|
+
- [x] 12 autonomous research loop commands (Autoresearch)
|
|
232
311
|
- [x] Published to npm (`npm install -g openads-ai`)
|
|
233
312
|
- [x] Memory system β AI learns about your business over time
|
|
234
313
|
- [x] Scheduled automations β daily health checks, budget alerts, weekly reports
|
|
235
|
-
- [
|
|
314
|
+
- [x] **Three experience tiers** β Express β‘ / Standard π / Full π
|
|
315
|
+
- [x] Express skill variants β compact 100-word skill files optimized for local models
|
|
316
|
+
- [x] Tier-aware menus, prompts, tool chains, and output depth
|
|
317
|
+
- [x] Local AI diagnostics β Ollama reachability, model availability checks
|
|
318
|
+
- [x] Settings quick-switch β change tier and mode without re-running setup
|
|
319
|
+
|
|
320
|
+
### Coming Next π
|
|
321
|
+
- [ ] Telegram/WhatsApp bot gateway β talk to your ads from your phone
|
|
236
322
|
- [ ] LinkedIn Ads integration
|
|
237
|
-
- [ ] TikTok Ads integration (leveraging their
|
|
238
|
-
- [ ] Pinterest Ads integration (leveraging
|
|
323
|
+
- [ ] TikTok Ads integration (leveraging their [TikTok Ads MCP Server](https://digiday.com/media/tiktok-world-ads-mcp-server/))
|
|
324
|
+
- [ ] Pinterest Ads integration (leveraging [MCP Ecosystem](https://medium.com/pinterest-engineering/building-an-mcp-ecosystem-at-pinterest-c3b6b1b9e0f6))
|
|
325
|
+
- [ ] Visual report dashboards in the terminal
|
|
326
|
+
- [ ] Headless `--print` mode for CI/CD pipelines
|
|
327
|
+
- [ ] Community-contributed skill packs
|
|
239
328
|
|
|
240
329
|
---
|
|
241
330
|
|
|
@@ -252,6 +341,7 @@ Read [CONTRIBUTING.md](CONTRIBUTING.md) to get started.
|
|
|
252
341
|
1. **Radical Simplicity** β Non-technical marketers must feel at home. No forcing users to learn code, prompt engineering, or API error messages.
|
|
253
342
|
2. **Marketers First** β We design around marketing workflows (audits, copy, analysis), not software concepts.
|
|
254
343
|
3. **Safety by Default** β AI should never spend money or publish campaigns without human approval.
|
|
344
|
+
4. **Model Parity** β A $0 local model should deliver a polished experience, not a broken one. Express mode exists to make this real.
|
|
255
345
|
|
|
256
346
|
---
|
|
257
347
|
|