prompt markdown

This commit is contained in:
John Lancaster
2026-08-07 20:30:54 -05:00
parent 5b6d5aaec4
commit 88ff4c2c71
30 changed files with 475 additions and 373 deletions
+8 -8
View File
@@ -72,16 +72,16 @@ Recommended sequence:
## Prompt Authoring
Prompts pair typed Python metadata with canonical Markdown prose:
A prompt is one self-describing `docs/prompts/<prompt-id>/PROMPT.md` file:
1. Add one `@prompt` function under `src/personal_mcp/prompts/components/`.
2. Use the function signature for arguments, requiredness, and literal constraints.
3. Set name, description, tags, and version on the decorator.
4. Keep the canonical body in `docs/prompts/<prompt-id>/PROMPT.md`.
5. Keep Markdown placeholders exactly equal to the Python argument names.
6. Use only documentation-site fields in Markdown frontmatter.
1. Create a lowercase kebab-case directory beneath `docs/prompts/`.
2. Add a nested `prompt` frontmatter mapping with version, description, tags, and ordered arguments.
3. Give every argument a description and explicit required flag.
4. Add `choices` only when a string argument accepts a fixed set of values.
5. Use each argument exactly once or more as a `{{argument_name}}` placeholder in the body.
6. Do not add a Python component, name field, metadata sidecar, or central catalog entry.
The production `FileSystemProvider` discovers component modules. Do not add prompt registry models, catalog resources, or dynamic signature generation.
The custom provider rescans prompt documents during every native list and get request. Changes in an editable checkout are therefore visible on the next request without a process restart. Invalid metadata or placeholder drift fails that request with a configuration error.
## Frontmatter Safety