@factiii/runner 0.7.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/README.md +28 -6
- package/dist/cli.js +7564 -5611
- package/index/image-package.json +8 -0
- package/index/index.js +93955 -0
- package/package.json +10 -7
- package/vendor/frpc-darwin-amd64 +0 -0
- package/vendor/frpc-darwin-arm64 +0 -0
- package/Dockerfile.claude +0 -36
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@factiii/runner",
|
|
3
|
-
"version": "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
|
-
"
|
|
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
|
-
"
|
|
40
|
-
"
|
|
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,36 +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 + the Vercel & Cloudflare (wrangler) CLIs.
|
|
15
|
-
RUN npm install -g @anthropic-ai/claude-code@~2.1.0 vercel wrangler
|
|
16
|
-
RUN mkdir -p /cache && chown claude:claude /cache
|
|
17
|
-
|
|
18
|
-
# Nix (single-user, owned by `claude`) for prebuilt runtime/tool installs at run
|
|
19
|
-
# time: `nix profile install nixpkgs#<pkg>`. Pulls prebuilt binaries from the
|
|
20
|
-
# Nix cache — databases included, no compiler. /nix is a persistent volume
|
|
21
|
-
# (mounted by the runner) so installs are cached across sessions.
|
|
22
|
-
RUN mkdir -m 0755 /nix && chown claude:claude /nix
|
|
23
|
-
|
|
24
|
-
# frpc is `docker cp`'d in at runtime by the runner (only when public previews
|
|
25
|
-
# are enabled). See shared/all/helpers/card-ai/frpc.ts.
|
|
26
|
-
|
|
27
|
-
USER claude
|
|
28
|
-
ENV USER=claude
|
|
29
|
-
RUN curl -L https://nixos.org/nix/install | sh -s -- --no-daemon \
|
|
30
|
-
&& /home/claude/.nix-profile/bin/nix --version
|
|
31
|
-
ENV PATH=/home/claude/.nix-profile/bin:/nix/var/nix/profiles/default/bin:$PATH
|
|
32
|
-
ENV NIX_CONFIG="experimental-features = nix-command flakes"
|
|
33
|
-
# Debian's apt rclone is ancient (v1.60-DEV) and botches OneDrive small-file
|
|
34
|
-
# uploads (multipart "Unauthenticated"). Install the current build from nixpkgs.
|
|
35
|
-
RUN nix profile install nixpkgs#rclone && rclone version | head -1
|
|
36
|
-
WORKDIR /home/claude
|