@factiii/runner 0.8.0 → 0.9.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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@factiii/runner",
3
- "version": "0.8.0",
3
+ "version": "0.9.0",
4
4
  "description": "Factiii Runner, run Board AI agents on a machine you control. Pairs with the Factiii web/mobile clients over WebRTC.",
5
5
  "license": "ISC",
6
6
  "keywords": [
@@ -10,7 +10,6 @@
10
10
  "ai",
11
11
  "agent",
12
12
  "webrtc",
13
- "docker",
14
13
  "cli"
15
14
  ],
16
15
  "engines": {
@@ -24,28 +23,32 @@
24
23
  },
25
24
  "files": [
26
25
  "dist/cli.js",
27
- "Dockerfile.claude",
26
+ "index/index.js",
27
+ "index/image-package.json",
28
28
  "vendor/frpc-linux-amd64",
29
29
  "vendor/frpc-linux-arm64",
30
+ "vendor/frpc-darwin-amd64",
31
+ "vendor/frpc-darwin-arm64",
30
32
  "README.md"
31
33
  ],
32
34
  "scripts": {
33
35
  "build": "node build.mjs",
36
+ "check-types": "tsc --noEmit",
37
+ "predev": "pnpm --filter @factiii/index build",
34
38
  "dev": "tsx src/cli.ts start",
35
39
  "dev:setup": "tsx src/cli.ts setup --server http://localhost:5001",
36
40
  "dev:status": "tsx src/cli.ts status",
37
41
  "start": "node dist/cli.js",
38
42
  "fetch:frpc": "bash scripts/fetch-frpc.sh",
39
- "pack": "node build.mjs && bash scripts/fetch-frpc.sh && pnpm pack",
40
- "prepublishOnly": "node build.mjs && bash scripts/fetch-frpc.sh"
43
+ "bundle:index": "pnpm --filter @factiii/index build && rm -rf index && cp -r ../index/image index",
44
+ "pack": "node build.mjs && pnpm bundle:index && bash scripts/fetch-frpc.sh && pnpm pack",
45
+ "prepublishOnly": "node build.mjs && pnpm bundle:index && bash scripts/fetch-frpc.sh"
41
46
  },
42
47
  "dependencies": {
43
- "dockerode": "^5.0.0",
44
48
  "node-datachannel": "^0.12.0"
45
49
  },
46
50
  "devDependencies": {
47
51
  "@shared/all": "workspace:*",
48
- "@types/dockerode": "^3.3.31",
49
52
  "@types/node": "^20.0.0",
50
53
  "commander": "^12.1.0",
51
54
  "esbuild": "*",
Binary file
Binary file
package/Dockerfile.claude DELETED
@@ -1,37 +0,0 @@
1
- FROM node:20-bookworm-slim
2
- # awscli + jq: general-purpose cloud/JSON CLIs for agent tasks. apt (system
3
- # PATH) so they aren't shadowed by the persistent /nix volume.
4
- RUN apt-get update && apt-get install -y --no-install-recommends \
5
- git bash sudo curl tmux ca-certificates xz-utils fuse3 awscli jq \
6
- && rm -rf /var/lib/apt/lists/*
7
- # Keep downloaded .debs so the /cache-backed apt archive persists across
8
- # sessions (debian-slim's docker-clean hook wipes them otherwise).
9
- RUN rm -f /etc/apt/apt.conf.d/docker-clean \
10
- && echo 'Binary::apt::APT::Keep-Downloaded-Packages "true";' \
11
- > /etc/apt/apt.conf.d/keep-cache
12
- RUN useradd -m -s /bin/bash claude \
13
- && echo "claude ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers
14
- # claude-code + codex (both agent providers) + the Vercel & Cloudflare
15
- # (wrangler) CLIs.
16
- RUN npm install -g @anthropic-ai/claude-code@~2.1.0 @openai/codex@~0.144.1 vercel wrangler
17
- RUN mkdir -p /cache && chown claude:claude /cache
18
-
19
- # Nix (single-user, owned by `claude`) for prebuilt runtime/tool installs at run
20
- # time: `nix profile install nixpkgs#<pkg>`. Pulls prebuilt binaries from the
21
- # Nix cache — databases included, no compiler. /nix is a persistent volume
22
- # (mounted by the runner) so installs are cached across sessions.
23
- RUN mkdir -m 0755 /nix && chown claude:claude /nix
24
-
25
- # frpc is `docker cp`'d in at runtime by the runner (only when public previews
26
- # are enabled). See shared/all/helpers/card-ai/frpc.ts.
27
-
28
- USER claude
29
- ENV USER=claude
30
- RUN curl -L https://nixos.org/nix/install | sh -s -- --no-daemon \
31
- && /home/claude/.nix-profile/bin/nix --version
32
- ENV PATH=/home/claude/.nix-profile/bin:/nix/var/nix/profiles/default/bin:$PATH
33
- ENV NIX_CONFIG="experimental-features = nix-command flakes"
34
- # Debian's apt rclone is ancient (v1.60-DEV) and botches OneDrive small-file
35
- # uploads (multipart "Unauthenticated"). Install the current build from nixpkgs.
36
- RUN nix profile install nixpkgs#rclone && rclone version | head -1
37
- WORKDIR /home/claude