Agent Skills
› opensquilla/opensquilla
› meta-research-to-slide-deck
meta-research-to-slide-deck
GitHub将研究问题转化为基于来源的演示文稿包。当用户需要研究性演讲、领导简报、竞争分析或需多技能协同(搜索、策展、综合、导出)的幻灯片大纲时触发此元技能。
Trigger Scenarios
需要制作基于研究的演示文稿
生成领导层汇报简报
创建竞争分析幻灯片
构建带有来源支持的幻灯片大纲
Install
npx skills add opensquilla/opensquilla --skill meta-research-to-slide-deck -g -y
SKILL.md
Frontmatter
{
"kind": "meta",
"name": "meta-research-to-slide-deck",
"always": false,
"metadata": {
"opensquilla": {
"risk": "medium",
"capabilities": [
"network",
"filesystem-write"
]
}
},
"triggers": [
"research deck",
"调研做成PPT",
"做一份汇报",
"竞品分析PPT",
"slides with sources",
"汇报材料",
"source-backed deck"
],
"provenance": {
"origin": "opensquilla-original",
"license": "Apache-2.0"
},
"composition": {
"steps": [
{
"id": "brief",
"kind": "llm_chat",
"with": {
"task": "Parse a research-to-deck request.\n\nRequest:\n{{ inputs.user_message | xml_escape | truncate(2000) }}\n\nReturn exactly:\nTOPIC: <topic>\nAUDIENCE: <audience or ASSUMED: leadership>\nSLIDE_COUNT: <number or ASSUMED: 8>\nDECISION_CONTEXT: <decision\/use or unknown>\nSTYLE: <executive|technical|sales|teaching>\nNEEDS_CLARIFICATION: <yes|no>\nMISSING_FIELDS:\n - <topic|audience|none>\n",
"system": "You infer deck requirements and pick conservative defaults."
}
},
{
"id": "clarify",
"kind": "user_input",
"when": "'NEEDS_CLARIFICATION: yes' in outputs.brief",
"clarify": {
"mode": "form",
"intro": "汇报材料需要最小主题和受众。",
"fields": [
{
"name": "topic",
"type": "string",
"prompt": "主题 \/ Topic",
"required": true,
"max_chars": 200
},
{
"name": "audience",
"type": "string",
"prompt": "听众 \/ Audience",
"max_chars": 160
},
{
"max": 30,
"min": 3,
"name": "slide_count",
"type": "int",
"prompt": "页数 \/ Slides"
}
],
"nl_extract": true,
"timeout_hours": 24,
"cancel_keywords": [
"取消",
"算了",
"cancel",
"stop"
]
},
"depends_on": [
"brief"
]
},
{
"id": "search",
"kind": "skill_exec",
"with": {
"query": "{{ outputs.brief | truncate(260) }}",
"engines": [
"brave",
"duckduckgo",
"tavily"
],
"max_results": 18
},
"skill": "multi-search-engine",
"depends_on": [
"brief",
"clarify"
]
},
{
"id": "research",
"kind": "skill_exec",
"with": {
"rounds": 2,
"sources": "{{ outputs.search | truncate(6000) }}",
"question": "{{ outputs.brief | truncate(500) }}"
},
"skill": "deep-research",
"depends_on": [
"search"
]
},
{
"id": "storyline",
"kind": "llm_chat",
"with": {
"task": "Create a slide storyline:\n- one governing message\n- slide-by-slide title, takeaway, evidence, visual suggestion\n- source IDs and unsupported-claim caveats\n- speaker notes bullets\n\nBrief:\n{{ outputs.brief | truncate(1200) }}\nResearch:\n{{ outputs.research | truncate(8000) }}\n",
"system": "You turn research into an executive slide storyline with source boundaries."
},
"depends_on": [
"research"
]
},
{
"id": "pptx_artifact",
"kind": "skill_exec",
"with": {
"task": "Create or outline a PowerPoint deck from this source-backed storyline. Preserve source notes in speaker notes or appendix.\n{{ outputs.storyline | truncate(8000) }}"
},
"skill": "pptx",
"depends_on": [
"storyline"
]
},
{
"id": "final_deck_brief",
"kind": "llm_chat",
"with": {
"task": "Return:\n- deck title and audience\n- slide outline table\n- talk track\n- source list\n- artifact status\/path if generated\n- what to verify before presenting\n\nStoryline:\n{{ outputs.storyline | truncate(6000) }}\nPPTX artifact:\n{{ outputs.pptx_artifact | truncate(3000) }}",
"system": "You return presentation deliverables without process commentary."
},
"depends_on": [
"storyline",
"pptx_artifact"
]
}
]
},
"description": "Use this meta-skill instead of answering directly when the user needs a researched presentation, leadership briefing, competitive analysis deck, or source-backed slide outline that benefits from multi-skill orchestration across search, source curation, synthesis, slides, and document export.",
"meta_priority": 63,
"final_text_mode": "step:final_deck_brief"
}
Research To Slide Deck
Builds source-backed presentation packages from a research question.
Version History
- 7f72a32 Current 2026-07-05 18:41


