qubicl-cli 0.1.0 → 0.2.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 CHANGED
@@ -1,62 +1,197 @@
1
- # Qubicl CLI
1
+ <div align="center">
2
2
 
3
- Qubicl is a local computer layer for AI agents. It gives a compatible MCP or OpenAPI client a private Docker computer with durable files, bounded terminal/process tools, keyless web research, optional Chromium/desktop workflows, and explicit human takeover. The model stays outside Qubicl.
3
+ <picture>
4
+ <source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/EldanRing/qubicl/main/assets/brand/qubicl-mark-dark.svg">
5
+ <img alt="Qubicl" src="https://raw.githubusercontent.com/EldanRing/qubicl/main/assets/brand/qubicl-mark.svg" width="180">
6
+ </picture>
4
7
 
5
- Qubicl `0.1.x` is the initial pre-1.0 release series. Interfaces and state
6
- formats may evolve; back up important homes before upgrades.
8
+ <h1>Qubicl</h1>
7
9
 
8
- Install and start onboarding with:
10
+ ### Give any AI agent a real, private computer on your machine.
11
+
12
+ Durable files. Terminal access. Web research. A persistent browser and desktop.
13
+ Human takeover whenever you want it. No Qubicl account, cloud control plane, or
14
+ model lock-in.
15
+
16
+ [![npm](https://img.shields.io/npm/v/qubicl-cli?color=cb3837&label=npm)](https://www.npmjs.com/package/qubicl-cli)
17
+ [![License](https://img.shields.io/badge/license-Apache--2.0-6f42c1)](https://github.com/EldanRing/qubicl/blob/main/LICENSE)
18
+ [![Node](https://img.shields.io/badge/node-22%20%7C%2024-339933)](https://github.com/EldanRing/qubicl/blob/main/package.json)
19
+ [![Docker](https://img.shields.io/badge/runtime-Docker-2496ED)](https://www.docker.com/)
20
+
21
+ </div>
22
+
23
+ ---
9
24
 
10
25
  ```sh
11
26
  npm install -g qubicl-cli
12
27
  qubicl setup
13
28
  ```
14
29
 
15
- The setup wizard uses ordinary numbered/text prompts. Type `back` to revisit the previous step or `cancel` to leave before confirmation without obtaining images or changing Qubicl state.
30
+ Qubicl turns local Docker into observable computers for external AI agents.
31
+ The agent stays in Codex, Claude, Open WebUI, Cursor, VS Code, or another MCP or
32
+ OpenAPI client. Qubicl supplies the machine it works on.
33
+
34
+ ```text
35
+ your model or agent
36
+
37
+ │ MCP / OpenAPI / Open Terminal
38
+
39
+ local-by-default Qubicl gateway
40
+
41
+ ├── terminal + managed processes
42
+ ├── durable, host-visible files
43
+ ├── keyless web search + local extraction
44
+ ├── persistent Chromium + desktop
45
+ ├── packaged, operator-controlled skills
46
+ └── live viewer + human takeover
47
+ ```
48
+
49
+ ## Why Qubicl
16
50
 
17
- Setup compares four progressive presets: lean headless `file-system` (1 CPU/512m), Openbox/Chromium `browser` with OCR and document inspection (2 CPU/2g), minimal-XFCE `computer` with document helpers and managed SSH (2 CPU/3g), and broad development/office `workstation` (2 CPU/4g). It validates a local Docker daemon, previews the exact image and resource effects, obtains only the selected image plus gateway, and optionally creates the first computer. Every image carries native keyless `web_search`, local `web_extract`, and the full compatible skill catalog. New computers activate `plan` on `file-system`; `plan`, `pdf`, and `ocr-and-documents` on `browser`; and all six core skills on `computer` and `workstation`.
51
+ | | |
52
+ | --- | --- |
53
+ | **Bring your own model** | One computer works with any compatible client. Switch models without rebuilding the workspace. |
54
+ | **See the work** | Watch the live desktop, take control, finish a task yourself, and hand the same session back. |
55
+ | **Keep the files** | The computer's `/home` is visible on the host and survives restarts, upgrades, and runtime recreation. |
56
+ | **Do more than code** | Terminal, Git, web research, browser automation, desktop apps, office workflows, previews, backups, and SSH. |
57
+ | **Control every computer** | Choose its resources, network policy, exposed tools, active skills, credentials, and lifecycle. |
58
+ | **Stay local** | No Qubicl account, telemetry backend, database, hosted daemon, or Docker socket inside the computer. |
18
59
 
19
- Connect without placing a bearer token in client configuration:
60
+ ## Quick start
61
+
62
+ Requirements: Node.js 22 or 24, Docker Engine 24.0 or Docker Desktop 4.29+, and
63
+ Docker Compose 2.24+. Directly tested hosts are Linux x64, Apple Silicon
64
+ macOS with Docker Desktop, and Windows 11 x64 through Ubuntu 24.04 on WSL 2
65
+ with Docker Desktop. Linux ARM64, Intel macOS, Windows on ARM, and other WSL 2
66
+ distributions are best-effort. Native Windows and WSL 1 are unsupported;
67
+ Qubicl computers remain Linux containers on every host. See the versioned
68
+ [Platform support](https://github.com/EldanRing/qubicl/blob/main/docs/platforms.md)
69
+ matrix before installing on a best-effort host.
20
70
 
21
71
  ```sh
72
+ qubicl setup
73
+ qubicl create computer-name --preset computer
22
74
  qubicl connect computer-name --client codex
75
+ ```
76
+
77
+ The setup wizard checks Docker, compares four progressive computer presets,
78
+ previews resource and image effects, obtains only the selected image plus the
79
+ gateway, and can create the first computer. Run Qubicl as your normal user,
80
+ never with `sudo`.
81
+
82
+ ## Computer presets
83
+
84
+ | Preset | Includes | Viewer | Suggested limit |
85
+ | --- | --- | :---: | ---: |
86
+ | `file-system` | Shell, processes, Git, durable files, web research | — | 1 CPU / 512m |
87
+ | `browser` | Everything above plus persistent Chromium, OCR, PDF inspection | ✓ | 2 CPU / 2g |
88
+ | `computer` | Browser plus a lightweight XFCE desktop, editors, document tools, SSH | ✓ | 2 CPU / 3g |
89
+ | `workstation` | Development and office environment with LibreOffice Writer, Calc, and Impress | ✓ | 2 CPU / 4g |
90
+
91
+ Every preset includes native keyless `web_search`, local `web_extract`, and
92
+ verified Qubicl-native skill baselines with durable, agent-editable working
93
+ copies. Operators choose the tools and skills each computer exposes:
94
+
95
+ ```sh
96
+ qubicl tools computer-name
97
+ qubicl skills computer-name
98
+ ```
99
+
100
+ Disabled tools disappear from MCP, OpenAPI, and Open Terminal, and cached calls
101
+ fail closed.
102
+
103
+ ## Connect any agent
104
+
105
+ ```sh
106
+ qubicl connect computer-name --client codex
107
+ qubicl connect computer-name --client claude-code
108
+ qubicl connect computer-name --client cursor
23
109
  qubicl connect computer-name --client opencode
24
110
  qubicl connect computer-name --client openclaw
25
111
  qubicl connect computer-name --client hermes-agent
112
+ qubicl connect computer-name --client open-webui
26
113
  ```
27
114
 
28
- Adapters are available for Codex, Claude Code, Claude Desktop, Cursor, VS Code, OpenCode, OpenClaw, Hermes Agent, Open WebUI, generic stdio, HTTP MCP, and OpenAPI. `connect` only prints setup instructions and never edits client files. HTTP/OpenAPI snippets point to the explicit `qubicl token show computer-name` command; they cannot print a raw token themselves.
115
+ Adapters cover Codex, Claude Code, Claude Desktop, Cursor, VS Code, OpenCode,
116
+ OpenClaw, Hermes Agent, Open WebUI, generic stdio and HTTP MCP, and direct
117
+ OpenAPI. `connect` prints configuration; it never edits client files or prints
118
+ a bearer token.
119
+
120
+ For Open WebUI, copy the generated configuration into **Admin Panel → Settings
121
+ → Integrations → Open Terminal**. Qubicl supplies native durable-file browsing,
122
+ bounded ZIP downloads, non-PTY managed processes, chat uploads, screenshots,
123
+ browser tools, and explicitly published local previews without joining Open
124
+ WebUI's Docker network.
29
125
 
30
- For a client on the same Linux/macOS host, Codex prints `codex mcp add qubicl-computer-name -- qubicl mcp computer-name`; Qubicl does not run it. When the client runs on Windows and Qubicl runs inside WSL 2, add `--client-host windows` to any stdio adapter. Qubicl then emits that client's normal configuration with a pinned `wsl.exe`, distribution, Node executable, and Qubicl entrypoint. For other clients, copy the printed configuration into the client yourself. The stdio bridge owns its fenced lease, so lease proofs are absent from model-visible tools. Optional `--profile files|browser-semantic|browser-visual|desktop` arguments select smaller static catalogs; `--result-mode structured|compatible` is available for clients that require a non-default MCP result representation.
126
+ The gateway remains on `127.0.0.1` unless the host operator explicitly adds a
127
+ second TLS-only listener with `qubicl gateway expose`. The opt-in uses the same
128
+ gateway container, requires certificate, interface, network, and trusted-origin
129
+ policy, and persists until `qubicl gateway revoke`; `0.0.0.0` additionally
130
+ requires `--all-interfaces`. Read the
131
+ [remote-access guide](https://github.com/EldanRing/qubicl/blob/main/docs/remote-access.md)
132
+ before enabling it.
31
133
 
32
- For a same-host Open WebUI, run `qubicl connect computer-name --client open-webui` and copy the printed fields into **Admin Panel → Settings → Integrations → Open Terminal**. The generated Docker Desktop URL uses `host.docker.internal`; replace it with `127.0.0.1` only when Open WebUI runs directly on the host. Retrieve the token separately and treat it as a password. The compatibility connection supplies native durable-file browsing and search, filesystem-backed chat uploads, lease-safe Qubicl/browser tools, native PNG screenshots, and explicitly published loopback port previews, but not an interactive PTY.
134
+ ## Review updates safely
33
135
 
34
- Every computer has an immutable ID, independent credentials, lease fencing, one explicit resource-bounded container, and a host-mounted `/home`. **Only `/home` is durable.** Files and packages elsewhere may disappear on recreation; use a compatible custom image for permanent system packages.
136
+ `qubicl status` shows pending exact curated gateway/default/computer targets.
137
+ `qubicl upgrade --all` prints the deduplicated targets, expected download and
138
+ expanded sizes, honest capacity limits, preserved runtime state, and roll-forward
139
+ order before confirmation. It acquires and inspects every target before the first
140
+ state or runtime mutation. Custom images remain manual.
35
141
 
36
- The gateway listens only on localhost. Computers receive no Docker socket, privileged mode, host namespaces, devices, added capabilities, or arbitrary host mounts. Browser-capable computers keep Chromium's Linux namespace and renderer seccomp-BPF sandboxes enabled through a constrained seccomp profile—without `--no-sandbox`, `SYS_ADMIN`, or an unconfined container. Controller and workload processes share the computer container, so takeover is a cooperative managed-process fence rather than a hostile-code boundary. Qubicl is not a VM-grade hostile-code sandbox.
142
+ Optional notices are local and default off:
37
143
 
38
- Requirements are Node.js `^22.14.0 || ^24.0.0`, Docker Engine 24.0 or
39
- Docker Desktop 4.29 or newer, and Docker Compose 2.24 or newer. Linux x64,
40
- Apple Silicon macOS with Docker Desktop, and Windows 11 x64 through Ubuntu
41
- 24.04 on WSL 2 with Docker Desktop are directly exercised for the first
42
- release. Linux ARM64, Intel macOS, Windows on ARM, and other WSL distributions
43
- are best-effort. Native Windows execution and WSL 1 are not supported, and
44
- Qubicl computers remain Linux containers on every host.
144
+ ```sh
145
+ qubicl config set --update-notifications on
146
+ ```
45
147
 
46
- Useful commands:
148
+ They compare only with the CLI's bundled catalog and never use telemetry, make a
149
+ network check, pull an image, or apply an update. `qubicl cleanup --orphans
150
+ [--images]` likewise previews exact verified candidates; Docker images and
151
+ volumes remain manual because daemon-global or name-only resources cannot be
152
+ proven exclusive to one installation.
153
+
154
+ ## Watch and take over
47
155
 
48
156
  ```sh
49
- qubicl help
50
- qubicl doctor --json
51
- qubicl list --json
52
- qubicl create computer-name --json
53
- qubicl upgrade computer-name --offline
54
- qubicl skills computer-name
55
- qubicl tools computer-name
56
- qubicl control release computer-name
57
- qubicl network show computer-name
58
- qubicl backup create computer-name --quiesce
59
- qubicl --version
157
+ qubicl view computer-name
60
158
  ```
61
159
 
62
- The source, security model, documentation, and Apache-2.0 license are in the [Qubicl repository](https://github.com/EldanRing/qubicl).
160
+ Observation is passive. **Take control** fences agent tools and terminates its
161
+ ordinary managed commands before handing you the keyboard and mouse. Persistent
162
+ browser and managed desktop applications remain visible so you can continue the
163
+ same task. Qubicl's green pointer shows the agent's latest desktop or browser
164
+ position in the viewer. The viewer states that Chromium's profile is durable
165
+ across restarts and upgrades. Current viewer images also require a
166
+ gateway-injected internal credential for noVNC files and WebSocket traffic and
167
+ expose no raw TCP VNC listener.
168
+
169
+ Agent-facing `browser_reset` is presented as **Reset tabs** and retains the
170
+ durable profile. A host operator can separately run `qubicl browser profile
171
+ wipe COMPUTER` to preview domains with stored cookies/site data and the exact
172
+ removal/preservation scope before explicit confirmation; Downloads remain.
173
+
174
+ ## Security boundary
175
+
176
+ Computers run without privileged mode, a Docker socket, host namespaces,
177
+ arbitrary mounts, or passwordless elevation. The gateway listens only on
178
+ `127.0.0.1` by default; explicit remote mode adds a separate TLS-only listener
179
+ without publishing computer ports. Qubicl is a Docker-based computer for trusted or
180
+ operator-supervised workloads, not a VM boundary against hostile code.
181
+
182
+ Read the complete [security model](https://github.com/EldanRing/qubicl/blob/main/docs/security-model.md)
183
+ before relying on the boundary.
184
+
185
+ Qubicl `0.1.x` is the initial public series. Interfaces and state formats may
186
+ evolve before 1.0. Linux x64, Apple Silicon macOS with Docker Desktop, and
187
+ Windows 11 x64 through Ubuntu 24.04 on WSL 2 with Docker Desktop are directly
188
+ tested. Linux ARM64, Intel macOS, Windows on ARM, and other WSL 2 distributions
189
+ remain best-effort. Native Windows and WSL 1 are unsupported; Qubicl computers
190
+ remain Linux containers on every host. Read the
191
+ [platform matrix](https://github.com/EldanRing/qubicl/blob/main/docs/platforms.md)
192
+ and [WSL guide](https://github.com/EldanRing/qubicl/blob/main/docs/wsl.md) for
193
+ the exact boundaries. Back up important computer homes before upgrades.
194
+
195
+ Explore the [source and full documentation](https://github.com/EldanRing/qubicl).
196
+ Source code and documentation are Apache-2.0. Designated Qubicl brand artwork
197
+ is CC BY 4.0.
@@ -2,22 +2,22 @@
2
2
  "spdxVersion": "SPDX-2.3",
3
3
  "dataLicense": "CC0-1.0",
4
4
  "SPDXID": "SPDXRef-DOCUMENT",
5
- "name": "qubicl-cli-0.1.0-npm-application",
6
- "documentNamespace": "https://github.com/EldanRing/qubicl/spdx/qubicl-cli/0.1.0/960bfafcc5e114f8c518e4a931b5172b7277292c/npm-application",
5
+ "name": "qubicl-cli-0.2.0-npm-application",
6
+ "documentNamespace": "https://github.com/EldanRing/qubicl/spdx/qubicl-cli/0.2.0/5e54dafceb7c28ca3bcf561e6281be3d7da976d5/npm-application",
7
7
  "creationInfo": {
8
- "created": "2026-08-27T03:44:45Z",
8
+ "created": "2026-08-30T04:44:30Z",
9
9
  "creators": [
10
10
  "Tool: qubicl-metafile-sbom-1"
11
11
  ]
12
12
  },
13
13
  "documentDescribes": [
14
- "SPDXRef-Package-qubicl-cli-0.1.0-d495f41fa330"
14
+ "SPDXRef-Package-qubicl-cli-0.2.0-e4e0b5a81a1f"
15
15
  ],
16
16
  "packages": [
17
17
  {
18
18
  "name": "qubicl-cli",
19
- "SPDXID": "SPDXRef-Package-qubicl-cli-0.1.0-d495f41fa330",
20
- "versionInfo": "0.1.0",
19
+ "SPDXID": "SPDXRef-Package-qubicl-cli-0.2.0-e4e0b5a81a1f",
20
+ "versionInfo": "0.2.0",
21
21
  "downloadLocation": "NOASSERTION",
22
22
  "filesAnalyzed": false,
23
23
  "licenseConcluded": "Apache-2.0",
@@ -27,7 +27,7 @@
27
27
  {
28
28
  "referenceCategory": "PACKAGE-MANAGER",
29
29
  "referenceType": "purl",
30
- "referenceLocator": "pkg:npm/qubicl-cli@0.1.0"
30
+ "referenceLocator": "pkg:npm/qubicl-cli@0.2.0"
31
31
  }
32
32
  ],
33
33
  "comment": "Qubicl npm-application application assembled from the recorded esbuild metafiles."
@@ -50,6 +50,24 @@
50
50
  ],
51
51
  "comment": "Bundled into: control."
52
52
  },
53
+ {
54
+ "name": "@isaacs/fs-minipass",
55
+ "SPDXID": "SPDXRef-Package-isaacs-fs-minipass-4.0.1-e29823829017",
56
+ "versionInfo": "4.0.1",
57
+ "downloadLocation": "NOASSERTION",
58
+ "filesAnalyzed": false,
59
+ "licenseConcluded": "ISC",
60
+ "licenseDeclared": "ISC",
61
+ "copyrightText": "NOASSERTION",
62
+ "externalRefs": [
63
+ {
64
+ "referenceCategory": "PACKAGE-MANAGER",
65
+ "referenceType": "purl",
66
+ "referenceLocator": "pkg:npm/%40isaacs/fs-minipass@4.0.1"
67
+ }
68
+ ],
69
+ "comment": "Bundled into: cli."
70
+ },
53
71
  {
54
72
  "name": "@modelcontextprotocol/core",
55
73
  "SPDXID": "SPDXRef-Package-modelcontextprotocol-core-2.0.0-546354de5e47",
@@ -104,6 +122,114 @@
104
122
  ],
105
123
  "comment": "Bundled into: cli, control."
106
124
  },
125
+ {
126
+ "name": "chownr",
127
+ "SPDXID": "SPDXRef-Package-chownr-3.0.0-833f419be73d",
128
+ "versionInfo": "3.0.0",
129
+ "downloadLocation": "NOASSERTION",
130
+ "filesAnalyzed": false,
131
+ "licenseConcluded": "BlueOak-1.0.0",
132
+ "licenseDeclared": "BlueOak-1.0.0",
133
+ "copyrightText": "NOASSERTION",
134
+ "externalRefs": [
135
+ {
136
+ "referenceCategory": "PACKAGE-MANAGER",
137
+ "referenceType": "purl",
138
+ "referenceLocator": "pkg:npm/chownr@3.0.0"
139
+ }
140
+ ],
141
+ "comment": "Bundled into: cli."
142
+ },
143
+ {
144
+ "name": "entities",
145
+ "SPDXID": "SPDXRef-Package-entities-8.0.0-2e887580fed6",
146
+ "versionInfo": "8.0.0",
147
+ "downloadLocation": "NOASSERTION",
148
+ "filesAnalyzed": false,
149
+ "licenseConcluded": "BSD-2-Clause",
150
+ "licenseDeclared": "BSD-2-Clause",
151
+ "copyrightText": "NOASSERTION",
152
+ "externalRefs": [
153
+ {
154
+ "referenceCategory": "PACKAGE-MANAGER",
155
+ "referenceType": "purl",
156
+ "referenceLocator": "pkg:npm/entities@8.0.0"
157
+ }
158
+ ],
159
+ "comment": "Bundled into: control."
160
+ },
161
+ {
162
+ "name": "fflate",
163
+ "SPDXID": "SPDXRef-Package-fflate-0.8.3-e40a8fa62b11",
164
+ "versionInfo": "0.8.3",
165
+ "downloadLocation": "NOASSERTION",
166
+ "filesAnalyzed": false,
167
+ "licenseConcluded": "MIT",
168
+ "licenseDeclared": "MIT",
169
+ "copyrightText": "NOASSERTION",
170
+ "externalRefs": [
171
+ {
172
+ "referenceCategory": "PACKAGE-MANAGER",
173
+ "referenceType": "purl",
174
+ "referenceLocator": "pkg:npm/fflate@0.8.3"
175
+ }
176
+ ],
177
+ "comment": "Bundled into: control."
178
+ },
179
+ {
180
+ "name": "minipass",
181
+ "SPDXID": "SPDXRef-Package-minipass-7.1.3-919212b49551",
182
+ "versionInfo": "7.1.3",
183
+ "downloadLocation": "NOASSERTION",
184
+ "filesAnalyzed": false,
185
+ "licenseConcluded": "BlueOak-1.0.0",
186
+ "licenseDeclared": "BlueOak-1.0.0",
187
+ "copyrightText": "NOASSERTION",
188
+ "externalRefs": [
189
+ {
190
+ "referenceCategory": "PACKAGE-MANAGER",
191
+ "referenceType": "purl",
192
+ "referenceLocator": "pkg:npm/minipass@7.1.3"
193
+ }
194
+ ],
195
+ "comment": "Bundled into: cli."
196
+ },
197
+ {
198
+ "name": "minizlib",
199
+ "SPDXID": "SPDXRef-Package-minizlib-3.1.0-9d2296e811f3",
200
+ "versionInfo": "3.1.0",
201
+ "downloadLocation": "NOASSERTION",
202
+ "filesAnalyzed": false,
203
+ "licenseConcluded": "MIT",
204
+ "licenseDeclared": "MIT",
205
+ "copyrightText": "NOASSERTION",
206
+ "externalRefs": [
207
+ {
208
+ "referenceCategory": "PACKAGE-MANAGER",
209
+ "referenceType": "purl",
210
+ "referenceLocator": "pkg:npm/minizlib@3.1.0"
211
+ }
212
+ ],
213
+ "comment": "Bundled into: cli."
214
+ },
215
+ {
216
+ "name": "parse5",
217
+ "SPDXID": "SPDXRef-Package-parse5-8.0.1-e18dc8ba2437",
218
+ "versionInfo": "8.0.1",
219
+ "downloadLocation": "NOASSERTION",
220
+ "filesAnalyzed": false,
221
+ "licenseConcluded": "MIT",
222
+ "licenseDeclared": "MIT",
223
+ "copyrightText": "NOASSERTION",
224
+ "externalRefs": [
225
+ {
226
+ "referenceCategory": "PACKAGE-MANAGER",
227
+ "referenceType": "purl",
228
+ "referenceLocator": "pkg:npm/parse5@8.0.1"
229
+ }
230
+ ],
231
+ "comment": "Bundled into: control."
232
+ },
107
233
  {
108
234
  "name": "playwright-core",
109
235
  "SPDXID": "SPDXRef-Package-playwright-core-1.62.1-6e887f47565b",
@@ -124,8 +250,8 @@
124
250
  },
125
251
  {
126
252
  "name": "qubicl-core-skill-adaptations",
127
- "SPDXID": "SPDXRef-Package-qubicl-core-skill-adaptations-0.1.0-a8cccccd5bcc",
128
- "versionInfo": "0.1.0",
253
+ "SPDXID": "SPDXRef-Package-qubicl-core-skill-adaptations-0.2.0-29cfb4803a60",
254
+ "versionInfo": "0.2.0",
129
255
  "downloadLocation": "https://github.com/EldanRing/qubicl",
130
256
  "filesAnalyzed": false,
131
257
  "licenseConcluded": "MIT",
@@ -135,11 +261,47 @@
135
261
  {
136
262
  "referenceCategory": "PACKAGE-MANAGER",
137
263
  "referenceType": "purl",
138
- "referenceLocator": "pkg:github/EldanRing/qubicl@960bfafcc5e114f8c518e4a931b5172b7277292c"
264
+ "referenceLocator": "pkg:github/EldanRing/qubicl@5e54dafceb7c28ca3bcf561e6281be3d7da976d5"
139
265
  }
140
266
  ],
141
267
  "comment": "Six Qubicl-native core skills, with selected MIT-licensed helpers adapted from hermes-agent@7d6db4efb885856078e4d19f804035226df81e0d; Hermes Agent is not installed."
142
268
  },
269
+ {
270
+ "name": "tar",
271
+ "SPDXID": "SPDXRef-Package-tar-7.5.22-60084ba1dfc1",
272
+ "versionInfo": "7.5.22",
273
+ "downloadLocation": "NOASSERTION",
274
+ "filesAnalyzed": false,
275
+ "licenseConcluded": "BlueOak-1.0.0",
276
+ "licenseDeclared": "BlueOak-1.0.0",
277
+ "copyrightText": "NOASSERTION",
278
+ "externalRefs": [
279
+ {
280
+ "referenceCategory": "PACKAGE-MANAGER",
281
+ "referenceType": "purl",
282
+ "referenceLocator": "pkg:npm/tar@7.5.22"
283
+ }
284
+ ],
285
+ "comment": "Bundled into: cli."
286
+ },
287
+ {
288
+ "name": "yallist",
289
+ "SPDXID": "SPDXRef-Package-yallist-5.0.0-4a8b5707001b",
290
+ "versionInfo": "5.0.0",
291
+ "downloadLocation": "NOASSERTION",
292
+ "filesAnalyzed": false,
293
+ "licenseConcluded": "BlueOak-1.0.0",
294
+ "licenseDeclared": "BlueOak-1.0.0",
295
+ "copyrightText": "NOASSERTION",
296
+ "externalRefs": [
297
+ {
298
+ "referenceCategory": "PACKAGE-MANAGER",
299
+ "referenceType": "purl",
300
+ "referenceLocator": "pkg:npm/yallist@5.0.0"
301
+ }
302
+ ],
303
+ "comment": "Bundled into: cli."
304
+ },
143
305
  {
144
306
  "name": "yaml",
145
307
  "SPDXID": "SPDXRef-Package-yaml-2.9.0-be80181ebffd",
@@ -179,42 +341,87 @@
179
341
  ],
180
342
  "relationships": [
181
343
  {
182
- "spdxElementId": "SPDXRef-Package-qubicl-cli-0.1.0-d495f41fa330",
344
+ "spdxElementId": "SPDXRef-Package-qubicl-cli-0.2.0-e4e0b5a81a1f",
183
345
  "relationshipType": "DEPENDS_ON",
184
346
  "relatedSpdxElement": "SPDXRef-Package-hono-node-server-1.19.17-1838a11ef509"
185
347
  },
186
348
  {
187
- "spdxElementId": "SPDXRef-Package-qubicl-cli-0.1.0-d495f41fa330",
349
+ "spdxElementId": "SPDXRef-Package-qubicl-cli-0.2.0-e4e0b5a81a1f",
350
+ "relationshipType": "DEPENDS_ON",
351
+ "relatedSpdxElement": "SPDXRef-Package-isaacs-fs-minipass-4.0.1-e29823829017"
352
+ },
353
+ {
354
+ "spdxElementId": "SPDXRef-Package-qubicl-cli-0.2.0-e4e0b5a81a1f",
188
355
  "relationshipType": "DEPENDS_ON",
189
356
  "relatedSpdxElement": "SPDXRef-Package-modelcontextprotocol-core-2.0.0-546354de5e47"
190
357
  },
191
358
  {
192
- "spdxElementId": "SPDXRef-Package-qubicl-cli-0.1.0-d495f41fa330",
359
+ "spdxElementId": "SPDXRef-Package-qubicl-cli-0.2.0-e4e0b5a81a1f",
193
360
  "relationshipType": "DEPENDS_ON",
194
361
  "relatedSpdxElement": "SPDXRef-Package-modelcontextprotocol-node-2.0.0-cc861036891c"
195
362
  },
196
363
  {
197
- "spdxElementId": "SPDXRef-Package-qubicl-cli-0.1.0-d495f41fa330",
364
+ "spdxElementId": "SPDXRef-Package-qubicl-cli-0.2.0-e4e0b5a81a1f",
198
365
  "relationshipType": "DEPENDS_ON",
199
366
  "relatedSpdxElement": "SPDXRef-Package-modelcontextprotocol-server-2.0.0-39f69d3701b8"
200
367
  },
201
368
  {
202
- "spdxElementId": "SPDXRef-Package-qubicl-cli-0.1.0-d495f41fa330",
369
+ "spdxElementId": "SPDXRef-Package-qubicl-cli-0.2.0-e4e0b5a81a1f",
370
+ "relationshipType": "DEPENDS_ON",
371
+ "relatedSpdxElement": "SPDXRef-Package-chownr-3.0.0-833f419be73d"
372
+ },
373
+ {
374
+ "spdxElementId": "SPDXRef-Package-qubicl-cli-0.2.0-e4e0b5a81a1f",
375
+ "relationshipType": "DEPENDS_ON",
376
+ "relatedSpdxElement": "SPDXRef-Package-entities-8.0.0-2e887580fed6"
377
+ },
378
+ {
379
+ "spdxElementId": "SPDXRef-Package-qubicl-cli-0.2.0-e4e0b5a81a1f",
380
+ "relationshipType": "DEPENDS_ON",
381
+ "relatedSpdxElement": "SPDXRef-Package-fflate-0.8.3-e40a8fa62b11"
382
+ },
383
+ {
384
+ "spdxElementId": "SPDXRef-Package-qubicl-cli-0.2.0-e4e0b5a81a1f",
385
+ "relationshipType": "DEPENDS_ON",
386
+ "relatedSpdxElement": "SPDXRef-Package-minipass-7.1.3-919212b49551"
387
+ },
388
+ {
389
+ "spdxElementId": "SPDXRef-Package-qubicl-cli-0.2.0-e4e0b5a81a1f",
390
+ "relationshipType": "DEPENDS_ON",
391
+ "relatedSpdxElement": "SPDXRef-Package-minizlib-3.1.0-9d2296e811f3"
392
+ },
393
+ {
394
+ "spdxElementId": "SPDXRef-Package-qubicl-cli-0.2.0-e4e0b5a81a1f",
395
+ "relationshipType": "DEPENDS_ON",
396
+ "relatedSpdxElement": "SPDXRef-Package-parse5-8.0.1-e18dc8ba2437"
397
+ },
398
+ {
399
+ "spdxElementId": "SPDXRef-Package-qubicl-cli-0.2.0-e4e0b5a81a1f",
203
400
  "relationshipType": "DEPENDS_ON",
204
401
  "relatedSpdxElement": "SPDXRef-Package-playwright-core-1.62.1-6e887f47565b"
205
402
  },
206
403
  {
207
- "spdxElementId": "SPDXRef-Package-qubicl-cli-0.1.0-d495f41fa330",
404
+ "spdxElementId": "SPDXRef-Package-qubicl-cli-0.2.0-e4e0b5a81a1f",
405
+ "relationshipType": "DEPENDS_ON",
406
+ "relatedSpdxElement": "SPDXRef-Package-qubicl-core-skill-adaptations-0.2.0-29cfb4803a60"
407
+ },
408
+ {
409
+ "spdxElementId": "SPDXRef-Package-qubicl-cli-0.2.0-e4e0b5a81a1f",
410
+ "relationshipType": "DEPENDS_ON",
411
+ "relatedSpdxElement": "SPDXRef-Package-tar-7.5.22-60084ba1dfc1"
412
+ },
413
+ {
414
+ "spdxElementId": "SPDXRef-Package-qubicl-cli-0.2.0-e4e0b5a81a1f",
208
415
  "relationshipType": "DEPENDS_ON",
209
- "relatedSpdxElement": "SPDXRef-Package-qubicl-core-skill-adaptations-0.1.0-a8cccccd5bcc"
416
+ "relatedSpdxElement": "SPDXRef-Package-yallist-5.0.0-4a8b5707001b"
210
417
  },
211
418
  {
212
- "spdxElementId": "SPDXRef-Package-qubicl-cli-0.1.0-d495f41fa330",
419
+ "spdxElementId": "SPDXRef-Package-qubicl-cli-0.2.0-e4e0b5a81a1f",
213
420
  "relationshipType": "DEPENDS_ON",
214
421
  "relatedSpdxElement": "SPDXRef-Package-yaml-2.9.0-be80181ebffd"
215
422
  },
216
423
  {
217
- "spdxElementId": "SPDXRef-Package-qubicl-cli-0.1.0-d495f41fa330",
424
+ "spdxElementId": "SPDXRef-Package-qubicl-cli-0.2.0-e4e0b5a81a1f",
218
425
  "relationshipType": "DEPENDS_ON",
219
426
  "relatedSpdxElement": "SPDXRef-Package-zod-4.4.3-0479f5dfed7f"
220
427
  }