@seoagent-official/seoagent 1.49.0 → 1.51.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
@@ -38,19 +38,37 @@
38
38
 
39
39
  > **This package is a one-shot scaffolder, not a runtime dependency.** Run `init` once to scaffold `.seoagent/` + the Claude Code skill in your repo. Nothing to keep in `package.json` afterwards. No `postinstall` script — installs are silent and play nicely with npm 11+.
40
40
 
41
- ## Install
41
+ ## Install — pick one
42
+
43
+ You can run SEOAgent two ways. Pick whichever fits how you work; both end up scaffolding the same `.seoagent/` workspace and installing the same Claude Code skill.
44
+
45
+ ### Option A — Global install (recommended for daily use)
46
+
47
+ ```bash
48
+ npm install -g @seoagent-official/seoagent
49
+ seoagent init
50
+ ```
51
+
52
+ **Why this way:** `seoagent` is on your PATH so every command is `seoagent <cmd>` — short to type, instant to run (no npm fetch per call). Claude Code can also call `seoagent <cmd>` directly via its Bash tool, so the skill runs at full speed with no per-call latency.
53
+
54
+ ### Option B — One-shot via `npx` (no global install)
42
55
 
43
56
  ```bash
44
57
  npx -y @seoagent-official/seoagent init
45
58
  ```
46
59
 
47
- The scaffolder will:
60
+ **Why this way:** nothing global on your machine, every invocation pulls the latest published version. Great for CI / one-off use / trying SEOAgent before committing. Trade-off: every command pays a ~2s npm fetch on cold cache, and Claude Code's Bash calls do the same.
61
+
62
+ ---
63
+
64
+ Either way, `init` will:
65
+
48
66
  - Scan your repo for `package.json` `homepage` field + common `.env` files (`NEXT_PUBLIC_SITE_URL`, `SITE_URL`, etc.) to infer your domain
49
67
  - Create `.seoagent/` with `project.md`, `context.md`, and folders for audits, briefs, content
50
68
  - Install the skill at `.claude/skills/seoagent/SKILL.md` so Claude Code picks it up
