Files
ragflow/internal/agent/dsl/testdata/browser.json
Zhichang Yu e45659868a feat(agent): ship the Go agent canvas port — eino interrupt/resume + Redis check-pointing (#16035)
Replaces the Python agent canvas runtime with a Go implementation that
runs inside `cmd/server_main`.

The canvas compiles into an eino Workflow that pauses on wait-for-user
via native Interrupt/Resume (no sentinel flag) and resumes from a
Redis-backed CheckPointStore.

All 21 Python agent components and ~35 tools are ported with functional
parity.

Sandbox providers now read their JSON config from the admin-panel
system_settings table with env fallback.

234 files / +35,413 / -6,111. All Go files are gofmt-clean (CI gate
added); drops the v2 DSL E2E step and the gap-analysis plan (both
redundant after the port ships).

## Type of change

- [x] Refactoring
- [x] New feature
- [x] Bug fix

🤖 Generated with [Claude Code](https://claude.com/claude-code)

---------

Co-authored-by: Claude <noreply@anthropic.com>
2026-06-17 13:24:03 +08:00

139 lines
3.6 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"globals": {
"sys.conversation_turns": 0,
"sys.date": "",
"sys.files": [],
"sys.history": [],
"sys.query": "",
"sys.user_id": ""
},
"graph": {
"edges": [
{
"data": {
"isHovered": false
},
"id": "xy-edge__beginstart-Browser:BusyHatsSinkend",
"source": "begin",
"sourceHandle": "start",
"target": "Browser:BusyHatsSink",
"targetHandle": "end"
},
{
"data": {
"isHovered": false
},
"id": "xy-edge__Browser:BusyHatsSinkstart-Message:QuietMonkeysLeadend",
"source": "Browser:BusyHatsSink",
"sourceHandle": "start",
"target": "Message:QuietMonkeysLead",
"targetHandle": "end"
}
],
"nodes": [
{
"data": {
"form": {
"inputs": {},
"mode": "conversational",
"outputs": {},
"prologue": "Hi! I'm your assistant. What can I do for you?"
},
"label": "Begin",
"name": "begin"
},
"dragging": false,
"id": "begin",
"measured": {
"height": 81,
"width": 200
},
"position": {
"x": 218.5,
"y": 138.5
},
"selected": false,
"sourcePosition": "left",
"targetPosition": "right",
"type": "beginNode"
},
{
"data": {
"form": {
"chromium_sandbox": false,
"enable_default_extensions": false,
"frequencyPenaltyEnabled": true,
"frequency_penalty": 0.7,
"headless": true,
"llm_id": "deepseek-v4-pro@DeepSeek",
"maxTokensEnabled": false,
"max_steps": 30,
"max_tokens": 256,
"outputs": {
"content": {
"type": "string",
"value": ""
},
"downloaded_files": {
"type": "Array<Object>",
"value": []
}
},
"persist_session": true,
"presencePenaltyEnabled": true,
"presence_penalty": 0.4,
"prompts": "{sys.query}打开百度搜索2026年最新AI技术趋势把前5条搜索结果的标题和链接总结给我。",
"temperature": 0.1,
"temperatureEnabled": true,
"topPEnabled": true,
"top_p": 0.3,
"upload_sources": ""
},
"label": "Browser",
"name": "Browser_0"
},
"dragging": false,
"id": "Browser:BusyHatsSink",
"measured": {
"height": 49,
"width": 200
},
"position": {
"x": 385.29079417409025,
"y": 264.3466325548784
},
"selected": true,
"sourcePosition": "right",
"targetPosition": "left",
"type": "ragNode"
},
{
"data": {
"form": {
"content": [
"{Browser:BusyHatsSink@content}\n{Browser:BusyHatsSink@downloaded_files}"
]
},
"label": "Message",
"name": "回复消息_0"
},
"dragging": false,
"id": "Message:QuietMonkeysLead",
"measured": {
"height": 85,
"width": 200
},
"position": {
"x": 554.7907941740903,
"y": 120.3466325548784
},
"selected": false,
"sourcePosition": "right",
"targetPosition": "left",
"type": "messageNode"
}
]
},
"variables": []
}