关于 prompt-design
用于创建 xmcp 提示词的工作流 Skill,面向需要构建可复用 MCP 提示词模板的用户。它通过收集需求并遵循 xmcp 的结构,生成 TypeScript 提示词文件。
主要功能
- 01交互式收集需求
- 02支持简单、参数化和多内容提示词
- 03提供 Zod 参数架构指引
- 04说明提示词元数据与处理函数模式
- 05生成后的构建检查清单
适用场景
- 01创建代码审查提示词
- 02构建参数化文档提示词
- 03定义可复用的领域提示词模板
MCP 相关
该 Skill 指导创建可由 xmcp 暴露给 MCP 客户端发现和使用的提示词。
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ xmcp-dev/ skills --skill prompt-design安装后在 Claude Code 中输入/prompt-design确认已加载。
附带文件references/patterns.md
详细介绍
创建 xmcp 提示词
你将帮助用户创建新的 xmcp 提示词。请遵循以下交互式工作流。
步骤 1:收集信息
生成任何代码之前,请使用 AskUserQuestion 向用户提出以下问题:
-
提示词名称(如果尚未提供):提示词应该叫什么名字?(使用 kebab-case)
-
提示词类型:询问用户需要哪种类型的提示词:
- 简单 - 不含参数的静态提示词文本
- 参数化 - 带有用户提供参数的提示词(最常见)
- 多内容 - 返回多个内容块(文本、图像等)
-
参数(如果是参数化提示词):提示词应接受哪些输入?
- 参数名称
- 类型(string、number、enum)
- 描述
- 是否可选
- 任何验证规则或默认值
-
角色:提示词应采用什么角色?
- user - 从用户视角编写的提示词(最常见)
- assistant - 作为助手回复模板的提示词
-
使用场景:提示词用于什么目的?
- 代码审查
- 文档生成
- 数据分析
- 内容创作
- 其他特定任务
步骤 2:生成提示词
在 src/prompts/ 中创建提示词文件:
文件位置
src/prompts/{prompt-name}.ts
提示词结构参考
每个 xmcp 提示词都有三个主要导出项:
// 1. Schema (optional) - Define parameters with Zod
export const schema = { /* ... */ };
// 2. Metadata (optional) - Prompt configuration
export const metadata: PromptMetadata = { /* ... */ };
// 3. Handler (required) - Default export function
export default function handler(params?) { /* ... */ }
快速参考
必要导入项
import { type PromptMetadata } from "xmcp";
// For parameterized prompts
import { z } from "zod";
import { type InferSchema, type PromptMetadata } from "xmcp";
元数据字段
| 字段 | 类型 | 必需 | 描述 |
|---|---|---|---|
name | string | 否* | 唯一的提示词标识符 |
title | string | 否 | 便于用户理解的标题 |
description | string | 否 | 此提示词的用途 |
role | string | 否 | "user" 或 "assistant"(默认:user) |
*如果省略元数据,xmcp 会使用文件名作为提示词名称。
处理程序返回类型
| 返回类型 | 使用场景 |
|---|---|
string | 简单文本提示词 |
{ type: "text", text: string } | 显式文本内容 |
{ type: "image", data: base64, mimeType: string } | 图像内容 |
Array<Content> | 多个内容块 |
服务端公开提示词的使用场景
MCP 提示词适用于:
- 标准化工作流 - 统一的代码审查和文档模式
- 复杂模板 - 结构化的多步骤分析提示词
- 领域专长 - 针对特定领域的专用提示词
- 可复用模式 - 适合参数化的常见任务
- 客户端集成 - MCP 客户端可发现和使用的提示词
详细模板
完整代码模板包括:
- 简单提示词模式
- 使用 Zod schema 的参数化提示词
- 多角色对话提示词
- 自动补全支持
- 代码审查和文档示例
阅读:references/patterns.md
生成后的检查清单
- 文件已创建在
src/prompts/{prompt-name}.ts - 如果使用元数据,请确保包含
name、title和description - Schema 中所有参数都使用了
.describe()(如果是参数化提示词) - 处理程序返回了适当的内容格式
- 根据使用场景正确设置了角色
建议运行 pnpm build,以验证提示词能否正确编译。
评论
支持 Markdown