visionclaw 0.1.185-beta.7 → 0.1.185-beta.8
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/dist/agent/runtime-credentials.d.ts.map +1 -1
- package/dist/agent/runtime-credentials.js +11 -7
- package/dist/agent/runtime-credentials.js.map +1 -1
- package/dist/builtin-skills/cloudflare-tunnel/SKILL.md +38 -0
- package/dist/builtin-skills/visionclaw-manual/SKILL.md +1 -1
- package/dist-agent/bundle.cjs +7 -4
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime-credentials.d.ts","sourceRoot":"","sources":["../../src/agent/runtime-credentials.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAUH,OAAO,KAAK,EACV,kBAAkB,EAEnB,MAAM,4CAA4C,CAAC;AAEpD,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;
|
|
1
|
+
{"version":3,"file":"runtime-credentials.d.ts","sourceRoot":"","sources":["../../src/agent/runtime-credentials.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAUH,OAAO,KAAK,EACV,kBAAkB,EAEnB,MAAM,4CAA4C,CAAC;AAEpD,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AA4JD,MAAM,WAAW,6BAA6B;IAC5C,aAAa,EAAE,OAAO,CAAC;IACvB,MAAM,EAAE,4BAA4B,GAAG,IAAI,CAAC;CAC7C;AAED,MAAM,WAAW,8BAA8B;IAC7C;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,kBAAkB,GAAG,SAAS,EACtC,OAAO,GAAE,8BAAmC,GAC3C,6BAA6B,CAoB/B;AAED,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;;GAIG;AACH,wBAAgB,0BAA0B,IAAI,4BAA4B,GAAG,IAAI,CAEhF;AAED;;;;;;;GAOG;AACH,wBAAgB,0BAA0B,IAAI,6BAA6B,GAAG,IAAI,CAwDjF;AAED;;GAEG;AACH,wBAAgB,qCAAqC,IAAI,IAAI,CAG5D"}
|
|
@@ -55,14 +55,18 @@ function buildTunnelHostname(cred) {
|
|
|
55
55
|
return name;
|
|
56
56
|
return `${name}.${base}`;
|
|
57
57
|
}
|
|
58
|
-
/**
|
|
59
|
-
* Canonical form for comparing an agent name to a tunnel name. Mirrors
|
|
60
|
-
* `normalizeAgentName()` in `services/onboarding/src/lib/db.ts` so both
|
|
61
|
-
* sides agree on what "same name" means without needing a shared module.
|
|
62
|
-
*/
|
|
58
|
+
/** Canonical DB slug form. */
|
|
63
59
|
function normalizeAgentName(name) {
|
|
64
60
|
return name.trim().toLowerCase().replace(/\s+/g, "-");
|
|
65
61
|
}
|
|
62
|
+
/**
|
|
63
|
+
* Canonical OBS tunnel-name form. Mirrors onboarding's
|
|
64
|
+
* `normalizeAgentName(...).replace(/-/g, "")`, so agent `holling-pugh`
|
|
65
|
+
* expects tunnel `hollingpugh`.
|
|
66
|
+
*/
|
|
67
|
+
function canonicalObsTunnelName(name) {
|
|
68
|
+
return normalizeAgentName(name).replace(/-/g, "");
|
|
69
|
+
}
|
|
66
70
|
/**
|
|
67
71
|
* Best-effort directory creation with restrictive permissions. Chmod is not
|
|
68
72
|
* supported on Windows for directories in the same way as POSIX, so we
|
|
@@ -111,8 +115,8 @@ function applyTunnelCredential(cred, agentName) {
|
|
|
111
115
|
throw new Error("Runtime tunnel credential has empty credentialsJson");
|
|
112
116
|
}
|
|
113
117
|
if (agentName !== undefined && agentName.trim() !== "") {
|
|
114
|
-
const expected =
|
|
115
|
-
const actual =
|
|
118
|
+
const expected = canonicalObsTunnelName(agentName);
|
|
119
|
+
const actual = canonicalObsTunnelName(tunnelName);
|
|
116
120
|
if (expected !== actual) {
|
|
117
121
|
throw new Error(`Runtime tunnel credential tunnelName "${tunnelName}" does not match ` +
|
|
118
122
|
`agent name "${agentName}"; refusing to materialize`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime-credentials.js","sourceRoot":"","sources":["../../src/agent/runtime-credentials.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EACL,mBAAmB,EACnB,0BAA0B,EAC1B,+BAA+B,GAChC,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAetC;;;;GAIG;AACH,IAAI,aAAa,GAAwC,IAAI,CAAC;AAE9D;;;;GAIG;AACH,IAAI,4BAA4B,GAAkB,IAAI,CAAC;AAEvD,SAAS,sBAAsB,CAAC,IAA6B;IAC3D,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QAC3D,OAAO,KAAK,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,OAAO,IAAI,CAAC,QAAQ,SAAS,IAAI,CAAC,UAAU,EAAE,CAAC;IACtF,CAAC;IACD,sEAAsE;IACtE,sEAAsE;IACtE,wEAAwE;IACxE,OAAO,OAAO,IAAI,CAAC,eAAe,CAAC,MAAM,OAAO,IAAI,CAAC,QAAQ,SAAS,IAAI,CAAC,UAAU,SAAS,IAAI,CAAC,YAAY,EAAE,CAAC;AACpH,CAAC;AAED,SAAS,mBAAmB,CAAC,IAA6B;IACxD,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;IACpC,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;IAChE,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IACvB,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IACvB,OAAO,GAAG,IAAI,IAAI,IAAI,EAAE,CAAC;AAC3B,CAAC;AAED
|
|
1
|
+
{"version":3,"file":"runtime-credentials.js","sourceRoot":"","sources":["../../src/agent/runtime-credentials.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Use this skill when the user asks you to expose a local service (web app, API, dashboard, port) to the internet on a public URL, add or change a tunnel hostname, or edit the Cloudflare Tunnel ingress.
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# Cloudflare Tunnel (pre-provisioned)
|
|
6
|
+
|
|
7
|
+
A Cloudflare Tunnel is already set up for you. You do NOT run `cloudflared tunnel login`, `create`, `delete`, or `route dns`, and you do NOT touch the credentials JSON.
|
|
8
|
+
|
|
9
|
+
## What you own
|
|
10
|
+
|
|
11
|
+
- **Config file**: `~/.visionclaw/profiles/default/tunnel/config.yml` (replace `default` if needed).
|
|
12
|
+
- **Your wildcard**: `*.<tunnelname>.visionclawobs.com` — any label is already DNS-routed to your tunnel.
|
|
13
|
+
- **Your tunnel name**: the first label of the existing `*.visionclawobs.com` hostname inside `config.yml`.
|
|
14
|
+
|
|
15
|
+
The apex `<tunnelname>.visionclawobs.com` is reserved for the obs console — leave that ingress rule alone.
|
|
16
|
+
|
|
17
|
+
## Expose a new local service
|
|
18
|
+
|
|
19
|
+
1. Append an ingress rule for your new subdomain **above** the catch-all `http_status:404` (must stay last):
|
|
20
|
+
```yaml
|
|
21
|
+
ingress:
|
|
22
|
+
- hostname: jessica.visionclawobs.com # existing — do not touch
|
|
23
|
+
service: http://localhost:3101
|
|
24
|
+
- hostname: app.jessica.visionclawobs.com # new
|
|
25
|
+
service: http://localhost:8080
|
|
26
|
+
- service: http_status:404 # keep LAST
|
|
27
|
+
```
|
|
28
|
+
2. Make sure the local service is actually running on the port you referenced. If it relies on `pm2`, confirm via `pm2 list` before moving on.
|
|
29
|
+
3. Notify the user of the new URL and tell them you are about to restart to apply it (a restart blips every channel for ~10–15 seconds, so don't do this in the middle of a critical task — finish or pause first).
|
|
30
|
+
4. Call the `upgrade` tool with `restart_only=true`. This ends the current turn: VisionClaw shuts down gracefully, the process manager brings it back up, and the new cloudflared process reads the updated ingress at startup. **Do not attempt to `curl` the new hostname in the same turn** — the old cloudflared is still running until shutdown fires, so the check would be meaningless, and the turn will be terminated mid-flight anyway.
|
|
31
|
+
5. If you want to confirm the hostname is serving after you wake up again (e.g. because the user asks, or on the next heartbeat), run `curl -sI https://app.jessica.visionclawobs.com` then.
|
|
32
|
+
|
|
33
|
+
## Rules
|
|
34
|
+
|
|
35
|
+
- Only edit the `config.yml` above; `~/.cloudflared/` is legacy, leave it.
|
|
36
|
+
- Stay inside `*.<tunnelname>.visionclawobs.com`.
|
|
37
|
+
- Never `pkill cloudflared`, spawn cloudflared yourself, or touch pm2 — `upgrade(restart_only=true)` is the only supported reload path.
|
|
38
|
+
- If something looks fundamentally broken (tunnel down, apex not resolving, need a brand new tunnel), report it via `notify_user` instead of trying to re-provision.
|
|
@@ -156,7 +156,7 @@ These logs contain everything printed during execution: system startup, channel
|
|
|
156
156
|
The following tools are pre-installed on the system and available for the agent to use:
|
|
157
157
|
|
|
158
158
|
- **pm2** — Process manager for Node.js. Beyond managing VisionClaw itself, the agent can use pm2 to start, stop, and monitor any long-running processes (e.g., web servers, background scripts, automation daemons).
|
|
159
|
-
- **cloudflared** — Cloudflare Tunnel client.
|
|
159
|
+
- **cloudflared** — Cloudflare Tunnel client. A tunnel is already pre-provisioned for the agent by the onboarding service, and the agent owns the wildcard `*.<tunnelname>.visionclawobs.com`. The agent can expose any local service (web app, API, dashboard) on a subdomain under that wildcard by editing its profile-scoped `config.yml`. See the `cloudflare-tunnel` skill for the exact layout, edit rules, and restart workflow — do NOT run `cloudflared tunnel login`, `cloudflared tunnel create`, or replace the credentials file.
|
|
160
160
|
|
|
161
161
|
## Memory System
|
|
162
162
|
|
package/dist-agent/bundle.cjs
CHANGED
|
@@ -20414,7 +20414,7 @@ var require_prompts3 = __commonJS({
|
|
|
20414
20414
|
|
|
20415
20415
|
// dist/utils/version-check.js
|
|
20416
20416
|
function isBundled() {
|
|
20417
|
-
const v15 = "0.1.185-beta.
|
|
20417
|
+
const v15 = "0.1.185-beta.8";
|
|
20418
20418
|
return typeof v15 === "string" && v15 !== "undefined";
|
|
20419
20419
|
}
|
|
20420
20420
|
function getPackageRoot() {
|
|
@@ -20431,7 +20431,7 @@ function getInstallationInfo() {
|
|
|
20431
20431
|
};
|
|
20432
20432
|
}
|
|
20433
20433
|
function getCurrentVersion() {
|
|
20434
|
-
const bundledVersion = "0.1.185-beta.
|
|
20434
|
+
const bundledVersion = "0.1.185-beta.8";
|
|
20435
20435
|
if (bundledVersion && bundledVersion !== "undefined") {
|
|
20436
20436
|
return bundledVersion;
|
|
20437
20437
|
}
|
|
@@ -1031137,6 +1031137,9 @@ function buildTunnelHostname(cred) {
|
|
|
1031137
1031137
|
function normalizeAgentName(name) {
|
|
1031138
1031138
|
return name.trim().toLowerCase().replace(/\s+/g, "-");
|
|
1031139
1031139
|
}
|
|
1031140
|
+
function canonicalObsTunnelName(name) {
|
|
1031141
|
+
return normalizeAgentName(name).replace(/-/g, "");
|
|
1031142
|
+
}
|
|
1031140
1031143
|
function ensureTunnelDir(dir) {
|
|
1031141
1031144
|
import_node_fs51.default.mkdirSync(dir, { recursive: true });
|
|
1031142
1031145
|
if (process.platform !== "win32") {
|
|
@@ -1031165,8 +1031168,8 @@ function applyTunnelCredential(cred, agentName) {
|
|
|
1031165
1031168
|
throw new Error("Runtime tunnel credential has empty credentialsJson");
|
|
1031166
1031169
|
}
|
|
1031167
1031170
|
if (agentName !== void 0 && agentName.trim() !== "") {
|
|
1031168
|
-
const expected =
|
|
1031169
|
-
const actual =
|
|
1031171
|
+
const expected = canonicalObsTunnelName(agentName);
|
|
1031172
|
+
const actual = canonicalObsTunnelName(tunnelName);
|
|
1031170
1031173
|
if (expected !== actual) {
|
|
1031171
1031174
|
throw new Error(`Runtime tunnel credential tunnelName "${tunnelName}" does not match agent name "${agentName}"; refusing to materialize`);
|
|
1031172
1031175
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "visionclaw",
|
|
3
|
-
"version": "0.1.185-beta.
|
|
3
|
+
"version": "0.1.185-beta.8",
|
|
4
4
|
"description": "A personal assistant agent that runs on your desktop, receives commands from messaging channels, and executes tasks autonomously.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|