apply
Set chaff up in the folder: chaff.yaml for the chosen genre, today's findings shelved in .chaff-baseline.json, and, when asked, a…
Move the copied collection's records, and the files they point at, into the app's database and data/files/.
$ npx -y skills add receptron/mulmoterminal --skill import --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/importContext preview
The summary Claude sees to decide when to auto-load this skill.
Move the copied collection's records, and the files they point at, into the app's database and data/files/.
name: blueprint-from-collection-import description: "Move the copied collection's records, and the files they point at, into the app's database and data/files/."
Read `.blueprint/source/source.json` first. If `records` is `false`, only the shape was copied: there is nothing to move. Add a `yarn import-source` script that says so and exits 0, and stop.
Otherwise the records are in `.blueprint/source/collections/<slug>/records.jsonl` (one JSON object per line, as the collection stored them), and the files they point at are under `.blueprint/source/files/`, at the path the record names.
1. Add `yarn import-source <database path>`. It opens that database the way the app does (so the migrations run), then, for every collection in `source.json` — the ones linked to first, so references have something to point at — inserts each record into its table. 2. Names follow the spec and the pack's `spec/conversion.md` ("表と列の名前"): the table is the collection's slug with `-` as `_`; a stored field's column is its key, unchanged. Convert as the table says: a boolean is `0`/`1`, a date stays its ISO text, a `ref` keeps the referenced primary key, a `table` field's rows go to its child table. 3. A record's `image` / `file` value is a path: copy the file from `.blueprint/source/files/<path>` to `data/files/<path>` and keep the path in the column. A file the source did not have is left out and reported. 4. Running it twice leaves the same rows (insert or replace by primary key; child rows replaced with their parent). 5. A record that does not fit (a value the column refuses, a reference to nothing) is not dropped silently: the script stops and names the collection, the record's primary key and the field. 6. `test/import.test.ts`: import into a temporary database and read a record of each collection back. 7. Say in the README how the records were moved, and that `yarn import-source data/app.db` is what did it.
Done when the check passes: into a fresh temporary database, run twice, every collection has as many rows as it had records, every stored field reads back equal to the source, every pointed-at file is in `data/files/`, and `yarn test` passes.
Code's trust prompt. The user adds git themselves after the build if they want it.
Run multiple coding-agent sessions in parallel — and see which one needs you. A browser terminal for parallel AI coding agents: several sessions side by side, each in its own cell, with the one that needs you marked in colour.
Set chaff up in the folder: chaff.yaml for the chosen genre, today's findings shelved in .chaff-baseline.json, and, when asked, a…
Measure what chaff reports on the named documents today, as the kind the person chose, and propose the setup — changing nothing…
Answer each question from the named documents only, quoting where the answer is written, or saying plainly that the documents do…
Add the approved answers to FAQ.md when the person chose to keep them, after what it already holds; change nothing otherwise.
Build the spec's operations as the Worker's API, with validation and tests.