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>
7.2 KiB
Bygge-brief (Voyage-input) — LTL fullspektrum-innholdsmotor → v2.0.0
Formål: Input til
/trekplan(Voyage-pluginen). Dette er byggingen av LTL-pluginen, drevet som et Voyage-prosjekt:/trekplanproduserer en kjørbar plan med per-steg Manifests,/trekexecute --fg+/trekcontinuedriver sesjonene,/trekreviewer release-gate. Detaljert referanse:plan-fullspektrum-innholdsmotor.md(samme mappe) — den hardnede planen med §0 orientering, §4 renovering, §5 langform, §6 byggeklosser, §7 render, §10 DoD. Les den; den er fasit for hva som skal bygges. Opprinnelig retningsbrief:brief-fullspektrum-innholdsmotor.md.
1. Oppgave
Løft linkedin-studio-pluginen («LTL», v1.2.0) til v2.0.0: en fullspektrum-motor for ALT LinkedIn-innhold — fra kortform-post til nyhetsbrev-edition — samtidig som den totale kommando-/agent-overflaten reduseres gjennom konsolidering.
Tre arbeidskropper:
- Renovering — konsolider reell redundans (27→~23 kommandoer, 16→~14 agenter). Plan §4.
- Langform-kapabilitet — én ny kommando
/linkedin:newslettermed faset, multi-sesjons pipeline (research → utkast → faktasjekk → persona-review FØR lås → leveranse → hook-gate). Plan §5–§6. - Render + annotering inn i pluginen — flytt 4 render-skript + fonts; generaliser
build-linkedin; generaliserbuild-htmltil artefakt-annoterings-renderer. Plan §7.
2. Orientering (kritisk — repoer og stier)
- LTL-pluginen (bygg her):
/Users/ktg/.claude/plugins/marketplaces/ktg-plugin-marketplace/plugins/linkedin-studio/. Plugin-i-monorepo: steg-stier er relative til denne mappa (sett Execution Strategycwd:deretter). - Marketplace-rot:
/Users/ktg/.claude/plugins/marketplaces/ktg-plugin-marketplace/(Forgejo, aldri GitHub). - maskinrommet (annet repo):
/Users/ktg/repos/maskinrommet/— render-skriptene kopieres HERFRA inn i pluginen. Skriving TIL maskinrommet krever eksplisitt instruks (cross-repo, eget spor). - Voyage:
/Users/ktg/.claude/plugins/marketplaces/ktg-plugin-marketplace/plugins/voyage/— harness for denne byggingen. - svv-memory (prosess-erfaring):
/Users/ktg/.claude/projects/-Users-ktg-repos-svv/memory/. - Seres-serien (kilden til langform-prosessen):
/Users/ktg/repos/maskinrommet/serier/silvija-seres-motsvar/.
Full ordliste (Seres, persona-sweep, hook-gate, faktasjekk «skyldig til motbevist», POST.html, Altinn-feilen, «største prosessfeil») står i plan §0 — les den før planlegging.
3. Låste beslutninger (constraints — IKKE åpne for re-litigering)
- A: Én ny orkestrator-kommando
/linkedin:newsletter, ikke en suite, ikke utvidelse avpipeline. - B: Bare langform nå — eksisterende kortform-kommandoer røres ikke.
- C: Ship alle 4 render-skript + fonts i pluginen (
render/); generaliserbuild-linkedin; maskinrommet blir konsument. - D: Hybrid persona-bibliotek i
config/, override per prosjekt; primær merkes. - E: Faktasjekk er et eget steg.
- F: Konsolider redundans i samme runde (netto færre kommandoer/agenter).
- G: Edition-produksjons-state bor i serie-mappa (maskinrommet), ikke i plugin-state.
- H:
build-htmlgeneraliseres til artefakt-annoterings-renderer (tabeller, alle overskrifter, inline-kode).
4. Forskning er allerede gjort (ikke gjenta fra null)
/trekplan-utforskningen kan være bekreftende, ikke fra-scratch. Følgende er ferdig kartlagt og frosset i planen:
- Inventar-audit av alle 27 kommandoer + 16 agenter (overlapp/redundans/langform-relevans) → plan §4, §6.
- Render-kontraktene (4 skript, cwd-modell, weasyprint-avhengighet, build-linkedin hardkoding) → plan §0.6, §7.
- Prosess-erfaringen (16 faser, persona-sweep-før-lås, faktasjekk-sweep) → plan §0.4, svv-memory.
- Arkitektur-mønstre i LTL (kommando-mal, agent-frontmatter, hook-kompilering, state-updater) → plan §3.
/trekplan bør verifisere disse mot faktiske filer der det er billig, ikke re-derivere.
5. Scope og fasing
Fire faser (plan §9.1). Kritisk sti = langform (fase 1–3); renovering (fase 4) kan følge etter.
- Fase 1 — Fundament: render-migrering + annoterings-generalisering + persona-bibliotek +
fact-checker+persona-reviewer+ edition-state-skjema; finansier de 2 nye agentene ved å avviklecontent-tracker+personalization-scorer. - Fase 2 — Kapabilitet:
commands/newsletter.md(10 steg) + reconcile newsletter-sti ut avmultiplatform. - Fase 3 — Dogfood: produser en ekte edition ende-til-ende; fiks friksjon.
- Fase 4 — Renovering: templates→quick, publish→calendar, collab+speaking→outreach, authority→strategy, analytics/engagement-merge, router-gating → v2.0.0.
Sesjons-dekomponeringen S1–S20 i plan §9.2 er forslag til Execution Strategy. Hver sesjon ≤ 35% kontekst.
Utenfor scope: variabel-intensitet-deling av agenter inn i kortform (utsatt, beslutning B); konsolidering utover §4; cross-repo-endringer i maskinrommet (eget spor, krever instruks).
6. Suksesskriterier (per-steg DoD → Manifests)
Plan §10 definerer DoD per sesjon. Oversett disse til Voyage per-steg Manifests (expected_paths, min_file_count, must_contain, commit_message_pattern, forbidden_paths):
- Deterministisk (Voyage
Verify:+ Manifest + Phase 7.5-audit): filer finnes,ls | wc -lstemmer,node --testgrønt,grepgir forventet, render kjører fra serie-mappa, edition-config-bytte endrer output. - Kjent-svar-fixture (skriv FØR implementasjon, jf. husregel «ingen produksjonskode uten feilende test først»):
fact-checkermot 3 påstander (sann/falsk/uverifiserbar → 🟢/🔴/🟡);persona-reviewermot test-tekst (≤5 flagg, 6 akser, INGEN omskrevet copy). - Subjektiv kvalitet — ALDRI selv-sertifisert. Voice-match, om teksten «lander», prosakvalitet rutes til (a) gate-agent med eksplisitt verdikt (
persona-reviewerrent JA fra primær;voice-trainer-bekreftelse) eller (b) operatør via annoterbar review-HTML. Et slikt steg er ikke «ferdig» på Claudes eget skjønn. (Voyage Phase 7.5-audit er sikkerhetsnettet mot hallusinert «ferdig».)
7. Ufravikelige regler
- Modell: Opus 4.7 på alt (Voyage
profile: premium). Ikke degrader. - Kjøremodus:
/trekexecute --fg(sekvensielt, abonnement). IKKE parallellclaude -p(API-billing)./trekcontinueper fersk sesjon. - Doc-plikt: hver feature-endring som pushes oppdaterer plugin-README + plugin-CLAUDE + rot-README i samme commit.
- Cross-repo: ingen skriving til
/Users/ktg/repos/maskinrommet/uten eksplisitt instruks. - Ingen push uten eksplisitt instruks.
- Hooks (bash 3.2 / Node): alle nye hooks i Node
.mjs; redigerhooks/hooks.template.json+hooks/prompts/*.md→ kjørpython3 hooks/scripts/compile-hooks.py. - Redaksjonell kvalitet på .md-prompter (kommandoer/agenter) verifiseres av operatør via annoterings-HTML, ikke mekanisk.
8. Åpne spørsmål (avklares i plan, ikke blokkerende)
edition-config.jsonJSON vs. frontmatter (anbefalt JSON).video-scripterabsorberes icontent-repurposer? (besluttes sent).