Compare commits

..

5 Commits

Author SHA1 Message Date
mrsaifullah52 ffe6f6c26b feat(autominator): improve elicitation to focus on actual problems 2025-11-20 15:10:35 +05:00
mrsaifullah52 3fa0865542 refactor(autominator): simplify Context7 MCP recommendation 2025-11-20 14:53:43 +05:00
mrsaifullah52 ebc5acd2aa chore(autominator): finalize standalone module and clean up
- Remove old autominator files from BMM module
- Verify module independence (no BMM dependencies)
- All 21 agents validated successfully
- All tests pass with new structure
- Module ready for standalone distribution
2025-11-20 14:28:53 +05:00
mrsaifullah52 b7239c1ec3 refactor(autominator): create standalone module independent from BMM
- Create new autominator module at src/modules/autominator/
- Move agent from bmm/agents/ to autominator/agents/
- Move workflows from bmm/workflows/autominator/ to autominator/workflows/
- Update module metadata from 'bmm' to 'autominator'
- Update all path references in workflow files
- Add module README.md with comprehensive documentation
- Module is now independent and separately distributable
2025-11-20 14:23:24 +05:00
mrsaifullah52 0edda967a5 refactor(autominator): rename n8n-expert to Autominator with Arnold persona
- Rename agent from n8n-expert to autominator
- Change persona name from Atlas to Arnold
- Update icon to 🦾 (mechanical arm)
- Add tagline: 'Arnold the Autominator - I'll be back... with your workflows automated!'
- Update all workflow path references from n8n-expert to autominator
- Rename workflow folder from n8n-expert to autominator
- Update all internal path references in workflow.yaml files
- Author: Saif
2025-11-20 14:14:16 +05:00
18 changed files with 633 additions and 211 deletions

View File

