| name | update-website |
| description | Use when the marketing website may be stale. Discovers commits since the last website update and refreshes source-derived content under website/ so generated pages match the current README, docs, and spec. |
Updating the Website
Governing spec sections: §11.2 (website/ — source-derived content, no double-authoring, staleness CI check), §11.3 (SEO and discoverability — required <head> metadata, sitemap, robots, OG image, JSON-LD, single SSOT module), §21.5 (this skill is mandated when the project publishes a website).
The website/ directory contains the marketing site for spotifai. Per §11.2 of OSS_SPEC.md, its source-derived content (hero copy, feature lists, version strings) must not be authored twice — it is extracted from README.md, docs/, and OSS_SPEC.md, then rendered by the website build.
Tracking mechanism
.agent/skills/update-website/.last-updated contains the git commit hash from the last successful run. Empty means "never run" — fall back to the initial commit.
Discovery process
-
Read the baseline:
BASELINE=$(cat .agent/skills/update-website/.last-updated)
-
Diff sources of truth against the baseline:
git log --oneline "$BASELINE"..HEAD -- README.md docs/ OSS_SPEC.md
git diff --name-only "$BASELINE"..HEAD -- README.md docs/ OSS_SPEC.md
-
If anything changed, rebuild the website and inspect the diff under website/.
Mapping table
| Changed file | Effect on website |
|---|
README.md hero / quick start | Home page feature summary; website/src/seo/siteConfig.mjs tagline / description |
README.md Usage / install | Install & usage pages |
docs/getting-started.md | "Getting started" page |
OSS_SPEC.md front-matter version: | Version badge on the home page |
| New public route added in code | Add a row to siteConfig.routes so sitemap.xml + per-route <head> cover it |
| Project description / tagline / canonical URL change | website/src/seo/siteConfig.mjs (single source of truth — propagates to <head>, sitemap, robots, OG image) |
Update checklist
Verification
- Open the rendered site locally and verify hero copy, version, and key tables.
- Run the website staleness CI check from §11.2 against HEAD.
- Confirm
.last-updated was rewritten.
Skill self-improvement
- Expand the mapping table if a new source file started feeding the website.
- Record extraction quirks (e.g. "anchor X is parsed from heading Y").
- Commit the skill edit alongside the website update.