archive-workspace
Bundle a finished John workspace from Codex. Use when the user wants to archive, package, hand off, or preserve a John project, or wants the Claude command…
Design the app mechanism and build pipeline for the produced app — the app-phase analog of [[schema-design]]. Use this skill whenever the knowledge phases are complete (or nearly so), when the user mentions building the app / runtime / UX / production / deploy, when the app-type
$ npx -y skills add kitchen-engineer42/joharnessburg --skill app-design-thinking --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/app-design-thinkingContext preview
The summary Claude sees to decide when to auto-load this skill.
Design the app mechanism and build pipeline for the produced app — the app-phase analog of [[schema-design]]. Use this skill whenever the knowledge phases are complete (or nearly so), when the user mentions building the app / runtime / UX / production / deploy, when the app-type
name: app-design-thinking
description: Design the app mechanism and build pipeline for the produced app — the app-phase analog of [[schema-design]]. Use this skill whenever the knowledge phases are complete (or nearly so), when the user mentions building the app / runtime / UX / production / deploy, when the app-type definition section of PLAN.md needs its runtime + pipeline rows settled, or when [[ralph-loop]] advances out of packaging into the app phases. The shape of the produced app gets decided here; downstream phases follow.
metadata:
triggers:
- design the app
- app design thinking
- app mechanism
- build pipeline
- how should the app work
- design the app phases
- what kind of app
- app shapeThe knowledge phases produced byte-identical knowledge inventories at `<project>/.claude/skills/` and `<project>/.agents/skills/`. Now the question is: **what app do we build with them, and how do we build it?** That's the third and fourth links of the app-type definition cascade — app mechanism and build pipeline. This skill teaches how to settle those decisions from the knowledge already extracted.
[[schema-design]] is this skill's twin in the knowledge phases — same methodology, different links in the cascade. Both teach taste, neither prescribes.
The runtime is how the produced app works for end-users. Pin it down by asking:
Sketch the runtime in PLAN.md's app-type definition section. Like schema-design's schema sketch, mark it "may evolve."
The build pipeline is the phases that turn the packaged skills (and any other input) into the runtime. Derive it backward from the runtime: what does the runtime need, and what phases produce each piece?
Common pipeline patterns (see `references/app-phase-design.md`):
Not every project needs every phase. Use the rubric in [[phase-design]] to decide; this list is a starting point, not a checklist.
Vanilla John designs produced apps to **run standalone**: launch locally or on any host the user owns, configuration through `.env`, no assumptions about an external auth/billing/telemetry platform being present. If the project is destined for a hosted multi-tenant platform, a template supplies those integration patterns — don't invent platform coupling in a vanilla project.
Sometimes app-design-thinking reveals that the produced knowledge isn't quite shaped right for the runtime you want. (E.g., "this rule-shaped schema doesn't carry the severity field the runtime needs to color-code violations.") When that happens, [[plan-md-evolution]] takes over: append to PLAN.md's Log, surface the gap as an Open Decision, decide whether to extend the schema and re-emit affected entries, OR adapt the runtime to what the schema gives. Cascade iteration is normal; the cascade is not a one-way pipe.
**The cost tradeoff.** If the schema is already locked (you've extracted hundreds of entries against it), extending and re-emitting is expensive. Before deciding, ask the user three questions:
1. How many entries already exist? (more entries → re-emission cost grows) 2. Is the missing field mandatory at runtime, or optional? (optional → can adapt runtime cheaper) 3. Can the runtime compute the field from existing fields? (e.g., derive severity from a `category` and a fixed mapping)
If re-emission is expensive AND the runtime can adapt, adapting often wins. If re-emission is cheap OR the field is mandatory, extending the schema is right. Capture the decision in PLAN.md so future-you knows why the cascade looks the way it
中文版: README_ZH.md John turns unstructured source material into a working knowledge-dense app. It keeps knowledge engineering and app building in one durable run, coordinates large per-entry fan-outs, and leaves auditable events and checkpoints on disk.
Bundle a finished John workspace from Codex. Use when the user wants to archive, package, hand off, or preserve a John project, or wants the Claude command…
Break parsed markdown into a tree of progressively-disclosed chunks for downstream extraction. Use this skill whenever a phase needs to work on per-chunk…
Apply deterministic quality checks to the code John produces — catch the 80% of issues (leaked API keys, hardcoded prod URLs, broken imports, missing…
Generate John's process scorecard, auditor manifests, and shareable run report from a Codex project using John's provider-neutral scripts. Use when the user…
Activate a Hamster-built or otherwise applied John template for Codex in the current project. Use when a merged template plugin already exists, when the user…
Execute John's high-volume vertical phases with native Codex subagents over the durable `.john/runs` and event contracts. Use for per-chunk extraction,…