Conch, a container infrastructure designed for agent-based services, centered around new ecosystems, new images, new semantics, and supernodes
| 文件 | 最后提交记录 | 最后更新时间 |
|---|
| add README and LICENSES Signed-off-by: jingrui <jingrui@huawei.com> | 7 个月前 |
| build:update Makefile && conchd 1.VMM Logic: Fix concurrent process termination errors. 2.Setup Script: Modularized conch-env-setup.sh. 3.SDK Integration: Added automated Python SDK installation and configuration setup. 4.Workflow: Unified project commands via updated Makefile and documentation. 5.commit fmt code delete trailing whitespaces. | 4 个月前 |
| [conch-agent]: Remove temp directory logic, use dynamic user home directory | 3 个月前 |
| [sdk]: Remove workdir logic, support absolute/relative paths | 3 个月前 |
| [sdk]: Remove workdir logic, support absolute/relative paths | 3 个月前 |
| !65 [examples]: Add OpenClaw example From: @chantsztung Reviewed-by: @duguhaotian See merge request: openeuler/Conch!65 | 3 个月前 |
| Merge branch 'feature/image-pull-next' of git@gitcode.com:lsxlee99/Conch.git into 'dev' # Conflicts: # conflict config/config.yaml # conflict internal/config/config.go | 3 个月前 |
| add Conch logo | 6 个月前 |
| [conch-agent/conchd] refactor vsock to host-pull model and add CID allocator | 3 个月前 |
| plugin: add ub-device-plugin README.md Signed-off-by: jingrui <jingrui@huawei.com> | 7 个月前 |
| [Script][Config][Docs] Update functional images and simplify pull workflow - Change functional image from conch-odd to openeuler:odd (x86/aarch) - Replace ctr pull + conch-unpack with unified conch pull command - Update sdk-config.yaml with new image references and arch guidance - Sync CONCH_ENV_SETUP.md documentation with script changes - Add oe-kernel configuration files for x86 and aarch architectures | 3 个月前 |
| [sdk]: Remove workdir logic, support absolute/relative paths | 3 个月前 |
| fix:CRLF to LF | 5 个月前 |
| sdk: install as std package and add perf.py Signed-off-by: micky <mickyching@qq.com> | 4 个月前 |
| feat(image): merge unpack into conch cli | 3 个月前 |
| docs: refactor API documentation and update READMEs Signed-off-by: chantsztung <petachan@huawei.com> (cherry picked from commit dde444919a1b287a399fd7189c2fcdc245a4d5e7) | 4 个月前 |
| docs(image): reorganize image workflow docs | 3 个月前 |
| feat(image): add snap build pipeline | 3 个月前 |
| feat(image): add snap build pipeline | 3 个月前 |

Conch - Agent Sandbox Engine
Conch 是一个基于 Go 开发的容器沙箱引擎,能够适用于 Agent 对沙箱的高启动性能、高弹性、高 I/O 性能和高密度部署的诉求。
项目围绕以下 Agent 对沙箱新需求展开:
- 新生态:相比传统命令行和K8S云原生生态,提供 Agent 原生的沙箱管理 API 和 SDK;
- 新镜像:相对传统 OCI v1 容器镜像格式,提供 EROFS 镜像格式,统一管理容器镜像和快照;
- 新硬件(超节点):相比传统单机管理容器镜像,利用超节点高速互联能力,提供跨级镜像共享和管理机制。
核心特性
- 轻量安全隔离 -- 支持虚拟沙箱,对 Agent 任务进行安全隔离。支持完整的生命周期管理,包括创建、暂停、恢复和删除等操作。
- 快照启动加速 -- 支持虚拟机内存和根文件系统的快照功能。通过快照机制,可以实现秒级的沙箱启动,显著提升大规模部署场景下的资源利用效率。快照采用写时复制(Copy-on-Write)技术,最小化存储开销。
- 精简容器网络 -- 通过 veth 设备和 NAT 规则实现网络隔离和地址转换,支持容器网络池化复用,降低启动时延。
快速开始
环境要求
- Go 1.23+
- Containerd 2.2.1+
- Cloud-Hypervisor v48.0+
- Iptables 网络配置工具
- Linux 5.10+
一键编译安装
git clone https://atomgit.com/openeuler/Conch.git
cd Conch
git checkout demo
./scripts/conch-env-setup.sh all
pip install -e ./sdk
运行服务
编译完成后,二进制文件位于 bin/ 目录下,通过以下命令启动conchd服务:
./bin/conchd
镜像管理
Conch 提供统一的镜像管理命令,用于构建、发布、拉取和解包 Conch 镜像:
conch build -f Dockerfile -t localhost/demo-sandbox:latest .
conch push localhost/demo-sandbox:latest hub.oepkgs.net/conch/demo-sandbox:latest
conch pull hub.oepkgs.net/conch/demo-sandbox:latest
conch pull docker.io/library/nginx:latest
conch unpack hub.oepkgs.net/conch/conch-index:v0.1
其中 conch pull 会在拉取后自动完成本地 unpack;conch unpack 主要用于本地已有 Conch 镜像时单独解包或排障。
详细用法见 Conch Image Guide。
Python SDK 示例
from conch import Sandbox
try:
sandbox = Sandbox.create()
print(f"Sandbox created: {sandbox.sandbox_id}")
result = sandbox.execute(cmd="python3", content="print('hello Conch!')")
print(result)
except RuntimeError as e:
print(f"Error: {e}")
finally:
sandbox.delete()
调用 execute() 之前必须先成功执行 Sandbox.create() 类方法,并确保 ./bin/conchd 已经启动;否则 Sandbox 实例还没有关联到可用的 Agent client。
许可证
木兰宽松许可证, 第2版
贡献指南
欢迎社区贡献代码和文档。