@fieldwangai/agentflow 0.1.160 → 0.1.163

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (111) hide show
  1. package/bin/lib/auth.mjs +231 -14
  2. package/bin/lib/catalog-flows.mjs +2 -0
  3. package/bin/lib/cli-auth-page.mjs +103 -0
  4. package/bin/lib/flow-dsl/codegen.mjs +23 -2
  5. package/bin/lib/flow-dsl/lint.mjs +44 -0
  6. package/bin/lib/flow-dsl/parser.mjs +68 -1
  7. package/bin/lib/marketplace-usage.mjs +218 -0
  8. package/bin/lib/marketplace.mjs +183 -3
  9. package/bin/lib/node-package-manifest.mjs +1 -1
  10. package/bin/lib/skill-runtime.mjs +6 -0
  11. package/bin/lib/spaces.mjs +200 -0
  12. package/bin/lib/table.mjs +2 -3
  13. package/bin/lib/ui-server.mjs +471 -84
  14. package/bin/lib/workspace-draft.mjs +74 -0
  15. package/bin/lib/workspace-routes.mjs +484 -4
  16. package/bin/lib/workspace-server.mjs +373 -30
  17. package/bin/lib/workspace-state.mjs +2 -1
  18. package/builtin/nodes/agent_subAgent.md +5 -1
  19. package/builtin/nodes/context_bundle.md +44 -0
  20. package/builtin/nodes/context_knowledge.md +29 -0
  21. package/builtin/nodes/context_skills.md +29 -0
  22. package/builtin/nodes/context_workspace.md +36 -0
  23. package/builtin/nodes/control_while.md +12 -5
  24. package/builtin/nodes/tool_git_worktree_load.md +4 -3
  25. package/builtin/pipelines/new/workspace.flow.js +1 -1
  26. package/builtin/web-ui/dist/assets/{WorkflowAssistantThread-Bfo9Ythw.js → WorkflowAssistantThread-DmhIgoD7.js} +1 -1
  27. package/builtin/web-ui/dist/assets/index-CI9J6Unt.js +873 -0
  28. package/builtin/web-ui/dist/assets/index-DY5vE7v1.css +1 -0
  29. package/builtin/web-ui/dist/index.html +2 -2
  30. package/package.json +5 -1
  31. package/shared/slot-types.js +1 -0
  32. package/skills/agentflow-author-flow/SKILL.md +81 -8
  33. package/skills/agentflow-author-flow/agents/openai.yaml +3 -3
  34. package/skills/agentflow-cli/SKILL.md +179 -27
  35. package/skills/agentflow-cli/agents/openai.yaml +2 -2
  36. package/skills/agentflow-cli/runtime/bin/lib/skill-runtime.mjs +14879 -0
  37. package/skills/agentflow-cli/runtime/builtin/nodes/agent_subAgent.md +38 -0
  38. package/skills/agentflow-cli/runtime/builtin/nodes/context_bundle.md +44 -0
  39. package/skills/agentflow-cli/runtime/builtin/nodes/context_knowledge.md +29 -0
  40. package/skills/agentflow-cli/runtime/builtin/nodes/context_skills.md +29 -0
  41. package/skills/agentflow-cli/runtime/builtin/nodes/context_workspace.md +36 -0
  42. package/skills/agentflow-cli/runtime/builtin/nodes/control_agent_toBool.md +26 -0
  43. package/skills/agentflow-cli/runtime/builtin/nodes/control_anyOne.md +19 -0
  44. package/skills/agentflow-cli/runtime/builtin/nodes/control_cancelled.md +26 -0
  45. package/skills/agentflow-cli/runtime/builtin/nodes/control_cd_workspace.md +50 -0
  46. package/skills/agentflow-cli/runtime/builtin/nodes/control_delay.md +31 -0
  47. package/skills/agentflow-cli/runtime/builtin/nodes/control_end.md +13 -0
  48. package/skills/agentflow-cli/runtime/builtin/nodes/control_if.md +21 -0
  49. package/skills/agentflow-cli/runtime/builtin/nodes/control_interval_loop.md +55 -0
  50. package/skills/agentflow-cli/runtime/builtin/nodes/control_load_mcp.md +24 -0
  51. package/skills/agentflow-cli/runtime/builtin/nodes/control_load_skills.md +35 -0
  52. package/skills/agentflow-cli/runtime/builtin/nodes/control_parse_json.md +25 -0
  53. package/skills/agentflow-cli/runtime/builtin/nodes/control_start.md +13 -0
  54. package/skills/agentflow-cli/runtime/builtin/nodes/control_subflow_call.md +27 -0
  55. package/skills/agentflow-cli/runtime/builtin/nodes/control_toBool.md +27 -0
  56. package/skills/agentflow-cli/runtime/builtin/nodes/control_user_workspace.md +24 -0
  57. package/skills/agentflow-cli/runtime/builtin/nodes/control_wait_until.md +34 -0
  58. package/skills/agentflow-cli/runtime/builtin/nodes/control_while.md +131 -0
  59. package/skills/agentflow-cli/runtime/builtin/nodes/display_ascii.md +24 -0
  60. package/skills/agentflow-cli/runtime/builtin/nodes/display_chart.md +32 -0
  61. package/skills/agentflow-cli/runtime/builtin/nodes/display_code.md +39 -0
  62. package/skills/agentflow-cli/runtime/builtin/nodes/display_html.md +32 -0
  63. package/skills/agentflow-cli/runtime/builtin/nodes/display_image.md +36 -0
  64. package/skills/agentflow-cli/runtime/builtin/nodes/display_markdown.md +24 -0
  65. package/skills/agentflow-cli/runtime/builtin/nodes/display_mermaid.md +24 -0
  66. package/skills/agentflow-cli/runtime/builtin/nodes/display_react_app.md +53 -0
  67. package/skills/agentflow-cli/runtime/builtin/nodes/display_table.md +32 -0
  68. package/skills/agentflow-cli/runtime/builtin/nodes/provide_bool.md +14 -0
  69. package/skills/agentflow-cli/runtime/builtin/nodes/provide_file.md +14 -0
  70. package/skills/agentflow-cli/runtime/builtin/nodes/provide_json.md +14 -0
  71. package/skills/agentflow-cli/runtime/builtin/nodes/provide_password.md +14 -0
  72. package/skills/agentflow-cli/runtime/builtin/nodes/provide_str.md +14 -0
  73. package/skills/agentflow-cli/runtime/builtin/nodes/tool_display_share_link.md +47 -0
  74. package/skills/agentflow-cli/runtime/builtin/nodes/tool_get_env.md +20 -0
  75. package/skills/agentflow-cli/runtime/builtin/nodes/tool_git_checkout.md +70 -0
  76. package/skills/agentflow-cli/runtime/builtin/nodes/tool_git_worktree_load.md +74 -0
  77. package/skills/agentflow-cli/runtime/builtin/nodes/tool_git_worktree_unload.md +52 -0
  78. package/skills/agentflow-cli/runtime/builtin/nodes/tool_gitlab_create_mr.md +114 -0
  79. package/skills/agentflow-cli/runtime/builtin/nodes/tool_jenkins_build.md +67 -0
  80. package/skills/agentflow-cli/runtime/builtin/nodes/tool_load_key.md +26 -0
  81. package/skills/agentflow-cli/runtime/builtin/nodes/tool_nodejs.md +52 -0
  82. package/skills/agentflow-cli/runtime/builtin/nodes/tool_print.md +21 -0
  83. package/skills/agentflow-cli/runtime/builtin/nodes/tool_save_key.md +26 -0
  84. package/skills/agentflow-cli/runtime/builtin/nodes/tool_set_run_env.md +38 -0
  85. package/skills/agentflow-cli/runtime/builtin/nodes/tool_user_ask.md +27 -0
  86. package/skills/agentflow-cli/runtime/builtin/nodes/tool_user_check.md +26 -0
  87. package/skills/agentflow-cli/runtime/builtin/nodes/tool_wecom_send_app_markdown.md +57 -0
  88. package/skills/agentflow-cli/runtime/builtin/nodes/tool_wecom_send_group_markdown.md +45 -0
  89. package/skills/agentflow-cli/runtime/builtin/nodes/workspace_one_click_task.md +44 -0
  90. package/skills/agentflow-cli/runtime/builtin/nodes/workspace_run.md +16 -0
  91. package/skills/agentflow-cli/runtime/builtin/nodes/workspace_scheduled_run.md +16 -0
  92. package/skills/agentflow-cli/runtime/builtin/nodes/workspace_subflow_input.md +14 -0
  93. package/skills/agentflow-cli/runtime/package.json +6 -0
  94. package/skills/agentflow-cli/scripts/agentflow-auth-store.mjs +113 -0
  95. package/skills/agentflow-cli/scripts/agentflow-cli.mjs +457 -28
  96. package/skills/agentflow-cli/scripts/agentflow-runtime.mjs +11 -4
  97. package/skills/agentflow-flow-add-instances/SKILL.md +2 -2
  98. package/skills/agentflow-flow-dsl/SKILL.md +73 -8
  99. package/skills/agentflow-flow-dsl/agents/openai.yaml +2 -2
  100. package/skills/agentflow-flow-dsl/references/node-calls.md +6 -2
  101. package/skills/agentflow-flow-dsl/references/subflow-authoring.md +34 -7
  102. package/skills/agentflow-flow-edit-node-fields/SKILL.md +3 -3
  103. package/skills/agentflow-flow-recipes/SKILL.md +1 -1
  104. package/skills/agentflow-flow-recipes/references/recipes.md +1 -2
  105. package/skills/agentflow-flow-sync-ui/SKILL.md +1 -1
  106. package/skills/agentflow-node-dsl/SKILL.md +5 -13
  107. package/skills/agentflow-node-reference/references/builtin-nodes.md +37 -5
  108. package/skills/agentflow-workspace-markdown/SKILL.md +1 -1
  109. package/builtin/web-ui/dist/assets/index-XbeI5foV.js +0 -872
  110. package/builtin/web-ui/dist/assets/index-e1omCEau.css +0 -1
  111. package/skills/agentflow-workspace-graph/SKILL.md +0 -85
@@ -0,0 +1,131 @@
1
+ ---
2
+ # 内置节点:While 单步推进
3
+ runtime: native
4
+ description: |
5
+ Repeatedly execute either an explicit Condition/Body subflow pair or one legacy deterministic
6
+ step command (`script` or `scriptRef`) without adding a cycle to the Workspace graph. A Run
7
+ restarted after `wait` resumes from the saved output state.
8
+
9
+ Preferred DSL form:
10
+ `control.while("Advance", { state, maxIterations, timeout }, conditionFlow, bodyFlow)`.
11
+ An optional typed `context` input is captured once before iteration and forwarded only to
12
+ Condition/Body subflows that explicitly declare `flow.input("context", "context")`. Context is
13
+ never copied into business state, history, or checkpoints.
14
+ Condition must accept `state` and `iteration`, and return `decision` plus optional `summary`.
15
+ Only `continue` invokes Body. Body must accept `state`, `iteration`, and `idempotencyKey`, and
16
+ return the next `state` plus optional `summary`. `wait`, `done`, and `fail` skip Body.
17
+
18
+ In legacy script mode, the command runs once per iteration and stdout must be exactly one JSON object:
19
+ `{"decision":"continue|wait|done|fail","state":{},"summary":"..."}`.
20
+ `continue` starts another iteration, `wait` pauses this Run before downstream nodes, `done`
21
+ continues downstream, and `fail` fails the node. A missing `state` keeps the previous state.
22
+
23
+ Each step receives `AGENTFLOW_WHILE_STATE` (JSON), the absolute
24
+ `AGENTFLOW_WHILE_ITERATION`, `AGENTFLOW_WHILE_MAX_ITERATIONS`,
25
+ `AGENTFLOW_WHILE_TIMEOUT_MS`, and a stable per-iteration
26
+ `AGENTFLOW_WHILE_IDEMPOTENCY_KEY`. Pass the idempotency key to external write APIs when they
27
+ support one. Write progress logs to stderr because stdout is reserved for the decision object.
28
+ The command also supports the same runtime placeholders as `tool.nodejs`, including
29
+ `${flowDir}` and `${workspaceRoot}`.
30
+
31
+ A waiting checkpoint retains state, history, elapsed active time, and the next absolute
32
+ iteration. `maxIterations` and `timeout` are cumulative across resumes. A changed input resets
33
+ the checkpoint; a matching but malformed checkpoint fails closed. Step output is schema-strict
34
+ and bounded: unknown fields are rejected, state/stdout are limited to 1 MiB, stderr to 256 KiB,
35
+ and summary to 4000 characters.
36
+ displayName: While
37
+ ui:
38
+ card:
39
+ template: state-machine
40
+ icon: repeat
41
+ tone: purple
42
+ sections:
43
+ - type: binding
44
+ label: State input
45
+ input: state
46
+ - type: loop
47
+ label: Loop execution
48
+ field: script
49
+ - type: decision
50
+ label: Decision status
51
+ output: decision
52
+ source: step.stdout.decision
53
+ options:
54
+ - value: continue
55
+ label: continue
56
+ tone: purple
57
+ description: 保存 state 并立即进入下一轮
58
+ - value: wait
59
+ label: wait
60
+ tone: amber
61
+ description: 保存 checkpoint,暂停当前 Run
62
+ - value: done
63
+ label: done
64
+ tone: green
65
+ description: 结束循环并继续下游
66
+ - value: fail
67
+ label: fail
68
+ tone: red
69
+ description: 终止并标记节点失败
70
+ - type: metrics
71
+ label: Limits and progress
72
+ items:
73
+ - label: Iteration
74
+ output: iterations
75
+ maxInput: maxIterations
76
+ - label: Timeout
77
+ input: timeout
78
+ - type: summary
79
+ label: Latest outcome
80
+ output: summary
81
+ - type: history
82
+ label: Iteration history
83
+ output: history
84
+ limit: 3
85
+ input:
86
+ - type: node
87
+ name: prev
88
+ default: ""
89
+ - type: context
90
+ name: context
91
+ default: ""
92
+ showOnNode: true
93
+ - type: json
94
+ name: state
95
+ default: "null"
96
+ - type: text
97
+ name: maxIterations
98
+ default: "20"
99
+ - type: text
100
+ name: timeout
101
+ default: "30m"
102
+ output:
103
+ - type: node
104
+ name: next
105
+ default: ""
106
+ - type: json
107
+ name: result
108
+ default: ""
109
+ - type: json
110
+ name: state
111
+ default: "null"
112
+ - type: text
113
+ name: decision
114
+ default: ""
115
+ showOnNode: true
116
+ - type: text
117
+ name: iterations
118
+ default: "0"
119
+ showOnNode: true
120
+ - type: text
121
+ name: summary
122
+ default: ""
123
+ showOnNode: true
124
+ - type: json
125
+ name: history
126
+ default: "[]"
127
+ - type: text
128
+ name: checkpointFingerprint
129
+ default: ""
130
+ ---
131
+ ${USER_PROMPT}
@@ -0,0 +1,24 @@
1
+ ---
2
+ # 内置节点:ASCII 图展示
3
+ runtime: native
4
+ description: Display ASCII diagram content in workspace canvas; passes diagram text downstream as text
5
+ displayName: ASCII Display
6
+ input:
7
+ - type: node
8
+ name: prev
9
+ default: ""
10
+ - type: text
11
+ name: content
12
+ default: ""
13
+ required: true
14
+ showOnNode: true
15
+ output:
16
+ - type: text
17
+ name: content
18
+ default: ""
19
+ showOnNode: true
20
+ - type: node
21
+ name: next
22
+ default: ""
23
+ ---
24
+ ${content}
@@ -0,0 +1,32 @@
1
+ ---
2
+ # Built-in node: Chart Display
3
+ runtime: native
4
+ description: Display a JSON ChartSpec with ECharts in workspace canvas; passes the JSON downstream as text
5
+ displayName: Chart Display
6
+ input:
7
+ - type: node
8
+ name: prev
9
+ default: ""
10
+ - type: text
11
+ name: content
12
+ default: ""
13
+ required: true
14
+ showOnNode: true
15
+ - type: file
16
+ name: filePath
17
+ default: ""
18
+ showOnNode: false
19
+ - type: text
20
+ name: workspaceContext
21
+ default: ""
22
+ showOnNode: false
23
+ output:
24
+ - type: text
25
+ name: content
26
+ default: ""
27
+ showOnNode: true
28
+ - type: node
29
+ name: next
30
+ default: ""
31
+ ---
32
+ ${content}
@@ -0,0 +1,39 @@
1
+ ---
2
+ # 内置节点:代码展示
3
+ runtime: native
4
+ description: Display source code with language highlighting, line numbers, copy, wrap, and download controls; passes content downstream as text
5
+ displayName: Code Display
6
+ input:
7
+ - type: node
8
+ name: prev
9
+ default: ""
10
+ - type: text
11
+ name: content
12
+ default: ""
13
+ required: true
14
+ showOnNode: true
15
+ - type: text
16
+ name: language
17
+ default: ""
18
+ description: Syntax language such as javascript, typescript, python, kotlin, java, shell, json, yaml, html, css, or sql
19
+ showOnNode: false
20
+ - type: text
21
+ name: fileName
22
+ default: ""
23
+ description: Optional file name used when downloading
24
+ showOnNode: false
25
+ - type: bool
26
+ name: wrap
27
+ default: "false"
28
+ description: Wrap long source lines by default
29
+ showOnNode: false
30
+ output:
31
+ - type: text
32
+ name: content
33
+ default: ""
34
+ showOnNode: true
35
+ - type: node
36
+ name: next
37
+ default: ""
38
+ ---
39
+ ${content}
@@ -0,0 +1,32 @@
1
+ ---
2
+ # Built-in node: HTML Display
3
+ runtime: native
4
+ description: Display HTML content in workspace canvas; passes HTML downstream as text
5
+ displayName: HTML Display
6
+ input:
7
+ - type: node
8
+ name: prev
9
+ default: ""
10
+ - type: text
11
+ name: content
12
+ default: ""
13
+ required: true
14
+ showOnNode: true
15
+ - type: file
16
+ name: filePath
17
+ default: ""
18
+ showOnNode: false
19
+ - type: text
20
+ name: workspaceContext
21
+ default: ""
22
+ showOnNode: false
23
+ output:
24
+ - type: text
25
+ name: content
26
+ default: ""
27
+ showOnNode: true
28
+ - type: node
29
+ name: next
30
+ default: ""
31
+ ---
32
+ ${content}
@@ -0,0 +1,36 @@
1
+ ---
2
+ # Built-in node: Image Display
3
+ runtime: native
4
+ description: Display an image URL, data URL, or image path in workspace canvas; passes source downstream as text
5
+ displayName: Image Display
6
+ input:
7
+ - type: node
8
+ name: prev
9
+ default: ""
10
+ - type: text
11
+ name: src
12
+ default: ""
13
+ required: true
14
+ showOnNode: true
15
+ - type: file
16
+ name: filePath
17
+ default: ""
18
+ showOnNode: false
19
+ - type: text
20
+ name: alt
21
+ default: ""
22
+ showOnNode: false
23
+ - type: text
24
+ name: workspaceContext
25
+ default: ""
26
+ showOnNode: false
27
+ output:
28
+ - type: text
29
+ name: src
30
+ default: ""
31
+ showOnNode: true
32
+ - type: node
33
+ name: next
34
+ default: ""
35
+ ---
36
+ ${src}
@@ -0,0 +1,24 @@
1
+ ---
2
+ # 内置节点:Markdown 展示
3
+ runtime: native
4
+ description: Display Markdown content in workspace canvas; passes content downstream as text
5
+ displayName: Markdown Display
6
+ input:
7
+ - type: node
8
+ name: prev
9
+ default: ""
10
+ - type: text
11
+ name: content
12
+ default: ""
13
+ required: true
14
+ showOnNode: true
15
+ output:
16
+ - type: text
17
+ name: content
18
+ default: ""
19
+ showOnNode: true
20
+ - type: node
21
+ name: next
22
+ default: ""
23
+ ---
24
+ ${content}
@@ -0,0 +1,24 @@
1
+ ---
2
+ # 内置节点:Mermaid 展示
3
+ runtime: native
4
+ description: Display Mermaid diagram source in workspace canvas; passes diagram source downstream as text
5
+ displayName: Mermaid Display
6
+ input:
7
+ - type: node
8
+ name: prev
9
+ default: ""
10
+ - type: text
11
+ name: content
12
+ default: ""
13
+ required: true
14
+ showOnNode: true
15
+ output:
16
+ - type: text
17
+ name: content
18
+ default: ""
19
+ showOnNode: true
20
+ - type: node
21
+ name: next
22
+ default: ""
23
+ ---
24
+ ${content}
@@ -0,0 +1,53 @@
1
+ ---
2
+ # Built-in node: React App Display
3
+ runtime: native
4
+ description: Display a small React project in a sandboxed workspace iframe and pass the project JSON downstream
5
+ displayName: React App
6
+ input:
7
+ - type: node
8
+ name: prev
9
+ default: ""
10
+ - type: text
11
+ name: content
12
+ default: ""
13
+ required: true
14
+ showOnNode: true
15
+ - type: file
16
+ name: filePath
17
+ default: ""
18
+ showOnNode: false
19
+ - type: text
20
+ name: workspaceContext
21
+ default: ""
22
+ showOnNode: false
23
+ output:
24
+ - type: text
25
+ name: content
26
+ default: ""
27
+ showOnNode: true
28
+ - type: node
29
+ name: next
30
+ default: ""
31
+ ---
32
+ {
33
+ "title": "React App",
34
+ "entry": "src/App.jsx",
35
+ "packageJson": {
36
+ "scripts": {
37
+ "dev": "vite --host 0.0.0.0",
38
+ "build": "vite build"
39
+ },
40
+ "dependencies": {
41
+ "@vitejs/plugin-react": "latest",
42
+ "vite": "latest",
43
+ "react": "latest",
44
+ "react-dom": "latest"
45
+ },
46
+ "devDependencies": {}
47
+ },
48
+ "files": {
49
+ "src/App.jsx": "export default function App() {\\n return (\\n <main>\\n <h1>React App</h1>\\n <p>Ask an Agent to replace this with a React project.</p>\\n </main>\\n );\\n}\\n",
50
+ "src/styles.css": "body { margin: 0; background: #111112; color: #f4f0ff; font-family: Inter, system-ui, sans-serif; }\\nmain { min-height: 100vh; padding: 24px; }\\nh1 { margin: 0 0 8px; font-size: 28px; }\\np { margin: 0; color: rgba(244, 240, 255, 0.68); }\\n"
51
+ },
52
+ "inputs": {}
53
+ }
@@ -0,0 +1,32 @@
1
+ ---
2
+ # Built-in node: Table Display
3
+ runtime: native
4
+ description: Display table data in workspace canvas; accepts JSON, Markdown table, CSV, or TSV and passes the text downstream
5
+ displayName: Table Display
6
+ input:
7
+ - type: node
8
+ name: prev
9
+ default: ""
10
+ - type: text
11
+ name: content
12
+ default: ""
13
+ required: true
14
+ showOnNode: true
15
+ - type: file
16
+ name: filePath
17
+ default: ""
18
+ showOnNode: false
19
+ - type: text
20
+ name: workspaceContext
21
+ default: ""
22
+ showOnNode: false
23
+ output:
24
+ - type: text
25
+ name: content
26
+ default: ""
27
+ showOnNode: true
28
+ - type: node
29
+ name: next
30
+ default: ""
31
+ ---
32
+ ${content}
@@ -0,0 +1,14 @@
1
+ ---
2
+ # 内置节点:直接提供布尔值
3
+ runtime: native
4
+ description: Provide a boolean value directly, value will be passed to downstream as true or false
5
+ displayName: Boolean
6
+ input: []
7
+ output:
8
+ - type: bool
9
+ name: value
10
+ default: "false"
11
+ required: true
12
+ showOnNode: true
13
+ ---
14
+ ${USER_PROMPT}
@@ -0,0 +1,14 @@
1
+ ---
2
+ # 内置节点:直接提供文件
3
+ runtime: native
4
+ description: Provide file path or content directly, value will be passed to downstream as-is
5
+ displayName: File
6
+ input: []
7
+ output:
8
+ - type: file
9
+ name: value
10
+ default: ""
11
+ required: true
12
+ showOnNode: true
13
+ ---
14
+ ${USER_PROMPT}
@@ -0,0 +1,14 @@
1
+ ---
2
+ # 内置节点:直接提供 JSON
3
+ runtime: native
4
+ type: provide
5
+ description: 提供经过校验的 JSON 值,输出可以直接连接 json 类型输入。
6
+ displayName: JSON
7
+ output:
8
+ - type: json
9
+ name: value
10
+ default: "null"
11
+ required: true
12
+ showOnNode: true
13
+ ---
14
+ ${USER_PROMPT}
@@ -0,0 +1,14 @@
1
+ ---
2
+ # Built-in node: directly provide a hidden password/secret value
3
+ runtime: native
4
+ description: Provide a secret text value without showing it on the node card
5
+ displayName: Password
6
+ input: []
7
+ output:
8
+ - type: text
9
+ name: value
10
+ default: ""
11
+ required: true
12
+ showOnNode: true
13
+ ---
14
+ ${USER_PROMPT}
@@ -0,0 +1,14 @@
1
+ ---
2
+ # 内置节点:直接提供文本
3
+ runtime: native
4
+ description: Provide a text value directly, value will be passed to downstream as-is
5
+ displayName: String
6
+ input: []
7
+ output:
8
+ - type: text
9
+ name: value
10
+ default: ""
11
+ required: true
12
+ showOnNode: true
13
+ ---
14
+ ${USER_PROMPT}
@@ -0,0 +1,47 @@
1
+ ---
2
+ # Built-in node: create share link for Display nodes
3
+ runtime: native
4
+ description: Create a public share link for upstream Display nodes
5
+ displayName: Display Share Link
6
+ input:
7
+ - type: node
8
+ name: prev
9
+ default: ""
10
+ - type: text
11
+ name: title
12
+ default: ""
13
+ description: "可选。分享页标题;只影响打开分享页后的页面标题,不影响输出 URL。为空时使用 AgentFlow Display。"
14
+ showOnNode: true
15
+ - type: text
16
+ name: layout
17
+ default: "single"
18
+ description: "可选。分享页布局:single、gallery、slides、document、canvas。通常保持默认 single。"
19
+ showOnNode: false
20
+ - type: text
21
+ name: nodeIds
22
+ default: ""
23
+ description: "可选。逗号或空格分隔的 Display 节点 ID;为空时自动分享连接到本节点的上游 Display 节点。"
24
+ showOnNode: false
25
+ - type: text
26
+ name: baseUrl
27
+ default: ""
28
+ description: "可选。分享站点地址,例如 https://agentflow.example.com;为空时优先使用环境变量,其次使用当前访问地址。"
29
+ showOnNode: false
30
+ output:
31
+ - type: node
32
+ name: next
33
+ default: ""
34
+ - type: text
35
+ name: url
36
+ default: ""
37
+ showOnNode: true
38
+ - type: text
39
+ name: shareId
40
+ default: ""
41
+ showOnNode: false
42
+ - type: text
43
+ name: expiresAt
44
+ default: ""
45
+ showOnNode: false
46
+ ---
47
+ Create a share link for connected Display nodes. Connect a Display node to this node, optionally set title, and use the url output.
@@ -0,0 +1,20 @@
1
+ ---
2
+ # 内置节点:按 key 读取环境/配置
3
+ runtime: none
4
+ palette: hidden
5
+ description: Get environment variable value
6
+ displayName: GetEnv
7
+ input:
8
+ - type: text
9
+ name: key
10
+ default: ""
11
+ required: true
12
+ showOnNode: true
13
+ output:
14
+ - type: text
15
+ name: value
16
+ default: ""
17
+ required: true
18
+ showOnNode: true
19
+ ---
20
+ ${USER_PROMPT}
@@ -0,0 +1,70 @@
1
+ ---
2
+ # 内置节点:Git Checkout
3
+ runtime: native
4
+ description: |
5
+ Clone or update a Git repository and expose it as a workspace context for downstream nodes.
6
+
7
+ - `repoUrl` is required.
8
+ - `targetDir` may be absolute or relative to the current workspace context.
9
+ - If `targetDir` is empty, the repository is cloned into `${pipelineWorkspace}/.workspace/agentflow/git-repos/<repo-name>`. For user pipelines, `${pipelineWorkspace}` follows the Admin Settings AgentFlow Data Root.
10
+ - Set `includeSubmodules` to `true` to clone/update Git submodules recursively.
11
+ - The `workspaceContext` output can be connected to CD Workspace, Load Skills, agent, or tool nodes.
12
+ - The `gitContext` output can be connected to Worktree, GitLab MR, or other Git nodes.
13
+ displayName: Git Checkout
14
+ input:
15
+ - type: node
16
+ name: prev
17
+ default: ""
18
+ - type: text
19
+ name: repoUrl
20
+ default: ""
21
+ required: true
22
+ showOnNode: true
23
+ - type: text
24
+ name: branch
25
+ default: ""
26
+ - type: text
27
+ name: targetDir
28
+ default: ""
29
+ - type: bool
30
+ name: pullIfExists
31
+ default: "true"
32
+ - type: bool
33
+ name: includeSubmodules
34
+ default: "false"
35
+ - type: text
36
+ name: remote
37
+ default: "origin"
38
+ - type: text
39
+ name: workspaceContext
40
+ default: ""
41
+ required: true
42
+ showOnNode: true
43
+ output:
44
+ - type: node
45
+ name: next
46
+ default: ""
47
+ - type: file
48
+ name: repoPath
49
+ default: ""
50
+ - type: text
51
+ name: branch
52
+ default: ""
53
+ - type: text
54
+ name: commit
55
+ default: ""
56
+ - type: bool
57
+ name: changed
58
+ default: ""
59
+ - type: text
60
+ name: workspaceContext
61
+ default: ""
62
+ required: true
63
+ showOnNode: true
64
+ - type: text
65
+ name: gitContext
66
+ default: ""
67
+ required: true
68
+ showOnNode: true
69
+ ---
70
+ Clone or update `${repoUrl}` and output workspace/git contexts for the checked-out repository.