Skip to content

Commit 733114d

Browse files
ersinkocclaude
andcommitted
✨ feat(workflows): add 125 workflow template ideas for copilot reference
Comprehensive template library organized by category: - Content & Writing (15): blog pipeline, social media, newsletter, translator - Data Processing (15): CSV analyzer, dedup, multi-source merge, sentiment - Monitoring & Alerts (15): uptime, API health, SSL expiry, price tracker - DevOps & Engineering (15): deploy pipeline, PR review, incident response - Business & Productivity (15): lead scoring, expense report, weekly review - API & Integration (15): webhook relay, system sync, RSS digest - Personal Productivity (15): morning brief, habit tracker, journal - Security & Compliance (10): PII scanner, access review, GDPR handler - Research & Analysis (10): competitor analysis, trend analyzer, A/B test Each template includes: name, description, category, node flow description, and difficulty level. Copilot prompt builder injects ideas when creating new workflows (not when editing existing ones). Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent 40a6e77 commit 733114d

2 files changed

Lines changed: 1109 additions & 0 deletions

File tree

packages/gateway/src/routes/workflow-copilot-prompt.ts

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -586,6 +586,11 @@ export function buildCopilotSystemPrompt(
586586
): string {
587587
const parts = [STATIC_PROMPT];
588588

589+
// Add workflow ideas as inspiration when creating new workflows
590+
if (!currentWorkflow) {
591+
parts.push(buildWorkflowIdeasSection());
592+
}
593+
589594
if (availableTools && availableTools.length > 0) {
590595
parts.push(
591596
`\n\n## Available Tools\nThese tools can be used as tool nodes in the workflow. Use the EXACT name (including dots) as the \`tool\` field value:\n${availableTools.join(', ')}`
@@ -601,3 +606,27 @@ export function buildCopilotSystemPrompt(
601606

602607
return parts.join('');
603608
}
609+
610+
/**
611+
* Build a compact workflow ideas section for the copilot prompt.
612+
* Loaded lazily to avoid bloating the static prompt string.
613+
*/
614+
function buildWorkflowIdeasSection(): string {
615+
try {
616+
// Dynamic import to keep template ideas separate
617+
// eslint-disable-next-line @typescript-eslint/no-require-imports
618+
const { WORKFLOW_TEMPLATE_IDEAS } = require('./workflow-template-ideas.js');
619+
if (!WORKFLOW_TEMPLATE_IDEAS?.length) return '';
620+
621+
const lines = (WORKFLOW_TEMPLATE_IDEAS as Array<{ name: string; nodes: string; category: string }>)
622+
.map((t) => `- **${t.name}** (${t.category}): ${t.nodes}`)
623+
.join('\n');
624+
625+
return `\n\n## Workflow Ideas (suggest these when users ask for ideas or are unsure what to build)
626+
When users ask "what can I build?" or need inspiration, suggest workflows from this list. Adapt the tool names to match the Available Tools list.
627+
628+
${lines}`;
629+
} catch {
630+
return ''; // Template ideas not available — non-critical
631+
}
632+
}

0 commit comments

Comments
 (0)