@seoagent-official/seoagent 1.88.0 → 1.88.1
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/index.js +186 -143
- package/package.json +1 -1
- package/skills/references/inbox.md +6 -4
- package/skills/references/publishing.md +1 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@seoagent-official/seoagent",
|
|
3
|
-
"version": "1.88.
|
|
3
|
+
"version": "1.88.1",
|
|
4
4
|
"description": "The persistent AI SEO agent for Claude Code. Audits, keyword strategy, briefs, articles, real product screenshots from your repo, and the autopilot loop (cloud detects → CLI executes → ack closes) — other SEO tools write the prompt, SEOAgent runs it.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -88,10 +88,12 @@ Start by reading `.seoagent/inbox/README.md` (or `seoagent inbox`) to see the li
|
|
|
88
88
|
|
|
89
89
|
### `cli_draft_ready-<id>.md`
|
|
90
90
|
|
|
91
|
-
- `Read` it. The frontmatter has `action_id`, `article_slug`, `path`, and (when drafted from a brief) `brief_slug`. The draft itself is at `.seoagent/<path>` — pulled in the same sync that delivered this task.
|
|
92
|
-
- **
|
|
93
|
-
-
|
|
94
|
-
-
|
|
91
|
+
- `Read` it. The frontmatter has `action_id`, `article_slug`, `path`, `mode`, and (when drafted from a brief) `brief_slug`. The draft itself is at `.seoagent/<path>` — pulled in the same sync that delivered this task.
|
|
92
|
+
- **Check `mode:` first.** It is the whole contract:
|
|
93
|
+
- **`mode: new`** — the slug is free. Review the draft (frontmatter carries title, meta description, status), then place it where this project's content renders: repo-native (mdx_sync) → copy/adapt into the repo's content directory and `seoagent content track` it; CMS → create the entry and track it; cloud-hosted → flip frontmatter `status` to `published` and sync.
|
|
94
|
+
- **`mode: revision`** — that slug **already renders live on this site** (`replaces_path` names the file). **Do not place it as a new post and do not overwrite the live file.** `diff` the two, fold in only what is genuinely new or better, and keep the live article's URL, frontmatter and dates. If the draft adds nothing, decline — that is a real answer.
|
|
95
|
+
- **Renaming the slug is encouraged** when the generated one reads as a full sentence; a short slug is the better URL. When you rename, pass `--supersedes <the-delivered-slug>` to `content track`. That is what tells the cloud it is the SAME article under a new name — without it the cloud keeps the original as an unfinished draft and delivers it to you all over again.
|
|
96
|
+
- **Close it out with `--action <action_id>` on the `content track`** — that acks the action for you, in the step you were already running. `seoagent ack <action_id>` by hand still works (or `--failed --reason "not publishing; ..."` to decline).
|
|
95
97
|
|
|
96
98
|
### `cli_send_outreach_email-<id>.md`
|
|
97
99
|
|
|
@@ -96,6 +96,7 @@ The publishing strategy decides where an article's **body** is written. Never wr
|
|
|
96
96
|
- **`mdx_sync` / `custom`** — the body lives in the **repo file or CMS entry**, NOT in `.seoagent/`. Match the site's existing frontmatter and content model exactly (read an existing article first). Tracking is automatic once `publishing.content_dir` is set: the next sync registers the file. Only when no content dir is declared *and* nothing is tracked yet, run once:
|
|
97
97
|
`seoagent content track --slug {slug} --url https://{domain}{blog_path}/{slug} --file {path}`
|
|
98
98
|
(it self-records `content_dir`). **Never hand-write a duplicate full-body `.seoagent/content/{slug}.md`** — two copies of one article drift, and the sync then reports both.
|
|
99
|
+
**Publishing a cloud-delivered draft under a different slug?** Add `--supersedes {the-delivered-slug}` (and `--action {action_id}`). Renaming a generated slug is good editorial practice, but `content track` keys on the slug — without the claim the cloud keeps the original as an unfinished draft and re-delivers the same article. See `docs/harness/DESIGN-article-identity.md`.
|
|
99
100
|
- **`managed_proxy` / `subdomain`** (cloud-hosted) — the body **does** live in `.seoagent/content/{slug}.md` with full SEO frontmatter (schema in `references/schemas.md`), published by `seoagent sync`.
|
|
100
101
|
|
|
101
102
|
Either way: ship repo articles the way the repo ships — PR or branch, never straight to the default branch without asking.
|