@seoagent-official/seoagent 1.47.0 → 1.49.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 +101 -15
- package/index.js +103 -93
- package/package.json +24 -3
package/README.md
CHANGED
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
|
|
9
9
|
<p align="center">
|
|
10
10
|
<strong>The persistent AI SEO agent for <a href="https://www.anthropic.com/claude-code">Claude Code</a>.</strong><br/>
|
|
11
|
+
Other SEO tools write the prompt — SEOAgent runs it.<br/>
|
|
11
12
|
Audits • Keyword strategy • Content briefs • Optimized articles — all persisted in <code>.seoagent/</code>.
|
|
12
13
|
</p>
|
|
13
14
|
|
|
@@ -86,6 +87,14 @@ SEOAgent fixes this with one unified skill that persists all work:
|
|
|
86
87
|
| **Continuity** | None | Roadmap compounds over time, changelog tracks progress |
|
|
87
88
|
| **Page types** | Generic | Dedicated protocols for landing / pillar / sub_pillar / long_tail / programmatic |
|
|
88
89
|
|
|
90
|
+
### What about "agentic SEO" tools that hand you a prompt?
|
|
91
|
+
|
|
92
|
+
A new wave of SEO tools — Hado SEO's *"SEO Trace"*, and others in the same shape — diagnose your page (GSC + SERP + Googlebot render) and emit a paste-ready prompt you drop into Lovable, Cursor, Bolt, or Claude Code yourself. That's better than nothing, but the *work* lives on you: every action becomes "copy the prompt, switch tools, paste, wait, switch back, verify."
|
|
93
|
+
|
|
94
|
+
SEOAgent runs as a CLI on top of the [Claude Agent SDK](https://github.com/anthropics/claude-agent-sdk-typescript). `seoagent process` pulls the inbox of pending actions, picks the ones you select, and runs each one end-to-end in your repo — the agent reads the action file, edits the files, verifies the result, and closes the action server-side. No copy-paste step.
|
|
95
|
+
|
|
96
|
+
> **Other tools write the prompt. SEOAgent runs it.**
|
|
97
|
+
|
|
89
98
|
## What You Get (Free, No Account)
|
|
90
99
|
|
|
91
100
|
**Technical SEO Audit** — Claude fetches your pages and runs a structured audit: meta tags, headings, internal links, Core Web Vitals, schema readiness, AI search optimization. Findings saved with severity tags to `.seoagent/audit/latest.md` as markdown checkboxes you can flip when fixed.
|
|
@@ -137,29 +146,106 @@ SEOAgent fixes this with one unified skill that persists all work:
|
|
|
137
146
|
audit-checks.md # Full audit check list with severity tiers
|
|
138
147
|
```
|
|
139
148
|
|
|
140
|
-
##
|
|
149
|
+
## The Autopilot Loop
|
|
141
150
|
|
|
142
|
-
|
|
151
|
+
`seoagent process` is the executive function over the rest of the CLI. It's how SEOAgent runs work end-to-end without you driving every step manually:
|
|
152
|
+
|
|
153
|
+
```
|
|
154
|
+
┌──────────────────────┐ ┌──────────────────────┐ ┌──────────────────────┐ ┌──────────────────────┐
|
|
155
|
+
│ Cloud autopilot │ │ CLI inbox │ │ Claude Agent SDK │ │ Cloud dashboard │
|
|
156
|
+
│ (seoagent.com) │ → │ .seoagent/inbox/ │ → │ seoagent process │ → │ Action closed │
|
|
157
|
+
│ detects + queues │ │ (sync pulls down) │ │ edits files, │ │ with applied OR │
|
|
158
|
+
│ technical fixes, │ │ Read with │ │ decides apply │ │ declined + reason │
|
|
159
|
+
│ content gaps, │ │ seoagent inbox │ │ vs decline, │ │ (seoagent ack │
|
|
160
|
+
│ off-strategy KWs… │ │ │ │ emits verdict │ │ fires automatically)│
|
|
161
|
+
└──────────────────────┘ └──────────────────────┘ └──────────────────────┘ └──────────────────────┘
|
|
162
|
+
```
|
|
163
|
+
|
|
164
|
+
What that looks like in your terminal:
|
|
143
165
|
|
|
144
166
|
```bash
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
167
|
+
$ seoagent sync # Pull pending actions from your dashboard
|
|
168
|
+
✓ Pulled 3 pending actions → .seoagent/inbox/
|
|
169
|
+
|
|
170
|
+
$ seoagent inbox # See what's queued
|
|
171
|
+
SEOAgent inbox · 3 pending actions
|
|
172
|
+
▸ id 2017 · canonical · high · p:high · ⇧ +12% CTR · ⏱ 2 min — Auth pages in sitemap.xml
|
|
173
|
+
▸ id 2018 · meta · medium · p:medium · ⇧ +4 positions · ⏱ 5 min — Generic meta description on /pricing
|
|
174
|
+
▸ id 2176 · new-landing-page · medium — New page for keyword "3/0"
|
|
175
|
+
|
|
176
|
+
$ seoagent process # Pick what to run; agent does the rest
|
|
177
|
+
[1/2] · id 2017 · canonical · high
|
|
178
|
+
⏺ Read(apps/web/src/app/sitemap.ts)
|
|
179
|
+
⎿ Read 47 lines
|
|
180
|
+
⏺ Edit(apps/web/src/app/sitemap.ts)
|
|
181
|
+
⎿ Updated apps/web/src/app/sitemap.ts
|
|
182
|
+
✓ id 2017 — applied in 47s
|
|
183
|
+
Removed 3 auth routes from sitemap.xml
|
|
184
|
+
|
|
185
|
+
[2/2] · id 2018 · meta · medium
|
|
186
|
+
…
|
|
187
|
+
⊘ id 2176 — declined: keyword "3/0" is off-strategy for our domain
|
|
188
|
+
|
|
189
|
+
Done · ✓ 2/3 applied · 1 declined (elapsed: 2m 14s)
|
|
155
190
|
```
|
|
156
191
|
|
|
157
|
-
|
|
158
|
-
|
|
192
|
+
Three things to notice:
|
|
193
|
+
|
|
194
|
+
1. **No copy-paste step.** Other "agentic SEO" tools (Hado SEO's *SEO Trace*, etc.) emit paste-ready prompts you shuttle into Lovable/Cursor/Bolt yourself. `seoagent process` runs the action end-to-end via the [Claude Agent SDK](https://github.com/anthropics/claude-agent-sdk-typescript) — agent reads the action, edits the files, verifies, closes the action server-side. No copy-paste.
|
|
195
|
+
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
|
+
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
|
+
|
|
198
|
+
## CLI Commands (all 18)
|
|
199
|
+
|
|
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>`.
|
|
201
|
+
|
|
202
|
+
**Setup + lifecycle**
|
|
203
|
+
|
|
204
|
+
| Command | What it does |
|
|
205
|
+
|---|---|
|
|
206
|
+
| `init` | Scaffold `.seoagent/` + install the SKILL bundle + write the sync hook. Run once per repo. Auto-detects domain + site type; supports `--yes --domain <d> --site-type <t>` for CI. |
|
|
207
|
+
| `login` | Connect this CLI to seoagent.com (browser OAuth flow). Free dashboard access; required for `sync` / `process` / `ack` / paid features. |
|
|
208
|
+
| `logout` | Clear stored credentials. |
|
|
209
|
+
| `uninstall` | Remove `.seoagent/`, the skill, and the sync hook. `--global` also wipes the login session and cache. |
|
|
210
|
+
|
|
211
|
+
**The autopilot loop**
|
|
212
|
+
|
|
213
|
+
| Command | What it does |
|
|
214
|
+
|---|---|
|
|
215
|
+
| `sync` | Two-way sync with the dashboard: pushes local `.seoagent/` artifacts up + pulls new pending actions down to `.seoagent/inbox/`. Push-only via `--push-only`. Pull-only via `seoagent pull`. Also flushes any offline-queued acks. |
|
|
216
|
+
| `pull` | Pull-only sync (no push). Useful when you want fresh inbox state without uploading edits. Also supports `--print <path>` to dump a single cloud artifact to stdout. |
|
|
217
|
+
| `inbox` | List pending actions with id, category, severity, and (when the server emits them) priority + impact + effort badges. `--json` for scripting. |
|
|
218
|
+
| `process` | The executive function: pick pending actions + run them end-to-end via the Claude Agent SDK. Streams Claude-Code-style narration (tool bullets, result previews, markdown). `--yes` for CI; `--model <name>` to override. |
|
|
219
|
+
| `ack [<id>]` | Mark an action settled server-side. With no id, opens an interactive picker. `--failed --reason "<text>"` to decline. Survives network blips via the offline ack queue. |
|
|
220
|
+
| `autopilot <on\|off\|status>` | Toggle the cloud-side autopilot mode (whether the dashboard actively queues actions). |
|
|
221
|
+
|
|
222
|
+
**Inspection + diagnostics**
|
|
223
|
+
|
|
224
|
+
| Command | What it does |
|
|
225
|
+
|---|---|
|
|
226
|
+
| `status` | Boxed summary of project state: account, audit, strategy, briefs, content, roadmap. Zero-network. |
|
|
227
|
+
| `whoami` | Show the currently logged-in account. |
|
|
228
|
+
| `env-check` | Detect image generation provider (`OPENAI_API_KEY` / `FAL_KEY` / `REPLICATE_API_TOKEN`). |
|
|
229
|
+
| `menu` | Interactive launcher — pick a command from a list when you don't remember the name. |
|
|
230
|
+
|
|
231
|
+
**Research + content**
|
|
232
|
+
|
|
233
|
+
| Command | What it does |
|
|
234
|
+
|---|---|
|
|
235
|
+
| `keywords --peek "<kw>"` | Free single-keyword DataForSEO peek (no login, daily quota per install). |
|
|
236
|
+
| `keywords` | Enrich your existing keyword inventory with real search volume + difficulty. `--discover` finds new targets; `--competitors` shows the gap (paid). |
|
|
237
|
+
| `internal-links` | Generate internal-linking recommendations from your existing pages + topic clusters. |
|
|
238
|
+
| `generate-image` | Generate hero / inline images via the detected provider (BYO API key). |
|
|
239
|
+
|
|
240
|
+
**Account**
|
|
241
|
+
|
|
242
|
+
| Command | What it does |
|
|
243
|
+
|---|---|
|
|
244
|
+
| `upgrade` | Open the seoagent.com pricing page. |
|
|
159
245
|
|
|
160
246
|
## Auto-Sync Hook
|
|
161
247
|
|
|
162
|
-
`init` writes a `PostToolUse` hook to `.claude/settings.json` so every Write/Edit to `.seoagent/` triggers `npx @seoagent-official/seoagent sync` automatically. No-op when not logged in.
|
|
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).
|
|
163
249
|
|
|
164
250
|
## SEOAgent Cloud
|
|
165
251
|
|