A universal AI-agent skill / tool for finding curated prompt templates.
Defaults to a free public library at https://zhouyu.space (Mojo), but the backend URL is configurable per install. Any backend implementing the documented HTTP contract works — this is not specific to one project or one agent system.
- 📜 SKILL.md — Claude Code / Claude Desktop skill descriptor
- 📋 openapi.yaml — OpenAPI 3.1 spec for Codex / GPT function calling / Cursor / LangChain / any HTTP-aware agent
- 📖 API doc — see
openapi.yamlfor full contract
When the user asks for a starting-point prompt template (not "do the task for me"), the skill:
- Probes the backend's category tree
- Searches by category / subcategory / keyword / tool
- Picks the best match
- Returns the prompt content verbatim, along with title / summary / cover image (if any) / source attribution
Categories (default tree):
- 写作 / Writing — 公文 (formal docs) / 短篇 (short-form) / 随笔 (essay) / 长篇 (long-form)
- 图像 / Image — 电商 / 纯生成 / 图像编辑 / 优化
- 视频 / Video — 运镜 / 创意 / 电商
- 工程 / Code — Skill / PRD / 代码
Skill auto-discovery via ~/.claude/skills/:
mkdir -p ~/.claude/skills/prompt-finder
curl -sSL -o ~/.claude/skills/prompt-finder/SKILL.md \
https://raw.githubusercontent.com/n8f86p7j5b-afk/prompt-finder/main/SKILL.mdRestart Claude. Skill appears in available skills automatically. Triggers: "find a prompt for X" / "给我一个 prompt" / "提示词模板".
Import openapi.yaml as a custom GPT Action or as function-calling tool spec:
curl -sSL https://raw.githubusercontent.com/n8f86p7j5b-afk/prompt-finder/main/openapi.yaml \
> prompt-finder.yaml
# Then in OpenAI Playground / Custom GPT builder → Actions → "Import from URL" or paste contentsGPT will auto-generate function signatures for the 5 endpoints (searchPrompts, getPrompt, randomPrompt, topPrompts, listCategories).
Cursor supports MCP and .cursorrules. Quick way:
mkdir -p ~/.cursor/rules
curl -sSL -o ~/.cursor/rules/prompt-finder.md \
https://raw.githubusercontent.com/n8f86p7j5b-afk/prompt-finder/main/SKILL.mdOr paste the SKILL.md content into your .cursorrules at the project root.
import httpx
BASE = "https://api.zhouyu.space" # configurable
def search_prompts(category=None, subcategory=None, q=None, page_size=10):
params = {k: v for k, v in {
"category": category, "subcategory": subcategory, "q": q,
"page_size": page_size,
}.items() if v is not None}
r = httpx.get(f"{BASE}/api/skill/prompts", params=params, timeout=15)
r.raise_for_status()
return r.json()
# Register as a LangChain Tool, autogen function, etc.For LangChain, wrap as @tool or import via OpenAPI loader. See the openapi.yaml.
No SDK needed. Test from any shell:
curl -s 'https://api.zhouyu.space/api/skill/categories'
curl -s 'https://api.zhouyu.space/api/skill/random?category=图像'
curl -s 'https://api.zhouyu.space/api/skill/prompts?category=图像&subcategory=电商&q=香水&page_size=5'Default base URL: https://api.zhouyu.space.
To use your own instance (e.g. a self-hosted Mojo or a compatible server):
- For Option A (SKILL.md): open
~/.claude/skills/prompt-finder/SKILL.md, searchPROMPT_FINDER_BASE, replace. - For Option B (openapi.yaml): add another entry under
servers:and point your tool at that URL. - For Option D (Python): just change the
BASEconstant.
Any server that implements the contract in openapi.yaml is plug-compatible.
See openapi.yaml for the full spec. Five endpoints:
| Method | Path | Use |
|---|---|---|
| GET | /categories |
Probe the category tree |
| GET | /prompts?category=&subcategory=&q=&tool=&mode=&page_size= |
Search |
| GET | /prompts/{id} |
Fetch by id |
| GET | /random?category= |
Random pick |
| GET | /top?limit= |
Top N popular |
Every prompt returns 17 fields (see Prompt schema in openapi.yaml):
id, title, title_zh, content, summary, summary_zh,
category, subcategory, tags, mode (creation|optimization),
language (zh|en), recommended_tool, tool_url, difficulty (小白|进阶|专业),
cover_image_url, source_url
Agents should prefer Chinese fields (title_zh / summary_zh) when the user speaks Chinese.
- Curation > generation: The default backend's editorial rubric rejects "帮我写 X" one-shot requests; what you get back is a real template with role / structure / output constraints.
- Reproducibility: Templates have placeholders (
【主题】,{role}) you adapt — same template gives same shape of output across runs. - Attribution: Each result links back to the source page with author info.
- Reference images: Image/video prompts include
cover_image_urlso you see what the prompt produces.
- Public, free, anonymous. No API key.
- Rate limit: 60 req/min per IP.
- ~1300 curated entries (target), categorized and LLM-audited.
- Edited per a strict "prompt template, not request" rubric.
- Free to use in any project, commercial or otherwise. Please credit Mojo (zhouyu.space) if you publish a derivative.
Skill descriptor / OpenAPI spec: MIT.
Library content licensing varies per entry — each prompt's source_url / platform_author field links to original attribution. Default backend (Mojo) is free public access.