51
69
  - Add a `PostToolUse` hook to `.claude/settings.json` so edits to `.seoagent/` auto-sync to the cloud (when you're logged in)
52
70
 
53
- The scaffolded sync hook uses `npx -y @seoagent-official/seoagent sync --silent` so the package is fetched on demand from then on no `package.json` entry needed.
71
+ The scaffolded sync hook uses `npx -y @seoagent-official/seoagent sync --silent` either way it's infrastructure that survives your environment changing (so it works even if you later uninstall the global package).
54
72
 
55
73
  Then open Claude Code in this repo and say *"audit my site."* The skill takes it from there.
56
74
 
@@ -61,15 +79,16 @@ Then open Claude Code in this repo and say *"audit my site."* The skill takes it
61
79
 
62
80
  ### Headless / non-interactive
63
81
 
82
+ Global install:
83
+
64
84
  ```bash
65
- npx -y @seoagent-official/seoagent init --yes --domain example.com
85
+ seoagent init --yes --domain example.com
66
86
  ```
67
87
 
68
- ### Optional: install globally for a bare `seoagent` command
88
+ Via npx:
69
89
 
70
90
  ```bash
71
- npm install -g @seoagent-official/seoagent
72
- seoagent init # in your project repo
91
+ npx -y @seoagent-official/seoagent init --yes --domain example.com
73
92
  ```
74
93
 
75
94
  ## Why SEOAgent?
@@ -105,7 +124,11 @@ SEOAgent runs as a CLI on top of the [Claude Agent SDK](https://github.com/anthr
105
124
 
106
125
  **SEO-Optimized Articles** — Articles written from briefs with full SEO frontmatter: meta_title, meta_description, canonical, OpenGraph, Twitter cards, JSON-LD (Article + FAQPage + HowTo as appropriate), image plans. Saved to `.seoagent/content/`.
107
126
 
108
- **Image Generation (Bring Your Own Key)** — Detect `OPENAI_API_KEY`, `FAL_KEY`, or `REPLICATE_API_TOKEN` from your env. Generate hero + inline images with `npx @seoagent-official/seoagent generate-image`. You pay the LLM provider directly.
127
+ **Image Generation (Bring Your Own Key)** — Detect `OPENAI_API_KEY`, `FAL_KEY`, or `REPLICATE_API_TOKEN` from your env. Generate hero + inline images with `seoagent generate-image`. You pay the LLM provider directly.
128
+
129
+ **Open Knowledge Format bundle (AEO/GEO)** — Generate a Google [Open Knowledge Format](https://github.com/GoogleCloudPlatform/knowledge-catalog/tree/main/okf) bundle for your site — a curated, agent-readable knowledge layer so ChatGPT, Claude, Perplexity, and Google's AI understand and cite your business accurately. Claude maps your `.seoagent/` knowledge into OKF markdown; `seoagent okf scaffold` and `seoagent okf validate` handle the structure. Saved to `.seoagent/okf/`.
130
+
131
+ **AI Citation Scorecard (the measurement half of AEO)** — Publishing an OKF bundle makes you *citable*; `seoagent citations` tells you whether it's *working*. It runs a set of buyer-intent questions through the Claude Agent SDK **with live web search** and reports which ones surface your business — a web-grounded proxy for how ChatGPT, Perplexity, and Google's AI Overviews answer. Saved to `.seoagent/citations/scorecard.md`. (Honest by design: it measures Claude + web search, not a per-engine guarantee — re-run over time to watch the trend.)
109
132
 
110
133
  **Compounding Roadmap** — Prioritized action plan that updates after every action. Saved to `.seoagent/roadmap.md`. Persistent changelog at `.seoagent/changelog.md`.
111
134
 
@@ -126,6 +149,13 @@ SEOAgent runs as a CLI on top of the [Claude Agent SDK](https://github.com/anthr
126
149
  content/
127
150
  {article-slug}.md # Article with full SEO frontmatter + JSON-LD
128
151
  images/ # Generated hero + inline images
152
+ okf/ # Open Knowledge Format bundle for AI agents (AEO/GEO)
153
+ index.md # type: Organization — business overview
154
+ concepts/ # type: Concept|Topic — definitive explanations
155
+ faqs/ # type: FAQ — answer-engine Q&A
156
+ articles/ # type: Article — published pages (resource = live URL)
157
+ citations/ # AI citation scorecards (measure the OKF/AEO loop)
158
+ scorecard.md # Which buyer-intent queries surface you, web-grounded
129
159
  pages.md # Sitemap inventory (URL list)
130
160
  competitors.md # Competitor profiles + gaps
131
161
  keywords.md # Master keyword inventory (assigned + backlog)
@@ -141,6 +171,7 @@ SEOAgent runs as a CLI on top of the [Claude Agent SDK](https://github.com/anthr
141
171
  long-tail-articles.md # Long-tail protocol
142
172
  programmatic.md # 12 programmatic SEO playbooks
143
173
  schema-markup.md # JSON-LD library by entity type
174
+ open-knowledge-format.md # OKF bundle protocol (AEO/GEO)
144
175
  keyword-research.md # WebSearch query patterns
145
176
  rewrite-protocol.md # Phase 4b refresh procedure
146
177
  audit-checks.md # Full audit check list with severity tiers
@@ -195,9 +226,9 @@ Three things to notice:
195
226
  2. **Priority badges** (`p:high · ⇧ +12% CTR · ⏱ 2 min`) tell you *which* actions to run first. The picker pre-selects high-priority entries by default — one Enter ships the highest-leverage work.
196
227
  3. **Declines self-ack.** When the agent decides an action is off-strategy, ambiguous, or a false positive, it emits `__DECLINED__: <reason>` and `seoagent ack --failed --reason "…"` fires automatically. You never type the reason by hand.
197
228
 
198
- ## CLI Commands (all 18)
229
+ ## CLI Commands (all 20)
199
230
 
200
- Grouped by what they're for. Run via `npx -y @seoagent-official/seoagent <cmd>` or, after `npm install -g @seoagent-official/seoagent`, just `seoagent <cmd>`.
231
+ Grouped by what they're for. Run as bare `seoagent <cmd>` after the one-time `npm install -g @seoagent-official/seoagent`. (Or `npx -y @seoagent-official/seoagent <cmd>` for a one-shot CI invocation.)
201
232
 
202
233
  **Setup + lifecycle**
203
234
 
@@ -235,6 +266,8 @@ Grouped by what they're for. Run via `npx -y @seoagent-official/seoagent <cmd>`
235
266
  | `keywords --peek "<kw>"` | Free single-keyword DataForSEO peek (no login, daily quota per install). |
236
267
  | `keywords` | Enrich your existing keyword inventory with real search volume + difficulty. `--discover` finds new targets; `--competitors` shows the gap (paid). |
237
268
  | `internal-links` | Generate internal-linking recommendations from your existing pages + topic clusters. |
269
+ | `okf [scaffold\|validate]` | Generate an [Open Knowledge Format](https://github.com/GoogleCloudPlatform/knowledge-catalog/tree/main/okf) bundle for AI agents (AEO/GEO) → `.seoagent/okf/`. `scaffold` starts it; `validate` checks `type` fields, ISO-8601 timestamps + cross-links. The skill fills the content. |
270
+ | `citations` | Measure whether answer engines cite you (AEO/GEO). Runs buyer-intent queries through the Claude Agent SDK **with live web search** → `.seoagent/citations/scorecard.md`. `--queries <1-12>` (default 6), `--model <name>`, `--json`. Uses your `claude login` session or `ANTHROPIC_API_KEY`, same as `process`. |
238
271
  | `generate-image` | Generate hero / inline images via the detected provider (BYO API key). |
239
272
 
240
273
  **Account**
@@ -245,7 +278,7 @@ Grouped by what they're for. Run via `npx -y @seoagent-official/seoagent <cmd>`
245
278
 
246
279
  ## Auto-Sync Hook
247
280
 
248
- `init` writes a `PostToolUse` hook to `.claude/settings.json` so every Write/Edit to `.seoagent/` triggers `npx @seoagent-official/seoagent sync --silent` automatically. No-op when not logged in. The hook is race-safe: a cooperative lock keeps a manual `seoagent sync` from clobbering an in-flight hook run (and vice versa).
281
+ `init` writes a `PostToolUse` hook to `.claude/settings.json` so every Write/Edit to `.seoagent/` triggers `npx -y @seoagent-official/seoagent sync --silent` automatically. The hook deliberately uses the `npx -y` form (not bare `seoagent`) so it survives `npm uninstall -g` and stays current with whatever's published. No-op when not logged in. Race-safe: a cooperative lock keeps a manual `seoagent sync` from clobbering an in-flight hook run.
249
282
 
250
283
  ## SEOAgent Cloud
251
284
 
@@ -259,7 +292,7 @@ The free skill handles audits, strategy, briefs, articles, and persistent state
259
292
  - **Team collaboration** — Invite members, share strategy, coordinate publishing
260
293
  - **Cloud dashboard** — See everything Claude Code did at seoagent.com (also free with any account)
261
294
 
262
- Run `npx @seoagent-official/seoagent login` for the free dashboard, or `npx @seoagent-official/seoagent upgrade` for paid features.
295
+ Run `seoagent login` (or `npx -y @seoagent-official/seoagent login`) for the free dashboard, or `seoagent upgrade` for paid features.
263
296
 
264
297
  ## Pattern Note
265
298