docs: README profile default + 21st section, CHANGELOG default-profile entries — feat default-profile-full

This commit is contained in:
bastien
2026-09-25 16:38:39 +02:00
parent 1bbdad039c
commit 0926cc74b5
2 changed files with 30 additions and 7 deletions
+23 -2
View File
@@ -61,8 +61,9 @@ Format follows [Keep a Changelog](https://keepachangelog.com/).
- **21st.dev moved from an MCP server to a CLI.** `install-plugins.sh` Step 8.7
installs `@21st-dev/cli` globally (pinned in `plugins.lock.json`), offers
`21st login` in an interactive terminal only, and stages the 7-skill pack
into `skills-external/21st-*`. `update-all.sh` refreshes both. The pack
ships disabled, same policy the MCP had.
into `skills-external/21st-*`. `update-all.sh` refreshes both. The design
skills follow the profile (on under the default `full`); the two publishing
skills stay parked.
- `lib/toggle-external.sh` manages `21st` as a skill pack (glob-derived from
`skills-external/21st-*`, parked under plain names so `profile.sh`'s
external park/restore stays interoperable). `magic` is gone from the
@@ -119,8 +120,28 @@ Format follows [Keep a Changelog](https://keepachangelog.com/).
guardrail tampering, pipe-to-shell, nested forms, scripts the command
runs). The hook itself is not shipped (BLK-022); the spec skips cleanly
until it lands.
- **`lib/tests/profile-default.test.sh`** covers the default-profile
resolution (absent / empty / `none` cache), `reset` = `set full`, the
label-driven `current` lines and the statusline fallback, on a fixture
seeded like a real tree (gstack off, nothing linked).
### Changed
- **Default profile = `full`.** With no selection (`.active-profile`
absent, empty, or the legacy `none`), `full` is in force: statusline,
`profile.sh current`, `gstack off` and `reset` all resolve it the same
way. `profile.sh reset` (and `make profile-reset`) now applies the
default profile, exclusively (= `set full`: enables full's list, parks
non-listed gstack and managed externals). It no longer means "re-enable
all gstack, plugins untouched". `profile.sh current` is label-driven: it
names the cached profile, or the default with "default, not applied yet"
until a `set`/`apply`/`reset` writes the cache, and scores that profile
only. The `none`/`custom` best guess is gone. The statusline shows `full`
instead of `?` when no profile is selected.
- **`make plugin` Step 11 applies the default profile** when none is
selected (`profile.sh reset`) and re-applies an existing selection
(`profile.sh set <sel>`), since Steps 2 and 10 rewrite skill state on
every run. Step 8.7 no longer parks the 21st pack unconditionally; the
pack's state follows the profile.
- **Routing around a guardrail is the same action** — new `hard_deny` entry: a
refused command is never rerun through a wrapper script, alias, heredoc,
Makefile target, env file, other shell or other agent; a refusal ends the
+7 -5
View File
@@ -172,7 +172,7 @@ a different package, ships its own conflicting `graphify` bin) — see
| `/web-validate` | W3C HTML/CSS validity + WCAG 2.1 accessibility audit |
| `/geo` | GEO-only audit — AI-search visibility (ChatGPT, Perplexity, Claude, Gemini…) |
| `/client-handover` | Final project delivery — audits + branded deliverable (Markdown / HTML / PDF) |
| `/profile` | Activate a skill profile (web / seo / web-full / full / backend / design / dev / qa / audit / minimal) |
| `/profile` | Activate a skill profile (web / seo / web-full / full / backend / design / dev / qa / audit / minimal) (default: full) |
| `/tour` | Grouped all-axes sweep — cleanup + security + reconcile + doc, fix and loop until clean |
> This table lists personal skills. Gstack skills (investigate, review, retro,
@@ -309,8 +309,10 @@ npm i -g @21st-dev/cli
`make plugin` does both (Step 8.7 installs the CLI, then offers the login in
an interactive terminal) and installs the skill pack that drives it:
`21st-ui-build`, `-ui-explore`, `-ui-review`, `-cli-use`, `-ai`, plus the two
publishing skills `-registry` and `-design-sync`. The pack is disabled by
default. `/profile design` turns on the five design skills;
publishing skills `-registry` and `-design-sync`. The five design skills
follow the active profile: they are on under `full`, the default profile,
and under `design`, `web` and `web-full`. The two publishing skills,
`-registry` and `-design-sync`, are in no profile and stay parked until
`bash lib/toggle-external.sh enable 21st` turns on all seven.
The pack is machine-owned and gitignored. It cannot be installed the way
@@ -354,8 +356,8 @@ make onboard # onboard an existing project (run from its dir)
make seo-connect # connect a Google account for /seo FULL (OAuth consent)
make profile cmd="set X" # activate a skill profile (web/seo/web-full/full/backend/design/dev/qa/audit/minimal)
make profile-list # list skill profiles
make profile-current # show the active profile
make profile-reset # re-enable all gstack skills
make profile-current # show the active profile (full when none selected)
make profile-reset # go to the default profile (full)
make new-skill name=myskill # scaffold agent + skill files
```