@the-smithy/create-hearth-site 0.29.0 → 0.31.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@the-smithy/create-hearth-site",
3
- "version": "0.29.0",
3
+ "version": "0.31.0",
4
4
  "description": "Start a new client website powered by Hearth: pnpm create @the-smithy/hearth-site",
5
5
  "type": "module",
6
6
  "license": "SEE LICENSE IN LICENSE",
@@ -30,7 +30,7 @@
30
30
  ],
31
31
  "devDependencies": {
32
32
  "vitest": "^5.0.3",
33
- "@the-smithy/hearth-schema": "^0.29.0"
33
+ "@the-smithy/hearth-schema": "^0.31.0"
34
34
  },
35
35
  "scripts": {
36
36
  "test": "node --test \"test/**/*.test.js\" && vitest run test/blocks.test.ts test/overrides.test.ts",
@@ -170,6 +170,9 @@ Do these before writing code, and tell the developer what you found:
170
170
  `node_modules/@the-smithy/hearth/llms.md` for the SDK. It also installs Drift and any skills Hearth offers this site
171
171
  (see "Skills" below), so run it again when they're missing. These aren't committed, so some assistants' search skips
172
172
  them: open them by their exact path, or from the terminal if your tool won't.
173
+ Hearth's MCP server (`/api/mcp` on Hearth, read-only, with the site's API key) answers the same questions without
174
+ the files, if the developer has connected it: each block's fields, slots and starting classes, the tokens, and the
175
+ published content. For design work, its `get_design_workflow` tool is the way to carry a design from Figma.
173
176
  3. **"Nothing is published"** means every page is a 404 until editors publish in Hearth. That's not a code
174
177
  problem: say so, and don't add placeholder content to work around it.
175
178
  4. **Then style the site** as above, checking with `pnpm dev` against the published pages, on a phone width too.
@@ -64,6 +64,11 @@ Once your API key is in `.env.local`:
64
64
  - *"The gallery looks plain. Make it a masonry grid using its slots in the theme, keeping it accessible."*
65
65
  - *"Run `pnpm hearth:update`, then check every published page still looks right."*
66
66
 
67
+ **Without the code, or for design work:** Hearth also has an MCP server, so an agent can read the site's blocks, design
68
+ system and published content from anywhere, read-only. Hearth's **API & webhooks** page shows how to connect it. Ask a
69
+ connected agent to start with `get_design_workflow` to design the site in Figma and bring the design back into
70
+ `src/theme/`.
71
+
67
72
  Keep the API key out of chat: the agent never needs to see it, only `.env.local` does. If it asks for content
68
73
  (page text, menus, contact details), the answer is to add or publish it in Hearth, not to write it into the code.
69
74
 
@@ -246,9 +246,9 @@ async function drift() {
246
246
 
247
247
  // Drift's skill follows its version, so like Hearth's skills it's installed rather than committed.
248
248
  for (const dir of SKILL_DIRS) listSkills(dir, listedSkills(dir));
249
- const install = spawnSync(bin, ["install", "."], { encoding: "utf8" });
249
+ const install = spawnSync(bin, ["install", ".", "--hook"], { encoding: "utf8" });
250
250
  if (install.status !== 0) fail(`Drift couldn't install its skill: ${install.stderr?.trim() || install.error?.message}`);
251
- console.log(`✓ Installed Drift's skill in ${SKILL_DIRS.map((d) => `${d}/`).join(" and ")}.`);
251
+ console.log(`✓ Installed Drift's skill in ${SKILL_DIRS.map((d) => `${d}/`).join(" and ")}, and its Claude Code hook in .claude/settings.json.`);
252
252
  }
253
253
 
254
254
  /** The files in a zip archive, by name. */