One Shell to rule them all.
面向个人开发者和小团队的 AI 时代 VPS 集成管理中枢。
将多机终端、文件管理、脚本执行、探针监控、诊断审计、智能运维 Agent、MCP 内部扩展与外部协作能力、自动化 Program 集成到一个本地优先的控制台中,让 VPS 不再只是“可连接”,而是成为可观察、可操作、可自动化、可被智能体协同管理的运维对象。
1Shell 是一个面向个人开发者、小团队和轻量运维场景的 VPS 集成管理中枢。
传统 Web SSH 面板解决的是“如何连上服务器”;1Shell 更关注连接之后的完整运维闭环:
观察状态 → 进入主机 → 查看文件 / 日志 → 执行命令 / 脚本
→ 调用智能体分析与处理 → 验证结果 → 沉淀为可复用自动化
在 1Shell 中,终端、文件、脚本、探针、诊断、审计、Program、MCP 和 Agent 并不是分散的功能页面,而是围绕 VPS 运维场景组织起来的一套统一能力层。
这意味着:
- 你可以像传统控制台一样管理多台 VPS;
- 也可以让 1Shell 内部智能运维 Agent 在授权范围内调用这些能力;
- 可以通过内部 MCP 扩展接入数据库、通知、知识库、自定义 API 等外部工具;
- 还可以在本地电脑、内网或可信网络中,让 Claude Code、VSCode 内的 Claude 或其他外部 Agent 通过 1Shell 协作管理 VPS;
- 最后,可以把常见运维流程沉淀成 Program,让经验变成可复用的小型运维应用。
1Shell 提供统一的 VPS 工作台,用于管理多台远程主机和本机环境。
| 能力 | 说明 |
|---|---|
| 多机 SSH 终端 | 统一管理本机 Shell 与远程 SSH 会话 |
| SFTP 文件管理 | 浏览、预览、编辑、上传、下载远程文件 |
| 主机仓库 | 管理主机、角色、标签、排序、归档与连接信息 |
| 脚本库 | 创建、编辑、执行和复用参数化运维脚本 |
| 项目管理 | 围绕 VPS 上的服务、端口、反代、证书和部署状态组织操作入口 |
| 审计日志 | 记录关键命令、脚本执行、Bridge 调用和高风险操作 |
| 页面状态保持 | 主控台、探针、仓库等页面返回时保留上下文 |
1Shell 的目标不是替代所有专业运维系统,而是给个人开发者和小团队提供一个足够完整、足够可控、足够易扩展的 VPS 运维入口。
1Shell 内置多种智能交互入口,但它们各自承担不同职责。
| 入口 | 定位 |
|---|---|
| 1Shell AI | 平台内部智能运维 Agent,可感知页面上下文并调用 1Shell 工具 |
| AI Chat | 独立聊天入口,用于普通问答、解释和上下文分析 |
| AI Agent 面板 | 在 Web 控制台内运行 Claude Code、OpenCode、Codex 等 AI CLI |
| 终端选区分析 | 对选中的终端输出进行错误解释和修复建议 |
| 命令建议 | 根据自然语言生成可检查、可注入终端的命令 |
| Ghost Text | 在终端输入时提供内联补全建议 |
1Shell AI 与普通聊天机器人的区别在于:它不是只“解释”服务器状态,而是可以在授权、安全审批和审计约束下调用 1Shell 的内部能力,例如:
- 列出主机;
- 执行远程命令;
- 读取或写入远程文件;
- 调用脚本库;
- 查询探针指标;
- 读取告警;
- 执行网络诊断;
- 安装、重启或卸载 probe-agent;
- 创建或维护 Program、Skill、Script 和 MCP 接入。
1Shell 的 MCP 能力分为两个方向:内部 MCP 调用 和 外部 MCP 协作。
这两者都围绕同一个目标:把 1Shell 的运维能力标准化为智能体可以调用的工具,但调用者和部署场景不同。
服务器部署 1Shell 时,MCP 依然有价值。1Shell MCP 本身是平台能力总线,可以把主机、文件、脚本、探针、告警、诊断、Program、审计等能力统一开放给 1Shell 运行时内部的智能体。
这意味着内部的 1Shell AI、全局悬浮 AI、主控台 AI,以及运行在 1Shell 控制台里的 Claude Code / OpenCode / Codex 等第三方 AI CLI,都可以通过同一套 MCP 能力调用整个 1Shell 平台。
1Shell AI / 全局 AI / 内嵌 Claude Code / OpenCode / Codex
↓
1Shell MCP 能力总线
↓
主机 / 文件 / 脚本 / 探针 / 告警 / 诊断 / Program / 审计
同时,1Shell 也可以接入第三方 MCP Server,让内部智能体在运维过程中调用数据库、通知、知识库、自定义 API 或团队内部工具。
在本地电脑、内网控制面、VPN / Tailscale / ZeroTier、可信网络或高级自动化场景中,1Shell 也可以作为 MCP Server,把同一套 VPS 运维能力开放给外部 Agent。
Claude Code / VSCode Claude / 外部 Agent
↓
1Shell MCP Server
↓
主机 / 文件 / 脚本 / 探针 / 告警 / 诊断 / Program / 审计
外部 Agent 在授权范围内可以调用:
- 主机列表与主机状态;
- 远程命令执行;
- 远程文件读取、写入、上传、下载;
- 脚本查询与执行;
- 探针快照、历史样本、时序数据、流量数据;
- 告警查询与确认;
- Ping / DNS / HTTP 诊断;
- probe-agent 安装、重启、卸载;
- Program 与自动化能力;
- 审计日志查询;
- MCP Server 管理。
因此,MCP 在 1Shell 中不是单纯的“对外接口”。它首先是内部智能体调用 1Shell 全部能力的统一通道,同时也可以在可信网络中成为外部 Agent 协作管理 VPS 的入口。
1Shell 内置 VPS 探针系统,用于观察服务器运行状态。
| 模式 | 说明 | 适合场景 |
|---|---|---|
| Agentless SSH 探针 | 不在目标机安装组件,通过 SSH 采集基础指标 | 快速接入、低侵入 |
| probe-agent | 在目标机安装轻量常驻 Agent | 长期监控、稳定采样、完整指标 |
| probe-relay-agent | 通过中继 Agent 汇聚不可直连网络中的探针数据 | 内网、隔离网络、中继场景 |
探针能力包括:
- CPU、内存、磁盘、负载、进程、系统信息;
- 网络速率、累计流量、月度流量统计;
- 1m / 1h / 1d 多粒度时序数据;
- 离线告警、阈值告警、流量告警;
- 告警确认与历史记录;
- Ping / DNS / HTTP 网络诊断;
- Agent 安装、重启、卸载和真实状态校验。
探针不是独立监控页面,而是 1Shell 运维闭环的一部分。智能体可以读取探针状态,脚本可以基于探针结果执行,Program 可以把监控与处置流程沉淀为可复用自动化。
Program 是 1Shell 的自动化应用模型。
它用于把一次性的运维动作、排障经验或交付流程沉淀为可复用的小型运维程序。
一个 Program 可以包含:
- 输入参数;
- 手动或定时触发器;
- L1 确定性执行步骤;
- L2 Skill 维护或修复逻辑;
- L3 Guardian 升级策略;
- 结果渲染;
- 专属 UI Artifact;
- 实例管理与运行历史。
典型场景包括:
- VPS 健康检查;
- 证书申请与续签;
- 反向代理配置;
- GitHub 项目部署;
- 服务启停管理;
- 日志检查;
- 告警处理;
- 备份与巡检;
- 内网探针部署。
Program 的核心原则是:
L1 能确定执行,就不上智能体;
L2 能在 Skill 约束内修复,就不上 L3;
L3 只处理越界、高风险、疑似事故或需要人工判断的场景;
无论成功或失败,都必须进入可读的结果界面。
这使得 1Shell 不只是一个固定功能集合,而是一个可以持续扩展的运维工作台。
1Shell 支持多种可复用资产:
| 类型 | 说明 |
|---|---|
| Script | 参数化脚本,适合直接执行的命令封装 |
| Program | 可触发、可验证、可展示结果的运维程序 |
| 1Shell Skill Extension | 面向 1Shell runner / Program L2 的 AI 约束包 |
| Claude Code Skill | 标准 Claude Code Skill 的托管与管理 |
| MCP Server | 内部工具扩展与外部 Agent 协作 |
创作台用于创建和维护这些资产。
复杂 Program / Skill 的创建不是简单“一句话写文件”,而是通过阶段化 Authoring Session 完成:
discovery → options → spec → plan → draft → review → commit → verify
在批准之前,草案不会写入最终目录;写入后会重新加载 registry 并执行验证。 这让智能生成的自动化资产更可审查、更安全,也更适合长期维护。
- Node.js >= 18
- npm
- Linux / Windows / macOS 均可运行服务端
- 远程 VPS 需支持 SSH
- AI 能力需要配置 OpenAI 兼容 API 或对应 Provider
v4.0 Release 提供 Windows 和 Linux x64 便携包。便携包已包含生产依赖和已构建前端,下载解压后不需要再执行 npm install,但运行机器仍需要安装 Node.js 18 或更高版本。
| 平台 | 文件 | 启动方式 |
|---|---|---|
| Windows x64 | 1Shell-v4.0.0-windows-x64.zip |
解压后运行 start.bat,或执行 node server.js |
| Linux x64 | 1Shell-v4.0.0-linux-x64.tar.gz |
解压后运行 bash start.sh,或执行 node server.js |
默认访问地址:
http://localhost:3301
curl -fsSL https://raw.githubusercontent.com/weidu12123/1Shell/main/install.sh | bash可选参数:
bash install.sh --port 3301 --password change-me --dir /opt/1shell
bash install.sh --dockergit clone https://github.com/weidu12123/1Shell.git
cd 1Shell
cp .env.example .env
docker compose up -dgit clone https://github.com/weidu12123/1Shell.git
cd 1Shell
npm install
cp .env.example .env
npm start前端开发:
cd frontend
npm install
npm run dev
npm run build启动后建议完成以下配置:
- 修改默认登录账号和密码;
- 配置
APP_SECRET; - 配置
BRIDGE_TOKEN; - 配置 AI Provider;
- 添加第一台 SSH 主机;
- 启用 Agentless 探针;
- 如需长期监控,再部署 probe-agent;
- 如需外部 Agent 协作,配置 MCP Server 地址和 Bridge Token;仅使用内部 AI 时无需对公网暴露 MCP。
示例 .env:
APP_LOGIN_USERNAME=admin
APP_LOGIN_PASSWORD=change-me
APP_SECRET=replace-with-random-secret
OPENAI_API_BASE=https://api.openai.com/v1
OPENAI_API_KEY=replace-with-your-key
OPENAI_MODEL=gpt-4o
BRIDGE_TOKEN=replace-with-random-token
PORT=3301生产环境请务必修改默认密码、APP_SECRET 和 BRIDGE_TOKEN,并通过 HTTPS 访问。
如果你希望在本地电脑、内网或可信网络中让外部 Agent 调用 1Shell,可以把 1Shell 配置为 MCP Server。
示例配置:
{
"mcpServers": {
"1shell": {
"url": "http://your-server:3301/mcp/sse",
"headers": {
"X-Bridge-Token": "replace-with-your-bridge-token"
}
}
}
}接入后,外部 Agent 可以在授权范围内调用 1Shell 暴露的主机、文件、脚本、探针、诊断、Program 和审计能力。服务器部署场景下,如果只使用 1Shell 内部 AI,则不需要把 MCP 暴露给公网。
Browser
└─ Vue 3 SPA / xterm.js / Tailwind / Pinia
│
│ HTTP + WebSocket
▼
1Shell Server
├─ Express / Socket.IO
├─ Auth / CSRF / IP Filter / Audit
├─ SSH Terminal / SFTP File Service
├─ Script Service / Script Runner
├─ Probe Service
│ ├─ Agentless SSH Probe
│ ├─ probe-agent
│ └─ probe-relay-agent
├─ AI Service
├─ 1Shell AI Tools
├─ MCP Server / MCP Warehouse
├─ Program Engine
│ ├─ L1 deterministic execution
│ ├─ L2 Skill maintenance layer
│ └─ L3 Guardian escalation
├─ Skill Runner / Authoring Session
├─ AI Agent PTY
└─ SQLite / Repositories / Migrations
| 层级 | 技术 |
|---|---|
| 前端 | Vue 3、Vite、TypeScript、Tailwind CSS、Pinia、Vue Router、xterm.js |
| 后端 | Node.js、Express、Socket.IO |
| 数据库 | SQLite、better-sqlite3 |
| SSH / SFTP | ssh2、node-pty |
| AI | OpenAI 兼容 API、流式输出、工具调用 |
| MCP | MCP SSE / Streamable HTTP |
| 探针 | Agentless SSH、probe-agent、probe-relay-agent |
| 自动化 | Program Engine、Skill Runner、Authoring Session |
| 部署 | Docker、docker-compose、systemd、便携包 |
1Shell/
├── server.js # 服务入口
├── frontend/ # Vue 3 前端
│ ├── src/
│ └── dist/
├── src/
│ ├── agents/ # AI CLI Agent 面板
│ ├── app/ # Express / Server 初始化
│ ├── database/ # SQLite 与 migrations
│ ├── guardian/ # L3 Guardian
│ ├── ide/ # 1Shell AI 与工具调用
│ ├── mcp/ # MCP Server
│ ├── middleware/ # 安全中间件
│ ├── programs/ # Program Engine
│ ├── routes/ # API 路由
│ ├── services/ # 主机、文件、探针、脚本等服务
│ ├── skills/ # Skill registry / runner
│ └── tools/ # 统一工具层
├── data/
│ ├── programs/ # Program 定义与 UI Artifact
│ ├── skills/ # 1Shell Skill Extension
│ ├── claude-code-skills/ # Claude Code Skill 托管
│ ├── local-mcp/ # 本地 MCP Server
│ └── geoip/ # GeoIP 数据
├── agent/ # probe-agent / relay-agent
├── docs/ # 使用文档
├── public/ # 静态资源
├── Dockerfile
├── docker-compose.yml
└── install.sh
1Shell 面向真实服务器操作场景,因此安全边界是核心设计之一。
| 机制 | 说明 |
|---|---|
| 登录认证 | 用户名密码与 Session 管理 |
| 凭据加密 | SSH 密码、私钥、Passphrase 加密存储 |
| CSRF 防护 | Session Cookie + CSRF Token |
| IP 访问控制 | 支持白名单、黑名单和 CIDR |
| Bridge Token | Web Session 与外部 Bridge / MCP 鉴权隔离 |
| 安全模式 | 高风险工具调用前需要人工审批 |
| 危险命令拦截 | 对明显破坏性命令进行限制 |
| 审计日志 | 记录命令、脚本、Bridge 调用和关键操作 |
| Program 分层 | L1 / L2 / L3 分层约束,避免智能体无边界执行 |
1Shell 的设计目标不是让智能体绕过运维安全边界,而是在明确授权、可审计、可验证的前提下参与运维流程。
1Shell 适合:
- 个人开发者管理多台 VPS;
- 小团队统一管理测试机、部署机和服务节点;
- 需要在浏览器中同时处理终端、文件、脚本和监控的场景;
- 希望让智能体在授权范围内协助排障、巡检、部署和维护;
- 希望让内部智能体通过 MCP 调用 1Shell 全部平台能力,或在可信网络中开放给外部 AI 工具协作;
- 希望把常用运维流程沉淀为可复用 Program;
- 希望在本地优先、可控、可审计的前提下构建个人运维中枢。
| 维度 | 传统 Web SSH / 面板 | Ansible / Terraform | 1Shell |
|---|---|---|---|
| 核心目标 | 连接和管理服务器 | 批量自动化 / 基础设施编排 | AI 时代 VPS 集成管理中枢 |
| 交互方式 | 页面操作为主 | 配置文件 / CLI 为主 | 控制台 + Agent + MCP + Program |
| 智能体能力 | 通常没有 | 通常没有 | 内置 Agent + MCP 内部调用 + 外部协作 |
| 文件与终端 | 有 | 弱 | 统一主控台 |
| 监控探针 | 部分支持 | 非核心 | Agentless + probe-agent + relay-agent |
| 自动化沉淀 | 定时任务 / 脚本 | 自动化配置 / State | Script / Skill / Program / UI Artifact |
| 外部 AI 接入 | 通常不支持 | 需自行封装 | MCP Server + Bridge API |
| 适合对象 | 服务器面板用户 | 专业 DevOps / IaC 用户 | 个人开发者、小团队、AI 工具用户 |
MIT © 2025 weidu12123