MCPcopy Create free account
hub / github.com/ScaleML/AgentSPEX / updateModuleWorkflowYaml

Function updateModuleWorkflowYaml

yaml-flow-editor/src/utils/moduleYaml.ts:9–42  ·  view source on GitHub ↗
(
  originalContent: string,
  newSteps: FlowNodeData[],
)

Source from the content-addressed store, hash-verified

7 * name / goal / parameters / config and other top-level fields.
8 */
9export function updateModuleWorkflowYaml(
10 originalContent: string,
11 newSteps: FlowNodeData[],
12): { yaml: string; workflow: Workflow | null } {
13 let parsed: Workflow | null = null;
14 try {
15 parsed = yaml.load(originalContent) as Workflow | null;
16 } catch {
17 parsed = null;
18 }
19
20 if (!parsed || typeof parsed !== 'object') {
21 parsed = {
22 name: 'module',
23 workflow: [],
24 };
25 }
26
27 const workflow: WorkflowStep[] = newSteps.map((s) => flowNodeDataToWorkflowStep(s));
28
29 const nextPlan: Workflow = {
30 ...parsed,
31 workflow,
32 };
33
34 const yamlText = yaml.dump(nextPlan, {
35 indent: 2,
36 lineWidth: 120,
37 noRefs: true,
38 sortKeys: false,
39 });
40
41 return { yaml: yamlText, workflow: nextPlan };
42}
43

Callers 2

App.tsxFile · 0.90
handleLabelChangeFunction · 0.90

Calls 1

Tested by

no test coverage detected