arc402-cli 1.4.24 → 1.4.26

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.
@@ -1 +1 @@
1
- {"version":3,"file":"workroom.d.ts","sourceRoot":"","sources":["../../src/commands/workroom.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAmKpC,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA2+B/D"}
1
+ {"version":3,"file":"workroom.d.ts","sourceRoot":"","sources":["../../src/commands/workroom.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAmKpC,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAg/B/D"}
@@ -36,6 +36,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
36
36
  exports.registerWorkroomCommands = registerWorkroomCommands;
37
37
  const fs = __importStar(require("fs"));
38
38
  const path = __importStar(require("path"));
39
+ const os = __importStar(require("os"));
39
40
  const http = __importStar(require("http"));
40
41
  const child_process_1 = require("child_process");
41
42
  const openshell_runtime_1 = require("../openshell-runtime");
@@ -431,6 +432,11 @@ network_policies:
431
432
  "-v", `${path.join(openshell_runtime_1.ARC402_DIR, "worker")}:/workroom/worker:rw`,
432
433
  // Mount Arena data directory (feed index, profile cache, state, queue)
433
434
  "-v", `${ARENA_DATA_DIR}:/workroom/arena:rw`,
435
+ // Mount Claude auth file if present — required for claude-code agent_type worker execution.
436
+ // Without this the worker spawns claude but auth fails immediately.
437
+ ...(fs.existsSync(path.join(os.homedir(), ".claude.json"))
438
+ ? ["-v", `${path.join(os.homedir(), ".claude.json")}:/home/workroom/.claude.json:ro`]
439
+ : []),
434
440
  // Inject secrets as env vars
435
441
  "-e", `ARC402_MACHINE_KEY=${machineKey}`,
436
442
  "-e", `TELEGRAM_BOT_TOKEN=${telegramBot}`,
@@ -1 +1 @@
1
- {"version":3,"file":"workroom.js","sourceRoot":"","sources":["../../src/commands/workroom.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workroom.js","sourceRoot":"","sources":["../../src/commands/workroom.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "arc402-cli",
3
- "version": "1.4.24",
3
+ "version": "1.4.26",
4
4
  "description": "ARC-402 CLI for discovery, negotiation payloads, hire/remediation/dispute workflows, and network reads",
5
5
  "bin": {
6
6
  "arc402": "./dist/index.js"
@@ -8,11 +8,12 @@
8
8
  "main": "./dist/index.js",
9
9
  "files": [
10
10
  "dist/",
11
- "../workroom/credentials.template.toml"
11
+ "workroom/"
12
12
  ],
13
13
  "scripts": {
14
14
  "build": "tsc",
15
- "test": "node --test test/**/*.test.js"
15
+ "test": "node --test test/**/*.test.js",
16
+ "prepublishOnly": "npm run build && node -e \"const fs=require('fs'),path=require('path'); const src=path.resolve(__dirname,'../workroom'); const dst=path.resolve(__dirname,'workroom'); if(fs.existsSync(src)){fs.cpSync(src,dst,{recursive:true}); console.log('Copied workroom/ into package');} else { console.warn('WARNING: ../workroom not found — workroom files will be missing from package'); }\""
16
17
  },
17
18
  "dependencies": {
18
19
  "@arc402/sdk": "^0.6.0",
@@ -0,0 +1,56 @@
1
+ FROM node:22-slim
2
+
3
+ # Runtime dependencies for network enforcement + diagnostics
4
+ RUN apt-get update && apt-get install -y --no-install-recommends \
5
+ iptables curl dnsutils iproute2 procps jq ca-certificates python3 make g++ \
6
+ && rm -rf /var/lib/apt/lists/*
7
+
8
+ # Install arc402-cli globally — Linux-compiled native binaries (better-sqlite3, etc.)
9
+ # This runs at image build time so native addons compile for Linux, not the host OS.
10
+ # ARG allows pinning a specific version: docker build --build-arg ARC402_CLI_VERSION=1.4.19
11
+ ARG ARC402_CLI_VERSION=latest
12
+ RUN npm install -g arc402-cli@${ARC402_CLI_VERSION} --build-from-source 2>&1 | tail -5
13
+ # Stamp the CLI version as an image label so workroom start can detect stale images.
14
+ LABEL arc402.cli.version=${ARC402_CLI_VERSION}
15
+
16
+ # Create workroom user with the same UID/GID as the host user (default: 1000).
17
+ # This ensures bind-mounted volumes are readable/writable without permission fights.
18
+ # Override at build time: docker build --build-arg HOST_UID=1001 --build-arg HOST_GID=1001
19
+ ARG HOST_UID=1000
20
+ ARG HOST_GID=1000
21
+ # node:22-slim already has a 'node' user at UID 1000. Rename it to 'workroom'
22
+ # so the container user matches the host user (bind mount permissions).
23
+ RUN usermod -l workroom -d /workroom -m node \
24
+ && groupmod -n workroom node \
25
+ && usermod -u ${HOST_UID} workroom 2>/dev/null || true \
26
+ && groupmod -g ${HOST_GID} workroom 2>/dev/null || true
27
+
28
+ # Workroom scripts
29
+ COPY entrypoint.sh /entrypoint.sh
30
+ COPY dns-refresh.sh /dns-refresh.sh
31
+ COPY policy-parser.sh /policy-parser.sh
32
+ COPY derive-policy.sh /derive-policy.sh
33
+ RUN chmod +x /entrypoint.sh /dns-refresh.sh /policy-parser.sh /derive-policy.sh
34
+
35
+ # Job workspace directory
36
+ RUN mkdir -p /workroom/jobs && chown workroom:workroom /workroom/jobs
37
+
38
+ # OpenClaw runtime directory (mounted from host)
39
+ RUN mkdir -p /workroom/openclaw && chown workroom:workroom /workroom/openclaw
40
+
41
+ # Worker specialisation directories (created by worker init, but ensure they exist)
42
+ RUN mkdir -p /workroom/.arc402/worker/{knowledge,datasets,skills,memory} \
43
+ && chown -R workroom:workroom /workroom/.arc402
44
+
45
+ # Home directory for workroom user (auth files mounted here)
46
+ RUN mkdir -p /home/workroom/.openclaw && chown -R workroom:workroom /home/workroom
47
+
48
+ # Arena directories — feed index, profile cache, daemon state, approval queue
49
+ RUN mkdir -p /workroom/arena/{feed,profile,state,queue} \
50
+ && chown -R workroom:workroom /workroom/arena
51
+
52
+ # Default arena policy (can be overridden by mount)
53
+ COPY arena-policy.yaml /workroom/defaults/arena-policy.yaml
54
+
55
+ WORKDIR /workroom
56
+ ENTRYPOINT ["/entrypoint.sh"]
@@ -0,0 +1,74 @@
1
+ # ARC-402 GPU Workroom
2
+ # CUDA-enabled variant of the standard workroom container.
3
+ # Run with: docker run --gpus all --runtime=nvidia arc402-workroom:gpu
4
+ #
5
+ # Build:
6
+ # docker build -f workroom/Dockerfile.gpu -t arc402-workroom:gpu workroom/
7
+
8
+ FROM nvidia/cuda:12.4.0-runtime-ubuntu22.04
9
+
10
+ # ─── System dependencies ──────────────────────────────────────────────────────
11
+
12
+ RUN apt-get update && apt-get install -y --no-install-recommends \
13
+ # Same runtime deps as base Dockerfile
14
+ iptables curl dnsutils iproute2 procps jq ca-certificates \
15
+ # GPU metering
16
+ python3-minimal \
17
+ # Node.js 22 (LTS) via NodeSource
18
+ && curl -fsSL https://deb.nodesource.com/setup_22.x | bash - \
19
+ && apt-get install -y --no-install-recommends nodejs \
20
+ && rm -rf /var/lib/apt/lists/*
21
+
22
+ # ─── NVIDIA container toolkit check ──────────────────────────────────────────
23
+ # nvidia-smi is provided by the host driver mounted into the container.
24
+ # Validate it's accessible at container startup (see entrypoint.sh).
25
+ # NVIDIA_VISIBLE_DEVICES and NVIDIA_DRIVER_CAPABILITIES must be set at runtime.
26
+
27
+ ENV NVIDIA_VISIBLE_DEVICES=all
28
+ ENV NVIDIA_DRIVER_CAPABILITIES=compute,utility
29
+
30
+ # ─── User setup (mirrors base Dockerfile) ────────────────────────────────────
31
+
32
+ ARG HOST_UID=1000
33
+ ARG HOST_GID=1000
34
+
35
+ # Ubuntu 22.04 ships with ubuntu user at UID 1000; rename to workroom.
36
+ RUN groupadd -f -g ${HOST_GID} workroom 2>/dev/null || true \
37
+ && useradd -u ${HOST_UID} -g ${HOST_GID} -m -d /workroom -s /bin/bash workroom 2>/dev/null \
38
+ || usermod -u ${HOST_UID} -g ${HOST_GID} -d /workroom workroom 2>/dev/null || true
39
+
40
+ # ─── Workroom scripts ─────────────────────────────────────────────────────────
41
+
42
+ COPY entrypoint.sh /entrypoint.sh
43
+ COPY dns-refresh.sh /dns-refresh.sh
44
+ COPY policy-parser.sh /policy-parser.sh
45
+ COPY derive-policy.sh /derive-policy.sh
46
+ RUN chmod +x /entrypoint.sh /dns-refresh.sh /policy-parser.sh /derive-policy.sh
47
+
48
+ # ─── Directory layout (same as base Dockerfile) ───────────────────────────────
49
+
50
+ RUN mkdir -p /workroom/jobs && chown workroom:workroom /workroom/jobs
51
+ RUN mkdir -p /workroom/openclaw && chown workroom:workroom /workroom/openclaw
52
+ RUN mkdir -p /workroom/.arc402/worker/{knowledge,datasets,skills,memory} \
53
+ && chown -R workroom:workroom /workroom/.arc402
54
+ RUN mkdir -p /home/workroom/.openclaw && chown -R workroom:workroom /home/workroom
55
+ RUN mkdir -p /workroom/arena/{feed,profile,state,queue} && chown -R workroom:workroom /workroom/arena
56
+
57
+ # ─── GPU-specific directories ─────────────────────────────────────────────────
58
+
59
+ # Compute session data directory (metrics + reports written by metering daemon)
60
+ RUN mkdir -p /workroom/.arc402/compute && chown workroom:workroom /workroom/.arc402/compute
61
+
62
+ # ─── Default arena policy ─────────────────────────────────────────────────────
63
+
64
+ COPY arena-policy.yaml /workroom/defaults/arena-policy.yaml
65
+
66
+ WORKDIR /workroom
67
+ ENTRYPOINT ["/entrypoint.sh"]
68
+
69
+ # ─── Runtime labels ───────────────────────────────────────────────────────────
70
+
71
+ LABEL org.opencontainers.image.title="arc402-workroom-gpu"
72
+ LABEL org.opencontainers.image.description="ARC-402 GPU workroom — CUDA 12.4, nvidia-smi metering"
73
+ LABEL arc402.gpu="true"
74
+ LABEL arc402.cuda.version="12.4.0"
@@ -0,0 +1,152 @@
1
+ # ARC-402 Arena Policy — extends the base workroom policy
2
+ # This file defines the network, spend, and behavior boundaries for Arena operations
3
+ # running inside the Workroom container.
4
+ #
5
+ # Merged with openshell-policy.yaml at workroom startup.
6
+ # Arena-specific policies are additive — they don't override base security.
7
+
8
+ version: 1
9
+
10
+ # ─── Arena Network Policy ──────────────────────────────────────────────────────
11
+ # Which external hosts Arena processes can reach from inside the Workroom.
12
+ # Everything else is DROP via iptables.
13
+
14
+ arena_network:
15
+ # Base mainnet RPC — for contract reads and transaction submission
16
+ base_rpc:
17
+ endpoints:
18
+ - host: mainnet.base.org
19
+ port: 443
20
+ - host: base-mainnet.g.alchemy.com
21
+ port: 443
22
+ - host: base.llamarpc.com
23
+ port: 443
24
+
25
+ # ARC-402 infrastructure — relay, API, public pages
26
+ arc402_infra:
27
+ endpoints:
28
+ - host: api.arc402.xyz
29
+ port: 443
30
+ - host: arc402.xyz
31
+ port: 443
32
+ - host: relay.arc402.xyz
33
+ port: 443
34
+ - host: gigabrain.arc402.xyz
35
+ port: 443
36
+
37
+ # ERC-4337 bundler — for UserOp submission
38
+ bundler:
39
+ endpoints:
40
+ - host: public.pimlico.io
41
+ port: 443
42
+
43
+ # Notifications — Telegram alerts for arena events
44
+ notifications:
45
+ endpoints:
46
+ - host: api.telegram.org
47
+ port: 443
48
+
49
+ # Data feeds — for prediction round research (read-only intelligence)
50
+ # Add specific API hosts as needed. Each addition is a policy decision.
51
+ data_feeds:
52
+ endpoints:
53
+ - host: api.coingecko.com
54
+ port: 443
55
+ - host: pro-api.coinmarketcap.com
56
+ port: 443
57
+
58
+ # ─── Arena Spend Policy ────────────────────────────────────────────────────────
59
+ # Workroom-level spend limits. These are ADDITIONAL to PolicyEngine onchain limits.
60
+ # The tighter of the two always wins.
61
+ #
62
+ # These are enforced by the Arena daemon before submitting transactions.
63
+ # They protect against bugs, not just malice.
64
+
65
+ arena_spend:
66
+ handshake:
67
+ max_per_handshake_eth: "0.01" # max ETH tip per handshake
68
+ max_per_handshake_usdc: "10.00" # max USDC tip per handshake
69
+ daily_count_cap: 50 # mirrors contract cap
70
+ daily_spend_cap_eth: "0.5" # total handshake spend per day
71
+ daily_spend_cap_usdc: "100.00" # total handshake USDC spend per day
72
+
73
+ arena:
74
+ max_stake_per_round_eth: "0.1" # max stake per prediction round
75
+ max_stake_per_round_usdc: "50.00"
76
+ daily_rounds_cap: 10 # max rounds entered per day
77
+ daily_spend_cap_eth: "1.0" # total arena spend per day
78
+ daily_spend_cap_usdc: "500.00"
79
+
80
+ subscriptions:
81
+ max_per_subscription_eth: "0.05" # max per subscription payment
82
+ max_per_subscription_usdc: "25.00"
83
+ max_active_subscriptions: 20 # cap on simultaneous subscriptions
84
+
85
+ # ─── Arena Behavior Policy ─────────────────────────────────────────────────────
86
+ # Controls what the Arena daemon can do autonomously vs what requires approval.
87
+
88
+ arena_behavior:
89
+ # Autonomous actions — daemon can do these without human approval
90
+ autonomous:
91
+ - send_handshake # respond to inbound handshakes
92
+ - post_status # publish status updates
93
+ - index_feed # consume and index feed events
94
+ - update_profile # refresh profile metadata
95
+
96
+ # Approval-required actions — daemon queues these for human review
97
+ approval_required:
98
+ - enter_arena_round # stake money on prediction
99
+ - back_agent # back another agent's forecast
100
+ - create_subscription # open a paid subscription channel
101
+ - publish_newsletter # publish content to subscribers
102
+ - join_squad # join a research squad
103
+
104
+ # Forbidden actions — daemon cannot do these at all
105
+ forbidden:
106
+ - modify_wallet_policy # never change its own spending rules
107
+ - transfer_ownership # never transfer wallet ownership
108
+ - upgrade_registry # never propose registry updates
109
+ - whitelist_contracts # never add new contract whitelists
110
+
111
+ # ─── Arena Daemon Config ───────────────────────────────────────────────────────
112
+ # How the Arena daemon runs inside the Workroom.
113
+
114
+ arena_daemon:
115
+ # Feed indexer — listens for HandshakeSent, NewConnection, arena events
116
+ indexer:
117
+ poll_interval_seconds: 30
118
+ start_block: "latest" # or specific block number
119
+ contracts:
120
+ - name: handshake
121
+ address: "" # filled after deployment
122
+ events:
123
+ - HandshakeSent
124
+ - NewConnection
125
+ # Future: ArenaRound events added here
126
+
127
+ # Status publisher — posts agent status updates
128
+ status:
129
+ auto_publish: false # manual by default
130
+ max_per_day: 10
131
+
132
+ # Discovery — how the agent finds other agents
133
+ discovery:
134
+ refresh_interval_seconds: 300
135
+ trending_window_hours: 24
136
+
137
+ # ─── Arena Filesystem Policy ───────────────────────────────────────────────────
138
+ # What Arena processes can read and write inside the Workroom.
139
+
140
+ arena_filesystem:
141
+ read_write:
142
+ - /workroom/arena/feed # indexed feed data
143
+ - /workroom/arena/profile # agent profile cache
144
+ - /workroom/arena/state # daemon state (last block, etc.)
145
+ - /workroom/arena/queue # approval queue for human review
146
+
147
+ read_only:
148
+ - /workroom/runtime # CLI and daemon code
149
+ - /workroom/.arc402 # policy files
150
+
151
+ forbidden:
152
+ - /workroom/.arc402/keys # private keys (injected as env vars only)
@@ -0,0 +1,167 @@
1
+ # ─────────────────────────────────────────────────────────────────────────────
2
+ # ARC-402 Workroom Credentials Template
3
+ #
4
+ # This file configures LLM provider access for your workroom worker.
5
+ # Copy to ~/.arc402/worker/credentials.toml and fill in your keys.
6
+ #
7
+ # NEVER commit this file. It is gitignored by default.
8
+ # The workroom setup script reads this to:
9
+ # 1. Pass API keys as Docker env vars (never written to disk in container)
10
+ # 2. Auto-generate network policy entries (iptables whitelist)
11
+ #
12
+ # Two modes:
13
+ # Tier 1 (recommended): Use OpenClaw as your worker runtime.
14
+ # → OpenClaw's openclaw.json already has all provider configs.
15
+ # → You DON'T need this file. Everything is auto-derived.
16
+ # → Set runtime = "openclaw" in worker/config.json.
17
+ #
18
+ # Tier 2 (advanced): Bring your own harness (raw Claude Code, Codex, etc.)
19
+ # → Fill in the providers below for your chosen harness.
20
+ # → The setup script generates matching iptables rules.
21
+ # ─────────────────────────────────────────────────────────────────────────────
22
+
23
+ # ── Anthropic (Claude Code) ─────────────────────────────────────────────────
24
+ # Two auth modes:
25
+ # api_key: Direct API key (pay per token)
26
+ # oauth: Max subscription OAuth (unlimited, mounted from host)
27
+
28
+ [providers.anthropic]
29
+ enabled = false
30
+ auth = "api_key" # "api_key" or "oauth"
31
+ env = "ANTHROPIC_API_KEY" # Set this env var on the host
32
+ # oauth_token_path = "~/.claude/oauth" # For OAuth mode (mounted read-only)
33
+ hosts = ["api.anthropic.com"]
34
+
35
+ # ── OpenAI (Codex, GPT) ────────────────────────────────────────────────────
36
+
37
+ [providers.openai]
38
+ enabled = false
39
+ auth = "api_key"
40
+ env = "OPENAI_API_KEY"
41
+ hosts = ["api.openai.com"]
42
+
43
+ # ── OpenAI Codex (dedicated endpoint) ──────────────────────────────────────
44
+
45
+ [providers.openai_codex]
46
+ enabled = false
47
+ auth = "api_key"
48
+ env = "OPENAI_API_KEY" # Same key as OpenAI
49
+ hosts = ["api.openai.com"] # Same endpoint
50
+
51
+ # ── Google (Gemini) ─────────────────────────────────────────────────────────
52
+
53
+ [providers.google]
54
+ enabled = false
55
+ auth = "api_key"
56
+ env = "GOOGLE_API_KEY"
57
+ # Alternative: service account JSON
58
+ # service_account_path = "~/.config/gcloud/application_default_credentials.json"
59
+ hosts = ["generativelanguage.googleapis.com"]
60
+
61
+ # ── OpenRouter ──────────────────────────────────────────────────────────────
62
+ # Routes to multiple providers (Anthropic, OpenAI, Google, etc.)
63
+ # Single key, many models.
64
+
65
+ [providers.openrouter]
66
+ enabled = false
67
+ auth = "api_key"
68
+ env = "OPENROUTER_API_KEY"
69
+ hosts = ["openrouter.ai"]
70
+
71
+ # ── Mistral ─────────────────────────────────────────────────────────────────
72
+
73
+ [providers.mistral]
74
+ enabled = false
75
+ auth = "api_key"
76
+ env = "MISTRAL_API_KEY"
77
+ hosts = ["api.mistral.ai"]
78
+
79
+ # ── Groq ────────────────────────────────────────────────────────────────────
80
+
81
+ [providers.groq]
82
+ enabled = false
83
+ auth = "api_key"
84
+ env = "GROQ_API_KEY"
85
+ hosts = ["api.groq.com"]
86
+
87
+ # ── Together AI ─────────────────────────────────────────────────────────────
88
+
89
+ [providers.together]
90
+ enabled = false
91
+ auth = "api_key"
92
+ env = "TOGETHER_API_KEY"
93
+ hosts = ["api.together.xyz"]
94
+
95
+ # ── Fireworks AI ────────────────────────────────────────────────────────────
96
+
97
+ [providers.fireworks]
98
+ enabled = false
99
+ auth = "api_key"
100
+ env = "FIREWORKS_API_KEY"
101
+ hosts = ["api.fireworks.ai"]
102
+
103
+ # ── DeepSeek ────────────────────────────────────────────────────────────────
104
+
105
+ [providers.deepseek]
106
+ enabled = false
107
+ auth = "api_key"
108
+ env = "DEEPSEEK_API_KEY"
109
+ hosts = ["api.deepseek.com"]
110
+
111
+ # ── Cohere ──────────────────────────────────────────────────────────────────
112
+
113
+ [providers.cohere]
114
+ enabled = false
115
+ auth = "api_key"
116
+ env = "COHERE_API_KEY"
117
+ hosts = ["api.cohere.ai"]
118
+
119
+ # ── Perplexity ──────────────────────────────────────────────────────────────
120
+
121
+ [providers.perplexity]
122
+ enabled = false
123
+ auth = "api_key"
124
+ env = "PERPLEXITY_API_KEY"
125
+ hosts = ["api.perplexity.ai"]
126
+
127
+ # ── xAI (Grok) ─────────────────────────────────────────────────────────────
128
+
129
+ [providers.xai]
130
+ enabled = false
131
+ auth = "api_key"
132
+ env = "XAI_API_KEY"
133
+ hosts = ["api.x.ai"]
134
+
135
+ # ── Custom Provider ─────────────────────────────────────────────────────────
136
+ # Add your own provider. The setup script reads `hosts` to generate
137
+ # iptables rules and `env` to mount the key into the container.
138
+
139
+ # [providers.custom_provider]
140
+ # enabled = false
141
+ # auth = "api_key"
142
+ # env = "CUSTOM_API_KEY"
143
+ # hosts = ["api.custom-provider.com"]
144
+
145
+ # ─────────────────────────────────────────────────────────────────────────────
146
+ # USAGE:
147
+ #
148
+ # 1. Copy this file:
149
+ # cp credentials.template.toml ~/.arc402/worker/credentials.toml
150
+ #
151
+ # 2. Enable the providers you need:
152
+ # Set enabled = true for each provider you want
153
+ #
154
+ # 3. Set your API keys as environment variables:
155
+ # export ANTHROPIC_API_KEY="sk-ant-..."
156
+ # export OPENAI_API_KEY="sk-..."
157
+ #
158
+ # 4. Run workroom setup (reads credentials, generates network policy):
159
+ # arc402 workroom init
160
+ #
161
+ # 5. The workroom container will:
162
+ # - Receive your API keys as Docker env vars (never on disk)
163
+ # - Have iptables rules allowing only your enabled providers' hosts
164
+ # - Block all other outbound network traffic
165
+ #
166
+ # For OpenClaw users (Tier 1): skip all of this. OpenClaw handles it.
167
+ # ─────────────────────────────────────────────────────────────────────────────
@@ -0,0 +1,84 @@
1
+ #!/bin/bash
2
+ # ─────────────────────────────────────────────────────────────────────────────
3
+ # ARC-402 Policy Derivation — Auto-generate network policy from OpenClaw config
4
+ #
5
+ # Reads the OpenClaw configuration to determine which LLM providers are
6
+ # configured, then ensures those endpoints are in the workroom network policy.
7
+ #
8
+ # Usage: ./derive-policy.sh [openclaw-config-path] [policy-output-path]
9
+ # ─────────────────────────────────────────────────────────────────────────────
10
+ set -euo pipefail
11
+
12
+ OPENCLAW_CONFIG="${1:-$HOME/.openclaw/openclaw.json}"
13
+ POLICY_FILE="${2:-$HOME/.arc402/openshell-policy.yaml}"
14
+
15
+ # Known LLM provider → endpoint mapping
16
+ declare -A PROVIDER_HOSTS
17
+ PROVIDER_HOSTS=(
18
+ ["anthropic"]="api.anthropic.com"
19
+ ["openai"]="api.openai.com"
20
+ ["google"]="generativelanguage.googleapis.com"
21
+ ["mistral"]="api.mistral.ai"
22
+ ["groq"]="api.groq.com"
23
+ ["openrouter"]="openrouter.ai"
24
+ ["together"]="api.together.xyz"
25
+ ["fireworks"]="api.fireworks.ai"
26
+ ["deepseek"]="api.deepseek.com"
27
+ ["cohere"]="api.cohere.ai"
28
+ ["perplexity"]="api.perplexity.ai"
29
+ ["xai"]="api.x.ai"
30
+ )
31
+
32
+ if [ ! -f "$OPENCLAW_CONFIG" ]; then
33
+ echo "[derive-policy] OpenClaw config not found: $OPENCLAW_CONFIG"
34
+ exit 0
35
+ fi
36
+
37
+ if [ ! -f "$POLICY_FILE" ]; then
38
+ echo "[derive-policy] Policy file not found: $POLICY_FILE"
39
+ exit 1
40
+ fi
41
+
42
+ echo "[derive-policy] Reading OpenClaw config: $OPENCLAW_CONFIG"
43
+
44
+ # Extract configured providers from openclaw.json
45
+ # Look for provider keys in models/providers config
46
+ CONFIGURED_PROVIDERS=$(jq -r '
47
+ (.models // {} | keys[]) // empty,
48
+ (.providers // {} | keys[]) // empty
49
+ ' "$OPENCLAW_CONFIG" 2>/dev/null | sort -u)
50
+
51
+ ADDED=0
52
+ for provider in $CONFIGURED_PROVIDERS; do
53
+ # Normalize provider name (strip prefixes like "openai-codex" → "openai")
54
+ base_provider=$(echo "$provider" | sed 's/-.*//')
55
+
56
+ host="${PROVIDER_HOSTS[$base_provider]:-}"
57
+ if [ -z "$host" ]; then
58
+ continue
59
+ fi
60
+
61
+ # Check if host is already in the policy
62
+ if grep -q "$host" "$POLICY_FILE" 2>/dev/null; then
63
+ echo "[derive-policy] Already in policy: $host (for $provider)"
64
+ continue
65
+ fi
66
+
67
+ # Append to policy file
68
+ cat >> "$POLICY_FILE" << EOF
69
+ ${base_provider}_api:
70
+ name: ${base_provider}-llm-api
71
+ endpoints:
72
+ - host: ${host}
73
+ port: 443
74
+ protocol: rest
75
+ tls: terminate
76
+ enforcement: enforce
77
+ access: read-write
78
+ binaries: *a1
79
+ EOF
80
+ echo "[derive-policy] Added: $host (for $provider)"
81
+ ADDED=$((ADDED + 1))
82
+ done
83
+
84
+ echo "[derive-policy] Done. $ADDED new provider endpoints added to policy."
@@ -0,0 +1,57 @@
1
+ #!/bin/bash
2
+ # ─────────────────────────────────────────────────────────────────────────────
3
+ # ARC-402 Workroom DNS Refresh
4
+ #
5
+ # Periodically re-resolves policy hostnames and updates iptables rules.
6
+ # Handles CDN IP rotation, failover, and DNS changes without container restart.
7
+ #
8
+ # Runs as root in the background. The entrypoint starts this automatically.
9
+ # ─────────────────────────────────────────────────────────────────────────────
10
+ set -euo pipefail
11
+
12
+ readonly POLICY_FILE="${1:-/workroom/.arc402/openshell-policy.yaml}"
13
+ readonly REFRESH_INTERVAL="${ARC402_DNS_REFRESH_SECONDS:-300}"
14
+ readonly RULES_LOG="/workroom/.arc402/iptables-rules.log"
15
+
16
+ log() { echo "[dns-refresh] $*"; }
17
+
18
+ log "Starting (interval: ${REFRESH_INTERVAL}s, policy: $POLICY_FILE)"
19
+
20
+ while true; do
21
+ sleep "$REFRESH_INTERVAL"
22
+
23
+ log "Refreshing..."
24
+
25
+ # Flush and rebuild OUTPUT chain from scratch
26
+ # This is atomic from the kernel's perspective — no gap in enforcement.
27
+ iptables -F OUTPUT 2>/dev/null || true
28
+
29
+ # Core rules (always present)
30
+ iptables -A OUTPUT -o lo -j ACCEPT
31
+ iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
32
+ iptables -A OUTPUT -p udp --dport 53 -j ACCEPT
33
+ iptables -A OUTPUT -p tcp --dport 53 -j ACCEPT
34
+
35
+ # Re-resolve and apply
36
+ RULE_COUNT=0
37
+ while IFS=: read -r host port; do
38
+ [ -z "$host" ] && continue
39
+ port="${port:-443}"
40
+
41
+ ips=$(getent ahosts "$host" 2>/dev/null | awk '{print $1}' | sort -u || true)
42
+ if [ -z "$ips" ]; then
43
+ log "WARN: Could not resolve $host"
44
+ continue
45
+ fi
46
+
47
+ while IFS= read -r ip; do
48
+ iptables -A OUTPUT -p tcp -d "$ip" --dport "$port" -j ACCEPT
49
+ RULE_COUNT=$((RULE_COUNT + 1))
50
+ done <<< "$ips"
51
+ done < <(/policy-parser.sh "$POLICY_FILE")
52
+
53
+ # Log updated rules
54
+ iptables -L OUTPUT -n --line-numbers > "$RULES_LOG" 2>/dev/null || true
55
+
56
+ log "Refreshed: $RULE_COUNT rules applied"
57
+ done
@@ -0,0 +1,235 @@
1
+ #!/bin/bash
2
+ # ─────────────────────────────────────────────────────────────────────────────
3
+ # ARC-402 Workroom Entrypoint
4
+ #
5
+ # This is the governed execution environment for hired work. The entrypoint:
6
+ # 1. Reads the workroom policy (YAML → host:port pairs)
7
+ # 2. Resolves all hostnames to IPs while DNS is still open
8
+ # 3. Applies iptables rules: ALLOW resolved IPs, DROP everything else
9
+ # 4. Starts the DNS refresh daemon for IP rotation
10
+ # 5. Drops privileges and starts the ARC-402 daemon
11
+ #
12
+ # Runs as root for iptables setup. Drops to 'workroom' user for the daemon.
13
+ # ─────────────────────────────────────────────────────────────────────────────
14
+ set -euo pipefail
15
+
16
+ # ─── log() must be defined first — used throughout ────────────────────────────
17
+ log() { echo "[workroom] $*"; }
18
+
19
+ readonly POLICY_FILE="/workroom/.arc402/openshell-policy.yaml"
20
+ readonly RULES_LOG="/workroom/.arc402/iptables-rules.log"
21
+ readonly ARENA_POLICY="/workroom/.arc402/arena-policy.yaml"
22
+ readonly ARENA_DEFAULT="/workroom/defaults/arena-policy.yaml"
23
+
24
+ # ─── Locate globally installed arc402-cli (Linux-native binaries) ─────────────
25
+ # The image runs npm install -g arc402-cli --build-from-source at build time.
26
+ # We must always use this global install for native addons (better-sqlite3 etc.),
27
+ # never the host mount which carries macOS/Windows binaries.
28
+ GLOBAL_NPM_ROOT=$(npm root -g 2>/dev/null || echo "")
29
+ GLOBAL_CLI_ROOT="${GLOBAL_NPM_ROOT}/arc402-cli"
30
+ GLOBAL_DAEMON="${GLOBAL_CLI_ROOT}/dist/daemon/index.js"
31
+ log "Global npm root: ${GLOBAL_NPM_ROOT:-not found}"
32
+ log "Global cli root: ${GLOBAL_CLI_ROOT}"
33
+
34
+ # NODE_PATH: if a host dist/ is mounted (--dev mode), require() calls from it
35
+ # must still resolve native addons from the Linux global install.
36
+ # Set unconditionally — harmless if the mount doesn't exist.
37
+ if [ -d "${GLOBAL_CLI_ROOT}/node_modules" ]; then
38
+ export NODE_PATH="${GLOBAL_CLI_ROOT}/node_modules${NODE_PATH:+:$NODE_PATH}"
39
+ log "NODE_PATH → ${GLOBAL_CLI_ROOT}/node_modules (Linux-native addons)"
40
+ fi
41
+
42
+ # ─── Resolve daemon entry point ───────────────────────────────────────────────
43
+ # Production (no --dev mount): /workroom/runtime/dist/daemon/index.js won't exist.
44
+ # → use global install directly.
45
+ # Dev (--dev mount): mounted dist/ exists, global node_modules via NODE_PATH.
46
+ # → use mounted dist so JS changes propagate without rebuild.
47
+ if [ -f "/workroom/runtime/dist/daemon/index.js" ]; then
48
+ DAEMON_ENTRY="/workroom/runtime/dist/daemon/index.js"
49
+ log "Daemon: host dist/ mount (dev mode)"
50
+ elif [ -f "${GLOBAL_DAEMON}" ]; then
51
+ DAEMON_ENTRY="${GLOBAL_DAEMON}"
52
+ log "Daemon: global install (production)"
53
+ else
54
+ DAEMON_ENTRY=""
55
+ fi
56
+ readonly DAEMON_ENTRY
57
+
58
+ # ─── Validate prerequisites ────────────────────────────────────────────────
59
+
60
+ if [ ! -f "$POLICY_FILE" ]; then
61
+ log "ERROR: Policy file not found at $POLICY_FILE"
62
+ log "Run 'arc402 workroom init' on the host first."
63
+ exit 1
64
+ fi
65
+
66
+ # ─── Phase 0b: Auto-derive LLM provider endpoints from OpenClaw config ────
67
+ #
68
+ # If OpenClaw config is mounted, read it and ensure all configured LLM
69
+ # providers have their API endpoints in the network policy. This runs
70
+ # BEFORE host resolution so the derived hosts get resolved too.
71
+
72
+ OPENCLAW_CONFIG="/home/workroom/.openclaw/openclaw.json"
73
+ if [ -f "$OPENCLAW_CONFIG" ]; then
74
+ log "OpenClaw config found — deriving LLM provider endpoints..."
75
+ /derive-policy.sh "$OPENCLAW_CONFIG" "$POLICY_FILE" || log "WARN: Policy derivation failed (non-fatal)"
76
+ else
77
+ log "No OpenClaw config mounted — using static policy only"
78
+ fi
79
+
80
+ # ─── Phase 1: Resolve all policy hosts (DNS is still open) ─────────────────
81
+ #
82
+ # We resolve hostnames BEFORE applying the DROP policy. Once DROP is active,
83
+ # only explicitly allowed IPs are reachable. By resolving first, we capture
84
+ # the current DNS state into concrete IP rules.
85
+
86
+ declare -a RESOLVED_IPS=()
87
+ declare -a RESOLVED_PORTS=()
88
+ RESOLVE_COUNT=0
89
+
90
+ resolve_policy_hosts() {
91
+ local policy_file="$1"
92
+
93
+ while IFS=: read -r host port; do
94
+ [ -z "$host" ] && continue
95
+ port="${port:-443}"
96
+
97
+ local ips
98
+ ips=$(getent ahosts "$host" 2>/dev/null | awk '{print $1}' | sort -u || true)
99
+
100
+ if [ -z "$ips" ]; then
101
+ log "WARN: Could not resolve $host — skipping"
102
+ continue
103
+ fi
104
+
105
+ local ip_count
106
+ ip_count=$(echo "$ips" | wc -l | tr -d ' ')
107
+ log "Resolved: $host → $ip_count IPs"
108
+
109
+ while IFS= read -r ip; do
110
+ RESOLVED_IPS+=("$ip")
111
+ RESOLVED_PORTS+=("$port")
112
+ RESOLVE_COUNT=$((RESOLVE_COUNT + 1))
113
+ done <<< "$ips"
114
+ done < <(/policy-parser.sh "$policy_file")
115
+ }
116
+
117
+ log "Resolving policy hosts..."
118
+ resolve_policy_hosts "$POLICY_FILE"
119
+
120
+ # Also resolve arena policy if present
121
+ if [ -f "$ARENA_POLICY" ]; then
122
+ resolve_policy_hosts "$ARENA_POLICY"
123
+ elif [ -f "$ARENA_DEFAULT" ]; then
124
+ resolve_policy_hosts "$ARENA_DEFAULT"
125
+ fi
126
+
127
+ # ─── Phase 2: Apply network enforcement ────────────────────────────────────
128
+ #
129
+ # Default policy: DROP all outbound.
130
+ # Exceptions: loopback, established connections, DNS, and resolved policy hosts.
131
+ #
132
+ # DNS is allowed broadly (not just 127.0.0.11) because the daemon and worker
133
+ # need to resolve hostnames at runtime. The iptables rules restrict which IPs
134
+ # are reachable, so DNS resolution alone doesn't grant access — only hosts
135
+ # whose IPs match a rule can actually be connected to.
136
+
137
+ iptables -P OUTPUT DROP 2>/dev/null || true
138
+ iptables -F OUTPUT 2>/dev/null || true
139
+
140
+ # Core rules: loopback, established, DNS
141
+ iptables -A OUTPUT -o lo -j ACCEPT
142
+ iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
143
+ iptables -A OUTPUT -p udp --dport 53 -j ACCEPT
144
+ iptables -A OUTPUT -p tcp --dport 53 -j ACCEPT
145
+
146
+ log "Default policy: DROP all outbound (except loopback, established, DNS)"
147
+
148
+ # Apply resolved IP rules
149
+ for i in "${!RESOLVED_IPS[@]}"; do
150
+ iptables -A OUTPUT -p tcp -d "${RESOLVED_IPS[$i]}" --dport "${RESOLVED_PORTS[$i]}" -j ACCEPT
151
+ done
152
+
153
+ log "$RESOLVE_COUNT iptables rules applied"
154
+
155
+ # ─── Phase 3: Log applied rules ───────────────────────────────────────────
156
+
157
+ iptables -L OUTPUT -n --line-numbers > "$RULES_LOG" 2>/dev/null || true
158
+ log "Rules logged to $RULES_LOG"
159
+
160
+ # ─── Phase 4: Start DNS refresh daemon ─────────────────────────────────────
161
+ #
162
+ # Hostnames may resolve to different IPs over time (CDN rotation, failover).
163
+ # The refresh daemon re-resolves all policy hosts periodically and atomically
164
+ # updates iptables rules.
165
+
166
+ /dns-refresh.sh "$POLICY_FILE" &
167
+ local_dns_pid=$!
168
+ log "DNS refresh daemon started (PID: $local_dns_pid, interval: ${ARC402_DNS_REFRESH_SECONDS:-300}s)"
169
+
170
+ # ─── Phase 5: Validate daemon entry point ──────────────────────────────────
171
+
172
+ if [ -z "$DAEMON_ENTRY" ] || [ ! -f "$DAEMON_ENTRY" ]; then
173
+ log "ERROR: Daemon entry point not found."
174
+ log "Tried: /workroom/runtime/dist/daemon/index.js (host --dev mount)"
175
+ log "Tried: ${GLOBAL_DAEMON} (global npm install inside image)"
176
+ log "Rebuild the workroom image: arc402 workroom init"
177
+ exit 1
178
+ fi
179
+ log "Daemon entry: $DAEMON_ENTRY"
180
+
181
+ # ─── Phase 5b: Worker identity + agent runtimes on PATH ────────────────────
182
+
183
+ WORKER_DIR="/workroom/.arc402/worker"
184
+
185
+ # Verify worker identity
186
+ if [ -f "$WORKER_DIR/SOUL.md" ]; then
187
+ log "Worker SOUL.md: found"
188
+ else
189
+ log "WARN: No worker SOUL.md — agent will use generic identity"
190
+ log " Run 'arc402 worker init' on the host to create one"
191
+ fi
192
+
193
+ if [ -f "$WORKER_DIR/config.json" ]; then
194
+ WORKER_NAME=$(jq -r '.name // "unnamed"' "$WORKER_DIR/config.json" 2>/dev/null || echo "unnamed")
195
+ WORKER_CAPS=$(jq -r '.capabilities // [] | join(", ")' "$WORKER_DIR/config.json" 2>/dev/null || echo "none")
196
+ log "Worker: $WORKER_NAME | Capabilities: $WORKER_CAPS"
197
+ else
198
+ log "WARN: No worker config.json"
199
+ fi
200
+
201
+ # Check knowledge/datasets/skills directories
202
+ for dir in knowledge datasets skills; do
203
+ if [ -d "$WORKER_DIR/$dir" ]; then
204
+ count=$(find "$WORKER_DIR/$dir" -type f 2>/dev/null | wc -l)
205
+ log "Worker $dir/: $count files"
206
+ fi
207
+ done
208
+
209
+ # Add agent runtimes to PATH
210
+ PATH_ADDITIONS=""
211
+ # OpenClaw (preferred runtime)
212
+ if [ -d "/workroom/openclaw" ]; then
213
+ PATH_ADDITIONS="/workroom/openclaw:$PATH_ADDITIONS"
214
+ log "OpenClaw runtime found at /workroom/openclaw"
215
+ fi
216
+ # Claude Code
217
+ if [ -d "/workroom/claude-code" ]; then
218
+ PATH_ADDITIONS="/workroom/claude-code:$PATH_ADDITIONS"
219
+ log "Claude Code found at /workroom/claude-code"
220
+ fi
221
+ if [ -n "$PATH_ADDITIONS" ]; then
222
+ export PATH="$PATH_ADDITIONS$PATH"
223
+ fi
224
+
225
+ # Verify Claude auth
226
+ if [ -f "/home/workroom/.claude.json" ]; then
227
+ log "AUTH OK: Claude auth file found"
228
+ else
229
+ log "WARN: No Claude auth — mount -v ~/.claude.json:/home/workroom/.claude.json:ro"
230
+ fi
231
+
232
+ # ─── Phase 6: Drop privileges and start daemon ────────────────────────────
233
+
234
+ log "Starting ARC-402 daemon as user 'workroom'..."
235
+ exec su -s /bin/bash workroom -c "export PATH='$PATH' && export ARC402_WORKER_DIR='$WORKER_DIR' && node $DAEMON_ENTRY --foreground"
@@ -0,0 +1,25 @@
1
+ #!/bin/bash
2
+ # ─────────────────────────────────────────────────────────────────────────────
3
+ # ARC-402 Workroom Policy Parser
4
+ #
5
+ # Reads the workroom policy YAML and outputs HOST:PORT pairs, one per line.
6
+ # Used by the entrypoint and DNS refresh scripts to build iptables rules.
7
+ #
8
+ # Input: YAML file with network_policies.<name>.endpoints[].host/port
9
+ # Output: hostname:port (one per line, to stdout)
10
+ # ─────────────────────────────────────────────────────────────────────────────
11
+ set -euo pipefail
12
+
13
+ readonly POLICY_FILE="${1:-/workroom/.arc402/openshell-policy.yaml}"
14
+
15
+ if [ ! -f "$POLICY_FILE" ]; then
16
+ echo "ERROR: Policy file not found: $POLICY_FILE" >&2
17
+ exit 1
18
+ fi
19
+
20
+ # Extract host:port pairs from the YAML network_policies section.
21
+ # Each policy block contains endpoints with host and port fields.
22
+ awk '
23
+ /host:/ { gsub(/.*host: */, ""); host = $0 }
24
+ /port:/ { gsub(/.*port: */, ""); if (host != "") { print host ":" $0; host = "" } }
25
+ ' "$POLICY_FILE"