@tianshu-ai/tianshu 0.3.12 → 0.3.14

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tianshu-ai/tianshu",
3
- "version": "0.3.12",
3
+ "version": "0.3.14",
4
4
  "description": "An open AI agent platform with a sidecar browser. Built in public.",
5
5
  "license": "Apache-2.0",
6
6
  "homepage": "https://github.com/tianshu-ai/tianshu",
@@ -31,6 +31,7 @@
31
31
  "plugins/**/manifest.json",
32
32
  "plugins/**/skills/**",
33
33
  "plugins/**/agent-seeds/**",
34
+ "plugins/**/templates/**",
34
35
  "README.md",
35
36
  "LICENSE"
36
37
  ],
@@ -1 +1 @@
1
- {"version":3,"file":"cli-agent.d.ts","sourceRoot":"","sources":["../../src/setup/cli-agent.ts"],"names":[],"mappings":"AAgCA,OAAO,KAAK,EAKV,IAAI,EAIL,MAAM,uBAAuB,CAAC;AAiC/B,MAAM,WAAW,YAAY;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;2DACuD;IACvD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;qDAGiD;IACjD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AA2VD,UAAU,WAAW;IACnB,MAAM,EAAE,IAAI,CAAC;IACb,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IAC5D;;;oEAGgE;IAChE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;mEAC+D;IAC/D,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,MAAM,CAAC;CACtD;AA0DD;;;;;GAKG;AACH,wBAAgB,UAAU,CACxB,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,GAAG,SAAS,GAC5B,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAy8B7B;AAwDD;;;;GAIG;AACH,wBAAsB,WAAW,CAAC,IAAI,GAAE,YAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAgOxE"}
1
+ {"version":3,"file":"cli-agent.d.ts","sourceRoot":"","sources":["../../src/setup/cli-agent.ts"],"names":[],"mappings":"AAgCA,OAAO,KAAK,EAKV,IAAI,EAIL,MAAM,uBAAuB,CAAC;AAiC/B,MAAM,WAAW,YAAY;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;2DACuD;IACvD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;qDAGiD;IACjD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AA6WD,UAAU,WAAW;IACnB,MAAM,EAAE,IAAI,CAAC;IACb,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IAC5D;;;oEAGgE;IAChE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;mEAC+D;IAC/D,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,MAAM,CAAC;CACtD;AA0DD;;;;;GAKG;AACH,wBAAgB,UAAU,CACxB,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,GAAG,SAAS,GAC5B,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CA8jC7B;AAwDD;;;;GAIG;AACH,wBAAsB,WAAW,CAAC,IAAI,GAAE,YAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAgOxE"}
@@ -18,12 +18,12 @@
18
18
  // them which `npm install` step likely failed)
19
19
  // - workboard (worker spawn is overkill for setup)
20
20
  //
21
- // Tools shipped (16): tenant_list, tenant_create, user_create,
21
+ // Tools shipped (17): tenant_list, tenant_create, user_create,
22
22
  // plugin_enable, plugin_disable, config_read, config_write,
23
23
  // secret_list, secret_write, run_doctor, read_service_logs,
24
- // read_env_file, build_sandbox, use_sandbox_build,
25
- // check_for_update, apply_update. Plus the implicit "done"
26
- // sentinel.
24
+ // read_env_file, sandbox_inventory, build_sandbox,
25
+ // use_sandbox_build, check_for_update, apply_update. Plus the
26
+ // implicit "done" sentinel.
27
27
  import * as p from "@clack/prompts";
28
28
  import fs from "node:fs";
29
29
  import os from "node:os";
@@ -254,8 +254,26 @@ MICROSANDBOX (sandbox-based plugins: microsandbox, browser):
254
254
  ARE available here in the setup wizard. Use them when the user
255
255
  asks to set up / rebuild / refresh sandboxes. Don't tell them
256
256
  they have to go to the chat shell.
