Doc Sync Recipes
Table of Contents
When to use this skill
When the user asks you to refresh the recipes for a topic — CLI, HTTP, shell, SQL, cmake, etc. — because the source has drifted. Symptoms:
- The user added commands, routes, or scripts and the recipes do not yet describe them.
- An existing command/route/script has changed signature and the recipe is stale.
- A capability has been removed and the recipe still references it.
How to use this skill
The procedure is the same across topics. Only the source-of-truth location changes.
Pick the topic and identify its source. Common topics in this repo:
Topic Source-of-truth Recipe folder cliprojects/ores.cli/src/config/entity_parsers/doc/recipes/cli/httpprojects/ores.http.core/src/routes/(andores.http.api)doc/recipes/http/shellprojects/ores.shell/src/app/commands/doc/recipes/shell/sqlprojects/ores.sql/schema/doc/recipes/sql/cmakeCMakeLists.txt+ presets inCMakePresets.jsondoc/recipes/cmake/git(none — convention-only) doc/recipes/git/githubghCLI capabilities + this repo's PR/CI conventionsdoc/recipes/github/For any other topic, read the topic's
doc/recipes/<topic>/<topic>.orginventory to see what is currently documented.- Enumerate what the source actually provides. Use whichever pattern fits — parser registries, route tables, command tables. Produce a flat list of things the recipe set should cover.
Enumerate the current recipes for the topic:
./projects/ores.compass/compass.sh list \ --tag <topic> --type recipe --sort path- Diff. Bucket each item:
- In source but not in recipes → missing, schedule new recipe.
- In recipes but not in source → retired, schedule deletion.
- In both, but with drift → stale, schedule update.
- Apply changes, one at a time:
- New recipe → scaffold via How do I create a new doc? §"New
recipe", then write the body per How do I create a recipe?.
The filename,
#+title:, and* Questionmust all agree as the same NLP question. - Retired recipe →
git rmthe file, remove its row from the topic inventory. - Stale recipe → bump
#+updated:when you fix the body; for non-trivial drift, also refresh the* Answerexample output.
- New recipe → scaffold via How do I create a new doc? §"New
recipe", then write the body per How do I create a recipe?.
The filename,
- Sync the inventory. Open
doc/recipes/<topic>/<topic>.organd make sure every recipe in the folder appears, grouped under a sensible sub-heading.
Recipes
- How do I create a new doc? — scaffold a new recipe file.
- How do I create a recipe? — body conventions, question form, executable babel blocks.
- How do I find docs matching a pattern? — enumerate the recipes currently in a topic.
- How do I show a doc by UUID? — inspect a single recipe to see what it currently claims.
Reference
- Recipe (glossary) — the contract.
- Recipes — the top-level inventory listing every topic.
- Document types§=recipe= — required sections and conventions.