feat(workflows): expand template library from 9 to 22 + multiline string cleanup (#36)

* feat(workflows): add 13 workflow templates across engineering, business, and productivity

Engineering:
- bug-triage: reproduce path → root cause → fix plan
- api-design: resource model → endpoints → OpenAPI spec
- incident-postmortem: timeline → RCA → full postmortem report
- test-generation: code analysis → edge cases → full test suite
- refactor-plan: smell analysis → prioritised opportunities → migration plan

Business:
- competitor-analysis: profiles → SWOT → strategy report
- product-spec: problem definition → user stories → full PRD
- market-research: landscape → segments → research report

Productivity/Thinking:
- meeting-summary: raw notes → structured summary → follow-up email
- decision-matrix: criteria → weighted scoring → recommendation memo
- learning-plan: gap analysis → roadmap → week-1 day-by-day plan
- job-application: job analysis → tailored resume → cover letter → interview prep
- blog-post: research → outline → draft → SEO optimisation

Closes #1912 on librefang/librefang

* fix(workflows): overhaul existing 9 templates

- data-pipeline: redesigned — original 'extract from URL' step was
  broken (LLMs cannot fetch URLs); replaced with paste-data approach
  (profile → clean_transform → analyse) with analysis_goal parameter
- translate-polish: added target_language and register parameters;
  added back-translation step for accuracy verification
- weekly-report: added team/audience parameters, richer extraction
  step, added Metrics and Notes sections
- content-pipeline: added audience/tone parameters, added outline step
  between research and writing
- content-review: fix category 'content' → 'creation'
- customer-support: fix category 'support' → 'business'

* style(workflows): convert all prompt_template strings to TOML multiline syntax

Replace \n escape sequences with real newlines using triple-quote
multiline strings ("""...""") across all 22 workflow templates.
No content changes — formatting only.

* style(hands): replace \n escape in reddit writer format example with multiline code block
This commit is contained in:
Evan authored and GitHub committed 2026-04-01 18:21:09 +08:00
1 parent ae5d97dc7e
commit 05bdf02169
23 files changed
+1500 -64

No files matched your search

+6 -1
View File
@@ -836,7 +836,12 @@ Reddit uses a markdown variant. Use these formatting tools appropriately:
- Include a TL;DR for any post longer than 150 words - Include a TL;DR for any post longer than 150 words
- Place it at the END of the post, preceded by a horizontal rule - Place it at the END of the post, preceded by a horizontal rule
- The TL;DR should be 1-2 sentences that capture the core point - The TL;DR should be 1-2 sentences that capture the core point
- Format: `---\n\n**TL;DR:** One or two sentence summary.` - Format:
```
---
**TL;DR:** One or two sentence summary.
```
## POST TYPE ROTATION ## POST TYPE ROTATION
+70
View File
@@ -0,0 +1,70 @@
id = "api-design"
name = "API Design & Specification"
description = "Design a REST API from requirements: endpoints, request/response schemas, auth, error handling, and OpenAPI spec."
category = "engineering"
tags = ["api", "design", "openapi", "engineering"]
[i18n.zh]
name = "API 设计与规范"
description = "从需求出发设计 REST API:端点、请求/响应结构、认证、错误处理,输出 OpenAPI 规范。"
[[parameters]]
name = "requirements"
description = "Feature or product requirements the API needs to satisfy"
param_type = "string"
required = true
[[parameters]]
name = "tech_stack"
description = "Technology stack and any existing API conventions"
param_type = "string"
required = false
default = ""
[[steps]]
name = "resource_model"
prompt_template = """
You are an API architect. From the requirements below, identify the core resources and their relationships:
1. List every resource (noun)
2. Define attributes and types for each
3. Map relationships (one-to-many, many-to-many)
4. Identify which resources need CRUD vs. action-oriented endpoints
Requirements:
{{requirements}}
Tech stack / conventions:
{{tech_stack}}
"""
[[steps]]
name = "endpoint_design"
prompt_template = """
Design the full set of REST endpoints based on the resource model. For each endpoint specify:
- Method + path
- Path/query parameters
- Request body schema (JSON)
- Success response schema + status code
- Error responses (4xx, 5xx)
- Auth requirement
- Idempotency and side-effect notes
Resource model:
{{resource_model}}
"""
depends_on = ["resource_model"]
[[steps]]
name = "openapi_spec"
prompt_template = """
Write a complete OpenAPI 3.1 YAML specification for the API designed above. Include:
- info block with title, version, description
- All paths with operations
- Reusable schemas in components/schemas
- Security schemes
- Example request/response bodies
Endpoint design:
{{endpoint_design}}
"""
depends_on = ["endpoint_design"]
+99
View File
@@ -0,0 +1,99 @@
id = "blog-post"
name = "Blog Post Writer"
description = "Research a topic, build a structured outline, write a full-length blog post, then optimise for SEO."
category = "creation"
tags = ["writing", "blog", "seo", "content"]
[i18n.zh]
name = "博客文章撰写"
description = "调研主题,构建结构化提纲,撰写完整博客文章,并进行 SEO 优化。"
[[parameters]]
name = "topic"
description = "Blog post topic or working title"
param_type = "string"
required = true
[[parameters]]
name = "audience"
description = "Target audience and their expertise level"
param_type = "string"
required = false
default = "general audience"
[[parameters]]
name = "tone"
description = "Desired tone (e.g. technical, conversational, authoritative)"
param_type = "string"
required = false
default = "informative and engaging"
[[steps]]
name = "research"
prompt_template = """
You are a research journalist. For the blog topic below, compile:
1. Key facts, statistics, and data points (with source type)
2. Common misconceptions to debunk
3. Expert perspectives and contrasting views
4. Recent developments or trends
5. Concrete examples and case studies
6. Angles that haven't been covered well in existing content
Topic: {{topic}}
Audience: {{audience}}
"""
[[steps]]
name = "outline"
prompt_template = """
You are a content strategist. Create a detailed blog post outline:
- Compelling headline (3 options)
- Hook / opening angle
- H2 sections with H3 subsections
- Key point per section
- Data or example to use in each section
- Conclusion and CTA
Target length: 1200-1800 words.
Tone: {{tone}}
Audience: {{audience}}
Research:
{{research}}
"""
depends_on = ["research"]
[[steps]]
name = "draft"
prompt_template = """
Write the full blog post following the outline. Guidelines:
- Open with a hook that immediately addresses the reader's pain or curiosity
- Use short paragraphs (3-4 sentences max)
- Include the statistics and examples from research
- Use subheadings to aid scannability
- End with a clear takeaway and one actionable CTA
- Tone: {{tone}}
Outline:
{{outline}}
Research:
{{research}}
"""
depends_on = ["outline", "research"]
[[steps]]
name = "seo_optimise"
prompt_template = """
SEO-optimise the blog post:
1. **Primary keyword** — identify the best target keyword
2. **Meta title** (under 60 chars) and **meta description** (under 155 chars)
3. **Keyword placement** — suggest where to naturally insert the primary keyword and 3 secondary keywords
4. **Internal link opportunities** — topics to link to
5. **Image alt text suggestions** — 2-3 descriptive alts
6. **Revised headline** if needed for keyword inclusion
Draft:
{{draft}}
"""
depends_on = ["draft"]
+17 -3
View File
@@ -16,14 +16,28 @@ required = true
[[steps]] [[steps]]
name = "idea_generator" name = "idea_generator"
prompt_template = "You are a creative strategist. For the following challenge, generate 10 diverse solution ideas. Include: 3 conventional approaches, 4 creative approaches, and 3 bold/unconventional approaches. For each idea, give a one-line title and a 2-sentence explanation.\n\nChallenge: {{challenge}}" prompt_template = """
You are a creative strategist. For the following challenge, generate 10 diverse solution ideas. Include: 3 conventional approaches, 4 creative approaches, and 3 bold/unconventional approaches. For each idea, give a one-line title and a 2-sentence explanation.
Challenge: {{challenge}}
"""
[[steps]] [[steps]]
name = "evaluator" name = "evaluator"
prompt_template = "You are a critical analyst. Evaluate each idea below on three criteria: Feasibility (1-5), Impact (1-5), Originality (1-5). Pick the top 3 ideas and for each provide: why it's promising, key risks, and concrete first steps to implement it.\n\nIdeas:\n{{idea_generator}}" prompt_template = """
You are a critical analyst. Evaluate each idea below on three criteria: Feasibility (1-5), Impact (1-5), Originality (1-5). Pick the top 3 ideas and for each provide: why it's promising, key risks, and concrete first steps to implement it.
Ideas:
{{idea_generator}}
"""
depends_on = ["idea_generator"] depends_on = ["idea_generator"]
[[steps]] [[steps]]
name = "action_planner" name = "action_planner"
prompt_template = "You are a project planner. Take the top-rated idea below and create a concrete action plan: 1) Clear goal statement 2) 5-step implementation roadmap with timelines 3) Required resources 4) Success metrics 5) Potential obstacles and mitigation strategies.\n\nEvaluation:\n{{evaluator}}" prompt_template = """
You are a project planner. Take the top-rated idea below and create a concrete action plan: 1) Clear goal statement 2) 5-step implementation roadmap with timelines 3) Required resources 4) Success metrics 5) Potential obstacles and mitigation strategies.
Evaluation:
{{evaluator}}
"""
depends_on = ["evaluator"] depends_on = ["evaluator"]
+67
View File
@@ -0,0 +1,67 @@
id = "bug-triage"
name = "Bug Triage & Fix Plan"
description = "Analyse a bug report, reproduce the failure path, identify root cause, and produce a prioritised fix plan with test cases."
category = "engineering"
tags = ["bug", "debugging", "triage", "engineering"]
[i18n.zh]
name = "Bug 分析与修复计划"
description = "分析 Bug 报告,还原失败路径,定位根因,输出优先级排序的修复计划与测试用例。"
[[parameters]]
name = "bug_report"
description = "The bug report, error message, or stack trace"
param_type = "string"
required = true
[[parameters]]
name = "codebase_context"
description = "Relevant code snippets or architecture description"
param_type = "string"
required = false
default = ""
[[steps]]
name = "reproduce_path"
prompt_template = """
You are a senior engineer doing bug triage. Given the bug report below, reconstruct the exact failure path:
1. Preconditions that must be true
2. Step-by-step sequence that triggers the bug
3. What the system does vs. what it should do
4. Affected components and data flow
Bug report:
{{bug_report}}
Codebase context:
{{codebase_context}}
"""
[[steps]]
name = "root_cause"
prompt_template = """
You are a debugging expert. Based on the failure path analysis, identify the root cause:
1. Immediate cause (the direct code/logic fault)
2. Contributing factors (environment, race condition, assumption violation)
3. Why this was not caught earlier (missing test, wrong assumption)
4. Blast radius — what else could be affected
Failure path:
{{reproduce_path}}
"""
depends_on = ["reproduce_path"]
[[steps]]
name = "fix_plan"
prompt_template = """
You are a tech lead. Produce a concrete fix plan:
1. **Recommended fix** — specific code change with rationale
2. **Alternative approaches** — trade-offs of each
3. **Test cases to add** — unit, integration, regression
4. **Rollout recommendation** — hotfix vs. normal release, feature flag needed?
5. **Prevention** — process or tooling changes to prevent recurrence
Root cause analysis:
{{root_cause}}
"""
depends_on = ["root_cause"]
+56 -4
View File
@@ -30,17 +30,69 @@ default = ""
[[steps]] [[steps]]
name = "review_correctness" name = "review_correctness"
prompt_template = "Review the following {{language}} code for correctness. Analyse:\n- Logic errors and edge cases\n- Error handling completeness\n- Null/undefined safety\n- Off-by-one errors and boundary conditions\n- Resource leaks (memory, file handles, connections)\n- Concurrency issues (race conditions, deadlocks)\n\nContext: {{context}}\n\nCode:\n{{code}}" prompt_template = """
Review the following {{language}} code for correctness. Analyse:
- Logic errors and edge cases
- Error handling completeness
- Null/undefined safety
- Off-by-one errors and boundary conditions
- Resource leaks (memory, file handles, connections)
- Concurrency issues (race conditions, deadlocks)
Context: {{context}}
Code:
{{code}}
"""
[[steps]] [[steps]]
name = "review_security" name = "review_security"
prompt_template = "Perform a security review of the following {{language}} code. Check for:\n- Injection vulnerabilities (SQL, command, XSS)\n- Authentication and authorisation flaws\n- Sensitive data exposure (logging secrets, hardcoded credentials)\n- Input validation gaps\n- Insecure cryptographic usage\n- Path traversal and SSRF risks\n- Dependency vulnerabilities\n\nContext: {{context}}\n\nCode:\n{{code}}" prompt_template = """
Perform a security review of the following {{language}} code. Check for:
- Injection vulnerabilities (SQL, command, XSS)
- Authentication and authorisation flaws
- Sensitive data exposure (logging secrets, hardcoded credentials)
- Input validation gaps
- Insecure cryptographic usage
- Path traversal and SSRF risks
- Dependency vulnerabilities
Context: {{context}}
Code:
{{code}}
"""
[[steps]] [[steps]]
name = "review_style" name = "review_style"
prompt_template = "Review the following {{language}} code for style and maintainability. Evaluate:\n- Naming conventions and clarity\n- Function/method length and complexity\n- Code duplication\n- Documentation and comments quality\n- Consistent formatting\n- Appropriate use of language idioms\n- API design and public interface clarity\n\nContext: {{context}}\n\nCode:\n{{code}}" prompt_template = """
Review the following {{language}} code for style and maintainability. Evaluate:
- Naming conventions and clarity
- Function/method length and complexity
- Code duplication
- Documentation and comments quality
- Consistent formatting
- Appropriate use of language idioms
- API design and public interface clarity
Context: {{context}}
Code:
{{code}}
"""
[[steps]] [[steps]]
name = "synthesise" name = "synthesise"
prompt_template = "Synthesise the three independent code review analyses below into a unified review summary. Prioritise findings by severity (critical, high, medium, low). Remove duplicates across analyses. Produce a final verdict: approve, request-changes, or needs-discussion.\n\nCorrectness review:\n{{review_correctness}}\n\nSecurity review:\n{{review_security}}\n\nStyle review:\n{{review_style}}" prompt_template = """
Synthesise the three independent code review analyses below into a unified review summary. Prioritise findings by severity (critical, high, medium, low). Remove duplicates across analyses. Produce a final verdict: approve, request-changes, or needs-discussion.
Correctness review:
{{review_correctness}}
Security review:
{{review_security}}
Style review:
{{review_style}}
"""
depends_on = ["review_correctness", "review_security", "review_style"] depends_on = ["review_correctness", "review_security", "review_style"]
+78
View File
@@ -0,0 +1,78 @@
id = "competitor-analysis"
name = "Competitor Analysis"
description = "Research competitors, map their strengths and weaknesses, and produce a strategic positioning report."
category = "business"
tags = ["strategy", "market", "competitive", "business"]
[i18n.zh]
name = "竞品分析"
description = "调研竞争对手,梳理其优劣势,输出战略定位报告。"
[[parameters]]
name = "product"
description = "Your product or business and its target market"
param_type = "string"
required = true
[[parameters]]
name = "competitors"
description = "List of competitors to analyse (names or URLs)"
param_type = "string"
required = true
[[steps]]
name = "competitor_profiles"
prompt_template = """
You are a market analyst. For each competitor listed, create a profile:
- Core product and value proposition
- Target customer segment
- Pricing model and tiers
- Key features and differentiators
- Known weaknesses or complaints (from reviews, forums)
- Go-to-market strategy
- Estimated market share or traction signals
Our product: {{product}}
Competitors: {{competitors}}
"""
[[steps]]
name = "swot_comparison"
prompt_template = """
Perform a comparative SWOT analysis:
1. For each competitor: their Strengths, Weaknesses, Opportunities they exploit, Threats they face
2. Our position relative to each on: product depth, pricing, UX, distribution, brand
3. Whitespace — what pain points do all competitors fail to address?
Competitor profiles:
{{competitor_profiles}}
"""
depends_on = ["competitor_profiles"]
[[steps]]
name = "strategy_report"
prompt_template = """
Write a strategic positioning report:
## Market Landscape
Summary of the competitive field.
## Our Differentiation
Where we win, where we are at parity, where we lag.
## Attack Vectors
3 specific opportunities to take share from each competitor.
## Defensive Priorities
What strengths to reinforce before competitors close the gap.
## Recommended Positioning Statement
One sentence that clearly differentiates us from all listed competitors.
## 90-Day Action Items
Top 5 concrete actions sorted by impact.
SWOT comparison:
{{swot_comparison}}
"""
depends_on = ["swot_comparison"]
+80 -9
View File
@@ -1,12 +1,12 @@
id = "content-pipeline" id = "content-pipeline"
name = "Content Creation Pipeline" name = "Content Creation Pipeline"
description = "Research → Write → Edit pipeline for article creation" description = "Research a topic, build a structured outline, write a full article, then edit for clarity, flow, and factual consistency."
category = "creation" category = "creation"
tags = ["content", "writing", "article"] tags = ["content", "writing", "article", "research"]
[i18n.zh] [i18n.zh]
name = "内容创作流水线" name = "内容创作流水线"
description = "调研 -> 撰写 -> 编辑的文章创作流水线" description = "调研主题,构建结构化提纲,撰写完整文章,再编辑润色以提升清晰度、流畅性和事实准确性。"
[[parameters]] [[parameters]]
name = "topic" name = "topic"
@@ -14,6 +14,13 @@ description = "The topic to research and write about"
param_type = "string" param_type = "string"
required = true required = true
[[parameters]]
name = "audience"
description = "Target audience (e.g. general public, developers, executives, students)"
param_type = "string"
required = false
default = "general audience"
[[parameters]] [[parameters]]
name = "word_count" name = "word_count"
description = "Target word count for the article" description = "Target word count for the article"
@@ -21,16 +28,80 @@ param_type = "string"
required = false required = false
default = "800-1200" default = "800-1200"
[[steps]] [[parameters]]
name = "researcher" name = "tone"
prompt_template = "You are a research assistant. Research the following topic thoroughly and provide: 1) Background and context 2) Key facts and data points 3) Different perspectives on the topic 4) Recent developments. Be specific and detailed.\n\nTopic: {{topic}}" description = "Desired tone (informative, conversational, technical, persuasive)"
param_type = "string"
required = false
default = "informative"
[[steps]] [[steps]]
name = "writer" name = "researcher"
prompt_template = "You are a professional writer. Based on the research below, write a well-structured article ({{word_count}} words). Include: a compelling headline, an engaging introduction, clear sections with subheadings, and a strong conclusion. Write in a clear, accessible style.\n\nResearch:\n{{researcher}}" prompt_template = """
You are a research journalist. Investigate the following topic for a {{audience}} audience:
1. Background and context — why this topic matters now
2. Key facts and data points (be specific)
3. Multiple perspectives — mainstream view, contrarian view, expert consensus
4. Recent developments or trends
5. Concrete examples, case studies, or anecdotes
6. Common misconceptions to address
Topic: {{topic}}
"""
[[steps]]
name = "outline"
prompt_template = """
You are a content strategist. Create a detailed article outline using the research below.
Include:
- Three headline options (hook-driven, question-based, and statement-based)
- Opening hook strategy
- H2 sections with H3 subsections and the key point each section makes
- Which research fact or example belongs in each section
- Closing argument and call to action
Target: {{word_count}} words, {{tone}} tone, audience: {{audience}}
Research:
{{researcher}}
"""
depends_on = ["researcher"] depends_on = ["researcher"]
[[steps]]
name = "writer"
prompt_template = """
Write the full article following the outline. Requirements:
- Use the best headline from the outline
- Open with the hook strategy from the outline
- Short paragraphs (3-4 sentences max)
- Subheadings for each major section
- Weave in the specific facts and examples from research — no vague generalities
- Match the {{tone}} tone throughout
- End with a concrete takeaway and CTA relevant to a {{audience}} reader
- Target length: {{word_count}} words
Outline:
{{outline}}
Research:
{{researcher}}
"""
depends_on = ["outline", "researcher"]
[[steps]] [[steps]]
name = "editor" name = "editor"
prompt_template = "You are a senior editor. Review and polish the following article. Fix any grammar issues, improve flow, tighten wordy sentences, and ensure factual consistency. Output the final polished version only, no commentary.\n\nDraft:\n{{writer}}" prompt_template = """
You are a senior editor. Polish the article below:
1. Fix grammar, punctuation, and spelling
2. Tighten wordy or repetitive sentences
3. Improve transitions between sections
4. Flag any factual claims that seem unsupported and suggest how to strengthen them
5. Verify the tone is consistent with '{{tone}}' throughout
Output the final polished article only, then add a brief editor's note listing the main changes made.
Draft:
{{writer}}
"""
depends_on = ["writer"] depends_on = ["writer"]
+25 -4
View File
@@ -1,7 +1,7 @@
id = "content-review" id = "content-review"
name = "Content Review" name = "Content Review"
description = "Multi-agent content review pipeline that drafts, reviews for quality and accuracy, then produces a final edited version incorporating feedback." description = "Multi-agent content review pipeline that drafts, reviews for quality and accuracy, then produces a final edited version incorporating feedback."
category = "content" category = "creation"
tags = ["content", "review", "writing", "editing"] tags = ["content", "review", "writing", "editing"]
[i18n.zh] [i18n.zh]
@@ -34,15 +34,36 @@ prompt_template = "Write a {{tone}} article about {{topic}} with approximately {
[[steps]] [[steps]]
name = "review_quality" name = "review_quality"
prompt_template = "Review the following draft for writing quality. Evaluate clarity, coherence, grammar, tone consistency (target: {{tone}}), and overall readability. Provide specific, actionable feedback with line-level suggestions.\n\nDraft:\n{{draft}}" prompt_template = """
Review the following draft for writing quality. Evaluate clarity, coherence, grammar, tone consistency (target: {{tone}}), and overall readability. Provide specific, actionable feedback with line-level suggestions.
Draft:
{{draft}}
"""
depends_on = ["draft"] depends_on = ["draft"]
[[steps]] [[steps]]
name = "review_accuracy" name = "review_accuracy"
prompt_template = "Review the following draft for factual accuracy and logical consistency. Flag any claims that appear unsupported, statistics that need citation, logical fallacies, or misleading statements. List each issue with a suggested correction.\n\nDraft:\n{{draft}}" prompt_template = """
Review the following draft for factual accuracy and logical consistency. Flag any claims that appear unsupported, statistics that need citation, logical fallacies, or misleading statements. List each issue with a suggested correction.
Draft:
{{draft}}
"""
depends_on = ["draft"] depends_on = ["draft"]
[[steps]] [[steps]]
name = "final_edit" name = "final_edit"
prompt_template = "Produce a final edited version of the draft below, incorporating the quality and accuracy feedback. Preserve the original voice and intent while addressing all identified issues.\n\nOriginal draft:\n{{draft}}\n\nQuality feedback:\n{{review_quality}}\n\nAccuracy feedback:\n{{review_accuracy}}" prompt_template = """
Produce a final edited version of the draft below, incorporating the quality and accuracy feedback. Preserve the original voice and intent while addressing all identified issues.
Original draft:
{{draft}}
Quality feedback:
{{review_quality}}
Accuracy feedback:
{{review_accuracy}}
"""
depends_on = ["review_quality", "review_accuracy"] depends_on = ["review_quality", "review_accuracy"]
+39 -4
View File
@@ -1,7 +1,7 @@
id = "customer-support" id = "customer-support"
name = "Customer Support Triage" name = "Customer Support Triage"
description = "Tiered customer support pipeline that classifies incoming requests by urgency and category, drafts an appropriate response, and escalates complex issues to a specialist." description = "Tiered customer support pipeline that classifies incoming requests by urgency and category, drafts an appropriate response, and escalates complex issues to a specialist."
category = "support" category = "business"
tags = ["support", "triage", "customer-service", "escalation"] tags = ["support", "triage", "customer-service", "escalation"]
[i18n.zh] [i18n.zh]
@@ -30,14 +30,49 @@ default = ""
[[steps]] [[steps]]
name = "classify" name = "classify"
prompt_template = "Classify the following customer support request. Determine:\n1. Category: billing, technical, account, feature-request, bug-report, or general\n2. Urgency: low, medium, high, critical\n3. Sentiment: positive, neutral, frustrated, angry\n4. Whether escalation to a human specialist is needed (true/false)\n\nReturn a structured assessment with reasoning for each classification.\n\nProduct context: {{product_context}}\n\nCustomer message:\n{{customer_message}}" prompt_template = """
Classify the following customer support request. Determine:
1. Category: billing, technical, account, feature-request, bug-report, or general
2. Urgency: low, medium, high, critical
3. Sentiment: positive, neutral, frustrated, angry
4. Whether escalation to a human specialist is needed (true/false)
Return a structured assessment with reasoning for each classification.
Product context: {{product_context}}
Customer message:
{{customer_message}}
"""
[[steps]] [[steps]]
name = "draft_response" name = "draft_response"
prompt_template = "Draft a helpful, empathetic support response for {{customer_name}} based on the classification below. The response should:\n- Acknowledge the customer's concern\n- Provide a clear solution or next steps\n- Match the appropriate tone for the detected sentiment\n- Include specific action items\n\nClassification:\n{{classify}}\n\nOriginal message:\n{{customer_message}}" prompt_template = """
Draft a helpful, empathetic support response for {{customer_name}} based on the classification below. The response should:
- Acknowledge the customer's concern
- Provide a clear solution or next steps
- Match the appropriate tone for the detected sentiment
- Include specific action items
Classification:
{{classify}}
Original message:
{{customer_message}}
"""
depends_on = ["classify"] depends_on = ["classify"]
[[steps]] [[steps]]
name = "escalation_check" name = "escalation_check"
prompt_template = "Review the classification and drafted response below. Determine if this case requires escalation beyond automated support. If escalation is needed, prepare a concise internal handoff note for the specialist team that includes: summary, category, urgency, customer sentiment, attempted resolution, and recommended next steps.\n\nIf no escalation is needed, confirm the drafted response is complete and ready to send.\n\nClassification:\n{{classify}}\n\nDrafted response:\n{{draft_response}}" prompt_template = """
Review the classification and drafted response below. Determine if this case requires escalation beyond automated support. If escalation is needed, prepare a concise internal handoff note for the specialist team that includes: summary, category, urgency, customer sentiment, attempted resolution, and recommended next steps.
If no escalation is needed, confirm the drafted response is complete and ready to send.
Classification:
{{classify}}
Drafted response:
{{draft_response}}
"""
depends_on = ["classify", "draft_response"] depends_on = ["classify", "draft_response"]
+64 -18
View File
@@ -1,36 +1,82 @@
id = "data-pipeline" id = "data-pipeline"
name = "Data Pipeline" name = "Data Analysis & Transform"
description = "ETL pipeline that extracts data from a source, transforms it into a target format, and validates the output for completeness and correctness." description = "Clean, transform, analyse, and summarise raw data. Handles messy inputs: CSV, JSON, tables, or free-form text."
category = "data" category = "engineering"
tags = ["etl", "data", "pipeline", "transform"] tags = ["data", "analysis", "transform", "etl"]
[i18n.zh] [i18n.zh]
name = "数据流水线" name = "数据分析与转换"
description = "ETL 流水线,从数据源提取数据,转换为目标格式,并验证输出的完整性和正确性。" description = "清洗、转换、分析并摘要原始数据,支持 CSV、JSON、表格或自由文本等杂乱输入。"
[[parameters]] [[parameters]]
name = "data_source" name = "raw_data"
description = "URL or file path to the data source" description = "The raw data to process (paste CSV, JSON, table, or any structured text)"
param_type = "string" param_type = "string"
required = true required = true
[[parameters]] [[parameters]]
name = "output_format" name = "output_format"
description = "Desired output format (json, csv, markdown)" description = "Desired output format for the transformed data (json, csv, markdown-table)"
param_type = "string" param_type = "string"
required = false required = false
default = "json" default = "json"
[[steps]] [[parameters]]
name = "extract" name = "analysis_goal"
prompt_template = "Extract raw data from the following source: {{data_source}}. Return the complete dataset without any transformation, preserving the original structure." description = "What you want to understand or extract from the data"
param_type = "string"
required = false
default = "general summary and key insights"
[[steps]] [[steps]]
name = "transform" name = "profile"
prompt_template = "Transform the following raw data into well-structured {{output_format}} format. Apply standard cleaning: trim whitespace, normalise dates to ISO-8601, remove duplicate rows, and convert empty strings to null.\n\nRaw data:\n{{extract}}" prompt_template = """
depends_on = ["extract"] You are a data engineer. Profile the following raw data:
1. Detected format and structure
2. Number of rows and columns/fields
3. Data types per field
4. Missing value count per field
5. Obvious data quality issues (duplicates, inconsistent formatting, out-of-range values)
6. Sample of first 5 rows for reference
Raw data:
{{raw_data}}
"""
[[steps]] [[steps]]
name = "validate" name = "clean_transform"
prompt_template = "Validate the transformed data below for completeness and correctness. Check for: missing required fields, type mismatches, invalid date formats, out-of-range values, and referential integrity. Return a validation report with pass/fail status and any issues found.\n\nTransformed data:\n{{transform}}" prompt_template = """
depends_on = ["transform"] Clean and transform the raw data based on the profile below. Apply:
- Trim whitespace from string fields
- Normalise dates to ISO-8601
- Remove exact duplicate rows
- Convert empty strings to null
- Standardise inconsistent categorical values (e.g. 'Y'/'Yes'/'yes' → true)
- Flag but preserve rows with suspicious values (do not silently drop them)
Output the cleaned data in {{output_format}} format, followed by a change log listing every transformation applied.
Data profile:
{{profile}}
Raw data:
{{raw_data}}
"""
depends_on = ["profile"]
[[steps]]
name = "analyse"
prompt_template = """
Analyse the cleaned data to address the following goal: {{analysis_goal}}
Provide:
1. Key statistics (counts, totals, averages, distributions as appropriate)
2. Notable patterns or trends
3. Outliers or anomalies worth investigating
4. Correlations between fields (if applicable)
5. Top 3 actionable insights from the data
Cleaned data:
{{clean_transform}}
"""
depends_on = ["clean_transform"]
+76
View File
@@ -0,0 +1,76 @@
id = "decision-matrix"
name = "Decision Matrix"
description = "Evaluate competing options against weighted criteria to produce a clear, defensible recommendation."
category = "thinking"
tags = ["decision", "analysis", "strategy", "thinking"]
[i18n.zh]
name = "决策矩阵"
description = "对竞争方案按加权标准进行评估,输出清晰、有据可查的推荐结论。"
[[parameters]]
name = "decision"
description = "The decision to be made and its context"
param_type = "string"
required = true
[[parameters]]
name = "options"
description = "The options or alternatives being considered"
param_type = "string"
required = true
[[steps]]
name = "criteria"
prompt_template = """
You are a decision analyst. For the decision below, define the evaluation criteria:
1. List 5-8 criteria that matter most for this decision
2. For each criterion: define what 'good' looks like (high score) and 'bad' looks like (low score)
3. Assign weights (must sum to 100%) based on business importance
4. Note which criteria are must-haves (disqualifiers if failed)
Decision: {{decision}}
Options: {{options}}
"""
[[steps]]
name = "scoring"
prompt_template = """
Score each option against each criterion on a 1-10 scale. Justify every score with one sentence of evidence or reasoning. Then calculate weighted scores.
Format as a table: Option | Criterion | Raw Score | Weight | Weighted Score.
Add a totals row per option.
Decision: {{decision}}
Options: {{options}}
Criteria and weights:
{{criteria}}
"""
depends_on = ["criteria"]
[[steps]]
name = "recommendation"
prompt_template = """
Synthesise the analysis into a decision memo:
## Recommendation
Clear winner with one-sentence rationale.
## Why Not the Others
For each non-recommended option: the decisive weakness.
## Key Risks of the Recommended Option
Top 3 risks and mitigations.
## Conditions That Would Change This Recommendation
What new information would flip the decision.
## Next Steps
3 immediate actions to execute the decision.
Scoring:
{{scoring}}
"""
depends_on = ["scoring"]
+84
View File
@@ -0,0 +1,84 @@
id = "incident-postmortem"
name = "Incident Postmortem"
description = "Turn raw incident notes into a structured postmortem: timeline, root cause, impact assessment, and action items."
category = "engineering"
tags = ["incident", "postmortem", "devops", "reliability"]
[i18n.zh]
name = "故障复盘"
description = "将原始故障记录整理为结构化复盘报告:时间线、根因分析、影响评估和行动项。"
[[parameters]]
name = "incident_notes"
description = "Raw notes, chat logs, or timeline from the incident"
param_type = "string"
required = true
[[parameters]]
name = "service_name"
description = "Name of the affected service or system"
param_type = "string"
required = false
default = ""
[[steps]]
name = "timeline"
prompt_template = """
You are an SRE writing a postmortem. From the raw incident notes below, reconstruct a clean chronological timeline:
- Format: [HH:MM UTC] — event description
- Include: first alert, detection, escalation, mitigation steps, resolution
- Note who was involved at each stage
- Mark the start and end of user impact
Service: {{service_name}}
Raw notes:
{{incident_notes}}
"""
[[steps]]
name = "root_cause_analysis"
prompt_template = """
Perform a thorough root cause analysis using the 5-Whys method:
1. Immediate trigger
2. Five-whys chain down to the systemic root cause
3. Contributing factors (monitoring gaps, process failures, dependency issues)
4. Detection gap — why it took as long as it did to detect
Timeline:
{{timeline}}
"""
depends_on = ["timeline"]
[[steps]]
name = "postmortem_report"
prompt_template = """
Write a complete postmortem report with these sections:
## Summary
One paragraph: what happened, impact, duration, resolution.
## Impact
Quantified: users affected, error rate, revenue/SLA impact.
## Timeline
(Use the timeline above)
## Root Cause
(Use the RCA above)
## What Went Well
## What Went Wrong
## Action Items
Table: | Action | Owner | Priority | Due date |
Minimum 5 concrete, measurable actions.
## Lessons Learned
Timeline:
{{timeline}}
Root cause analysis:
{{root_cause_analysis}}
"""
depends_on = ["timeline", "root_cause_analysis"]
+89
View File
@@ -0,0 +1,89 @@
id = "job-application"
name = "Job Application Package"
description = "Tailor a resume and cover letter to a specific job posting, then prepare targeted interview talking points."
category = "productivity"
tags = ["career", "resume", "job", "interview"]
[i18n.zh]
name = "求职材料准备"
description = "针对特定职位定制简历和求职信,并准备有针对性的面试谈话要点。"
[[parameters]]
name = "job_posting"
description = "The full job posting or description"
param_type = "string"
required = true
[[parameters]]
name = "resume"
description = "Your current resume or experience summary"
param_type = "string"
required = true
[[steps]]
name = "job_analysis"
prompt_template = """
Analyse the job posting as an experienced recruiter:
1. **Must-have requirements** — skills/experience that are non-negotiable
2. **Nice-to-have requirements** — preferred but not required
3. **Company signals** — culture, values, team dynamics from the language used
4. **Role signals** — what success looks like in 90 days, key challenges
5. **Keywords** — ATS-critical terms to include in application materials
6. **Red flags** — anything unusual or concerning in the posting
Job posting:
{{job_posting}}
"""
[[steps]]
name = "resume_tailoring"
prompt_template = """
Tailor the resume for this specific role:
1. **Reorder sections** — put most relevant experience first
2. **Rewrite bullet points** — for each experience, suggest stronger versions that match job keywords
3. **Quantify impacts** — flag any bullet points that should have metrics added
4. **Gaps to address** — experience or skills missing vs. the role requirements
5. **Summary statement** — write a 3-sentence tailored summary for the top of the resume
Job analysis:
{{job_analysis}}
Resume:
{{resume}}
"""
depends_on = ["job_analysis"]
[[steps]]
name = "cover_letter"
prompt_template = """
Write a compelling cover letter (3-4 paragraphs, under 400 words):
- Opening: specific hook connecting your background to the company's mission
- Body: 2 concrete achievements that directly address the job's must-haves
- Closing: clear ask + why this specific company
Avoid clichés like 'I am writing to apply' or 'I am a hard worker'.
Job analysis:
{{job_analysis}}
Resume:
{{resume}}
"""
depends_on = ["job_analysis"]
[[steps]]
name = "interview_prep"
prompt_template = """
Prepare interview talking points:
1. **STAR stories** — 3 specific situations from the resume mapped to the job's key requirements
2. **Questions to ask** — 5 smart questions that show deep interest
3. **Difficult questions** — likely tough questions for this role with suggested answers
4. **Salary research** — how to position compensation discussion
Job analysis:
{{job_analysis}}
Resume:
{{resume}}
"""
depends_on = ["job_analysis", "resume_tailoring"]
+86
View File
@@ -0,0 +1,86 @@
id = "learning-plan"
name = "Personalised Learning Plan"
description = "Assess current knowledge, identify gaps, and build a structured learning roadmap with resources and milestones."
category = "productivity"
tags = ["learning", "education", "planning", "productivity"]
[i18n.zh]
name = "个性化学习计划"
description = "评估当前知识水平,识别差距,构建带资源和里程碑的结构化学习路线图。"
[[parameters]]
name = "skill"
description = "The skill or subject to learn"
param_type = "string"
required = true
[[parameters]]
name = "current_level"
description = "Your current knowledge and experience with this topic"
param_type = "string"
required = false
default = "complete beginner"
[[parameters]]
name = "goal"
description = "What you want to be able to do once you've learned it"
param_type = "string"
required = false
default = "professional proficiency"
[[parameters]]
name = "time_available"
description = "Hours per week available for learning"
param_type = "string"
required = false
default = "5 hours per week"
[[steps]]
name = "gap_analysis"
prompt_template = """
You are an expert educator in {{skill}}. Analyse the learner's situation:
1. **Knowledge map** — the full topic broken into sub-skills and concepts
2. **Current position** — what they likely know given their stated level
3. **Target position** — what they need to know to reach their goal
4. **Critical gaps** — the 5 most important things to learn first
5. **Common pitfalls** — mistakes beginners make, concepts people find hardest
Skill: {{skill}}
Current level: {{current_level}}
Goal: {{goal}}
"""
[[steps]]
name = "roadmap"
prompt_template = """
Design a learning roadmap divided into phases. For each phase:
- Name and duration estimate
- Learning objectives (what they'll be able to do)
- Core concepts to master
- 3-5 specific resources (books, courses, docs, tutorials — real names where possible)
- Practice project or exercise
- How to know the phase is complete (milestone)
Time available: {{time_available}}
Gap analysis:
{{gap_analysis}}
"""
depends_on = ["gap_analysis"]
[[steps]]
name = "week1_plan"
prompt_template = """
Create a concrete day-by-day plan for the first week of learning. For each day:
- Specific topic to cover
- Exact resource to use (chapter, video, section)
- Time estimate
- Exercise or thing to build/practice
- End-of-day check: how to verify understanding
Assume {{time_available}} is available.
Roadmap:
{{roadmap}}
"""
depends_on = ["roadmap"]
+86
View File
@@ -0,0 +1,86 @@
id = "market-research"
name = "Market Research Report"
description = "Analyse a market opportunity: size, trends, customer segments, key players, and go-to-market entry points."
category = "business"
tags = ["market", "research", "strategy", "business"]
[i18n.zh]
name = "市场调研报告"
description = "分析市场机会:市场规模、趋势、客户细分、主要参与者和进入市场的切入点。"
[[parameters]]
name = "market"
description = "The market or industry to research"
param_type = "string"
required = true
[[parameters]]
name = "business_context"
description = "Your company, product, or investment thesis context"
param_type = "string"
required = false
default = ""
[[steps]]
name = "market_landscape"
prompt_template = """
You are a market research analyst. Map the current landscape for: {{market}}
1. **Market definition** — precise scope and adjacent markets
2. **Market size** — TAM, SAM, SOM estimates with methodology
3. **Growth rate** — historical and projected CAGR
4. **Maturity stage** — emerging / growth / mature / declining
5. **Key trends** — top 5 forces shaping the market (technology, regulation, behaviour)
6. **Geographic distribution** — where activity is concentrated
Context: {{business_context}}
"""
[[steps]]
name = "customer_segments"
prompt_template = """
Identify and profile the customer segments in this market:
For each segment (aim for 3-5):
- Name and size
- Demographics/firmographics
- Key pain points and jobs-to-be-done
- Current solutions they use
- Willingness to pay signals
- Acquisition channels
- Which segment is most underserved
Market landscape:
{{market_landscape}}
"""
depends_on = ["market_landscape"]
[[steps]]
name = "research_report"
prompt_template = """
Write a structured market research report:
## Executive Summary
3 bullet points: opportunity, risk, recommended entry point.
## Market Overview
## Customer Segments
## Competitive Landscape
Top players by segment, their moats and vulnerabilities.
## Market Entry Analysis
- Best beachhead segment
- Entry barriers and how to overcome them
- Differentiation opportunities
- Estimated time to meaningful traction
## Key Risks
## Recommended Next Steps
Market landscape:
{{market_landscape}}
Customer segments:
{{customer_segments}}
"""
depends_on = ["market_landscape", "customer_segments"]
+78
View File
@@ -0,0 +1,78 @@
id = "meeting-summary"
name = "Meeting Summary & Action Items"
description = "Transform raw meeting notes or transcript into a structured summary, decisions log, and follow-up email."
category = "productivity"
tags = ["meeting", "notes", "productivity", "collaboration"]
[i18n.zh]
name = "会议纪要与行动项"
description = "将原始会议记录或转录文本整理为结构化摘要、决策日志和跟进邮件。"
[[parameters]]
name = "notes"
description = "Raw meeting notes or transcript"
param_type = "string"
required = true
[[parameters]]
name = "meeting_context"
description = "Meeting type, attendees, and goal (optional)"
param_type = "string"
required = false
default = ""
[[steps]]
name = "structured_summary"
prompt_template = """
You are an executive assistant. From the raw meeting notes below, extract:
**Key Discussion Points** — 3-7 bullet points on what was discussed
**Decisions Made** — each decision with rationale and who decided
**Open Questions** — unresolved items that need follow-up
**Blockers & Risks** — anything flagged as blocking progress
Context: {{meeting_context}}
Notes:
{{notes}}
"""
[[steps]]
name = "action_items"
prompt_template = """
Extract all action items from the meeting. For each:
- Action: specific, measurable task
- Owner: person responsible (use name from notes)
- Due date: explicit date or relative (e.g. 'by next Friday')
- Priority: High / Medium / Low
- Dependencies: what must happen first
Format as a table.
Summary:
{{structured_summary}}
Notes:
{{notes}}
"""
depends_on = ["structured_summary"]
[[steps]]
name = "followup_email"
prompt_template = """
Write a professional follow-up email to send to all attendees. Include:
- Subject line
- Brief recap (2-3 sentences)
- Decisions section
- Action items table (owner, task, due date)
- Next steps / next meeting placeholder
Keep tone professional but concise. Use the attendees' first names.
Summary:
{{structured_summary}}
Action items:
{{action_items}}
"""
depends_on = ["structured_summary", "action_items"]
+85
View File
@@ -0,0 +1,85 @@
id = "product-spec"
name = "Product Spec Writer"
description = "Turn a product idea or feature request into a complete PRD: user stories, acceptance criteria, technical notes, and open questions."
category = "business"
tags = ["product", "prd", "planning", "engineering"]
[i18n.zh]
name = "产品需求文档撰写"
description = "将产品想法或功能需求转化为完整 PRD:用户故事、验收标准、技术备注和待确认事项。"
[[parameters]]
name = "feature_idea"
description = "Feature idea or problem statement to spec out"
param_type = "string"
required = true
[[parameters]]
name = "context"
description = "Product context, target users, and any constraints"
param_type = "string"
required = false
default = ""
[[steps]]
name = "problem_definition"
prompt_template = """
You are a senior product manager. Define the problem clearly:
1. **Problem statement** — one precise sentence
2. **Who has this problem** — user segments and their specific pain
3. **Current workarounds** — how users cope today
4. **Why now** — why is this worth solving now
5. **Success looks like** — quantifiable outcomes
6. **Out of scope** — what this will deliberately not solve
Idea: {{feature_idea}}
Context: {{context}}
"""
[[steps]]
name = "user_stories"
prompt_template = """
Write user stories in the format: As a [user type], I want to [action] so that [outcome].
For each story:
- Given / When / Then acceptance criteria (3-5 criteria)
- Priority: P0 (must-have) / P1 (should-have) / P2 (nice-to-have)
- Estimated complexity: S / M / L / XL
Write at least 6 user stories covering happy paths, edge cases, and error states.
Problem definition:
{{problem_definition}}
"""
depends_on = ["problem_definition"]
[[steps]]
name = "prd"
prompt_template = """
Write a complete Product Requirements Document:
## Overview
## Problem Statement
## Goals & Non-Goals
## User Stories
(from above)
## Functional Requirements
Numbered list of specific behaviours the system must exhibit.
## Non-Functional Requirements
Performance, security, accessibility, internationalisation.
## Technical Considerations
Known constraints, integration points, migration needs.
## Metrics
How success will be measured (leading and lagging indicators).
## Open Questions
Decisions still needed, with suggested owners.
## Timeline Sketch
Phases with rough scope.
Problem definition:
{{problem_definition}}
User stories:
{{user_stories}}
"""
depends_on = ["problem_definition", "user_stories"]
+81
View File
@@ -0,0 +1,81 @@
id = "refactor-plan"
name = "Refactor Plan"
description = "Analyse code for quality issues, prioritise refactoring opportunities, and produce a safe incremental migration plan."
category = "engineering"
tags = ["refactoring", "code-quality", "engineering", "architecture"]
[i18n.zh]
name = "重构计划"
description = "分析代码质量问题,优先排序重构机会,制定安全的增量迁移计划。"
[[parameters]]
name = "code"
description = "Code to refactor"
param_type = "string"
required = true
[[parameters]]
name = "context"
description = "Why refactoring is being considered (performance, maintainability, tech debt)"
param_type = "string"
required = false
default = "general code quality improvement"
[[steps]]
name = "smell_analysis"
prompt_template = """
You are a senior software architect performing a code quality audit. Identify all code smells and issues:
For each issue found:
- Category: naming / duplication / complexity / coupling / abstraction / performance / security
- Severity: critical / high / medium / low
- Location: function/class name
- Description: what is wrong
- Impact: why it matters
Context: {{context}}
Code:
{{code}}
"""
[[steps]]
name = "prioritised_opportunities"
prompt_template = """
Prioritise refactoring opportunities by: (impact × risk_reduction) / effort.
For the top 5 opportunities:
- What to change
- Expected benefit
- Estimated effort: hours
- Risk level: low / medium / high
- Prerequisites: what must be done first
- Whether tests are needed before refactoring
Smell analysis:
{{smell_analysis}}
"""
depends_on = ["smell_analysis"]
[[steps]]
name = "migration_plan"
prompt_template = """
Design an incremental refactoring plan that keeps the system working throughout:
**Phase 1 — Safety net** (tests and coverage)
**Phase 2 — Low-risk quick wins**
**Phase 3 — Structural changes**
**Phase 4 — Validation and cleanup**
For each phase:
- Specific changes in order
- How to verify nothing broke after each change
- Rollback strategy
- Definition of done
Also note: what NOT to change in this refactoring cycle.
Prioritised opportunities:
{{prioritised_opportunities}}
"""
depends_on = ["prioritised_opportunities"]
+35 -4
View File
@@ -30,18 +30,49 @@ default = "general"
[[steps]] [[steps]]
name = "research_primary" name = "research_primary"
prompt_template = "Conduct {{depth}}-level research on the following topic. Identify key facts, major viewpoints, recent developments, and relevant data points. Organise findings into clear sections with source attribution where possible.\n\nTopic: {{topic}}" prompt_template = """
Conduct {{depth}}-level research on the following topic. Identify key facts, major viewpoints, recent developments, and relevant data points. Organise findings into clear sections with source attribution where possible.
Topic: {{topic}}
"""
[[steps]] [[steps]]
name = "research_counter" name = "research_counter"
prompt_template = "Investigate counter-arguments, alternative perspectives, and potential criticisms related to the following topic. Identify areas of genuine controversy or debate, and note any commonly cited claims that are misleading or outdated.\n\nTopic: {{topic}}" prompt_template = """
Investigate counter-arguments, alternative perspectives, and potential criticisms related to the following topic. Identify areas of genuine controversy or debate, and note any commonly cited claims that are misleading or outdated.
Topic: {{topic}}
"""
[[steps]] [[steps]]
name = "fact_check" name = "fact_check"
prompt_template = "Cross-check the following research findings for factual accuracy. For each major claim, assess confidence level (confirmed, likely, uncertain, disputed). Flag any contradictions between the primary research and counter-arguments. Note any claims that require additional verification.\n\nPrimary research:\n{{research_primary}}\n\nCounter-arguments:\n{{research_counter}}" prompt_template = """
Cross-check the following research findings for factual accuracy. For each major claim, assess confidence level (confirmed, likely, uncertain, disputed). Flag any contradictions between the primary research and counter-arguments. Note any claims that require additional verification.
Primary research:
{{research_primary}}
Counter-arguments:
{{research_counter}}
"""
depends_on = ["research_primary", "research_counter"] depends_on = ["research_primary", "research_counter"]
[[steps]] [[steps]]
name = "summarise" name = "summarise"
prompt_template = "Produce a concise executive summary suitable for a {{audience}} audience. Incorporate verified findings from the fact-check step. Structure as:\n1. Key takeaways (3-5 bullet points)\n2. Detailed analysis with confidence levels\n3. Areas of uncertainty or debate\n4. Recommendations for further investigation\n\nFact-checked research:\n{{fact_check}}\n\nPrimary findings:\n{{research_primary}}\n\nAlternative perspectives:\n{{research_counter}}" prompt_template = """
Produce a concise executive summary suitable for a {{audience}} audience. Incorporate verified findings from the fact-check step. Structure as:
1. Key takeaways (3-5 bullet points)
2. Detailed analysis with confidence levels
3. Areas of uncertainty or debate
4. Recommendations for further investigation
Fact-checked research:
{{fact_check}}
Primary findings:
{{research_primary}}
Alternative perspectives:
{{research_counter}}
"""
depends_on = ["fact_check"] depends_on = ["fact_check"]
+72
View File
@@ -0,0 +1,72 @@
id = "test-generation"
name = "Test Suite Generation"
description = "Analyse code to generate comprehensive unit tests, integration tests, and edge case coverage."
category = "engineering"
tags = ["testing", "quality", "engineering", "tdd"]
[i18n.zh]
name = "测试用例生成"
description = "分析代码,生成完整的单元测试、集成测试和边界情况覆盖。"
[[parameters]]
name = "code"
description = "Source code to generate tests for"
param_type = "string"
required = true
[[parameters]]
name = "language"
description = "Programming language and test framework to use"
param_type = "string"
required = false
default = "auto-detect"
[[steps]]
name = "code_analysis"
prompt_template = """
Analyse the following {{language}} code as a QA engineer:
1. List every public function/method and its contract (inputs → outputs)
2. Identify all branches and conditional paths
3. Note external dependencies that need mocking
4. Flag complex logic most likely to contain bugs
5. List data types and their valid/invalid ranges
Code:
{{code}}
"""
[[steps]]
name = "edge_cases"
prompt_template = """
Based on the code analysis, enumerate all edge cases and boundary conditions:
- Null/empty/zero inputs
- Maximum/minimum values
- Concurrent access scenarios
- Error propagation paths
- State machine transitions
- External dependency failures
Code analysis:
{{code_analysis}}
"""
depends_on = ["code_analysis"]
[[steps]]
name = "test_suite"
prompt_template = """
Write a complete test suite in {{language}} covering:
1. **Happy path tests** — one per public function
2. **Edge case tests** — from the edge case list
3. **Error handling tests** — each error path
4. **Integration tests** — cross-component interactions
Use descriptive test names following the pattern: `test_<function>_<scenario>_<expected_result>`.
Include setup/teardown where needed. Add a comment explaining the intent of non-obvious tests.
Code:
{{code}}
Edge cases:
{{edge_cases}}
"""
depends_on = ["code_analysis", "edge_cases"]
+66 -9
View File
@@ -1,12 +1,12 @@
id = "translate-polish" id = "translate-polish"
name = "Translation & Polish" name = "Translation & Polish"
description = "Auto-detect language, translate, and review for naturalness" description = "Translate text into a target language, then review for accuracy, naturalness, and cultural fit."
category = "language" category = "language"
tags = ["translation", "language", "localization"] tags = ["translation", "language", "localization", "writing"]
[i18n.zh] [i18n.zh]
name = "翻译与润色" name = "翻译与润色"
description = "自动检测语言,翻译文本,并审校译文的自然度" description = "将文本翻译为目标语言,再审校准确性、自然度和文化适配性。"
[[parameters]] [[parameters]]
name = "source_text" name = "source_text"
@@ -14,11 +14,68 @@ description = "The text to translate"
param_type = "string" param_type = "string"
required = true required = true
[[steps]] [[parameters]]
name = "translator" name = "target_language"
prompt_template = "You are an expert translator. Translate the following text. Auto-detect the source language: if it's Chinese, translate to English; if it's English, translate to Chinese; for other languages, translate to both Chinese and English. Preserve the original tone, style, and formatting.\n\nText:\n{{source_text}}" description = "Target language (e.g. English, Chinese, Spanish, Japanese, French)"
param_type = "string"
required = false
default = "auto: if Chinese → English, if English → Chinese, otherwise → English"
[[parameters]]
name = "register"
description = "Desired register: formal, casual, technical, literary"
param_type = "string"
required = false
default = "match source"
[[steps]] [[steps]]
name = "reviewer" name = "translate"
prompt_template = "You are a bilingual language expert. Review the following translation for accuracy and naturalness. Check for: 1) Mistranslations or meaning shifts 2) Awkward phrasing that sounds translated 3) Cultural context issues. Output the improved final translation only.\n\nTranslation to review:\n{{translator}}" prompt_template = """
depends_on = ["translator"] You are a professional translator. Translate the following text into {{target_language}}.
Guidelines:
- Preserve the original meaning, tone, and structure as closely as the target language allows
- Use {{register}} register
- For idiomatic expressions, translate the meaning rather than word-for-word
- For proper nouns and technical terms, keep the original with a parenthetical explanation on first use if needed
- If any passage is ambiguous in the source, note the ambiguity briefly after the translation
Source text:
{{source_text}}
"""
[[steps]]
name = "back_translate"
prompt_template = """
Back-translate the following {{target_language}} translation into the source language. Do not look at the original — produce an independent translation from the target language only.
This is used to verify accuracy by comparing the back-translation to the original.
Translation to back-translate:
{{translate}}
"""
depends_on = ["translate"]
[[steps]]
name = "review_and_polish"
prompt_template = """
You are a bilingual editor. Review the translation quality by comparing original, translation, and back-translation.
Check for:
1. Meaning shifts — where the back-translation diverges from the original
2. Unnatural phrasing that sounds translated rather than native
3. Register consistency (target: {{register}})
4. Cultural appropriateness for {{target_language}} readers
Output: the polished final translation only, with a brief note on any changes made.
Original:
{{source_text}}
Translation:
{{translate}}
Back-translation:
{{back_translate}}
"""
depends_on = ["translate", "back_translate"]
+61 -8
View File
@@ -1,12 +1,12 @@
id = "weekly-report" id = "weekly-report"
name = "Weekly Report Generator" name = "Weekly Report Generator"
description = "Organize raw work notes into a polished weekly report" description = "Turn raw work notes into a polished weekly report with highlights, metrics, blockers, and next week's priorities."
category = "business" category = "productivity"
tags = ["report", "weekly", "productivity"] tags = ["report", "weekly", "productivity", "management"]
[i18n.zh] [i18n.zh]
name = "周报生成器" name = "周报生成器"
description = "将零散的工作笔记整理为一份精炼的周报" description = "将零散工作笔记整理为规范周报,包含亮点、指标、阻塞项和下周计划。"
[[parameters]] [[parameters]]
name = "work_notes" name = "work_notes"
@@ -14,11 +14,64 @@ description = "Raw work notes, bullet points, or activity log for the week"
param_type = "string" param_type = "string"
required = true required = true
[[parameters]]
name = "team_or_role"
description = "Your team name or role (used to frame context appropriately)"
param_type = "string"
required = false
default = ""
[[parameters]]
name = "audience"
description = "Who will read this report (manager, team, executive)"
param_type = "string"
required = false
default = "manager"
[[steps]] [[steps]]
name = "organizer" name = "extract"
prompt_template = "You are an executive assistant. Organize the following raw work notes into structured categories: 1) Completed tasks 2) In-progress items 3) Blockers/Issues 4) Key decisions made. Extract and list each item clearly, even if the notes are messy.\n\nRaw notes:\n{{work_notes}}" prompt_template = """
You are an executive assistant. Parse the following raw work notes and extract every item into structured categories:
**Completed** — fully done tasks (include measurable outcomes if mentioned)
**In Progress** — work started but not finished (include % complete or next milestone if available)
**Blockers** — anything preventing progress, and who or what is blocking
**Decisions Made** — choices or agreements reached this week
**Metrics** — any numbers mentioned (velocity, usage, revenue, bugs closed, etc.)
**Upcoming** — planned work mentioned for next week
Do not summarise or rephrase — extract faithfully.
Team/Role: {{team_or_role}}
Raw notes:
{{work_notes}}
"""
[[steps]] [[steps]]
name = "report_writer" name = "report_writer"
prompt_template = "You are a professional report writer. Transform the organized items below into a polished weekly report with these sections:\n\n## This Week's Highlights\n(top 3 achievements)\n\n## Progress Details\n(organized by project/area)\n\n## Challenges & Solutions\n(any blockers and how they were addressed)\n\n## Next Week's Priorities\n(based on in-progress items)\n\nKeep it concise and professional.\n\nOrganized items:\n{{organizer}}" prompt_template = """
depends_on = ["organizer"] Write a polished weekly report for a {{audience}} audience. Tone should be professional and concise — no padding.
## Highlights
Top 3 achievements this week, each in one sentence with measurable impact where available.
## Progress
Grouped by project or workstream. For each: what was done, current status, and any dependency.
## Metrics
Key numbers from the week. If none were provided, omit this section.
## Blockers & Risks
Each blocker: description, impact, owner, and requested action.
## Next Week
Top 3-5 priorities with owner and expected outcome.
## Notes
Decisions made, process changes, or anything the audience should be aware of.
Extracted data:
{{extract}}
"""
depends_on = ["extract"]