Skip to content

Commit 27d5ebd

Browse files
authored
Add the Vessel family: vessel-react, vessel-light fingerprint, steering-eval harness (#207)
* Add vendored vessel-react fingerprint: taste-floor nodes, materials wired to component sets, baseline hygiene checks * Rename packages/vessel to packages/vessel-react; workspace fingerprint id follows * Add vessel-light: Vessel's design language as a portable .ghost fingerprint for raw HTML/CSS agents * Add steering-eval: portable before/after evaluation harness for Ghost fingerprints; wire vessel-light demo as first consumer * Fix pilot findings: agent-browser set-viewport invocation, skip empty cells, brandTokens/pulledWords from tape * Run the full steering-eval matrix on vessel-light: 45 generations + dump-growth, screenshots, metrics, report * Park eval run artifacts on vessel-eval-artifacts branch; ignore demo/out on mainline * steering-eval: emit WebP screenshots (shoot to PNG, convert via cwebp, embed webp in report) * vessel-light: fork-axis re-authoring — grammar/signature/register + median floor (#208) * materials: tokens audit — radius roles, hoist grammar-enumerated values * corpus: fork-axis re-author — grammar/signature/register/anti-goal * checks: relationship/value split — density.md retired, median-tells gains demoted rules, frequency thresholds, model-named tells * materials: regenerate refs — annotated, closed-set complete * docs: vessel-light README — fork-axis structure and ref-annotation curation * ghost init: naked skeleton default — grammar, unanswered dials, median floor (#209) * template: naked skeleton replaces steering default * checks: median-tells scaffold — live check pairing with anti-goal.median, deterministic floor, model tells * skill: migrate Morrow teaching shapes to authoring-scenarios * docs: skeleton starter in getting-started + cli-reference; minor changeset * ghost init --body: packed payloads + vessel-light body install (#210) * init: packed-payload mechanism — dist payloads, byte-capable template seam * template: skeleton rides packed files * init: --body vessel-light — install the full inhabited package * checks: packed-artifact body probes — fonts and checks survive pack * docs: body install in getting-started + cli-reference; minor changeset * skill: adapting-a-starter — the seven-step starter transplant recipe (#211) * skill: adapting-a-starter recipe — the seven-step transplant procedure * review: resolve package-relative material locators when matching diff paths (#212) * review: resolve package-relative material locators when matching diff paths * demo: drop stale parked-branch reference from eval artifacts gitignore * median: one authored home — model truth stamped at init, prunable by contract (#213) * corpus: audit backports, check cross-wiring, terminology sweeps * median: one authored home — headings contract, payload check, all templates stamp the floor * vessel-light: re-derive median onto the headings contract; docs get the ownership reframe * build: root build and packed-package check produce the full ghost artifact Root pnpm build only ran tsc, so dist/init-payloads and dist/skill-bundle were missing in CI: the vessel-light body test failed and check-packed-package packed a tarball without payloads. Root build now chains the package-level build; check:packed-package builds its own complete artifact since the lint job never runs pnpm build. Signed-off-by: Nahiyan Khan <nahiyan@squareup.com> --------- Signed-off-by: Nahiyan Khan <nahiyan@squareup.com>
1 parent 91f66cb commit 27d5ebd

414 files changed

Lines changed: 13505 additions & 477 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.changeset/adapting-a-starter.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"@design-intelligence/ghost": minor
3+
---
4+
5+
The skill bundle gains the `adapting-a-starter` recipe: the seven-step transplant procedure for turning an installed starter — a body like vessel-light or the naked skeleton — into your own brand's fingerprint, plus guidance for consuming an unadapted starter honestly.

.changeset/body-install.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"@design-intelligence/ghost": minor
3+
---
4+
5+
`ghost init` gains `--body vessel-light`: install a full inhabited fingerprint package — answered signature dials, a materials tree with tokens and embedded fonts, annotated reference compositions, and its own checks. Init template payloads now ship as packed files in dist, so bodies can carry binary materials.

.changeset/config.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,5 +7,5 @@
77
"access": "public",
88
"baseBranch": "main",
99
"updateInternalDependencies": "patch",
10-
"ignore": ["@design-intelligence/vessel", "ghost-docs"]
10+
"ignore": ["@design-intelligence/vessel-react", "ghost-docs"]
1111
}
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"@design-intelligence/ghost": patch
3+
---
4+
5+
Reframe the median as Ghost-stamped model truth and align Vessel's median check with heading anchors.

.changeset/median-one-home.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"@design-intelligence/ghost": minor
3+
---
4+
5+
The median floor gets one authored home: `anti-goal.median` rules become markdown headings with per-rule check references, so `ghost validate` warns on every flag orphaned by pruning. All init templates (`skeleton`, `minimal`, `composition`) now stamp the median node; `ghost checks init` copies the paired check from the packaged payload and skips it when the node is absent.
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"@design-intelligence/ghost": patch
3+
---
4+
5+
`ghost review` now resolves package-relative `materials/…` locators to their repo-relative form before matching diff paths, so packages living below the repo root offer their value checks correctly.
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"@design-intelligence/ghost": minor
3+
---
4+
5+
`ghost init` now scaffolds the skeleton starter: value-free grammar nodes, unanswered signature dials, and the `anti-goal.median` floor — replacing the Morrow Ledger demo content. `ghost checks init` scaffolds a live median-tells check alongside the example. `steering` remains as an alias for the new `skeleton` template.

.gitignore

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,4 +26,4 @@ packages/ghost-ui/.ghost/cache/*
2626
docs/superpowers/plans/
2727
docs/superpowers/specs/
2828
notes/
29-
demo/
29+
/demo/

CLAUDE.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,8 @@ edits and checks.
8989
| Package | Published? | Description |
9090
| --- | --- | --- |
9191
| `packages/ghost` | yes: `@design-intelligence/ghost` | The public package. Ships the `ghost` CLI, node authoring, corpus validation, gather/pull/pulse, review packet assembly, and the unified skill bundle. Shared runtime lives in `packages/ghost/src/ghost-core`. |
92-
| `packages/vessel` | no | A standalone shadcn component registry plus `vessel-mcp` MCP server: the opinionated default reference body. Design-system-agnostic; nothing in Ghost requires it. |
92+
| `packages/vessel-react` | no | A standalone shadcn component registry plus `vessel-mcp` MCP server: the opinionated default reference body. Design-system-agnostic; nothing in Ghost requires it. |
93+
| `packages/vessel-light` | no | Vessel's design language as a portable `.ghost/` fingerprint package for agents writing raw HTML/CSS. No build, no dependencies. |
9394
| `apps/docs` | no | Docs site. |
9495

9596
## CLI Commands

CONTRIBUTING.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ the list.
5555
## Dogfooding
5656

5757
Surfaces in this repo carry their own fingerprints: `apps/docs/.ghost` and
58-
`packages/vessel/.ghost`. If you touch a surface, `ghost gather` from its
58+
`packages/vessel-react/.ghost`. If you touch a surface, `ghost gather` from its
5959
fingerprint before you build, and expect review against it. This is where
6060
you experience Ghost as a user — treat friction you hit here as a bug worth
6161
reporting.

0 commit comments

Comments
 (0)