StyleSeed update
Update the
engine payload, not the user's product UI. A release version describes a published
line;
identifies the exact maintained rules, skills, entry docs, and palette
engine. Two installs with the same release version are not proven equal until their revisions
match.
When not to use
- First installation → or .
- One new screen or component → , , or .
- A redesign of old UI → update first, then offer the optional retrofit step below.
- A heavily forked StyleSeed payload → stop after the dry-run report and request a manual diff.
Ownership boundary
StyleSeed owns installed
skill payloads and compiled
.styleseed/effective-rules.md
.
The project owns
, application code, components, tokens, assets, and any existing
,
, or Cursor instructions. Never overwrite project-owned files merely to
update StyleSeed.
An update may change design-method behavior, especially across major versions. It is reversible
through the user's version control, but it is not correct to promise that every update is
additive or non-breaking.
Step 1 — Read-only revision check
From the user's project root, run the bundled checker by its installed path:
bash
node <installed-ss-update>/scripts/check-update.mjs --project-root . --json
Interpret the result exactly:
- — installed and published revisions match; stop unless the user explicitly wants a
reinstall.
- — refresh the installed payload even when the semantic versions match.
- — skills are current; skip reinstall and re-resolve the project.
- — the retired standalone seven-category reviewer remains beside the
canonical skills. Show its path and hash; remove it only after confirming it is not a
project-modified skill.
remote-revision-unavailable
— version-only evidence cannot prove currency. Report the
boundary and do not say “up to date.”
Also inspect
. Do not modify files during this step.
Step 2 — Report the update boundary
Before changing anything, report:
text
StyleSeed update report
- Installed: <version> @ <revision>
- Published: <version> @ <revision>
- Project bundle: <version/revision or not resolved>
- Project worktree: clean | has existing changes
- Will refresh: canonical ss-* skill payloads
- Will preserve: STYLESEED.md, app code, components, tokens, assets, project instructions
- Requires review: compiled rule-bundle diff and any copied legacy engine docs
If the worktree has unrelated changes, preserve them. Recommend a commit or backup before a
method update, but do not use destructive reset/checkout commands as an update strategy.
Step 3 — Refresh through the original install channel
Use the same channel that installed StyleSeed:
- Agent Skills CLI installation: run
npx skills add bitjaru/styleseed
and select the same
project/provider scope. The repository exposes exactly the canonical 23 skills.
- Claude/plugin or another provider marketplace: use that provider's normal update action.
- Vendored source checkout: fetch the intended tag or commit, review the diff, and update the
canonical engine as a set. Do not mix files from two revisions.
Do not implement an update with a blind recursive copy into an existing skills directory. The
installer must reconcile the managed payload; project-owned files stay outside that operation.
If this skill was invoked only to inspect availability, stop before the external refresh and
present the report.
Step 4 — Prove the installed revision
Run the new checker's path again. Require the installed and published
values to
match before describing the engine as current. A matching version string by itself is not proof.
If the installed payload still reports the old revision, stop. Do not recompile the project from
a mixed or unproven installation.
Step 5 — Recompile the project context
- Run the installed
ss-resolve/scripts/resolve-context.mjs
with
--project-root . --from-lock STYLESEED.md --agent <agent>
.
- Inspect the diff for
.styleseed/effective-rules.md
, , and generated
palette files. The manifest must record the new .
- Run the same command with ; require exit status 0.
- Report the old and new bundle hashes. Do not use as the project context.
The design lock persists selections, but a new engine revision may correctly change the compiled
method around those selections. Present that diff instead of hiding it.
Step 6 — Check legacy copied docs
Older projects may contain copied
,
,
,
or provider entry files. Detect and report them. Do not overwrite project
,
, or
; recommend replacing only an identifiable StyleSeed-managed block
or removing stale duplicate method files after review.
Optional retrofit
Updating the engine does not redesign existing screens. If the user wants a retrofit:
- confirm or create ;
- re-score the highest-traffic screen against the new effective bundle;
- apply approved fixes with or ;
- render and inspect with or ;
- report before/after evidence without claiming the old score was measured when it was not.
Completion report
Separate these states:
- installed revision: verified | not verified;
- project bundle: recompiled and hash-checked | stale | not present;
- application code: unchanged | explicitly retrofitted;
- code gate: passed | not run;
- visual gate: passed from inspected render | not run.
Never call installation, compilation, a build, or a score a visual verification.