mcpField
D
DockaShell

DockaShell

本地服务
github.com/anzax开发工具3073 周前更新

关于 DockaShell

DockaShell 是一个 MCP 服务,为 AI Agent 提供相互隔离的 Docker 容器工作环境。Agent 可在其中使用 shell、操作文件,并留存完整的审计记录。项目目前为研究性质。

主要功能

  1. 01每个 Agent 独立的持久化容器
  2. 02提供 shell 访问与文件操作
  3. 03记录所有命令与文件变更的审计日志
  4. 04通过 npm 全局安装并以命令行管理

适用场景

  1. 01Agent 在隔离环境中处理 CSV 数据并生成结果
  2. 02Agent 在容器中搭建并运行 Web 开发环境
  3. 03Agent 跨会话维护 SQLite 数据库与笔记

MCP 相关

该项目是一个 MCP 服务,向 MCP 客户端提供 shell 访问、文件操作等工具,并将每次会话的操作记录为审计日志。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

DockaShell

DockaShell 是一个 MCP(模型上下文协议)服务,为 AI Agent 提供隔离的 Docker 容器供其使用。每个 Agent 都拥有自己的持久化环境,支持 Shell 访问、文件操作和完整的审计记录。

这是一个探索 Agent 自主性的研究项目:基于 Shell 的工作流能推进到什么程度?Agent 能否管理自己的开发环境并创建自己的工具?

为何开发此项目

当前的 AI 助手面临一些根本限制:

  • 没有持久记忆:对话会重置,上下文会丢失,Agent 无法基于之前的工作继续推进
  • 需要人工看管工具:每条 Shell 命令都需要人工批准,打断了 Agent 的工作流和自主性
  • 工具集有限:Agent 只能使用预定义的工具,而无法构建自己所需的工具
  • 无法自我反思:无法分析自己的轨迹以改进,或从过去的会话中学习

DockaShell 移除了这些限制,以探索可能出现的全新能力:

  • 自我进化的 Agent:构建并改进自己的工具、脚本和工作流
  • 持续记忆:维护可跨会话持久保存的知识库、Wiki 和笔记本
  • 自主探索:无需人工持续干预即可运行 Shell 命令
  • 元学习:分析之前的轨迹,以改进决策和工具使用

核心问题是:当 Agent 拥有真正的持久性和自主性时,能够完成什么?

工作原理

AI Agent (Claude/GPT/...)
  ↔ DockaShell (MCP Server)
      └─ Docker Engine
          ├─ Container A (Project 1)
          │    └─ Persistent Volume
          ├─ Container B (Project 2)
          │    └─ Persistent Volume
          └─ Container C (Project 3)
               └─ Persistent Volume

每个 AI Agent 都拥有自己的隔离 Docker 容器和持久化存储。Agent 无需使用数十种定制工具,而是使用标准 Shell 命令(bash、git、npm 等)并构建自己的工作流。

核心原则:

  • Shell > 专用工具:Agent 已经会使用 POSIX,因此让它们使用真实命令
  • 容器隔离:容器内拥有完全自主权,不会给主机系统带来任何风险
  • 持久化工作区:文件、数据库和上下文可跨会话保留
  • 完整审计记录:每条命令和文件变更都会被记录,以供分析

→ 查看详细架构和安全模型

快速开始

# Install
npm install -g dockashell

# Setup
dockashell build
dockashell create my-project
dockashell start my-project

将以下内容添加到 MCP 客户端配置中:

{
  "mcpServers": {
    "dockashell": {
      "command": "dockashell",
      "args": ["serve"]
    }
  }
}

要求:Node.js 20+,Docker 正在运行

工作流示例

数据分析:Agent 启动 Python 环境、处理 CSV 文件并生成分析结果

Web 开发:Agent 构建 React 应用、安装依赖项,并运行带实时预览的开发服务器

研究助手:Agent 跨会话跟踪信息、维护 SQLite 数据库并记住上下文

文档

当前状态

这是一个活跃的研究项目,并非生产级软件。核心功能适用于实验,但随着我探索 Agent 在持久化 Shell 环境中能够实现的能力,项目内容可能会发生变化。

欢迎贡献和反馈。

许可证

Apache License 2.0

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。