pm_prompt
The pm_prompt tool manages the prompt library — the markdown instruction files that capabilities and agents reference. Prompts have a role, tags, and agent bindings.
Actions
create, get, list, list_with_content, update, delete, help
Roles
Every prompt has one of five roles:
| Role | Purpose |
|---|---|
system | Core system prompt — agent identity and top-level instructions |
guide | Workflow guide — step-by-step instructions for a task or process |
checklist | Checklist-style constraints and verification steps |
policy | Policies, rules, and constraints the agent must follow |
context | Background context, domain knowledge, or reference material |
list returns metadata only (id, key, role, name, tags, agentCount) to keep agent context windows small. Use get when you need one known prompt’s actual content, or list_with_content when you specifically need content for multiple matching prompts.create
Create a new prompt.
Parameters
| Field | Type | Required | Notes |
|---|---|---|---|
key | string | Yes | Unique prompt key (max 120 chars) |
role | string | Yes | system, guide, checklist, policy, or context |
name | string | Yes | Display name (max 200 chars) |
content | string | Yes | Prompt content (max 20,000 chars) |
tags | string[] | No | Freeform tags |
Example
pm_prompt {
action: "create",
key: "reviewer.system",
role: "system",
name: "Reviewer System Prompt",
content: "You are a code reviewer. Your job is to...",
tags: ["review", "core"]
}get
Fetch a prompt by ID or key. Returns full content.
Parameters
| Field | Type | Required |
|---|---|---|
id | string | One of |
key | string | One of |
list
Metadata-only list. Returns prompt records without content — just id, key, role, name, tags, and agentCount (how many agents bind to this prompt).
Parameters
| Field | Type | Required | Notes |
|---|---|---|---|
roles | string[] | No | Filter by roles array |
search | string | No | Search query |
limit | number | No | Max results (1–500) |
Use this for discovery — an agent can list available prompts without blowing out its context window.
Example
pm_prompt {
action: "list",
roles: ["system"],
search: "reviewer",
limit: 20
}list_with_content
Same filters as list, but each returned prompt includes full content. Use this only when metadata-only discovery is not enough, such as scanning the bodies of several prompts at once. For one known prompt key or id, prefer get.
Parameters
Same as list: roles, search, and limit.
update
Update an existing prompt.
Parameters
| Field | Type | Required |
|---|---|---|
id | string | Yes |
key | string | No |
role | string | No |
name | string | No |
content | string | No |
tags | string[] | No |
delete
Delete a prompt by ID.
Parameters
| Field | Type | Required |
|---|---|---|
id | string | Yes |
help
pm_prompt { action: "help" }help returns structured, read-only guidance for prompt registry calls.
| Field | Contents |
|---|---|
actions | Current accepted action names: create, get, list, list_with_content, update, delete, and help |
whenToUse | Guidance that list is metadata-only, list_with_content is content-bearing with the same filters, and get loads full content by id or key |
examples | Representative calls for metadata discovery, loading a known prompt by key, and creating a prompt |
cautions | Guardrails such as generated prompt ids, content omitted from list, and delete clearing related bindings or capability references |
compatibility | Notes that structured help is additive and existing action names and non-help result shapes are unchanged |
Use the help payload to pick the smallest prompt call that fits the context budget: list for discovery, get for one known prompt, and list_with_content for batch content inspection.
Related
- pm_agent — agents bind to prompts
- pm_capability — capabilities link to prompt content