@rmbk/compeek 0.2.0 → 0.2.2
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 +13 -21
- package/bin/compeek.mjs +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -4,7 +4,9 @@
|
|
|
4
4
|
|
|
5
5
|
**No APIs. No plugins. No integrations. Just screen and keyboard.**
|
|
6
6
|
|
|
7
|
-
[Dashboard](https://compeek.rmbk.me) | [Docker Image](https://ghcr.io/uburuntu/compeek) | [npm](https://www.npmjs.com/package/compeek)
|
|
7
|
+
[Dashboard](https://compeek.rmbk.me) | [Docker Image](https://ghcr.io/uburuntu/compeek) | [npm](https://www.npmjs.com/package/@rmbk/compeek)
|
|
8
|
+
|
|
9
|
+

|
|
8
10
|
|
|
9
11
|
## Quick Start
|
|
10
12
|
|
|
@@ -13,7 +15,7 @@
|
|
|
13
15
|
curl -fsSL https://compeek.rmbk.me/install.sh | bash
|
|
14
16
|
|
|
15
17
|
# Or via npx
|
|
16
|
-
npx compeek start --open
|
|
18
|
+
npx @rmbk/compeek start --open
|
|
17
19
|
|
|
18
20
|
# Or docker directly
|
|
19
21
|
docker run -d -p 3001:3000 -p 6081:6080 --shm-size=512m ghcr.io/uburuntu/compeek
|
|
@@ -36,17 +38,7 @@ Open the [dashboard](https://compeek.rmbk.me), paste your Anthropic API key in S
|
|
|
36
38
|
|
|
37
39
|
## Architecture
|
|
38
40
|
|
|
39
|
-
|
|
40
|
-
Browser (React dashboard) Docker Container
|
|
41
|
-
┌──────────────────────┐ ┌──────────────────────┐
|
|
42
|
-
│ Agent Loop │ │ Xvfb + Mutter │
|
|
43
|
-
│ ├─ Anthropic API │ HTTP │ ├─ Firefox │
|
|
44
|
-
│ └─ Tool dispatch ───┼─────────┼─▸ Tool Server :3000 │
|
|
45
|
-
│ │ │ │ └─ xdotool/scrot │
|
|
46
|
-
│ Session Manager │ │ ├─ noVNC :6080 │
|
|
47
|
-
│ Settings (API key) │ │ └─ VNC :5900 │
|
|
48
|
-
└──────────────────────┘ └──────────────────────┘
|
|
49
|
-
```
|
|
41
|
+

|
|
50
42
|
|
|
51
43
|
The agent loop runs **in the browser** — it calls the Anthropic API directly and sends mouse/keyboard commands to Docker containers via HTTP. Each container is a stateless virtual desktop with a lightweight tool server. No backend needed.
|
|
52
44
|
|
|
@@ -62,7 +54,7 @@ Set `DESKTOP_MODE` when starting a container:
|
|
|
62
54
|
| `headless` | Xvfb + tool server only | API-only, bash commands only |
|
|
63
55
|
|
|
64
56
|
```bash
|
|
65
|
-
npx compeek start --mode browser
|
|
57
|
+
npx @rmbk/compeek start --mode browser
|
|
66
58
|
# or
|
|
67
59
|
docker run -d -e DESKTOP_MODE=browser -p 3001:3000 -p 6081:6080 --shm-size=512m ghcr.io/uburuntu/compeek
|
|
68
60
|
```
|
|
@@ -84,13 +76,13 @@ Three ways to connect:
|
|
|
84
76
|
## CLI
|
|
85
77
|
|
|
86
78
|
```bash
|
|
87
|
-
npx compeek start # Pull image, start container, print connection info
|
|
88
|
-
npx compeek start --open # Same + open dashboard in browser
|
|
89
|
-
npx compeek stop # Stop all compeek containers
|
|
90
|
-
npx compeek stop 1 # Stop compeek-1
|
|
91
|
-
npx compeek status # List running containers
|
|
92
|
-
npx compeek logs # Follow container logs
|
|
93
|
-
npx compeek open # Open dashboard with auto-connect URL
|
|
79
|
+
npx @rmbk/compeek start # Pull image, start container, print connection info
|
|
80
|
+
npx @rmbk/compeek start --open # Same + open dashboard in browser
|
|
81
|
+
npx @rmbk/compeek stop # Stop all compeek containers
|
|
82
|
+
npx @rmbk/compeek stop 1 # Stop compeek-1
|
|
83
|
+
npx @rmbk/compeek status # List running containers
|
|
84
|
+
npx @rmbk/compeek logs # Follow container logs
|
|
85
|
+
npx @rmbk/compeek open # Open dashboard with auto-connect URL
|
|
94
86
|
```
|
|
95
87
|
|
|
96
88
|
Flags for `start`: `--name`, `--api-port`, `--vnc-port`, `--mode`, `--no-pull`, `--open`.
|
package/bin/compeek.mjs
CHANGED
|
@@ -149,7 +149,7 @@ async function cmdStart(args) {
|
|
|
149
149
|
`--shm-size=512m`,
|
|
150
150
|
`-e DISPLAY=:1`,
|
|
151
151
|
`-e DESKTOP_MODE=${mode}`,
|
|
152
|
-
`-e COMPEEK_SESSION_NAME
|
|
152
|
+
`-e COMPEEK_SESSION_NAME="${sessionName}"`,
|
|
153
153
|
`--security-opt seccomp=unconfined`,
|
|
154
154
|
IMAGE,
|
|
155
155
|
].join(' '));
|
package/package.json
CHANGED