@xcanwin/manyoyo 3.4.5 → 3.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +11 -11
- package/bin/manyoyo.js +3 -3
- package/docker/manyoyo.Dockerfile +5 -0
- package/docs/README_EN.md +11 -11
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
[English](docs/README_EN.md) |
|
|
1
|
+
[English](docs/README_EN.md) | **<[中文](README.md)>**
|
|
2
2
|
|
|
3
3
|
---
|
|
4
4
|
|
|
@@ -173,11 +173,10 @@ manyoyo -y oc # 或: opencode
|
|
|
173
173
|
# 创建支持 Docker-in-Docker 的容器
|
|
174
174
|
manyoyo -n docker-dev -m dind -x /bin/bash
|
|
175
175
|
|
|
176
|
-
#
|
|
177
|
-
nohup dockerd &
|
|
176
|
+
podman ps -a # 现在可以在容器内使用 podman 命令
|
|
178
177
|
|
|
179
|
-
#
|
|
180
|
-
docker ps -a
|
|
178
|
+
nohup dockerd & # 在容器内启动 dockerd
|
|
179
|
+
docker ps -a # 现在可以在容器内使用 docker 命令
|
|
181
180
|
```
|
|
182
181
|
|
|
183
182
|
#### 挂载 Docker Socket 开发
|
|
@@ -185,10 +184,11 @@ docker ps -a
|
|
|
185
184
|
```bash
|
|
186
185
|
# 挂载 Docker Socket(危险的!!!容器可以访问和执行宿主机的一切)
|
|
187
186
|
# 创建挂载 /var/run/docker.sock 的容器
|
|
188
|
-
manyoyo -n socket-dev -m
|
|
187
|
+
manyoyo -n socket-dev -m sock -x /bin/bash
|
|
189
188
|
|
|
190
|
-
# 现在可以在容器内使用
|
|
191
|
-
|
|
189
|
+
podman ps -a # 现在可以在容器内使用 podman 命令
|
|
190
|
+
|
|
191
|
+
docker ps -a # 现在可以在容器内使用 docker 命令
|
|
192
192
|
```
|
|
193
193
|
|
|
194
194
|
### 命令行选项
|
|
@@ -210,7 +210,7 @@ docker ps -a
|
|
|
210
210
|
| `--` | `--ss`, `--shell-suffix` | 命令参数(作为 -s 的后缀) |
|
|
211
211
|
| `-x CMD` | `--sf`, `--shell-full` | 完整命令(替代 --sp, -s 和 --) |
|
|
212
212
|
| `-y CLI` | `--yolo` | 无需确认运行 AI 智能体 |
|
|
213
|
-
| `-m MODE` | `--cm`, `--cont-mode` | 设置容器模式(common, dind,
|
|
213
|
+
| `-m MODE` | `--cm`, `--cont-mode` | 设置容器模式(common, dind, sock) |
|
|
214
214
|
| `--ib` | `--image-build` | 构建镜像 |
|
|
215
215
|
| `--iba XXX=YYY` | `--image-build-arg` | 构建镜像时传参给dockerfile |
|
|
216
216
|
| `--ip` | `--image-prune` | 清理悬空镜像和 `<none>` 镜像 |
|
|
@@ -229,8 +229,8 @@ docker ps -a
|
|
|
229
229
|
|
|
230
230
|
### 系统要求
|
|
231
231
|
|
|
232
|
-
- Node.js >=
|
|
233
|
-
-
|
|
232
|
+
- Node.js >= 22.0.0
|
|
233
|
+
- Podman 或 Docker
|
|
234
234
|
|
|
235
235
|
### 卸载
|
|
236
236
|
|
package/bin/manyoyo.js
CHANGED
|
@@ -84,7 +84,7 @@ function showHelp() {
|
|
|
84
84
|
console.log(" -y|--yolo CLI 使AGENT无需确认 (代替-s命令)");
|
|
85
85
|
console.log(" 例如 claude / c, gemini / gm, codex / cx, opencode / oc");
|
|
86
86
|
console.log(" -m|--cm|--cont-mode STRING 设置容器嵌套容器模式");
|
|
87
|
-
console.log(" 例如 common, dind,
|
|
87
|
+
console.log(" 例如 common, dind, sock");
|
|
88
88
|
console.log(" --ib|--image-build 构建镜像");
|
|
89
89
|
console.log(" --iba|--image-build-arg XXX=YYY 构建镜像时传参给dockerfile");
|
|
90
90
|
console.log(" --ip|--image-prune 清理悬空镜像和 <none> 镜像");
|
|
@@ -213,9 +213,9 @@ function setContMode(mode) {
|
|
|
213
213
|
console.log(`${GREEN}✅ 开启安全的容器嵌套容器模式, 手动在容器内启动服务: nohup dockerd &${NC}`);
|
|
214
214
|
break;
|
|
215
215
|
case 'mount-docker-socket':
|
|
216
|
-
case '
|
|
216
|
+
case 'sock':
|
|
217
217
|
case 's':
|
|
218
|
-
CONT_MODE = "--privileged --volume /var/run/docker.sock:/var/run/docker.sock";
|
|
218
|
+
CONT_MODE = "--privileged --volume /var/run/docker.sock:/var/run/docker.sock --env DOCKER_HOST=unix:///var/run/docker.sock --env CONTAINER_HOST=unix:///var/run/docker.sock";
|
|
219
219
|
console.log(`${RED}⚠️ 开启危险的容器嵌套容器模式, 危害: 容器可访问宿主机文件${NC}`);
|
|
220
220
|
break;
|
|
221
221
|
default:
|
|
@@ -79,6 +79,11 @@ RUN <<EOX
|
|
|
79
79
|
tar zip unzip gzip make sqlite3 \
|
|
80
80
|
supervisor
|
|
81
81
|
|
|
82
|
+
# 安装 podman
|
|
83
|
+
case ",$TOOL," in *,full,*|*,podman,*)
|
|
84
|
+
apt-get install -y --no-install-recommends podman
|
|
85
|
+
;; esac
|
|
86
|
+
|
|
82
87
|
# 安装 docker
|
|
83
88
|
case ",$TOOL," in *,full,*|*,docker,*)
|
|
84
89
|
apt-get install -y --no-install-recommends docker.io
|
package/docs/README_EN.md
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
**<[English](README_EN.md)>** | [中文](../README.md)
|
|
2
2
|
|
|
3
3
|
---
|
|
4
4
|
|
|
@@ -173,11 +173,10 @@ After exiting a container session, you'll be prompted with options:
|
|
|
173
173
|
# Create a container with Docker-in-Docker support
|
|
174
174
|
manyoyo -n docker-dev -m dind -x /bin/bash
|
|
175
175
|
|
|
176
|
-
#
|
|
177
|
-
nohup dockerd &
|
|
176
|
+
podman ps -a # Now you can use podman commands inside the container
|
|
178
177
|
|
|
179
|
-
|
|
180
|
-
docker ps -a
|
|
178
|
+
nohup dockerd & # Inside the container, start dockerd
|
|
179
|
+
docker ps -a # Now you can use docker commands inside the container
|
|
181
180
|
```
|
|
182
181
|
|
|
183
182
|
#### Mount Docker socket Development
|
|
@@ -185,10 +184,11 @@ docker ps -a
|
|
|
185
184
|
```bash
|
|
186
185
|
# Mount Docker socket (dangerous!!! containers can access and execute everything on the host)
|
|
187
186
|
# Create a container mounting /var/run/docker.sock
|
|
188
|
-
manyoyo -n socket-dev -m
|
|
187
|
+
manyoyo -n socket-dev -m sock -x /bin/bash
|
|
189
188
|
|
|
190
|
-
# Now you can use
|
|
191
|
-
|
|
189
|
+
podman ps -a # Now you can use podman commands inside the container
|
|
190
|
+
|
|
191
|
+
docker ps -a # Now you can use docker commands inside the container
|
|
192
192
|
```
|
|
193
193
|
|
|
194
194
|
### Command-Line Options
|
|
@@ -210,7 +210,7 @@ docker ps -a
|
|
|
210
210
|
| `--` | `--ss`, `--shell-suffix` | Command arguments (suffix for -s) |
|
|
211
211
|
| `-x CMD` | `--sf`, `--shell-full` | Full command (replaces --sp, -s, and --) |
|
|
212
212
|
| `-y CLI` | `--yolo` | Run AI agent without confirmation |
|
|
213
|
-
| `-m MODE` | `--cm`, `--cont-mode` | Set container mode (common, dind,
|
|
213
|
+
| `-m MODE` | `--cm`, `--cont-mode` | Set container mode (common, dind, sock) |
|
|
214
214
|
| `--ib` | `--image-build` | Build image |
|
|
215
215
|
| `--iba` | `--image-build-arg` | Pass arguments to a Dockerfile during image build |
|
|
216
216
|
| `--ip` | `--image-prune` | Clean dangling images and `<none>` images |
|
|
@@ -229,8 +229,8 @@ docker ps -a
|
|
|
229
229
|
|
|
230
230
|
### Requirements
|
|
231
231
|
|
|
232
|
-
- Node.js >=
|
|
233
|
-
-
|
|
232
|
+
- Node.js >= 22.0.0
|
|
233
|
+
- Podman or Docker
|
|
234
234
|
|
|
235
235
|
### Uninstall
|
|
236
236
|
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@xcanwin/manyoyo",
|
|
3
|
-
"version": "3.
|
|
4
|
-
"imageVersion": "1.6.
|
|
3
|
+
"version": "3.5.0",
|
|
4
|
+
"imageVersion": "1.6.3",
|
|
5
5
|
"description": "AI Agent CLI Security Sandbox",
|
|
6
6
|
"keywords": [
|
|
7
7
|
"ai", "agent", "sandbox", "docker", "cli", "container", "development"
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
},
|
|
25
25
|
"homepage": "https://github.com/xcanwin/manyoyo",
|
|
26
26
|
"engines": {
|
|
27
|
-
"node": ">=
|
|
27
|
+
"node": ">=22.0.0"
|
|
28
28
|
},
|
|
29
29
|
"files": [
|
|
30
30
|
"bin/manyoyo.js",
|