You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
docs(formatting): split Claude guidance into task (XML) vs agent/system (markdown)
Lab product system prompts (Claude-for-Excel, Cursor-on-Claude) use markdown +
MUST/NEVER imperatives, not XML, for long-lived behavioral policy. Adds an
agent/system-prompt format profile alongside the existing task-prompt XML rule.
| Gemini | Always few-shot | Recall without examples is significantly weaker |
@@ -51,6 +52,19 @@ Example 2: …
51
52
52
53
These tags align with common quality assertions (has_role, has_task, has_format, has_constraints, has_edge_cases). Using them is not decoration; it's how downstream graders pass.
53
54
55
+
## Claude agent / system prompts (markdown mode)
56
+
57
+
The XML guidance above is for **task prompts** — gradable I/O with few-shot blocks and `<context>` retrieval. **Long-lived agent and system prompts are different**: they're behavioral policy, not parseable I/O, and the labs' own Claude system prompts (Claude-for-Excel, Claude-in-Cursor) use **markdown + categorical imperatives**, not XML.
58
+
59
+
Contract for a Claude agent/system prompt:
60
+
61
+
1.**Markdown sections**, not XML tags — `## Role`, `## Tools`, `## Rules`, `## Workflow`.
62
+
2.**MUST / NEVER policy blocks** for hard rules — `"You MUST read a file before editing it"`, `"NEVER create files unless necessary"`. Categorical, non-negotiable framing; not prose suggestions.
63
+
3.**Declare impossibilities upfront**, not as runtime failures — `"Cannot send emails, access the local filesystem, or run macros."`
64
+
4.**Natural-language tool narration** — tell the user what a tool *does*, don't name it.
65
+
66
+
Use XML *inside* a markdown agent prompt only for embedded few-shot examples or a structured output schema — the surrounding policy stays markdown.
67
+
54
68
## Prefill
55
69
56
70
Start the assistant turn with a leading token to skip preamble.
0 commit comments