refactor(linkedin)!: rename plugin linkedin-thought-leadership → linkedin-studio (v3.0.0)
BREAKING CHANGE: the marketplace slug, the agent namespace (linkedin-studio:<agent>), and the runtime state-file path (~/.claude/linkedin-studio.local.md) all change. Reinstall required; existing state migrated in place (post metrics, streak, history preserved). The /linkedin:* commands are unchanged — the command namespace is set per-command in frontmatter and was always independent of the plugin slug. Functionality is byte-identical to v2.4.0; this release is pure identity. - dir + manifests: plugins/linkedin-studio + plugin.json + root marketplace.json - agent namespace updated in commands/newsletter.md (only functional invoker) - state path updated in 4 hook scripts + topic-rotation prompt + state template - catch-all skill dir renamed skills/linkedin-studio (5 functional skills unchanged) - docs + version bump to 3.0.0 across README badge, CHANGELOG, root README/CLAUDE.md - historical records (CHANGELOG past entries, docs/ build artifacts, config-audit v5.0.0 snapshots) intentionally retain the old slug Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
34463e4585
commit
52fa87a255
59 changed files with 148 additions and 122 deletions
|
|
@ -60,8 +60,8 @@ This command is **fundamentally different** from the short-form commands:
|
|||
delegate the fan-out to a nested background agent.
|
||||
|
||||
> **Agent invocation form (required).** Plugin agents resolve only under their
|
||||
> namespaced type — `subagent_type: linkedin-thought-leadership:<name>` (e.g.
|
||||
> `linkedin-thought-leadership:fact-checker`), never the bare `<name>`. A bare
|
||||
> namespaced type — `subagent_type: linkedin-studio:<name>` (e.g.
|
||||
> `linkedin-studio:fact-checker`), never the bare `<name>`. A bare
|
||||
> `subagent_type` does not resolve and the `Task` call fails. Every
|
||||
> `subagent_type` below is written in the namespaced form for this reason.
|
||||
|
||||
|
|
@ -428,7 +428,7 @@ Next: Step 2.5 — Skeleton + section pitch (operator + persona gate BEFORE pros
|
|||
5. **Persona-skjelett-sweep — fan out `persona-reviewer` in skjelett-mode.**
|
||||
Issue one `persona-reviewer` call per active persona in parallel — a SINGLE
|
||||
message with multiple `Task` tool-uses, `subagent_type:
|
||||
linkedin-thought-leadership:persona-reviewer`, from THIS command layer in
|
||||
linkedin-studio:persona-reviewer`, from THIS command layer in
|
||||
the foreground (principle 4). Pass each call the persona name, the path to
|
||||
`<serie>/NN-skjelett.md`, and **`mode: skjelett`** (the before-prose mode —
|
||||
five spine axes, ≤3 flags as direction, HOLDER/TVILER/MANGLER scoring).
|
||||
|
|
@ -622,7 +622,7 @@ turning-points the spine already named.
|
|||
3. **Expand with the `content-repurposer` muscle.** Reuse
|
||||
`agents/content-repurposer.md` (its article→long-form conversion discipline)
|
||||
for individual section expansions — invoke it via `Task` (`subagent_type:
|
||||
linkedin-thought-leadership:content-repurposer`) when useful, *from this
|
||||
linkedin-studio:content-repurposer`) when useful, *from this
|
||||
command layer* (foreground, principle 4). The command owns assembly and
|
||||
voice; the agent assists with conversion. The draft is voice-matched by
|
||||
THIS session, not self-certified for voice — voice-match remains an
|
||||
|
|
@ -683,7 +683,7 @@ checklist (full detail + pass/flag criteria in the reference file):
|
|||
|
||||
**De-AI / voice scrub (sub-pass — `voice-scrubber`).** After the rule pass, run
|
||||
the draft through `voice-scrubber` (Opus) — `Task`, `subagent_type:
|
||||
linkedin-thought-leadership:voice-scrubber`, from THIS command layer in the
|
||||
linkedin-studio:voice-scrubber`, from THIS command layer in the
|
||||
foreground (principle 4). Pass it the draft path AND the paths to the **approved
|
||||
Norwegian editions** as the gold standard (e.g. earlier parts' locked
|
||||
`linkedin/NN/POST.html` or their approved `NN-utkast.md`). **Do NOT** point it at
|
||||
|
|
@ -742,7 +742,7 @@ because it "feels" right or because it sits in your own research notes.
|
|||
block can be verified independently without overlap.
|
||||
|
||||
3. **Fan out in parallel — issue all N `fact-checker` calls in a SINGLE message**
|
||||
(multiple `Task` tool-uses in one turn, `subagent_type: linkedin-thought-leadership:fact-checker`) so they
|
||||
(multiple `Task` tool-uses in one turn, `subagent_type: linkedin-studio:fact-checker`) so they
|
||||
run concurrently, from THIS command layer in the foreground (principle 4, plan
|
||||
§3). Each call gets one claim-block and returns the agent's standard
|
||||
verification log + risk-sort (🔴/🟡/🟢) + gate decision (PASS/REWORK/BLOCK).
|
||||
|
|
@ -834,7 +834,7 @@ and `persona-reviewer` never flags em-dash density (that is this step).
|
|||
settled text, not on a draft still moving under fact fixes.
|
||||
|
||||
2. **Run `editorial-reviewer` (single foreground `Task` call).** Invoke
|
||||
`subagent_type: linkedin-thought-leadership:editorial-reviewer` from THIS
|
||||
`subagent_type: linkedin-studio:editorial-reviewer` from THIS
|
||||
command layer in the foreground (principle 4), passing the draft path
|
||||
(`<serie>/NN-utkast.md`) and — when the edition is part of a series — the
|
||||
series title (for the A3 series-title-symmetry check). The agent returns a
|
||||
|
|
@ -924,7 +924,7 @@ reopening locked texts — the biggest single process error of the series (plan
|
|||
|
||||
2. **Fan out one `persona-reviewer` call per persona, in parallel** — issue them
|
||||
in a SINGLE message (multiple `Task` tool-uses, `subagent_type:
|
||||
linkedin-thought-leadership:persona-reviewer`), from THIS command layer in the
|
||||
linkedin-studio:persona-reviewer`), from THIS command layer in the
|
||||
foreground (principle 4).
|
||||
Pass each call its persona name and **`mode: resonans`** (the before-lock mode
|
||||
— all six axes, ≤5 flags as direction). This is NOT conversion mode, which is
|
||||
|
|
@ -1258,7 +1258,7 @@ the post-lock conversion sweep, distinct from the pre-lock resonance sweep
|
|||
collected post). This is what the reader sees before "…see more".
|
||||
|
||||
2. **Run `persona-reviewer` in conversion mode** (`subagent_type:
|
||||
linkedin-thought-leadership:persona-reviewer`) for the **primær** persona
|
||||
linkedin-studio:persona-reviewer`) for the **primær** persona
|
||||
only, from THIS command layer in the foreground. Pass
|
||||
**`mode: konverter`** (the after-lock, hook-only mode — NOT resonans). The
|
||||
agent returns a single binary verdict, **JA / NEI**, on «would YOU click?» —
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue