-
Notifications
You must be signed in to change notification settings - Fork 1
Workflow
Not implemented — depends on Subagent and Background Jobs capabilities.
Upstream reference: Workflow
The workflow subsystem enables models to write and execute orchestration scripts that spawn sub-agents in parallel. It has three components:
-
WorkflowEngine (
ctx.workflowEngine) — executes scripts in a Node.js worker thread, one worker per run. Providesagent(),parallel(),pipeline(), andphase()primitives. -
WorkflowWorkerThread (
dsh-workflow-worker-thread) — the Node.jsworker_threadsexecution backend. -
ToolWorkflow (
dsh-tool-workflow) — the model-facing tool that accepts a script body and manages run lifecycle.
Scripts return structured results. Fatal errors (schema violations, limit breaches) throw immediately; non-fatal failures (child agent errors) map to null in combinators. Persistent tool-workflow/run-start and tool-workflow/run-end events are written to the parent session log.
Not Implemented None of the three workflow packages are in Edge's dependencies. No workflow engine, tool, or execution backend is installed.
| Dependency | Edge Status | Impact |
|---|---|---|
| SubagentRuntime | Not implemented | Workflow scripts spawn child agents via agent()
|
| JobRegistry | Not implemented | Workflow runs are tracked as background jobs |
worker_threads |
Not available | Upstream execution backend uses Node.js workers |
Edge has a precedent for multi-turn agent coordination: GoalRoundDriver already orchestrates autonomous continuation across turns within a single agent. This is a simpler form of the same pattern — sequential steps without parallel fan-out. Workflow adds parallel sub-agent spawning, which requires the full SubagentRuntime.
| Cloudflare Product | Could Enable | Plan |
|---|---|---|
| DO in-process execution | Single-threaded script execution within the DO isolate (no worker_threads) |
Free |
| Cloudflare Containers | Full Node.js worker thread environment for heavy orchestration | Paid / Enterprise |
| Dynamic Worker dispatch | Spawn child agents as separate Worker invocations coordinated by the DO | Paid |
The most viable path for free-tier users is a single-threaded in-DO execution engine that runs workflow scripts synchronously (no real parallelism, but sequential agent() calls work). True parallel fan-out would require either Containers or Dynamic Worker dispatch on paid plans.
| Component | Category | Status |
|---|---|---|
| WorkflowEngine | Missing | Not installed — needs execution backend |
| ToolWorkflow | Missing | Not installed — needs engine |
| Execution backend | Missing |
worker_threads unavailable; needs DO or Container alternative |
Key observation: Workflow is blocked by two missing capabilities (Subagent, Jobs) and one platform gap (
worker_threads). It's a compound dependency — implementing it requires solving the underlying pieces first. However, a simplified single-agent sequential workflow could work within Edge's existing GoalRoundDriver pattern without any of these dependencies.
Evaluate simplified in-DO workflow engine. A single-threaded execution backend that runs inside the DO isolate (without
worker_threads) could support sequential workflow scripts. The upstreamWorkflowEngineservice interface may accept alternative backends. Evaluate whether a DO-internal backend can satisfy the interface without parallel sub-agent support.
Resolve upstream dependencies first. Full workflow support requires Subagent (#subagent) and Background Jobs (#jobs). These should be evaluated independently before attempting workflow integration.
- Home
- Architecture
- Core & Scope
- Session & Persistence
- Model & Context
-
Execution & Tools
- Tools
- Bash
- Subprocess 🚫
- PTY Session 🚫
- Background Jobs 🚫
- Filesystem
- LSP Navigation 🚫
- Code Runtime 🚫
-
Web Access
⚠️ -
Skills
⚠️ - Workflow 🚫
- Subagent 🚫
-
Policy & Interaction
- Goal
- Approval 🚫
- Permission Presets 🚫
-
Sandbox
⚠️ - Plan Mode 🚫
- User Interaction 🚫
- Commands 🚫
- Schedule 🚫
- Message Feedback 🚫
- Platform & Access
- Development
- 首页
- 架构
- 核心与作用域
- 会话与持久化
- 模型与上下文
- 执行与工具
- 策略与交互
- 平台与接入
- 开发