@ -0,0 +1,306 @@
# Autominator - n8n Workflow Automation Module
**Arnold the Autominator - I'll be back... with your workflows automated!** 🦾
Standalone module for n8n workflow automation, creation, migration, and optimization. Build, modify, migrate, and optimize n8n workflows with expert guidance and up-to-date documentation.
## Overview
Autominator is an independent BMAD module that specializes in n8n workflow automation. Whether you're building new workflows from scratch, migrating from other platforms, or optimizing existing workflows, Arnold has you covered.
## Agent
**Arnold** - n8n Workflow Automation Specialist
- Expert in n8n workflow creation, modification, and optimization
- Specializes in platform migration (Zapier, Make, HubSpot, Power Automate)
- Uses Context7 MCP for up-to-date n8n documentation
- Smart elicitation for accurate requirement gathering
- Comprehensive workflow validation and testing
## Workflows
### 1. Create Workflow
Build new n8n workflows from scratch based on your requirements.
**Triggers:**
- `*create-workflow`
**Features:**
- Smart elicitation to understand your needs
- Workflow type selection (webhook, scheduled, event-driven, manual, database-driven)
- Integration selection and configuration
- Complexity assessment
- Error handling strategy planning
- Context7 MCP integration for latest n8n docs
- Automatic JSON validation
### 2. Modify Workflow
Edit or update existing n8n workflows with backup and safety checks.
**Triggers:**
- `*modify-workflow`
**Features:**
- Load existing workflows from file or paste
- Selective modification (add, modify, or remove nodes)
- Connection management
- Automatic backup creation
- Change validation
- Rollback capability
### 3. Migrate Workflow
Migrate automation workflows from other platforms to n8n.
**Supported Platforms:**
- Zapier
- Make (Integromat)
- HubSpot Workflows
- Microsoft Power Automate
- IFTTT
- Custom platforms
**Triggers:**
- `*migrate-workflow`
**Features:**
- Platform-specific mapping
- Trigger and action conversion
- Data transformation planning
- Credential requirement identification
- Migration notes and documentation
- Post-migration testing guidance
### 4. Optimize Workflow
Analyze and improve existing n8n workflows for performance and best practices.
**Triggers:**
- `*optimize-workflow`
**Features:**
- Comprehensive workflow analysis
- Performance optimization recommendations
- Error handling improvements
- Code quality assessment
- Structure optimization
- Best practices validation
- Security review
- Automatic backup before changes
- Selective optimization application
## Quick Start
### Load Arnold Agent
```bash
# In your IDE, load the Autominator agent
agent autominator/autominator
# Or use the agent trigger
*autominator
```
### Create a Workflow
```bash
# Start the create workflow process
*create-workflow
# Follow the interactive prompts to:
# 1. Describe your workflow type
# 2. Select integrations
# 3. Define complexity level
# 4. Configure error handling
# 5. Review and confirm
```
### Migrate from Another Platform
```bash
# Start the migration process
*migrate-workflow
# Provide:
# 1. Source platform (Zapier, Make, HubSpot, etc.)
# 2. Workflow details or export file
# 3. Integration list
# 4. Desired output location
```
### Optimize Existing Workflow
```bash
# Analyze and improve a workflow
*optimize-workflow
# Select optimization focus:
# - Performance
# - Error Handling
# - Code Quality
# - Structure
# - Best Practices
# - Security
# - All
```
## Features
### Context7 MCP Integration
- Automatic Context7 availability check
- Fallback to built-in knowledge if unavailable
- IDE-agnostic setup guidance
- Up-to-date n8n documentation access
### Smart Elicitation
- Contextual analysis of existing information
- Numbered option selection
- Progressive requirement gathering
- Validation before execution
### Comprehensive Validation
- JSON syntax validation
- Schema compliance checking
- Connection integrity verification
- Error recovery (never deletes files)
### Platform Mappings
Built-in mappings for:
- Zapier triggers and actions
- Make modules and routers
- HubSpot workflow actions
- Power Automate flows
- Common automation patterns
### Shared Resources
- **n8n-helpers.md** - Node creation guidelines and patterns
- **n8n-templates.yaml** - 8 reusable workflow templates
- **platform-mappings.yaml** - Platform conversion reference
## Module Structure
```
autominator/
├── _module-installer/
│ └── install-config.yaml
├── agents/
│ └── autominator.agent.yaml
├── workflows/
│ ├── _shared/
│ │ ├── n8n-helpers.md
│ │ ├── n8n-templates.yaml
│ │ └── platform-mappings.yaml
│ ├── create-workflow/
│ │ ├── workflow.yaml
│ │ ├── instructions.md
│ │ └── checklist.md
│ ├── modify-workflow/
│ │ ├── workflow.yaml
│ │ ├── instructions.md
│ │ └── checklist.md
│ ├── migrate-workflow/
│ │ ├── workflow.yaml
│ │ ├── instructions.md
│ │ └── checklist.md
│ └── optimize-workflow/
│ ├── workflow.yaml
│ ├── instructions.md
│ └── checklist.md
└── README.md
```
## Requirements
- n8n instance or account
- Context7 MCP server (optional, for latest docs)
- IDE with BMAD support
## Installation
Autominator is a standalone module and can be installed independently:
```bash
# Install via BMAD
npx bmad-method@alpha install autominator
# Or manually copy to your BMAD installation
cp -r autominator/ /path/to/bmad/src/modules/
```
## Integration with Other Modules
Autominator is independent but can be used alongside:
- **BMM** - For project lifecycle management
- **CIS** - For creative workflow design
- **BMB** - For module building
- **BMGD** - For game development workflows
## Best Practices
1. **Provide Clear Context** - Describe your workflow purpose and requirements
2. **Use Smart Elicitation** - Let Arnold ask clarifying questions
3. **Test Before Activation** - Always test workflows with sample data
4. **Monitor Initial Runs** - Watch for errors in first executions
5. **Document Changes** - Keep notes on workflow modifications
6. **Backup Regularly** - Use modify-workflow's backup feature
7. **Review Optimizations** - Understand changes before applying
## Troubleshooting
### Context7 MCP Not Available
- Install uv: `curl -LsSf https://astral.sh/uv/install.sh | sh`
- Configure Context7 in your IDE's MCP settings
- Restart MCP servers
### Workflow JSON Validation Fails
- Check for missing commas or brackets
- Verify all node IDs are unique
- Ensure all connections reference existing nodes
- Use the error location to fix syntax
### Workflow Execution Issues
- Verify all credentials are configured
- Test with sample data first
- Check error handling settings
- Review workflow logs for details
## Related Documentation
- **[n8n Documentation](https://docs.n8n.io/)** - Official n8n docs
- **[BMAD Method](../bmm/README.md)** - Core BMAD framework
- **[CIS Module](../cis/README.md)** - Creative facilitation
- **[BMB Module](../bmb/README.md)** - Module building
## Support
- **Issues** - Report bugs on GitHub
- **Questions** - Check the troubleshooting section
- **Feedback** - Share suggestions for improvements
---
**Ready to automate?** Load Arnold and start with `*create-workflow`!
Part of BMad Method - Transform automation potential through expert AI guidance.

View File

@ -0,0 +1,67 @@
# Autominator Module Installation Configuration
code: autominator
name: "Autominator: n8n Workflow Automation"
default_selected: false
header: "Autominator - n8n Workflow Automation Module"
subheader: "Configure the settings for the Autominator module"
# Core config values automatically inherited:
## user_name
## communication_language
## document_output_language
## output_folder
## bmad_folder
## install_user_docs
## kb_install
n8n_instance_url:
prompt: "What is your n8n instance URL? (optional, for reference)"
default: "https://n8n.example.com"
result: "{value}"
workflow_output_folder:
prompt: "Where should generated workflows be stored?"
default: "{output_folder}/n8n-workflows"
result: "{project-root}/{value}"
automation_experience:
prompt: "What is your n8n/automation experience level?"
default: "intermediate"
result: "{value}"
single-select:
- value: "beginner"
label: "Beginner - New to n8n, provide detailed guidance"
- value: "intermediate"
label: "Intermediate - Familiar with n8n concepts, balanced approach"
- value: "expert"
label: "Expert - Experienced n8n developer, be direct and technical"
primary_integrations:
prompt: "Which integrations do you primarily use? (select all that apply)"
default: ["http", "database"]
result: "{value}"
multi-select:
- value: "http"
label: "HTTP/REST APIs"
- value: "database"
label: "Databases (PostgreSQL, MySQL, MongoDB)"
- value: "cloud"
label: "Cloud Services (Google Sheets, Slack, Notion, Airtable)"
- value: "crm"
label: "CRM Systems (HubSpot, Salesforce)"
- value: "email"
label: "Email"
- value: "custom"
label: "Custom/Other"
enable_context7:
prompt: "Enable Context7 MCP for up-to-date n8n documentation?"
default: true
result: "{value}"
single-select:
- value: true
label: "Yes - Use Context7 for latest docs"
- value: false
label: "No - Use built-in knowledge"

View File

@ -1,18 +1,18 @@
# n8n Expert Agent Definition # Autominator - Arnold the Automation Expert
agent: agent:
webskip: true webskip: true
metadata: metadata:
id: "{bmad_folder}/bmm/agents/n8n-expert.md" id: "{bmad_folder}/autominator/agents/autominator.md"
name: Atlas name: Arnold
title: n8n Workflow Automation Expert title: Arnold the Autominator
icon: 🔄 icon: 🦾
module: bmm module: autominator
persona: persona:
role: n8n Workflow Automation Specialist role: n8n Workflow Automation Specialist
identity: Expert in n8n workflow creation, migration, and optimization. Specializes in building automation workflows, migrating from other platforms (Zapier, Make, HubSpot), and optimizing existing n8n workflows using up-to-date documentation via Context7. identity: Arnold the Autominator - I'll be back... with your workflows automated! 🦾 Expert in n8n workflow creation, migration, and optimization. Specializes in building automation workflows, migrating from other platforms (Zapier, Make, HubSpot), and optimizing existing n8n workflows using up-to-date documentation via Context7.
communication_style: Automation-first, elicitation-driven, solution-oriented. Presents options as numbered lists for easy selection. Always validates understanding before building. communication_style: Automation-first, elicitation-driven, solution-oriented. Presents options as numbered lists for easy selection. Always validates understanding before building. Direct, confident, and results-focused.
principles: | principles: |
- Context7 Integration - Always use latest n8n documentation via Context7 MCP server for accurate, up-to-date implementations. - Context7 Integration - Always use latest n8n documentation via Context7 MCP server for accurate, up-to-date implementations.
- Elicitation First - Understand requirements thoroughly before suggesting or building solutions. - Elicitation First - Understand requirements thoroughly before suggesting or building solutions.
@ -24,19 +24,19 @@ agent:
menu: menu:
- trigger: create-workflow - trigger: create-workflow
workflow: "{project-root}/{bmad_folder}/bmm/workflows/n8n-expert/create-workflow/workflow.yaml" workflow: "{project-root}/{bmad_folder}/autominator/workflows/create-workflow/workflow.yaml"
description: Create new n8n workflow from scratch based on requirements description: Create new n8n workflow from scratch based on requirements
- trigger: modify-workflow - trigger: modify-workflow
workflow: "{project-root}/{bmad_folder}/bmm/workflows/n8n-expert/modify-workflow/workflow.yaml" workflow: "{project-root}/{bmad_folder}/autominator/workflows/modify-workflow/workflow.yaml"
description: Edit or update existing n8n workflow description: Edit or update existing n8n workflow
- trigger: migrate-workflow - trigger: migrate-workflow
workflow: "{project-root}/{bmad_folder}/bmm/workflows/n8n-expert/migrate-workflow/workflow.yaml" workflow: "{project-root}/{bmad_folder}/autominator/workflows/migrate-workflow/workflow.yaml"
description: Migrate workflows from other platforms (Zapier, Make, HubSpot, etc.) to n8n description: Migrate workflows from other platforms (Zapier, Make, HubSpot, etc.) to n8n
- trigger: optimize-workflow - trigger: optimize-workflow
workflow: "{project-root}/{bmad_folder}/bmm/workflows/n8n-expert/optimize-workflow/workflow.yaml" workflow: "{project-root}/{bmad_folder}/autominator/workflows/optimize-workflow/workflow.yaml"
description: Review and improve existing n8n workflows for performance and best practices description: Review and improve existing n8n workflows for performance and best practices
- trigger: party-mode - trigger: party-mode

View File

@ -29,92 +29,107 @@
</step> </step>
<step n="1" goal="Gather Requirements" elicit="true"> <step n="1" goal="Gather Requirements" elicit="true">
<action>Ask Question 1: "What type of automation workflow do you need?"</action> <critical>Start by understanding the ACTUAL PROBLEM the user wants to solve, not just technical requirements</critical>
<action>Ask Question 1: "What problem are you trying to solve with this automation?"</action>
<action>Encourage detailed explanation: "Describe the current manual process, pain points, and desired outcome."</action>
<action>WAIT for user input</action>
<action>Store in {{problem_description}}</action>
<action>Ask Question 2: "What triggers this process? When should the automation run?"</action>
<action>Present numbered options: <action>Present numbered options:
1. Webhook-based - Receive HTTP requests and process data 1. When data arrives - Webhook, form submission, API call
2. Scheduled - Run on a schedule (cron/interval) 2. On a schedule - Every hour, daily, weekly, custom cron
3. Event-driven - Trigger from external service events 3. When something changes - Database update, file change, service event
4. Manual - Execute on demand 4. Manually - On-demand execution
5. Database-driven - Trigger from database changes 5. Multiple triggers - Combination of above
6. Other - Describe your specific trigger needs 6. Not sure - Help me decide based on my problem
</action> </action>
<action>WAIT for user selection (1-6)</action> <action>WAIT for user selection (1-6)</action>
<action>Store selection in {{workflow_type}}</action> <action>Store selection in {{trigger_type}}</action>
<check if="selection is 6 (Other)"> <check if="selection is 6 (Not sure)">
<action>Ask: "Please describe your trigger requirements"</action> <action>Analyze {{problem_description}} and suggest appropriate trigger</action>
<action>WAIT for user input</action> <action>Ask: "Based on your problem, I recommend [trigger type]. Does this make sense?"</action>
<action>Store in {{workflow_type}}</action> <action>WAIT for confirmation or adjustment</action>
<action>Store final trigger in {{trigger_type}}</action>
</check> </check>
<action>Ask Question 2: "What integrations or services will this workflow use?"</action> <action>Ask Question 3: "What data or information does this workflow need to work with?"</action>
<action>Present numbered options: <action>Examples: "Customer data, order details, form responses, API data, etc."</action>
1. HTTP/REST APIs - Generic API calls <action>WAIT for user input</action>
2. Databases - PostgreSQL, MySQL, MongoDB, etc. <action>Store in {{data_requirements}}</action>
3. Cloud Services - Google Sheets, Slack, Notion, Airtable
4. Email - Send/receive emails
5. CRM - HubSpot, Salesforce, etc.
6. Custom Code - JavaScript/Python logic
7. Multiple - Combination of above
8. Other - Specify integrations
</action>
<action>WAIT for user selection (1-8)</action>
<action>Store selection in {{integrations}}</action>
<check if="selection is 7 or 8"> <action>Ask Question 4: "What should happen with this data? What's the desired outcome?"</action>
<action>Ask: "Please list all integrations needed (comma-separated)"</action> <action>Examples: "Send to Slack, update database, create invoice, notify team, etc."</action>
<action>WAIT for user input</action>
<action>Store in {{desired_outcome}}</action>
<action>Ask Question 5: "What services or systems are involved?"</action>
<action>Examples: "Slack, Google Sheets, PostgreSQL, HubSpot, custom API, etc."</action>
<action>WAIT for user input</action>
<action>Store in {{integrations}}</action>
<action>Ask Question 6: "Are there any conditions or decision points in this process?"</action>
<action>Examples: "If amount > $1000, notify manager; If status = 'urgent', send immediately"</action>
<action>Present numbered options:
1. No - Straight-through processing
2. Yes - Describe the conditions
</action>
<action>WAIT for user selection (1-2)</action>
<check if="selection is 2">
<action>Ask: "Describe the conditions and what should happen in each case"</action>
<action>WAIT for user input</action> <action>WAIT for user input</action>
<action>Store in {{integrations}}</action> <action>Store in {{conditional_logic}}</action>
</check> </check>
<action>Ask Question 3: "How complex is your workflow logic?"</action> <action>Ask Question 7: "How critical is this workflow? What happens if it fails?"</action>
<action>Present numbered options: <action>Present numbered options:
1. Simple (3-5 nodes) - Linear flow with minimal logic 1. Low - Can retry manually if needed
2. Medium (6-10 nodes) - Some conditional logic or branching 2. Medium - Should retry automatically, notify on failure
3. Complex (11-20 nodes) - Multiple branches, loops, or error handling 3. High - Must succeed, need alerts and logging
4. Very Complex (20+ nodes) - Advanced logic with parallel processing 4. Critical - Business-critical, need comprehensive error handling
</action> </action>
<action>WAIT for user selection (1-4)</action> <action>WAIT for user selection (1-4)</action>
<action>Store selection in {{complexity}}</action> <action>Store selection in {{criticality}}</action>
<action>Ask Question 4: "Do you need error handling and retry logic?"</action> <action>Ask Question 8: "What should the workflow be named?"</action>
<action>Present numbered options: <action>Suggest name based on {{problem_description}}</action>
1. No - Simple workflow without error handling
2. Basic - Retry failed operations automatically
3. Advanced - Custom error handling with notifications
4. Comprehensive - Full error workflow with logging and alerts
</action>
<action>WAIT for user selection (1-4)</action>
<action>Store selection in {{error_handling}}</action>
<action>Ask Question 5: "What should the workflow be named?"</action>
<action>WAIT for user input</action> <action>WAIT for user input</action>
<action>Store in {{workflow_name}}</action> <action>Store in {{workflow_name}}</action>
<action>Ask Question 6: "Where should the workflow file be saved?"</action> <action>Ask Question 9: "Where should the workflow file be saved?"</action>
<action>Present numbered options: <action>Present numbered options:
1. Default location - workflows/[workflow-name].json 1. Default location - workflows/[workflow-name].json
2. Custom path - Specify your own file path 2. Custom path - Specify your own file path
3. Project root - Save in main project directory
4. Specific folder - Choose from existing folders
</action> </action>
<action>WAIT for user selection (1-4)</action> <action>WAIT for user selection (1-2)</action>
<check if="selection is 2 or 4"> <check if="selection is 2">
<action>Ask for specific path</action> <action>Ask for specific path</action>
<action>WAIT for user input</action> <action>WAIT for user input</action>
</check> </check>
<action>Store final path in {{save_location}}</action> <action>Store final path in {{save_location}}</action>
<action>Ask Question 7: "Any additional requirements or specific logic needed?"</action> <action>Summarize understanding:</action>
<action>- Problem: {{problem_description}}</action>
<action>- Trigger: {{trigger_type}}</action>
<action>- Data: {{data_requirements}}</action>
<action>- Outcome: {{desired_outcome}}</action>
<action>- Services: {{integrations}}</action>
<action>- Conditions: {{conditional_logic}}</action>
<action>- Criticality: {{criticality}}</action>
<action>Ask: "Does this capture your requirements correctly?"</action>
<action>Present numbered options: <action>Present numbered options:
1. No - Proceed with current requirements 1. Yes - Proceed with workflow creation
2. Yes - Describe additional requirements 2. No - Let me clarify or add details
</action> </action>
<action>WAIT for user selection (1-2)</action> <action>WAIT for user selection (1-2)</action>
<check if="selection is 2"> <check if="selection is 2">
<action>Ask: "Please describe additional requirements"</action> <action>Ask: "What needs to be clarified or added?"</action>
<action>WAIT for user input</action> <action>WAIT for user input</action>
<action>Store in {{additional_requirements}}</action> <action>Update relevant variables</action>
<action>Repeat summary and confirmation</action>
</check> </check>
</step> </step>
@ -130,41 +145,9 @@
<check if="Context7 MCP is NOT available"> <check if="Context7 MCP is NOT available">
<action>Store false in {{context7_available}}</action> <action>Store false in {{context7_available}}</action>
<action>Inform user: "Context7 MCP server is not configured. This provides up-to-date n8n documentation."</action> <action>Inform user: "Context7 MCP server is not configured. This provides up-to-date n8n documentation."</action>
<action>Ask: "Would you like help setting up Context7 MCP? (yes/no)"</action> <action>Recommend: "For best results, install Context7 MCP server in your IDE. See: https://github.com/context7/context7"</action>
<action>WAIT for user response</action> <action>Inform: "Proceeding with built-in n8n knowledge."</action>
<action>Proceed to Step 4</action>
<check if="user says yes">
<action>Guide user through Context7 MCP setup:</action>
<action>1. Inform user: "Context7 MCP requires the 'uvx' command (part of uv Python package manager)"</action>
<action>2. Ask: "Do you have 'uv' installed? (yes/no/not sure)"</action>
<action>WAIT for response</action>
<check if="user says no or not sure">
<action>Provide installation guidance:</action>
<action>- macOS/Linux: curl -LsSf https://astral.sh/uv/install.sh | sh</action>
<action>- Windows: powershell -c "irm https://astral.sh/uv/install.ps1 | iex"</action>
<action>- Or via pip: pip install uv</action>
<action>Ask user to install and confirm when ready</action>
<action>WAIT for confirmation</action>
</check>
<action>3. Inform user: "Please configure Context7 MCP in your IDE's MCP settings with:"</action>
<action>
Server name: context7
Command: uvx
Args: ["context7"]
Auto-approve tools: ["resolve-library-id", "get-library-docs"]
</action>
<action>4. Ask user to reconnect/restart MCP servers in their IDE</action>
<action>5. Wait for user confirmation that MCP is reconnected</action>
<action>6. Verify Context7 is now available</action>
<action>Store result in {{context7_available}}</action>
</check>
<check if="user says no">
<action>Inform: "Proceeding without Context7. Using built-in n8n knowledge."</action>
<action>Proceed to Step 4</action>
</check>
</check> </check>
</step> </step>
@ -185,32 +168,70 @@
</step> </step>
<step n="4" goal="Plan Workflow Structure"> <step n="4" goal="Plan Workflow Structure">
<action>Based on gathered requirements, plan the workflow structure:</action> <critical>Design workflow based on the ACTUAL PROBLEM, not just technical specs</critical>
<action>1. Identify trigger node type</action>
<action>2. List all action nodes needed</action>
<action>3. Identify conditional logic (IF nodes)</action>
<action>4. Plan data transformations (Set/Code nodes)</action>
<action>5. Design error handling strategy</action>
<action>6. Map node connections</action>
<action>Present the planned structure to user in clear format:</action> <action>Analyze the problem and requirements:</action>
<action>- Trigger: [trigger type]</action> <action>- Problem to solve: {{problem_description}}</action>
<action>- Nodes: [list of nodes with descriptions]</action> <action>- Trigger: {{trigger_type}}</action>
<action>- Logic: [conditional branches, loops]</action> <action>- Data needed: {{data_requirements}}</action>
<action>- Error Handling: [strategy]</action> <action>- Desired outcome: {{desired_outcome}}</action>
<action>- Services: {{integrations}}</action>
<action>- Conditions: {{conditional_logic}}</action>
<action>- Criticality: {{criticality}}</action>
<action>Ask: "Does this structure meet your needs?"</action> <action>Design workflow structure that solves the problem:</action>
<action>1. Map trigger to appropriate n8n trigger node</action>
<action>2. Design data acquisition steps (API calls, database queries)</action>
<action>3. Plan data transformations needed for the outcome</action>
<action>4. Implement conditional logic from {{conditional_logic}}</action>
<action>5. Design actions to achieve {{desired_outcome}}</action>
<action>6. Add error handling based on {{criticality}}</action>
<action>7. Plan node connections and data flow</action>
<action>Present the solution-focused workflow plan:</action>
<action>## Workflow Solution for: {{problem_description}}</action>
<action></action>
<action>**How it works:**</action>
<action>[Explain in plain language how the workflow solves the problem]</action>
<action></action>
<action>**Workflow Steps:**</action>
<action>1. Trigger: [When/how it starts] - [n8n node type]</action>
<action>2. Get Data: [What data is retrieved] - [n8n nodes]</action>
<action>3. Process: [How data is transformed] - [n8n nodes]</action>
<action>4. Decide: [Conditional logic if any] - [IF/Switch nodes]</action>
<action>5. Act: [Final actions to achieve outcome] - [n8n nodes]</action>
<action>6. Handle Errors: [Error strategy] - [Error handling config]</action>
<action></action>
<action>**Expected Result:**</action>
<action>[Describe what happens when workflow runs successfully]</action>
<action>Ask: "Does this workflow solve your problem?"</action>
<action>Present numbered options: <action>Present numbered options:
1. Yes - Proceed with this structure 1. Yes - This solves my problem, proceed
2. No - Adjust the structure 2. No - Missing something important
3. Add more details - Provide additional requirements 3. Partially - Needs adjustments
4. Explain more - I need clarification
</action> </action>
<action>WAIT for user selection (1-3)</action> <action>WAIT for user selection (1-4)</action>
<check if="selection is 2 or 3"> <check if="selection is 2">
<action>Ask: "What changes or additions are needed?"</action> <action>Ask: "What's missing? What else needs to happen?"</action>
<action>WAIT for user input</action> <action>WAIT for user input</action>
<action>Adjust structure based on feedback</action> <action>Adjust workflow design to include missing elements</action>
<action>Repeat this step</action>
</check>
<check if="selection is 3">
<action>Ask: "What needs to be adjusted?"</action>
<action>WAIT for user input</action>
<action>Modify workflow design based on feedback</action>
<action>Repeat this step</action>
</check>
<check if="selection is 4">
<action>Ask: "Which part needs clarification?"</action>
<action>WAIT for user input</action>
<action>Provide detailed explanation of that part</action>
<action>Repeat this step</action> <action>Repeat this step</action>
</check> </check>
</step> </step>

View File

@ -3,8 +3,8 @@ description: "Create new n8n workflow from scratch based on requirements"
author: "Saif" author: "Saif"
# Workflow components # Workflow components
installed_path: "{project-root}/{bmad_folder}/bmm/workflows/n8n-expert/create-workflow" installed_path: "{project-root}/{bmad_folder}/autominator/workflows/create-workflow"
shared_path: "{project-root}/{bmad_folder}/bmm/workflows/n8n-expert/_shared" shared_path: "{project-root}/{bmad_folder}/autominator/workflows/_shared"
instructions: "{installed_path}/instructions.md" instructions: "{installed_path}/instructions.md"
validation: "{installed_path}/checklist.md" validation: "{installed_path}/checklist.md"

View File

@ -29,7 +29,14 @@
</step> </step>
<step n="1" goal="Gather Migration Requirements" elicit="true"> <step n="1" goal="Gather Migration Requirements" elicit="true">
<action>Ask Question 1: "Which platform are you migrating from?"</action> <critical>Understand the BUSINESS PURPOSE of the workflow being migrated, not just technical details</critical>
<action>Ask Question 1: "What does this workflow do? What problem does it solve?"</action>
<action>Encourage business context: "Describe the business process, not just the technical steps"</action>
<action>WAIT for user input</action>
<action>Store in {{business_purpose}}</action>
<action>Ask Question 2: "Which platform are you migrating from?"</action>
<action>Present numbered options: <action>Present numbered options:
1. Zapier - Migrate Zapier Zaps to n8n 1. Zapier - Migrate Zapier Zaps to n8n
2. Make (Integromat) - Migrate Make scenarios to n8n 2. Make (Integromat) - Migrate Make scenarios to n8n
@ -47,66 +54,59 @@
<action>Store in {{source_platform}}</action> <action>Store in {{source_platform}}</action>
</check> </check>
<action>Ask Question 2: "How will you provide the workflow to migrate?"</action> <action>Ask Question 3: "Why are you migrating to n8n?"</action>
<action>Examples: "Cost savings", "More flexibility", "Self-hosting", "Better integrations"</action>
<action>WAIT for user input</action>
<action>Store in {{migration_reason}}</action>
<action>Ask Question 4: "How will you provide the workflow details?"</action>
<action>Present numbered options: <action>Present numbered options:
1. Describe it - Explain what the workflow does 1. Describe the process - Explain what happens step by step
2. Provide export file - Upload/paste workflow export file 2. Provide export file - Upload/paste workflow export file
3. Provide screenshots - Share workflow screenshots 3. Provide screenshots - Share workflow screenshots
4. Provide documentation - Share workflow documentation 4. Combination - Multiple sources
</action> </action>
<action>WAIT for user selection (1-4)</action> <action>WAIT for user selection (1-4)</action>
<check if="selection is 1"> <check if="selection is 1 or 4">
<action>Ask: "Please describe what the workflow does (trigger, actions, logic)"</action> <action>Ask: "Describe the workflow step by step:"</action>
<action>- What triggers it?</action>
<action>- What data does it process?</action>
<action>- What actions does it take?</action>
<action>- What's the final outcome?</action>
<action>WAIT for user input</action> <action>WAIT for user input</action>
<action>Store in {{workflow_description}}</action> <action>Store in {{workflow_description}}</action>
</check> </check>
<check if="selection is 2"> <check if="selection is 2 or 4">
<action>Ask: "Please provide the workflow export file path or paste the content"</action> <action>Ask: "Please provide the workflow export file path or paste the content"</action>
<action>WAIT for user input</action> <action>WAIT for user input</action>
<action>Store in {{workflow_file}} or {{workflow_content}}</action> <action>Store in {{workflow_file}} or {{workflow_content}}</action>
</check> </check>
<check if="selection is 3"> <check if="selection is 3 or 4">
<action>Ask: "Please share the workflow screenshots and describe the flow"</action> <action>Ask: "Please share the workflow screenshots and describe what each part does"</action>
<action>WAIT for user input</action> <action>WAIT for user input</action>
<action>Store in {{workflow_description}}</action> <action>Store in {{workflow_screenshots}}</action>
</check> </check>
<check if="selection is 4"> <action>Ask Question 5: "What services/integrations does this workflow connect to?"</action>
<action>Ask: "Please provide the workflow documentation"</action> <action>Ask: "List all services (e.g., Slack, Google Sheets, HubSpot, custom APIs, etc.)"</action>
<action>WAIT for user input</action>
<action>Store in {{workflow_description}}</action>
</check>
<action>Ask Question 3: "What is the trigger for this workflow?"</action>
<action>Present numbered options:
1. Webhook/HTTP Request - Triggered by incoming HTTP requests
2. Schedule/Cron - Runs on a schedule
3. Form Submission - Triggered by form submissions
4. Database Change - Triggered by database events
5. Email - Triggered by incoming emails
6. Service Event - Triggered by external service (Slack, Google Sheets, etc.)
7. Not sure - Will determine from workflow details
</action>
<action>WAIT for user selection (1-7)</action>
<action>Store selection in {{trigger_type}}</action>
<action>Ask Question 4: "What integrations/services does this workflow use?"</action>
<action>Ask: "Please list all services (e.g., Slack, Google Sheets, HubSpot, etc.)"</action>
<action>WAIT for user input</action> <action>WAIT for user input</action>
<action>Store in {{integrations_used}}</action> <action>Store in {{integrations_used}}</action>
<action>Ask Question 5: "How complex is the workflow?"</action> <action>Ask Question 6: "Are there any pain points or issues with the current workflow?"</action>
<action>Examples: "Slow execution", "Unreliable", "Missing features", "Hard to maintain"</action>
<action>Present numbered options: <action>Present numbered options:
1. Simple - Linear flow with 3-5 steps 1. No - Works fine, just migrating platform
2. Medium - Some conditional logic, 6-10 steps 2. Yes - Describe the issues
3. Complex - Multiple branches, loops, 11-20 steps
4. Very Complex - Advanced logic, 20+ steps
</action> </action>
<action>WAIT for user selection (1-4)</action> <action>WAIT for user selection (1-2)</action>
<action>Store selection in {{complexity}}</action> <check if="selection is 2">
<action>Ask: "What issues should we fix during migration?"</action>
<action>WAIT for user input</action>
<action>Store in {{issues_to_fix}}</action>
</check>
<action>Ask Question 6: "What should the migrated workflow be named?"</action> <action>Ask Question 6: "What should the migrated workflow be named?"</action>
<action>WAIT for user input</action> <action>WAIT for user input</action>

View File

@ -3,8 +3,8 @@ description: "Migrate workflows from other platforms (Zapier, Make, HubSpot, etc
author: "Saif" author: "Saif"
# Workflow components # Workflow components
installed_path: "{project-root}/{bmad_folder}/bmm/workflows/n8n-expert/migrate-workflow" installed_path: "{project-root}/{bmad_folder}/autominator/workflows/migrate-workflow"
shared_path: "{project-root}/{bmad_folder}/bmm/workflows/n8n-expert/_shared" shared_path: "{project-root}/{bmad_folder}/autominator/workflows/_shared"
instructions: "{installed_path}/instructions.md" instructions: "{installed_path}/instructions.md"
validation: "{installed_path}/checklist.md" validation: "{installed_path}/checklist.md"

View File

@ -29,6 +29,8 @@
</step> </step>
<step n="1" goal="Gather Requirements" elicit="true"> <step n="1" goal="Gather Requirements" elicit="true">
<critical>Understand WHY the user wants to modify the workflow, not just WHAT to change</critical>
<action>Ask Question 1: "Which workflow file do you want to modify?"</action> <action>Ask Question 1: "Which workflow file do you want to modify?"</action>
<action>Present numbered options: <action>Present numbered options:
1. Provide file path - Specify exact path to workflow JSON 1. Provide file path - Specify exact path to workflow JSON
@ -57,39 +59,43 @@
<action>Store temp file path in {{workflow_file}}</action> <action>Store temp file path in {{workflow_file}}</action>
</check> </check>
<action>Ask Question 2: "What type of modification do you need?"</action> <action>Ask Question 2: "What problem are you trying to solve by modifying this workflow?"</action>
<action>Present numbered options: <action>Examples: "It's not handling errors properly", "Need to add Slack notifications", "Missing data validation"</action>
1. Add new nodes - Add functionality to existing workflow
2. Modify existing nodes - Change node parameters or configuration
3. Remove nodes - Delete nodes from workflow
4. Change connections - Modify how nodes are connected
5. Update error handling - Add or modify retry/error logic
6. Optimize workflow - Improve performance or structure
7. Multiple changes - Combination of above
</action>
<action>WAIT for user selection (1-7)</action>
<action>Store selection in {{modification_type}}</action>
<action>Ask Question 3: "Please describe the changes you want to make"</action>
<action>WAIT for user input</action> <action>WAIT for user input</action>
<action>Store in {{changes_description}}</action> <action>Store in {{problem_to_solve}}</action>
<check if="{{modification_type}} includes adding nodes"> <action>Ask Question 3: "What's currently not working or missing?"</action>
<action>Ask: "What nodes do you want to add? (describe functionality)"</action> <action>Encourage specific details about the issue or gap</action>
<action>WAIT for user input</action> <action>WAIT for user input</action>
<action>Store in {{nodes_to_add}}</action> <action>Store in {{current_issue}}</action>
</check>
<check if="{{modification_type}} includes modifying nodes"> <action>Ask Question 4: "What should the workflow do after these changes?"</action>
<action>Ask: "Which nodes do you want to modify? (provide node names or descriptions)"</action> <action>Focus on the desired behavior and outcome</action>
<action>WAIT for user input</action> <action>WAIT for user input</action>
<action>Store in {{nodes_to_modify}}</action> <action>Store in {{desired_behavior}}</action>
</check>
<check if="{{modification_type}} includes removing nodes"> <action>Ask Question 5: "Are there any specific nodes, integrations, or logic you want to change?"</action>
<action>Ask: "Which nodes do you want to remove? (provide node names)"</action> <action>Examples: "Add a Slack node after approval", "Change the IF condition to check status", "Remove the delay node"</action>
<action>WAIT for user input</action>
<action>Store in {{specific_changes}}</action>
<action>Summarize understanding:</action>
<action>- Problem: {{problem_to_solve}}</action>
<action>- Current Issue: {{current_issue}}</action>
<action>- Desired Behavior: {{desired_behavior}}</action>
<action>- Specific Changes: {{specific_changes}}</action>
<action>Ask: "Does this capture what you need?"</action>
<action>Present numbered options:
1. Yes - Proceed with modifications
2. No - Let me clarify
</action>
<action>WAIT for user selection (1-2)</action>
<check if="selection is 2">
<action>Ask: "What needs clarification?"</action>
<action>WAIT for user input</action> <action>WAIT for user input</action>
<action>Store in {{nodes_to_remove}}</action> <action>Update relevant variables</action>
<action>Repeat summary and confirmation</action>
</check> </check>
</step> </step>

View File

@ -3,8 +3,8 @@ description: "Edit or update existing n8n workflow"
author: "Saif" author: "Saif"
# Workflow components # Workflow components
installed_path: "{project-root}/{bmad_folder}/bmm/workflows/n8n-expert/modify-workflow" installed_path: "{project-root}/{bmad_folder}/autominator/workflows/modify-workflow"
shared_path: "{project-root}/{bmad_folder}/bmm/workflows/n8n-expert/_shared" shared_path: "{project-root}/{bmad_folder}/autominator/workflows/_shared"
instructions: "{installed_path}/instructions.md" instructions: "{installed_path}/instructions.md"
validation: "{installed_path}/checklist.md" validation: "{installed_path}/checklist.md"

View File

@ -29,6 +29,8 @@
</step> </step>
<step n="1" goal="Gather Optimization Requirements" elicit="true"> <step n="1" goal="Gather Optimization Requirements" elicit="true">
<critical>Understand the REAL PROBLEMS the user is experiencing, not just generic optimization goals</critical>
<action>Ask Question 1: "Which workflow do you want to optimize?"</action> <action>Ask Question 1: "Which workflow do you want to optimize?"</action>
<action>Present numbered options: <action>Present numbered options:
1. Provide file path - Specify exact path to workflow JSON 1. Provide file path - Specify exact path to workflow JSON
@ -57,30 +59,50 @@
<action>Store temp file path in {{workflow_file}}</action> <action>Store temp file path in {{workflow_file}}</action>
</check> </check>
<action>Ask Question 2: "What aspects do you want to optimize?"</action> <action>Ask Question 2: "What problems are you experiencing with this workflow?"</action>
<action>Examples: "Takes too long to run", "Fails frequently", "Hard to understand", "Doesn't handle errors well"</action>
<action>WAIT for user input</action>
<action>Store in {{problems_experienced}}</action>
<action>Ask Question 3: "What's the business impact of these problems?"</action>
<action>Examples: "Delays customer responses", "Wastes team time", "Causes data issues", "Costs money"</action>
<action>WAIT for user input</action>
<action>Store in {{business_impact}}</action>
<action>Ask Question 4: "What would 'better' look like for this workflow?"</action>
<action>Focus on desired outcomes: "Faster execution", "More reliable", "Easier to maintain", "Better error recovery"</action>
<action>WAIT for user input</action>
<action>Store in {{desired_improvements}}</action>
<action>Ask Question 5: "Are there specific areas you want me to focus on?"</action>
<action>Present numbered options (can select multiple): <action>Present numbered options (can select multiple):
1. Performance - Improve execution speed and efficiency 1. Performance - Speed and efficiency
2. Error Handling - Add or improve error handling and retries 2. Reliability - Error handling and retries
3. Code Quality - Improve node configuration and data transformations 3. Maintainability - Code quality and structure
4. Structure - Improve workflow organization and readability 4. Security - Credential and data handling
5. Best Practices - Apply n8n best practices and patterns 5. All - Comprehensive review
6. Security - Improve credential handling and data security 6. Let you decide - Analyze and recommend
7. All - Comprehensive optimization review
</action> </action>
<action>WAIT for user selection (1-7 or multiple)</action> <action>WAIT for user selection (1-6 or multiple)</action>
<action>Store selections in {{optimization_focus}}</action> <action>Store selections in {{optimization_focus}}</action>
<action>Ask Question 3: "Are there specific issues or pain points?"</action> <action>Summarize understanding:</action>
<action>- Problems: {{problems_experienced}}</action>
<action>- Business Impact: {{business_impact}}</action>
<action>- Desired Improvements: {{desired_improvements}}</action>
<action>- Focus Areas: {{optimization_focus}}</action>
<action>Ask: "Does this capture your optimization needs?"</action>
<action>Present numbered options: <action>Present numbered options:
1. No - Just general optimization 1. Yes - Proceed with analysis
2. Yes - Describe specific issues 2. No - Let me clarify
</action> </action>
<action>WAIT for user selection (1-2)</action> <action>WAIT for user selection (1-2)</action>
<check if="selection is 2"> <check if="selection is 2">
<action>Ask: "Please describe the issues (slow execution, errors, etc.)"</action> <action>Ask: "What needs clarification?"</action>
<action>WAIT for user input</action> <action>WAIT for user input</action>
<action>Store in {{specific_issues}}</action> <action>Update relevant variables</action>
<action>Repeat summary and confirmation</action>
</check> </check>
</step> </step>

View File

@ -3,8 +3,8 @@ description: "Review and improve existing n8n workflows for performance and best
author: "Saif" author: "Saif"
# Workflow components # Workflow components
installed_path: "{project-root}/{bmad_folder}/bmm/workflows/n8n-expert/optimize-workflow" installed_path: "{project-root}/{bmad_folder}/autominator/workflows/optimize-workflow"
shared_path: "{project-root}/{bmad_folder}/bmm/workflows/n8n-expert/_shared" shared_path: "{project-root}/{bmad_folder}/autominator/workflows/_shared"
instructions: "{installed_path}/instructions.md" instructions: "{installed_path}/instructions.md"
validation: "{installed_path}/checklist.md" validation: "{installed_path}/checklist.md"