Skip to content

feat(deepagents-backend): add AIO Sandbox example for commandline tools & deepagents fs middleware backend#161

Open
Oanakiaja wants to merge 5 commits intocloudwego:mainfrom
Oanakiaja:aio-sandbox-example
Open

feat(deepagents-backend): add AIO Sandbox example for commandline tools & deepagents fs middleware backend#161
Oanakiaja wants to merge 5 commits intocloudwego:mainfrom
Oanakiaja:aio-sandbox-example

Conversation

@Oanakiaja
Copy link

@Oanakiaja Oanakiaja commented Jan 28, 2026

What type of PR is this?

feat: commandline tools & deepagents fs backend example for aio sandbox

Check the PR title.

  • This PR title match the format: <type>(optional scope): <description>
  • The description of this PR title is user-oriented and clear enough for others to understand.
  • Attach the PR updating the user documentation if the current PR requires user awareness at the usage level.

(Optional) Translate the PR title into Chinese.

feat: 添加 commandline tools 与 deepagents fs backend 示例,演示Agent 与远程沙箱集成

(Optional) More detailed description for this PR

en:

  • Add deep-aiosandbox example demonstrating DeepAgent integration with AIO Sandbox
  • Support remote sandboxed execution for Shell, Python, and file operations
  • Include bilingual documentation (README.md and README_zh.md)
  • Add .example.env for environment configuration

zh(optional):

  • 添加 deep-aiosandbox 示例,演示 DeepAgent 与 AIO Sandbox 的集成
  • 支持 Shell、Python 和文件操作的远程沙箱执行
  • 包含中英文文档 (README.md 和 README_zh.md)
  • 添加 .example.env 环境配置示例

(Optional) Which issue(s) this PR fixes:

(optional) The PR that updates user documentation:

- Add deep-aiosandbox example demonstrating DeepAgent integration with AIO Sandbox
- Support remote sandboxed execution for Shell, Python, and file operations
- Include bilingual documentation (README.md and README_zh.md)
- Add .example.env for environment configuration
- Update go.mod with sandbox-sdk-go dependency
Copilot AI review requested due to automatic review settings January 28, 2026 14:34
@CLAassistant
Copy link

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.
You have signed the CLA already but the status is still pending? Let us recheck it.

@Oanakiaja
Copy link
Author

Related PR: cloudwego/eino-ext#674: aiosandbox commandline tool

@Oanakiaja
Copy link
Author

use vefaas aio sandbox
image

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a new deep-aiosandbox example demonstrating integrating DeepAgent with a remote AIO Sandbox for sandboxed command/file/Python execution.

Changes:

  • Introduces a runnable Go example that provisions a remote sandbox session, sets up a per-task workdir, and runs DeepAgent with sandbox-backed tools.
  • Adds bilingual documentation plus an .example.env for configuration.
  • Updates Go module dependencies to support the sandbox integration.

Reviewed changes

Copilot reviewed 5 out of 6 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
go.mod Adds sandbox SDK as an indirect dependency and introduces a local-path replace for eino-ext commandline tool.
go.sum Updates dependency checksums consistent with the module changes.
adk/multiagent/deep-aiosandbox/main.go New DeepAgent + AIO Sandbox example implementation.
adk/multiagent/deep-aiosandbox/README.md English usage documentation for the new example.
adk/multiagent/deep-aiosandbox/README_zh.md Chinese usage documentation for the new example.
adk/multiagent/deep-aiosandbox/.example.env Example environment configuration for sandbox + LLM credentials.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines 76 to 79
_, err = sandbox.RunCommand(ctx, []string{"mkdir", "-p", workdir})
if err != nil {
log.Fatal(err)
}
Copy link

Copilot AI Jan 28, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

log.Fatal calls os.Exit(1) and will skip deferred calls, so if this fails the sandbox session won't be closed despite the earlier defer sandbox.Close(ctx). Use log.Printf + return (or propagate the error) so the deferred cleanup runs.

Copilot uses AI. Check for mistakes.
@Oanakiaja Oanakiaja changed the title feat: add deep-aiosandbox example for DeepAgent with remote sandbox feat: add commandline tools example with remote sandbox Jan 28, 2026
Copilot AI review requested due to automatic review settings January 28, 2026 16:05
@Oanakiaja Oanakiaja changed the title feat: add commandline tools example with remote sandbox feat: add AIO Sandbox example for commandline tools & deepagents fs middleware backend Jan 28, 2026
@Oanakiaja Oanakiaja changed the title feat: add AIO Sandbox example for commandline tools & deepagents fs middleware backend feat(deepagents-backend): add AIO Sandbox example for commandline tools & deepagents fs middleware backend Jan 28, 2026
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 10 out of 11 changed files in this pull request and generated 11 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

- Includes built-in large result offloading
- Clean interface-based design

The [deep-aiosandbox](../multiagent/deep-aiosandbox) example uses the **Tool approach** with `commandline.Operator`:
Copy link

Copilot AI Jan 28, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The relative link [deep-aiosandbox](../multiagent/deep-aiosandbox) is incorrect from adk/middleware/aiosandbox-backend/ (it resolves under adk/middleware/). It should go up to adk/ first (e.g., ../../multiagent/deep-aiosandbox).

Suggested change
The [deep-aiosandbox](../multiagent/deep-aiosandbox) example uses the **Tool approach** with `commandline.Operator`:
The [deep-aiosandbox](../../multiagent/deep-aiosandbox) example uses the **Tool approach** with `commandline.Operator`:

Copilot uses AI. Check for mistakes.
- Fix incorrect directory paths in README examples
- Fix relative link to deep-aiosandbox example
- Add URL validation for BaseURL (scheme/host required, http/https only)
- Use path package instead of filepath for cross-platform consistency
- Refactor grep to use ripgrep JSON output for reliable parsing
- Move sandbox-sdk-go to direct dependency
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants