1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
|
schemaVersion: "1"
# Sandbox name = SSH host (<name>.sbx): letters, digits and hyphens only.
name: zed-dev-team
agent: zed-ssh-kit
kits:
- docker.io/k33g/zed-ssh-kit:0.0.8
- docker.io/k33g/mini-me-agent-kit:0.0.8
- docker.io/k33g/nushell-kit:0.0.8
- docker.io/k33g/go-toolchain-kit:0.0.8
- docker.io/k33g/rust-toolchain-kit:0.0.8
# This file and the start / stop scripts stay OUTSIDE every mounted
# directory: Docker recommends it, so that an agent cannot rewrite the
# commands your host runs (writableEnvFiles is left off).
#
# demos/dev.team/
# ├── sbxenv.yaml, start-zed.sh, stop-zed.sh, README.* not mounted
# ├── team/ the agents (agent*.yaml) and their hooks READ-ONLY
# └── workspace/ the code the team works on read-write
# The code: playground/, demo/, sessions (.mm/). Zed opens this folder.
workspace: ./workspace
# The agents: mm reads them, nothing in the sandbox can change them.
additionalWorkspaces:
- path: ./team
readOnly: true
# The folder of this file, as the sandbox sees it — start-zed.sh passes it:
# sbx env create --force --env-arg DEV_TEAM_DIR="$PWD"
args:
DEV_TEAM_DIR:
required: true
env:
# mm -acp (Zed) and mm without -config read the coordinator from team/,
# not ./agent.yaml: the workspace holds no agent file to rewrite.
AGENT_CONFIG: ${{ env.args.DEV_TEAM_DIR }}/team/agent.yaml
# Published when the sandbox is created, each to the same port on the host
# (loopback, tcp4 by default). A port already taken on the host makes the
# creation fail. A change here applies at the next ./start-zed.sh.
# Inside the sandbox, a server must listen on 0.0.0.0, not 127.0.0.1.
ports:
- sandbox: 8080
host: 8080
- sandbox: 6060
host: 6060
- sandbox: 5050
host: 5050
sandboxOptions:
pullPolicy: always
# sbx setup ssh
# ./start-zed.sh (sbx env create … then zed --new ssh://zed-dev-team.sbx<dev.team>/workspace)
# ./stop-zed.sh (sbx env rm --force --env-arg DEV_TEAM_DIR="$PWD")
|