257
- - Standard setup flow when a user wants sandboxes ready. This
258
- is a TWO-snapshot layered build, NOT one big monolith. Why:
257
+ - ALWAYS call sandbox_inventory FIRST before proposing any
258
+ sandbox build/publish work. It's read-only and tells you:
259
+ * which snapshots are already built on this machine
260
+ * which one (if any) is currently published to role='task'
261
+ and which to role='browser' (these are what the runtime
262
+ actually uses)
263
+ * whether the microsandbox runner is up at all
264
+ If a layered task-runner snapshot is already published to
265
+ 'task' AND a task-runner-with-browser snapshot is published to
266
+ 'browser', the user is fully set up; say so instead of
267
+ re-building. If builds exist but nothing is published, propose
268
+ use_sandbox_build, not build_sandbox — the snapshots are
269
+ already on disk and \`npm install -g\` doesn't wipe them.
270
+ Surface what you saw to the user before proposing actions:
271
+ "You already have 2 snapshots built; the task one is published
272
+ but the browser one isn't — want me to publish it?" beats
273
+ "I'll start building...".
274
+ - Standard setup flow when sandbox_inventory shows NOTHING is
275
+ built yet. This is a TWO-snapshot layered build, NOT one big
276
+ monolith. Why:
259
277
  the task pool runs lots of short-lived sandboxes and shouldn't
260
278
  carry Chromium's ~2.5 GB; the browser sandbox is long-lived
261
279
  and DOES need Chromium. Layering also reuses apt cache between
@@ -1002,6 +1020,93 @@ export function buildTools(home, serverUrl) {
1002
1020
  return JSON.stringify(result);
1003
1021
  },
1004
1022
  },
1023
+ sandbox_inventory: {
1024
+ schema: {
1025
+ name: "sandbox_inventory",
1026
+ description: "Read-only snapshot of microsandbox state for a tenant: which builds exist on disk, which one is currently published to each role pointer (browser / task), and whether the sandbox runner is up.\n\nCALL THIS BEFORE proposing build_sandbox or use_sandbox_build — don't ask the user to remember what they've already built. The result tells you:\n * If a task-runner snapshot is already published to role='task', you probably don't need to build another one.\n * If a task-runner-with-browser snapshot is published to role='browser', the browser stack is good to go.\n * If builds exist but none are published, suggest use_sandbox_build instead of building from scratch.\n * If runner.state is 'not_started' / 'error', the user may need to fix microsandbox itself before any builds can run — explain that before suggesting fixes.\n\nResult shape (subset of /api/p/microsandbox/{status,builds}):\n{\n runner: { state, ready, runner, liveMemory? } | { error: 'not_started' },\n builds: [\n {\n buildId, snapshotName, baseImage, durationMs,\n roles: { browser: boolean, task: boolean }, // 'true' = currently published to that role\n createdAt\n }, ...\n ],\n pointers: { browser: { snapshotName, buildId, role } | null, task: same },\n}\n\nReturns ok:false with a hint if the server isn't running.",
1027
+ parameters: {
1028
+ type: "object",
1029
+ properties: {
1030
+ tenantId: {
1031
+ type: "string",
1032
+ description: "Tenant whose sandbox inventory to read. Defaults to 'default' — same as build_sandbox / use_sandbox_build, so the three tools form a coherent set when no tenantId is specified.",
1033
+ },
1034
+ },
1035
+ required: [],
1036
+ },
1037
+ },
1038
+ execute: async (args) => {
1039
+ const tenantId = String(args.tenantId ?? "default");
1040
+ if (!serverUrl) {
1041
+ return JSON.stringify({
1042
+ ok: false,
1043
+ error: "no_server",
1044
+ hint: "sandbox_inventory needs a running server (the wizard's HTTP plugin API). Run `tianshu start` first, then retry.",
1045
+ });
1046
+ }
1047
+ // Probe both endpoints in parallel — they're independent
1048
+ // reads and the agent benefits from a coherent snapshot
1049
+ // (running state + builds list in one shot rather than
1050
+ // two separate tool calls).
1051
+ const [statusRes, buildsRes] = await Promise.allSettled([
1052
+ serverFetch(serverUrl, "GET", "/api/p/microsandbox/status", tenantId, undefined, 5_000),
1053
+ serverFetch(serverUrl, "GET", "/api/p/microsandbox/builds", tenantId, undefined, 10_000),
1054
+ ]);
1055
+ // Status can legitimately return 503 not_started — surface
1056
+ // it as a structured field rather than a thrown error so
1057
+ // the agent can keep going. (e.g. builds may still exist
1058
+ // even when the runner is parked.)
1059
+ const runner = statusRes.status === "fulfilled"
1060
+ ? statusRes.value
1061
+ : {
1062
+ error: "unreachable",
1063
+ message: statusRes.reason instanceof Error
1064
+ ? statusRes.reason.message
1065
+ : String(statusRes.reason),
1066
+ };
1067
+ if (buildsRes.status !== "fulfilled") {
1068
+ return JSON.stringify({
1069
+ ok: false,
1070
+ error: "builds_unreachable",
1071
+ message: buildsRes.reason instanceof Error
1072
+ ? buildsRes.reason.message
1073
+ : String(buildsRes.reason),
1074
+ runner,
1075
+ hint: "Couldn't list builds. Common causes: server is up but the microsandbox plugin is disabled for this tenant, or the tenant doesn't exist. Check plugin status via run_doctor or enable it with plugin_enable.",
1076
+ });
1077
+ }
1078
+ const buildsBody = buildsRes.value;
1079
+ // Trim each build to the fields the agent needs — the wire
1080
+ // form has snapshotMetadata fields (image digest, layer
1081
+ // sizes) that aren't useful for setup decisions and just
1082
+ // bloat the tool result.
1083
+ const trimmed = (buildsBody.builds ?? []).map((b) => ({
1084
+ buildId: b.buildId,
1085
+ snapshotName: b.snapshotName,
1086
+ baseImage: b.baseImage,
1087
+ fromSnapshot: b.fromSnapshot ?? null,
1088
+ durationMs: b.durationMs,
1089
+ createdAt: b.createdAt,
1090
+ roles: b.roles ?? {
1091
+ browser: false,
1092
+ task: false,
1093
+ },
1094
+ }));
1095
+ return JSON.stringify({
1096
+ ok: true,
1097
+ tenantId,
1098
+ runner,
1099
+ builds: trimmed,
1100
+ pointers: buildsBody.pointers ?? { browser: null, task: null },
1101
+ summary: {
1102
+ buildCount: trimmed.length,
1103
+ browserPublished: Boolean(buildsBody.pointers
1104
+ ?.browser),
1105
+ taskPublished: Boolean(buildsBody.pointers?.task),
1106
+ },
1107
+ });
1108
+ },
1109
+ },
1005
1110
  build_sandbox: {
1006
1111
  mutating: true,
1007
1112
  describe: (args) => {
@@ -1 +1 @@
1
- {"version":3,"file":"cli-agent.js","sourceRoot":"","sources":["../../src/setup/cli-agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli-agent.js","sourceRoot":"","sources":["../../src/setup/cli-agent.ts"],"names":[],"mappings":"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"}
@@ -17,7 +17,7 @@
17
17
  },
18
18
  "./manifest.json": "./manifest.json"
19
19
  },
20
- "files": ["dist", "src", "skills", "manifest.json"],
20
+ "files": ["dist", "src", "skills", "templates", "manifest.json"],
21
21
  "scripts": {
22
22
  "build": "tsc",
23
23
  "dev": "tsc --watch --preserveWatchOutput",
@@ -0,0 +1,105 @@
1
+ # Browser-enabled Sandboxfile (CloakBrowser + Playwright MCP + noVNC).
2
+ #
3
+ # Verified end-to-end on Apple Silicon arm64: build → publish →
4
+ # reset → all 6 supervisord processes RUNNING → CDP / MCP / noVNC
5
+ # all reachable. Build cost: ~3-5 min on cache hit, ~10 min cold
6
+ # (apt + Node + LibreOffice + 200 MB CloakBrowser tarball).
7
+ #
8
+ # After build & use, supervisord must be started inside the live
9
+ # VM. N+5.3 will do that automatically; today the user runs:
10
+ # supervisord -c /etc/supervisor/conf.d/browser.conf
11
+ #
12
+ # Notes on the painful bits this template encodes:
13
+ # - dbus is intentionally NOT a supervisor program: dbus-x11 in
14
+ # debian:slim is missing /usr/share/dbus-1/system.conf and
15
+ # chromium headless doesn't need a system bus anyway.
16
+ # - chromium pinned to /tmp/chrome-profile so a stale profile
17
+ # lock from the build VM can't block startup. Snapshots will
18
+ # not preserve /tmp.
19
+ # - chromium binds CDP to 0.0.0.0 so port-forward picks it up.
20
+ # - Playwright MCP listens on 0.0.0.0; default ::1 was IPv6-only
21
+ # and unreachable from the IPv4-only host port-forward.
22
+ # - All multi-line config files (supervisord conf) go through
23
+ # base64 because the v0 Sandboxfile parser is single-line only
24
+ # and bash single-quoted heredocs don't carry \n correctly.
25
+
26
+ image: python:3.12-slim
27
+ cpus: 2
28
+ memory_mib: 8192
29
+
30
+ exec:
31
+ # APT 国内源(在其他地区可改成上游 deb.debian.org)
32
+ - sed -i 's/deb.debian.org/mirrors.aliyun.com/g' /etc/apt/sources.list.d/debian.sources
33
+ - apt-get update -qq
34
+
35
+ # 一行装完(无 dbus)
36
+ # x11-xserver-utils → xrandr (resize Xvfb framebuffer at runtime)
37
+ # wmctrl → fit chromium window to the new framebuffer
38
+ - DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends curl ca-certificates xz-utils sudo fontconfig fonts-noto-cjk fonts-noto-color-emoji libreoffice-writer libreoffice-calc libreoffice-impress xvfb x11vnc fluxbox supervisor x11-xserver-utils wmctrl libnss3 libatk1.0-0 libatk-bridge2.0-0 libcups2 libgbm1 libxss1 libasound2 libxshmfence1 libxkbcommon0 libpango-1.0-0 libxcomposite1 libxdamage1 libxrandr2
39
+
40
+ # Node 22 LTS — 多源 fallback。nodejs.org 主源,失败后依次走
41
+ # npmmirror 镜像、cnpmjs 镜像。每个源走到身为止 (--retry 3),
42
+ # 并且 --connect-timeout 30 避免 TCP 建连后被 RST 时挂死。
43
+ - |
44
+ bash -c '
45
+ set -eu
46
+ VER=v22.20.0
47
+ F=node-${VER}-linux-arm64.tar.xz
48
+ for u in \
49
+ https://nodejs.org/dist/${VER}/${F} \
50
+ https://npmmirror.com/mirrors/node/${VER}/${F} \
51
+ https://registry.npmmirror.com/-/binary/node/${VER}/${F}; do
52
+ echo "[node] trying $u"
53
+ if curl -fsSL --retry 3 --retry-delay 5 --retry-all-errors \
54
+ --connect-timeout 30 --max-time 600 "$u" \
55
+ | tar -xJ -C /usr/local --strip-components=1; then
56
+ echo "[node] installed from $u"
57
+ exit 0
58
+ fi
59
+ echo "[node] failed: $u"
60
+ done
61
+ echo "[node] all sources exhausted" >&2
62
+ exit 1
63
+ '
64
+ - npm config set registry https://registry.npmmirror.com
65
+
66
+ # CloakBrowser 200MB - ghproxy + retry + 落盘解压
67
+ # Tarball is FLAT (no top-level dir); entry binary is `chrome`.
68
+ - bash -c "mkdir -p /opt/cloakbrowser && curl -fsSL --retry 8 --retry-delay 8 --retry-all-errors --connect-timeout 30 -o /tmp/cb.tar.gz https://gh-proxy.com/https://github.com/CloakHQ/CloakBrowser/releases/download/chromium-v145.0.7632.159.7/cloakbrowser-linux-arm64.tar.gz"
69
+ - bash -c "test $(stat -c %s /tmp/cb.tar.gz) -gt 100000000"
70
+ - tar -xzf /tmp/cb.tar.gz -C /opt/cloakbrowser
71
+ - rm -f /tmp/cb.tar.gz
72
+
73
+ # noVNC + websockify
74
+ - bash -c "mkdir -p /opt/novnc && curl -fsSL --retry 5 --retry-delay 3 --retry-all-errors https://gh-proxy.com/https://github.com/novnc/noVNC/archive/refs/tags/v1.5.0.tar.gz | tar -xz -C /opt/novnc --strip-components=1"
75
+ - bash -c "mkdir -p /opt/websockify && curl -fsSL --retry 5 --retry-delay 3 --retry-all-errors https://gh-proxy.com/https://github.com/novnc/websockify/archive/refs/tags/v0.13.0.tar.gz | tar -xz -C /opt/websockify --strip-components=1"
76
+ - ln -sf /opt/novnc/vnc_lite.html /opt/novnc/index.html
77
+
78
+ # Playwright MCP - 提前把 npm 包拉到 npx 缓存,runtime 启动不再下载
79
+ - npx -y @playwright/mcp@latest --help > /dev/null 2>&1
80
+
81
+ # 字体缓存(首次 LibreOffice / chromium CJK 渲染)
82
+ - fc-cache -fv
83
+
84
+ # supervisord 配置(base64 - 多行 conf 通过 v0 sandboxfile parser 的唯一办法)
85
+ - mkdir -p /etc/supervisor/conf.d
86
+ - bash -c "echo W3VuaXhfaHR0cF9zZXJ2ZXJdCmZpbGU9L3Zhci9ydW4vc3VwZXJ2aXNvci5zb2NrCmNobW9kPTA3MDAKCltzdXBlcnZpc29yZF0KbG9nZmlsZT0vdmFyL2xvZy9zdXBlcnZpc29yZC5sb2cKcGlkZmlsZT0vdmFyL3J1bi9zdXBlcnZpc29yZC5waWQKCltycGNpbnRlcmZhY2U6c3VwZXJ2aXNvcl0Kc3VwZXJ2aXNvci5ycGNpbnRlcmZhY2VfZmFjdG9yeT1zdXBlcnZpc29yLnJwY2ludGVyZmFjZTptYWtlX21haW5fcnBjaW50ZXJmYWNlCgpbc3VwZXJ2aXNvcmN0bF0Kc2VydmVydXJsPXVuaXg6Ly8vdmFyL3J1bi9zdXBlcnZpc29yLnNvY2sKCltwcm9ncmFtOnh2ZmJdCmNvbW1hbmQ9L3Vzci9iaW4vWHZmYiA6OTkgLXNjcmVlbiAwIDI0MDB4MTgwMHgyNCAtYWMgLW5vbGlzdGVuIHRjcAphdXRvcmVzdGFydD10cnVlCnByaW9yaXR5PTEwCgpbcHJvZ3JhbTpmbHV4Ym94XQpjb21tYW5kPS91c3IvYmluL2ZsdXhib3gKZW52aXJvbm1lbnQ9RElTUExBWT0iOjk5IgphdXRvcmVzdGFydD10cnVlCnByaW9yaXR5PTIwCgpbcHJvZ3JhbTpjaHJvbWl1bV0KY29tbWFuZD0vb3B0L2Nsb2FrYnJvd3Nlci9jaHJvbWUgLS1yZW1vdGUtZGVidWdnaW5nLXBvcnQ9OTIyMiAtLXJlbW90ZS1kZWJ1Z2dpbmctYWRkcmVzcz0wLjAuMC4wIC0tbm8tc2FuZGJveCAtLWRpc2FibGUtZGV2LXNobS11c2FnZSAtLXVzZXItZGF0YS1kaXI9L3RtcC9jaHJvbWUtcHJvZmlsZSAtLXdpbmRvdy1zaXplPTEyODAsODAwCmVudmlyb25tZW50PURJU1BMQVk9Ijo5OSIKYXV0b3Jlc3RhcnQ9dHJ1ZQpwcmlvcml0eT0zMApzdGFydHNlY3M9OAoKW3Byb2dyYW06cGxheXdyaWdodC1tY3BdCmNvbW1hbmQ9L3Vzci9sb2NhbC9iaW4vbnB4IEBwbGF5d3JpZ2h0L21jcEBsYXRlc3QgLS1ob3N0IDAuMC4wLjAgLS1wb3J0IDMyMDAgLS1hbGxvd2VkLWhvc3RzPSogLS1hbGxvdy11bnJlc3RyaWN0ZWQtZmlsZS1hY2Nlc3MgLS1jYXBzPXBkZix2aXNpb24gLS1icm93c2VyIGNocm9taXVtIC0tY2RwLWVuZHBvaW50IGh0dHA6Ly8xMjcuMC4wLjE6OTIyMgphdXRvcmVzdGFydD10cnVlCnByaW9yaXR5PTQwCnN0YXJ0c2Vjcz04CgpbcHJvZ3JhbTp4MTF2bmNdCmNvbW1hbmQ9L3Vzci9iaW4veDExdm5jIC1kaXNwbGF5IDo5OSAtZm9yZXZlciAtc2hhcmVkIC1ub3B3IC1yZmJwb3J0IDU5MDAKYXV0b3Jlc3RhcnQ9dHJ1ZQpwcmlvcml0eT01MAoKW3Byb2dyYW06bm92bmNdCmNvbW1hbmQ9L29wdC93ZWJzb2NraWZ5L3J1biAtLXdlYj0vb3B0L25vdm5jIDYwODAgbG9jYWxob3N0OjU5MDAKYXV0b3Jlc3RhcnQ9dHJ1ZQpwcmlvcml0eT02MAo= | base64 -d > /etc/supervisor/conf.d/browser.conf"
87
+
88
+ # Build 阶段启动 supervisord 一次,让 verify 步骤能 curl 到端口
89
+ - supervisord -c /etc/supervisor/conf.d/browser.conf
90
+ - sleep 18
91
+
92
+ # === Verify ============================================================
93
+ # 任一 fail 整个 build fail,避免 "build 成功但实际跑不起来"
94
+ - bash -c "node --version && npm --version && /opt/cloakbrowser/chrome --version | head -1"
95
+ # supervisor 没有 FATAL/EXITED/STOPPED
96
+ - bash -c "supervisorctl -c /etc/supervisor/conf.d/browser.conf status; supervisorctl -c /etc/supervisor/conf.d/browser.conf status | grep -E 'FATAL|EXITED|STOPPED' && exit 1 || true"
97
+ # 6 个 program 都 RUNNING
98
+ - bash -c "test $(supervisorctl -c /etc/supervisor/conf.d/browser.conf status | grep -c RUNNING) -eq 6"
99
+ # CDP 9222
100
+ - bash -c "curl -sS --max-time 8 http://127.0.0.1:9222/json/version | grep -q Browser"
101
+ # noVNC 6080
102
+ - bash -c "curl -sS --max-time 8 http://127.0.0.1:6080/vnc_lite.html | grep -qi DOCTYPE"
103
+ # Playwright MCP 3200(HTTP 403/404/200 都说明服务在 listen)
104
+ - bash -c "code=$(curl -sS --max-time 8 -o /dev/null -w '%{http_code}' http://127.0.0.1:3200/); echo MCP HTTP code=$code; test \"$code\" != \"000\""
105
+ - echo OK
@@ -0,0 +1,80 @@
1
+ # Task runner + Browser (incremental layer).
2
+ #
3
+ # Designed to be built ON TOP OF the `task-runner` snapshot via the
4
+ # admin UI's "based on" dropdown:
5
+ #
6
+ # 1. Build the task-runner template first → snapshot
7
+ # `tianshu-<tenant>-build-<id>`
8
+ # 2. Switch the editor to this template
9
+ # 3. Click Build, pick "based on: task-runner build-<id>" in the
10
+ # dropdown
11
+ # 4. The Sandboxfile's `image:` line below is IGNORED in that
12
+ # mode — the snapshot already pins it. Only the apt / curl /
13
+ # supervisord steps below run, layering chromium + Playwright
14
+ # MCP + noVNC on top of the existing task-runner image.
15
+ #
16
+ # Result: a snapshot that has everything task-runner ships
17
+ # (Node + Python + office libs + libreoffice + CN mirrors)
18
+ # AND the browser stack from `browser.yaml`. Bigger than
19
+ # task-runner (~2.5 GB extra for the chromium/CloakBrowser
20
+ # binaries) but you skip re-running the slow apt + pip + libreoffice
21
+ # layers from scratch.
22
+ #
23
+ # If you boot this WITHOUT picking a "based on" snapshot the build
24
+ # will fail at the very first `apt install` step (the base image
25
+ # below is bare python:3.12-slim — it doesn't have any of
26
+ # task-runner's tools yet). That failure is the intended signal
27
+ # that you skipped step 3.
28
+
29
+ # Image is a deliberate placeholder. It only matters when this
30
+ # template is built without a "based on" snapshot, and that's
31
+ # explicitly not how this template is meant to be used.
32
+ image: python:3.12-slim
33
+ cpus: 2
34
+ memory_mib: 8192
35
+
36
+ exec:
37
+ # APT mirrors (no-op outside CN; harmless inside).
38
+ - sed -i 's|deb.debian.org|mirrors.aliyun.com|g; s|security.debian.org|mirrors.aliyun.com|g' /etc/apt/sources.list.d/debian.sources
39
+ - apt-get update -qq
40
+
41
+ # The browser stack on top of task-runner. We DON'T re-install
42
+ # python3 / sudo / git / fonts / libreoffice — those came from
43
+ # the task-runner snapshot we layered on. xz-utils gets pulled
44
+ # in for the CloakBrowser tarball; everything else is new.
45
+ - DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends xz-utils xvfb x11vnc fluxbox supervisor x11-xserver-utils wmctrl libnss3 libatk1.0-0 libatk-bridge2.0-0 libcups2 libgbm1 libxss1 libasound2 libxshmfence1 libxkbcommon0 libpango-1.0-0 libxcomposite1 libxdamage1 libxrandr2
46
+ - rm -rf /var/lib/apt/lists/*
47
+
48
+ # CloakBrowser binary + noVNC + websockify.
49
+ - bash -c "mkdir -p /opt/cloakbrowser && curl -fsSL --retry 8 --retry-delay 8 --retry-all-errors --connect-timeout 30 -o /tmp/cb.tar.gz https://gh-proxy.com/https://github.com/CloakHQ/CloakBrowser/releases/download/chromium-v145.0.7632.159.7/cloakbrowser-linux-arm64.tar.gz"
50
+ - bash -c "test $(stat -c %s /tmp/cb.tar.gz) -gt 100000000"
51
+ - tar -xzf /tmp/cb.tar.gz -C /opt/cloakbrowser
52
+ - rm -f /tmp/cb.tar.gz
53
+ - bash -c "mkdir -p /opt/novnc && curl -fsSL --retry 5 --retry-delay 3 --retry-all-errors https://gh-proxy.com/https://github.com/novnc/noVNC/archive/refs/tags/v1.5.0.tar.gz | tar -xz -C /opt/novnc --strip-components=1"
54
+ - bash -c "mkdir -p /opt/websockify && curl -fsSL --retry 5 --retry-delay 3 --retry-all-errors https://gh-proxy.com/https://github.com/novnc/websockify/archive/refs/tags/v0.13.0.tar.gz | tar -xz -C /opt/websockify --strip-components=1"
55
+ - ln -sf /opt/novnc/vnc_lite.html /opt/novnc/index.html
56
+
57
+ # Pre-warm the Playwright MCP npx cache.
58
+ - npx -y @playwright/mcp@latest --help > /dev/null 2>&1
59
+
60
+ # supervisord conf (base64'd same as browser.yaml; the parser is
61
+ # single-line only, so multi-line conf round-trips through
62
+ # base64).
63
+ - mkdir -p /etc/supervisor/conf.d
64
+ - bash -c "echo W3VuaXhfaHR0cF9zZXJ2ZXJdCmZpbGU9L3Zhci9ydW4vc3VwZXJ2aXNvci5zb2NrCmNobW9kPTA3MDAKCltzdXBlcnZpc29yZF0KbG9nZmlsZT0vdmFyL2xvZy9zdXBlcnZpc29yZC5sb2cKcGlkZmlsZT0vdmFyL3J1bi9zdXBlcnZpc29yZC5waWQKCltycGNpbnRlcmZhY2U6c3VwZXJ2aXNvcl0Kc3VwZXJ2aXNvci5ycGNpbnRlcmZhY2VfZmFjdG9yeT1zdXBlcnZpc29yLnJwY2ludGVyZmFjZTptYWtlX21haW5fcnBjaW50ZXJmYWNlCgpbc3VwZXJ2aXNvcmN0bF0Kc2VydmVydXJsPXVuaXg6Ly8vdmFyL3J1bi9zdXBlcnZpc29yLnNvY2sKCltwcm9ncmFtOnh2ZmJdCmNvbW1hbmQ9L3Vzci9iaW4vWHZmYiA6OTkgLXNjcmVlbiAwIDI0MDB4MTgwMHgyNCAtYWMgLW5vbGlzdGVuIHRjcAphdXRvcmVzdGFydD10cnVlCnByaW9yaXR5PTEwCgpbcHJvZ3JhbTpmbHV4Ym94XQpjb21tYW5kPS91c3IvYmluL2ZsdXhib3gKZW52aXJvbm1lbnQ9RElTUExBWT0iOjk5IgphdXRvcmVzdGFydD10cnVlCnByaW9yaXR5PTIwCgpbcHJvZ3JhbTpjaHJvbWl1bV0KY29tbWFuZD0vb3B0L2Nsb2FrYnJvd3Nlci9jaHJvbWUgLS1yZW1vdGUtZGVidWdnaW5nLXBvcnQ9OTIyMiAtLXJlbW90ZS1kZWJ1Z2dpbmctYWRkcmVzcz0wLjAuMC4wIC0tbm8tc2FuZGJveCAtLWRpc2FibGUtZGV2LXNobS11c2FnZSAtLXVzZXItZGF0YS1kaXI9L3RtcC9jaHJvbWUtcHJvZmlsZSAtLXdpbmRvdy1zaXplPTEyODAsODAwCmVudmlyb25tZW50PURJU1BMQVk9Ijo5OSIKYXV0b3Jlc3RhcnQ9dHJ1ZQpwcmlvcml0eT0zMApzdGFydHNlY3M9OAoKW3Byb2dyYW06cGxheXdyaWdodC1tY3BdCmNvbW1hbmQ9L3Vzci9sb2NhbC9iaW4vbnB4IEBwbGF5d3JpZ2h0L21jcEBsYXRlc3QgLS1ob3N0IDAuMC4wLjAgLS1wb3J0IDMyMDAgLS1hbGxvd2VkLWhvc3RzPSogLS1hbGxvdy11bnJlc3RyaWN0ZWQtZmlsZS1hY2Nlc3MgLS1jYXBzPXBkZix2aXNpb24gLS1icm93c2VyIGNocm9taXVtIC0tY2RwLWVuZHBvaW50IGh0dHA6Ly8xMjcuMC4wLjE6OTIyMgphdXRvcmVzdGFydD10cnVlCnByaW9yaXR5PTQwCnN0YXJ0c2Vjcz04CgpbcHJvZ3JhbTp4MTF2bmNdCmNvbW1hbmQ9L3Vzci9iaW4veDExdm5jIC1kaXNwbGF5IDo5OSAtZm9yZXZlciAtc2hhcmVkIC1ub3B3IC1yZmJwb3J0IDU5MDAKYXV0b3Jlc3RhcnQ9dHJ1ZQpwcmlvcml0eT01MAoKW3Byb2dyYW06bm92bmNdCmNvbW1hbmQ9L29wdC93ZWJzb2NraWZ5L3J1biAtLXdlYj0vb3B0L25vdm5jIDYwODAgbG9jYWxob3N0OjU5MDAKYXV0b3Jlc3RhcnQ9dHJ1ZQpwcmlvcml0eT02MAo= | base64 -d > /etc/supervisor/conf.d/browser.conf"
65
+
66
+ # Boot supervisord once during build so verify can hit the ports.
67
+ - supervisord -c /etc/supervisor/conf.d/browser.conf
68
+ - sleep 18
69
+
70
+ # === Verify ============================================================
71
+ # Carry-over from task-runner: those tools must still work.
72
+ - bash -c "node --version && python3 --version && pip3 --version && python3 -c 'import pandas, docx, pptx; print(\"py-libs ok\")'"
73
+ # New layer: browser stack alive.
74
+ - bash -c "/opt/cloakbrowser/chrome --version | head -1"
75
+ - bash -c "supervisorctl -c /etc/supervisor/conf.d/browser.conf status; supervisorctl -c /etc/supervisor/conf.d/browser.conf status | grep -E 'FATAL|EXITED|STOPPED' && exit 1 || true"
76
+ - bash -c "test $(supervisorctl -c /etc/supervisor/conf.d/browser.conf status | grep -c RUNNING) -eq 6"
77
+ - bash -c "curl -sS --max-time 8 http://127.0.0.1:9222/json/version | grep -q Browser"
78
+ - bash -c "curl -sS --max-time 8 http://127.0.0.1:6080/vnc_lite.html | grep -qi DOCTYPE"
79
+ - bash -c "code=$(curl -sS --max-time 8 -o /dev/null -w '%{http_code}' http://127.0.0.1:3200/); echo MCP HTTP code=$code; test \"$code\" != \"000\""
80
+ - echo OK
@@ -0,0 +1,80 @@
1
+ # Task runner Sandboxfile.
2
+ #
3
+ # Recommended snapshot for the per-task sandbox pool (PR #141): a
4
+ # Node 22 + Python 3.12 environment with the tools agent tasks
5
+ # typically reach for, but WITHOUT the GUI / browser stack from
6
+ # `browser.yaml`. Faster to boot, smaller RAM footprint, plenty
7
+ # fast for code generation / data analysis / shell scripting
8
+ # tasks that don't need a chromium of their own.
9
+ #
10
+ # Use this as the default Task snapshot in the admin UI; pick
11
+ # `browser.yaml` instead when the workload needs to pilot a
12
+ # chromium (visual scraping, JS-heavy SPAs, screenshots, etc).
13
+ # Anything beyond those two cases — a custom base image, an
14
+ # air-gapped install, etc — means writing your own Sandboxfile
15
+ # and uploading it through the admin UI.
16
+ #
17
+ # Includes vs `browser.yaml`:
18
+ # shared: sudo, curl, ca-certs, fontconfig + CJK + emoji fonts,
19
+ # libreoffice (so docx/xlsx/pptx round-trips work),
20
+ # Node 22 (base image), Python 3.12 + pip + venv
21
+ # added : git, jq, build-essential, less, vim-tiny, zip/unzip
22
+ # added : pip pre-installs so common one-shot tasks don't pay
23
+ # the install latency on every cold start:
24
+ # - data: pandas, numpy, matplotlib, openpyxl
25
+ # - web: requests, beautifulsoup4, lxml, pyyaml
26
+ # - office: python-docx, python-pptx, pypdf, reportlab,
27
+ # markitdown (universal-converter)
28
+ # omitted: chromium, xvfb, x11vnc, fluxbox, supervisor, noVNC,
29
+ # wmctrl, x11-xserver-utils, all the X11/GUI client libs
30
+ # (libnss3, libatk*, libcups2, libgbm1, libxss1,
31
+ # libasound2, libxshmfence1, libxkbcommon0, libpango,
32
+ # libxcomposite1, libxdamage1, libxrandr2)
33
+ #
34
+ # Total image is ~600 MB compressed vs `browser.yaml`'s ~3.2 GB.
35
+ # Use `browser.yaml` instead when the workload genuinely needs to
36
+ # pilot a browser (visual scraping, JS-heavy SPA rendering, etc).
37
+
38
+ image: node:22-slim
39
+ cpus: 4
40
+ memory_mib: 4096
41
+
42
+ exec:
43
+ # APT mirror (China-mainland speed-up; harmless elsewhere — the
44
+ # debian.sources file replacement is a no-op when the original
45
+ # entries are already mirrored at the alibaba endpoint).
46
+ - sed -i 's|deb.debian.org|mirrors.aliyun.com|g; s|security.debian.org|mirrors.aliyun.com|g' /etc/apt/sources.list.d/debian.sources
47
+ - apt-get update -qq
48
+
49
+ # One apt install. node:22-slim already ships ca-certificates +
50
+ # xz-utils, so we don't repeat them here. Order roughly: shell
51
+ # essentials, dev tools, fonts, libreoffice, python.
52
+ - DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends curl sudo git jq build-essential less vim-tiny zip unzip fontconfig fonts-noto-cjk fonts-noto-color-emoji libreoffice-writer libreoffice-calc libreoffice-impress python3 python3-pip python3-venv
53
+ - rm -rf /var/lib/apt/lists/*
54
+
55
+ # Mirror npm + pip to local CDNs. Same rationale as the apt
56
+ # mirror — no-op outside CN, big speed-up inside.
57
+ - npm config set registry https://registry.npmmirror.com
58
+ - pip3 config --global set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
59
+
60
+ # Pre-install common pip libs so one-shot data tasks don't pay
61
+ # cold-start install latency. Three groups:
62
+ # data: pandas, numpy, matplotlib, openpyxl (xlsx via pandas)
63
+ # web: requests, beautifulsoup4, lxml, pyyaml
64
+ # office: python-docx (docx), python-pptx (pptx), pypdf
65
+ # (PDF read), reportlab (PDF write), markitdown
66
+ # (universal converter — docx/xlsx/pptx/pdf/html/csv
67
+ # → markdown)
68
+ # ~250 MB combined; reasonable for the value vs always installing
69
+ # on demand.
70
+ - pip3 install --no-cache-dir --break-system-packages pandas numpy matplotlib requests pyyaml lxml beautifulsoup4 openpyxl python-docx python-pptx pypdf reportlab markitdown
71
+
72
+ # Refresh font cache so matplotlib/PIL render CJK on first call.
73
+ - fc-cache -fv
74
+
75
+ # === Verify ============================================================
76
+ - bash -c "node --version && npm --version && python3 --version && pip3 --version"
77
+ - bash -c "git --version && jq --version | head -1"
78
+ - bash -c "python3 -c 'import pandas, numpy, matplotlib, requests, openpyxl, docx, pptx, pypdf, reportlab; import markitdown; print(\"py-libs ok\")'"
79
+ - bash -c "soffice --version | head -1"
80
+ - echo OK