UNPKG

sf-agent-framework

Version:

AI Agent Orchestration Framework for Salesforce Development - Two-phase architecture with 70% context reduction

63 lines (51 loc) 1.53 kB
const fs = require('fs'); const yaml = require('js-yaml'); function generateMermaidDiagram(workflow) { let mermaid = `graph TD `; let lastPhase = null; for (const phase of workflow.workflow.sequence) { mermaid += ` subgraph ${phase.phase}`; if (phase.parallel_tracks) { for (const track of phase.parallel_tracks) { mermaid += ` subgraph ${track.track}`; let lastStep = null; for (const step of track.steps) { mermaid += ` ${step.step}["${step.step}"]`; if (lastStep) { mermaid += `\n ${lastStep} --> ${step.step}`; } lastStep = step.step; } mermaid += `\n end`; } } else if (phase.steps) { let lastStep = null; for (const step of phase.steps) { mermaid += `\n ${step.step}["${step.step}"]`; if (lastStep) { mermaid += `\n ${lastStep} --> ${step.step}`; } lastStep = step.step; } } mermaid += `\n end`; if (lastPhase) { mermaid += `\n ${lastPhase} --> ${phase.phase}`; } lastPhase = phase.phase; } return mermaid; } function visualizeWorkflow(filePath) { console.log(`Visualizing workflow: ${filePath}`); const fileContents = fs.readFileSync(filePath, 'utf8'); const workflow = yaml.load(fileContents); console.log('\n--- Mermaid Diagram---\n'); const mermaidDiagram = generateMermaidDiagram(workflow); console.log(mermaidDiagram); } module.exports = visualizeWorkflow;