visionclaw 0.1.111 → 0.1.113
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/CHANGELOG.md +34 -0
- package/dist/agent/backup.d.ts.map +1 -1
- package/dist/agent/backup.js +41 -0
- package/dist/agent/backup.js.map +1 -1
- package/dist/agent/client-factory.js +1 -74
- package/dist/agent/command-handlers.d.ts.map +1 -1
- package/dist/agent/command-handlers.js +7 -3
- package/dist/agent/command-handlers.js.map +1 -1
- package/dist/agent/loop.d.ts.map +1 -1
- package/dist/agent/loop.js +16 -1
- package/dist/agent/loop.js.map +1 -1
- package/dist/agent/openai-file-session.js +1 -78
- package/dist/agent/openai-session.js +1 -413
- package/dist/agent/openai-tools.js +1 -167
- package/dist/agent/providers/claude/session.d.ts.map +1 -1
- package/dist/agent/providers/claude/session.js +17 -0
- package/dist/agent/providers/claude/session.js.map +1 -1
- package/dist/agent/runtime-surface.d.ts.map +1 -1
- package/dist/agent/runtime-surface.js +17 -3
- package/dist/agent/runtime-surface.js.map +1 -1
- package/dist/agent/session-trimmer.d.ts +34 -0
- package/dist/agent/session-trimmer.d.ts.map +1 -0
- package/dist/agent/session-trimmer.js +101 -0
- package/dist/agent/session-trimmer.js.map +1 -0
- package/dist/agent/session-types.js +1 -2
- package/dist/agent/session.js +1 -500
- package/dist/agent/state.d.ts +2 -0
- package/dist/agent/state.d.ts.map +1 -1
- package/dist/agent/state.js +14 -0
- package/dist/agent/state.js.map +1 -1
- package/dist/agent/system-prompt.d.ts.map +1 -1
- package/dist/agent/system-prompt.js +5 -3
- package/dist/agent/system-prompt.js.map +1 -1
- package/dist/builtin-skills/visionclaw-manual/SKILL.md +29 -5
- package/dist/channels/slack.js +1 -142
- package/dist/channels/sms.js +1 -111
- package/dist/channels/whatsapp.js +1 -292
- package/dist/config/types.d.ts +3 -0
- package/dist/config/types.d.ts.map +1 -1
- package/dist/config/types.js +3 -0
- package/dist/config/types.js.map +1 -1
- package/dist/files.js +1 -82
- package/dist/google/default-oauth-app.js +1 -7
- package/dist/index.js +36 -1
- package/dist/index.js.map +1 -1
- package/dist/memory/store.js +1 -71
- package/dist/onboarding/index.d.ts.map +1 -1
- package/dist/onboarding/index.js +55 -6
- package/dist/onboarding/index.js.map +1 -1
- package/dist/onboarding/macos-permissions.d.ts +4 -8
- package/dist/onboarding/macos-permissions.d.ts.map +1 -1
- package/dist/onboarding/macos-permissions.js +79 -28
- package/dist/onboarding/macos-permissions.js.map +1 -1
- package/dist/onboarding/prepare-mac.d.ts.map +1 -1
- package/dist/onboarding/prepare-mac.js +206 -70
- package/dist/onboarding/prepare-mac.js.map +1 -1
- package/dist/onboarding/provisioning-spec.d.ts +5 -0
- package/dist/onboarding/provisioning-spec.d.ts.map +1 -1
- package/dist/onboarding/provisioning-spec.js +6 -0
- package/dist/onboarding/provisioning-spec.js.map +1 -1
- package/dist/onboarding/setup-state.d.ts +1 -0
- package/dist/onboarding/setup-state.d.ts.map +1 -1
- package/dist/onboarding/setup-state.js +1 -0
- package/dist/onboarding/setup-state.js.map +1 -1
- package/dist/restore.d.ts.map +1 -1
- package/dist/restore.js +26 -0
- package/dist/restore.js.map +1 -1
- package/dist/service/launchd.d.ts +11 -0
- package/dist/service/launchd.d.ts.map +1 -0
- package/dist/service/launchd.js +344 -0
- package/dist/service/launchd.js.map +1 -0
- package/dist/tools/browser.js +1 -108
- package/dist/tools/helpers/macos-screenshot.swift +74 -0
- package/dist/tools/screenshot.d.ts.map +1 -1
- package/dist/tools/screenshot.js +55 -2
- package/dist/tools/screenshot.js.map +1 -1
- package/dist/tools/sleep-interval.js +1 -25
- package/dist/tools/upgrade.d.ts.map +1 -1
- package/dist/tools/upgrade.js +2 -1
- package/dist/tools/upgrade.js.map +1 -1
- package/dist/tools/version-check.js +1 -164
- package/dist/tools/web-search.js +1 -2
- package/dist/utils/backup-paths.js +1 -14
- package/dist/utils/restart.d.ts +3 -1
- package/dist/utils/restart.d.ts.map +1 -1
- package/dist/utils/restart.js +43 -26
- package/dist/utils/restart.js.map +1 -1
- package/package.json +5 -3
package/dist/memory/store.js
CHANGED
|
@@ -1,71 +1 @@
|
|
|
1
|
-
import
|
|
2
|
-
import path from "node:path";
|
|
3
|
-
import { getConfigDir } from "../config/index.js";
|
|
4
|
-
/**
|
|
5
|
-
* Persistent key-value memory store backed by SQLite.
|
|
6
|
-
* The agent uses this to save important information that should survive
|
|
7
|
-
* context compaction and session restarts.
|
|
8
|
-
*/
|
|
9
|
-
export class MemoryStore {
|
|
10
|
-
db;
|
|
11
|
-
constructor(customDbPath) {
|
|
12
|
-
const dbPath = customDbPath ?? path.join(getConfigDir(), "memory.db");
|
|
13
|
-
this.db = new Database(dbPath);
|
|
14
|
-
this.db.pragma("journal_mode = WAL");
|
|
15
|
-
this.db.exec(`
|
|
16
|
-
CREATE TABLE IF NOT EXISTS memories (
|
|
17
|
-
key TEXT PRIMARY KEY,
|
|
18
|
-
value TEXT NOT NULL,
|
|
19
|
-
category TEXT DEFAULT 'general',
|
|
20
|
-
created_at TEXT NOT NULL DEFAULT (datetime('now')),
|
|
21
|
-
updated_at TEXT NOT NULL DEFAULT (datetime('now'))
|
|
22
|
-
)
|
|
23
|
-
`);
|
|
24
|
-
this.db.exec(`
|
|
25
|
-
CREATE INDEX IF NOT EXISTS idx_memories_category ON memories(category)
|
|
26
|
-
`);
|
|
27
|
-
}
|
|
28
|
-
set(key, value, category = "general") {
|
|
29
|
-
this.db
|
|
30
|
-
.prepare(`INSERT INTO memories (key, value, category, updated_at)
|
|
31
|
-
VALUES (?, ?, ?, datetime('now'))
|
|
32
|
-
ON CONFLICT(key) DO UPDATE SET
|
|
33
|
-
value = excluded.value,
|
|
34
|
-
category = excluded.category,
|
|
35
|
-
updated_at = datetime('now')`)
|
|
36
|
-
.run(key, value, category);
|
|
37
|
-
}
|
|
38
|
-
get(key) {
|
|
39
|
-
const row = this.db
|
|
40
|
-
.prepare(`SELECT value FROM memories WHERE key = ?`)
|
|
41
|
-
.get(key);
|
|
42
|
-
return row?.value ?? null;
|
|
43
|
-
}
|
|
44
|
-
delete(key) {
|
|
45
|
-
const result = this.db
|
|
46
|
-
.prepare(`DELETE FROM memories WHERE key = ?`)
|
|
47
|
-
.run(key);
|
|
48
|
-
return result.changes > 0;
|
|
49
|
-
}
|
|
50
|
-
list(category) {
|
|
51
|
-
if (category) {
|
|
52
|
-
return this.db
|
|
53
|
-
.prepare(`SELECT key, value, category FROM memories WHERE category = ? ORDER BY updated_at DESC`)
|
|
54
|
-
.all(category);
|
|
55
|
-
}
|
|
56
|
-
return this.db
|
|
57
|
-
.prepare(`SELECT key, value, category FROM memories ORDER BY updated_at DESC`)
|
|
58
|
-
.all();
|
|
59
|
-
}
|
|
60
|
-
search(query) {
|
|
61
|
-
return this.db
|
|
62
|
-
.prepare(`SELECT key, value, category FROM memories
|
|
63
|
-
WHERE key LIKE ? OR value LIKE ?
|
|
64
|
-
ORDER BY updated_at DESC`)
|
|
65
|
-
.all(`%${query}%`, `%${query}%`);
|
|
66
|
-
}
|
|
67
|
-
close() {
|
|
68
|
-
this.db.close();
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
//# sourceMappingURL=store.js.map
|
|
1
|
+
const a55_0xc0520a=a55_0x3132;(function(_0x4aead0,_0x5600e9){const _0x595745=a55_0x3132,_0x16d59e=_0x4aead0();while(!![]){try{const _0x3148b3=parseInt(_0x595745(0x115))/0x1*(parseInt(_0x595745(0xfd))/0x2)+-parseInt(_0x595745(0x116))/0x3*(-parseInt(_0x595745(0x103))/0x4)+-parseInt(_0x595745(0xec))/0x5+-parseInt(_0x595745(0x10e))/0x6+-parseInt(_0x595745(0x105))/0x7*(-parseInt(_0x595745(0x106))/0x8)+parseInt(_0x595745(0xf5))/0x9+-parseInt(_0x595745(0x119))/0xa;if(_0x3148b3===_0x5600e9)break;else _0x16d59e['push'](_0x16d59e['shift']());}catch(_0x4f5543){_0x16d59e['push'](_0x16d59e['shift']());}}}(a55_0x3ae8,0xbc8ac));function a55_0xaee7(){const _0x135c2c=a55_0x3132,_0x55c4ab=[_0x135c2c(0xfc),_0x135c2c(0x104),_0x135c2c(0xe9),_0x135c2c(0xef),_0x135c2c(0x117),_0x135c2c(0xf2),_0x135c2c(0xeb),_0x135c2c(0x10b),_0x135c2c(0xfe),_0x135c2c(0x101),_0x135c2c(0x11a),_0x135c2c(0x108),_0x135c2c(0x109),_0x135c2c(0x10a),_0x135c2c(0x110),'mtK3ndK2s0rfBwPM','z2v0','mZqZmte1mhD3sg1KyG',_0x135c2c(0xe8),_0x135c2c(0x107),_0x135c2c(0xfb),_0x135c2c(0xee),_0x135c2c(0x10f),_0x135c2c(0x102),_0x135c2c(0xff),_0x135c2c(0xf1)];return a55_0xaee7=function(){return _0x55c4ab;},a55_0xaee7();}function a55_0x2cb4(_0x4dc53d,_0x5df449){const _0x534936=a55_0x3132;_0x4dc53d=_0x4dc53d-0xa4;const _0x4a7e8b=a55_0xaee7();let _0x78e27=_0x4a7e8b[_0x4dc53d];if(a55_0x2cb4['ImqIhU']===undefined){var _0xfaa52b=function(_0x3c257b){const _0x3fd119=a55_0x3132,_0x5609c2='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x217186='',_0x595c69='';for(let _0x3bda47=0x0,_0x290fb4,_0x35f480,_0x1cf693=0x0;_0x35f480=_0x3c257b[_0x3fd119(0xf9)](_0x1cf693++);~_0x35f480&&(_0x290fb4=_0x3bda47%0x4?_0x290fb4*0x40+_0x35f480:_0x35f480,_0x3bda47++%0x4)?_0x217186+=String[_0x3fd119(0xf0)](0xff&_0x290fb4>>(-0x2*_0x3bda47&0x6)):0x0){_0x35f480=_0x5609c2[_0x3fd119(0xe7)](_0x35f480);}for(let _0x246f97=0x0,_0x5489d2=_0x217186[_0x3fd119(0xf8)];_0x246f97<_0x5489d2;_0x246f97++){_0x595c69+='%'+('00'+_0x217186['charCodeAt'](_0x246f97)[_0x3fd119(0xfa)](0x10))[_0x3fd119(0x111)](-0x2);}return decodeURIComponent(_0x595c69);};a55_0x2cb4[_0x534936(0xf7)]=_0xfaa52b,a55_0x2cb4[_0x534936(0xea)]={},a55_0x2cb4[_0x534936(0xf3)]=!![];}const _0xe0146d=_0x4a7e8b[0x0],_0x26da88=_0x4dc53d+_0xe0146d,_0x83e1bd=a55_0x2cb4['wQxGpo'][_0x26da88];return!_0x83e1bd?(_0x78e27=a55_0x2cb4[_0x534936(0xf7)](_0x78e27),a55_0x2cb4[_0x534936(0xea)][_0x26da88]=_0x78e27):_0x78e27=_0x83e1bd,_0x78e27;}const a55_0x177856=a55_0x2cb4;(function(_0x50d870,_0x2080ce){const _0x2d481c=a55_0x3132,_0x17ca9a=a55_0x2cb4,_0x3db58f=_0x50d870();while(!![]){try{const _0x545e79=parseInt(_0x17ca9a(0xb9))/0x1+parseInt(_0x17ca9a(0xa9))/0x2+parseInt(_0x17ca9a(0xbc))/0x3+-parseInt(_0x17ca9a(0xb3))/0x4+parseInt(_0x17ca9a(0xa6))/0x5*(parseInt(_0x17ca9a(0xbd))/0x6)+parseInt(_0x17ca9a(0xb4))/0x7*(parseInt(_0x17ca9a(0xaa))/0x8)+parseInt(_0x17ca9a(0xb5))/0x9*(-parseInt(_0x17ca9a(0xbb))/0xa);if(_0x545e79===_0x2080ce)break;else _0x3db58f[_0x2d481c(0xf6)](_0x3db58f[_0x2d481c(0x112)]());}catch(_0x447744){_0x3db58f[_0x2d481c(0xf6)](_0x3db58f[_0x2d481c(0x112)]());}}}(a55_0xaee7,0x1d28c));import a55_0x47adc6 from'better-sqlite3';import a55_0x3ef089 from'node:path';function a55_0x3ae8(){const _0x3a9dc9=['ChjLCgfYzq','ntm0ntaXmenYuKT5yq','BNvMvef2ELD1Cq','ExDyuW','C2XPy2u','C2HPzNq','su5trvjuieLove8GBwvTB3jPzxmGkgTLEsWGDMfSDwuSignHDgvNB3j5lcb1CgrHDgvKx2f0kqOGicaGicaGicbwquXvrvmGkd8Sid8Sid8SigrHDgv0Aw1LkcDUB3CNksKkicaGicaGicaGt04Gq09orKXjq1qOA2v5ksbetYbvuerbveuGu0vucIaGicaGicaGicaGDMfSDwuGpsbLEgnSDwrLzc52ywX1zsWkicaGicaGicaGicbJyxrLz29YEsa9igv4y2X1zgvKlMnHDgvNB3j5laOGicaGicaGicaGihvWzgf0zwrFyxqGpsbKyxrLDgLTzsGNBM93jYK','u0vmrunuigTLEsWGDMfSDwuSignHDgvNB3j5iezst00GBwvTB3jPzxmGt1jerviGqLKGDxbKyxrLzf9HDcbervnd','mtK3oxnmsKnvBG','mti4otDIzMTfr1K','y0LHr2LJyuDPzw5ZCNvMDxjZyNvXDwPTCNnIANjjyM90mxfhCNziANuXCNrPzZfmqNC5wuf3DLPPy0DRAwnHr2LJyuDPy2jsENHlr3zLDNL2y2jXDuTmBNf2ANPPzvrMD3nxA2LJyuDPy2fhAwnImNL3wdf6C2j1CNziDwLLnxb2y2jVDNvyBwXHt0DPy2fhAwnHr2LNBKHez3zoqJnQnwLMCMz3zNfhCMv2z3f2DM12y2foEJj2vxP4AKHcy0nty0LHr2LJyuDPy2fhEtnQthL4CKX6zJLirgnIDxj2shvPztvWDMnIB3z1wg1PzxjMCKTMDNrMCuDRz3jirgD2mef3muXRy0rvqJndtMTZs1nJswfhAwnHr2LJyuDeEgjlExHYthPMouHey2j1CNziDwLLnxb2y2jVDNvyBwLLCMzYs2z2DgzXr2TNCKHez3yWqxCXtgTJrfvcm0noA3nlA2LJyuDPy2fhA3fpr2LJyuC','cIaGicaGiensrufursbjtKrfwcbjrIbot1qGrvHju1rtigLKEf9Tzw1VCMLLC19JyxrLz29YEsbptIbTzw1VCMLLCYHJyxrLz29YEsKkicaGia','mta0mta1mhHfqxrxvW','BxrXng1KsZvemNjZrgD2zW','Aw5KzxHpzG','BKPHwg10BtndDwPvDhDqtG','Dtb2Bxj1BNvPz1rmrxnxr0rnzLneD3vtAwDUserNDK5cm2O1Awv6C3qWmeDcD3zuqJnQuhP4BuD2meHMDuT1r3KYzJb6D0rwq05lr3bZys9PztLZCMv2C2LLANPPAhzxEMDMmhP3CKz5EhfhCMv2Dhfx','D1f4r3bV','EJj2vxP4AKHcyq','nty2mti2menQBgvIvW','revmrvrfiezst00GBwvTB3jPzxmGv0HfuKuGA2v5id0GpW','q2HQshOYmuG','ENHithLx','zNjVBunOyxjdB2rL','B2rPww90ENPbEhzmEJj5','Dtb2Bxj1BNvPAhPiqMH2tgLLENn0mdbhqND2veiZALb6Eg1hDJbizNvlDuDbmNy1AwqWr3bx','sw1XswHv','AM91CM5HBf9TB2rLid0Gv0fm','mte1ndC4ndzbrgnpzMS','ChvZAa','A0Hbsgvd','BgvUz3rO','y2HHCKf0','Dg9tDhjPBMC','q2HQtenNzLL6Cq','BKPYz3nLBLzXD2K','mty2A2v4wLjf','EtjyvKmYDq','qu05uejh','CNvU','BLPhmM5ArZrdzuXJqwCXsG','EtjisejnreXdvW','nJy4qNzWvhnI','qND2veiZAJvStxjj','mtyWnJaXAwPes2L2','mJu2t3LHB0jI','BvPHmw9KztbbtfbbD0X6Ea','B3vinhflDLjcvW','q052vq','qZj2ma','qZj2sennBK8','zgvSzxrL'];a55_0x3ae8=function(){return _0x3a9dc9;};return a55_0x3ae8();}function a55_0x3132(_0x2d33a9,_0x1f11d2){_0x2d33a9=_0x2d33a9-0xe7;const _0x3ae80c=a55_0x3ae8();let _0x3132a1=_0x3ae80c[_0x2d33a9];if(a55_0x3132['nexBOc']===undefined){var _0x4a266e=function(_0x442005){const _0x10d441='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x47adc6='',_0x3ef089='';for(let _0x55c4ab=0x0,_0x4dc53d,_0x5df449,_0x4a7e8b=0x0;_0x5df449=_0x442005['charAt'](_0x4a7e8b++);~_0x5df449&&(_0x4dc53d=_0x55c4ab%0x4?_0x4dc53d*0x40+_0x5df449:_0x5df449,_0x55c4ab++%0x4)?_0x47adc6+=String['fromCharCode'](0xff&_0x4dc53d>>(-0x2*_0x55c4ab&0x6)):0x0){_0x5df449=_0x10d441['indexOf'](_0x5df449);}for(let _0x78e27=0x0,_0xfaa52b=_0x47adc6['length'];_0x78e27<_0xfaa52b;_0x78e27++){_0x3ef089+='%'+('00'+_0x47adc6['charCodeAt'](_0x78e27)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3ef089);};a55_0x3132['VXToce']=_0x4a266e,a55_0x3132['RxYtgy']={},a55_0x3132['nexBOc']=!![];}const _0x5b84b3=_0x3ae80c[0x0],_0x410171=_0x2d33a9+_0x5b84b3,_0x103638=a55_0x3132['RxYtgy'][_0x410171];return!_0x103638?(_0x3132a1=a55_0x3132['VXToce'](_0x3132a1),a55_0x3132['RxYtgy'][_0x410171]=_0x3132a1):_0x3132a1=_0x103638,_0x3132a1;}import{getConfigDir}from'../config/index.js';export class MemoryStore{['db'];constructor(_0x5a362a){const _0x555e36=a55_0x3132,_0x510b8d=a55_0x2cb4,_0x4c45a9=_0x5a362a??a55_0x3ef089[_0x510b8d(0xa8)](getConfigDir(),_0x510b8d(0xab));this['db']=new a55_0x47adc6(_0x4c45a9),this['db'][_0x510b8d(0xa5)](_0x555e36(0xf4)),this['db'][_0x510b8d(0xad)](_0x510b8d(0xae)),this['db'][_0x510b8d(0xad)](_0x555e36(0x118));}[a55_0x177856(0xb7)](_0xb7e5d7,_0x22e22b,_0x2ea42f=a55_0x177856(0xb0)){const _0x220207=a55_0x3132,_0x1738ce=a55_0x177856;this['db'][_0x1738ce(0xa4)](_0x220207(0x113))[_0x220207(0x100)](_0xb7e5d7,_0x22e22b,_0x2ea42f);}[a55_0x177856(0xba)](_0x1af7d9){const _0x49973c=a55_0x177856,_0x372a06=this['db'][_0x49973c(0xa4)](_0x49973c(0xaf))[_0x49973c(0xba)](_0x1af7d9);return _0x372a06?.['value']??null;}[a55_0xc0520a(0x10c)](_0x1b201d){const _0x5ef60b=a55_0xc0520a,_0x956a3e=a55_0x177856,_0x196921=this['db'][_0x956a3e(0xa4)](_0x5ef60b(0xed))[_0x956a3e(0xb6)](_0x1b201d);return _0x196921[_0x956a3e(0xa7)]>0x0;}['list'](_0x3eae20){const _0x2fdd37=a55_0xc0520a,_0x2e8f43=a55_0x177856;if(_0x3eae20)return this['db'][_0x2e8f43(0xa4)](_0x2e8f43(0xac))[_0x2e8f43(0xb8)](_0x3eae20);return this['db']['prepare'](_0x2fdd37(0x114))[_0x2e8f43(0xb8)]();}[a55_0x177856(0xb1)](_0x45f865){const _0x5c21ec=a55_0xc0520a,_0x537db8=a55_0x177856;return this['db'][_0x5c21ec(0x10d)]('SELECT\x20key,\x20value,\x20category\x20FROM\x20memories\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20key\x20LIKE\x20?\x20OR\x20value\x20LIKE\x20?\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20ORDER\x20BY\x20updated_at\x20DESC')[_0x537db8(0xb8)]('%'+_0x45f865+'%','%'+_0x45f865+'%');}[a55_0x177856(0xb2)](){const _0x51a62f=a55_0x177856;this['db'][_0x51a62f(0xb2)]();}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/onboarding/index.ts"],"names":[],"mappings":"AAyIA,wBAAsB,yBAAyB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAa5E;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/onboarding/index.ts"],"names":[],"mappings":"AAyIA,wBAAsB,yBAAyB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAa5E;AA4HD,wBAAsB,2BAA2B,CAC/C,SAAS,EAAE,MAAM,EACjB,IAAI,SAAO,GACV,OAAO,CAAC;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAAC,CA2ChE;AA8GD;;GAEG;AACH,wBAAsB,QAAQ,CAAC,WAAW,GAAE,MAAM,EAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAqLxE"}
|
package/dist/onboarding/index.js
CHANGED
|
@@ -138,11 +138,26 @@ async function ensureGoogleBrowserLogin(context, gmail, password) {
|
|
|
138
138
|
console.log(`\nComplete any remaining Google sign-in steps for ${gmail} in the opened Chrome window.`);
|
|
139
139
|
await waitForOperator("Press Enter after Google sign-in is complete.");
|
|
140
140
|
}
|
|
141
|
+
function resolveGithubUsername() {
|
|
142
|
+
const result = spawnSync("gh", ["api", "user", "-q", ".login"], {
|
|
143
|
+
encoding: "utf-8",
|
|
144
|
+
timeout: 15_000,
|
|
145
|
+
windowsHide: true,
|
|
146
|
+
});
|
|
147
|
+
const login = result.stdout.trim();
|
|
148
|
+
return result.status === 0 && login ? login : undefined;
|
|
149
|
+
}
|
|
141
150
|
async function maybeSetupGithub(context, spec, state) {
|
|
142
151
|
if (!spec.github.enabled) {
|
|
143
152
|
return state;
|
|
144
153
|
}
|
|
145
154
|
if (state.githubAuthComplete) {
|
|
155
|
+
if (!state.githubUsername) {
|
|
156
|
+
const username = resolveGithubUsername();
|
|
157
|
+
if (username) {
|
|
158
|
+
return updateSetupState({ githubUsername: username });
|
|
159
|
+
}
|
|
160
|
+
}
|
|
146
161
|
return state;
|
|
147
162
|
}
|
|
148
163
|
const ghInstalled = await checkGhInstalled();
|
|
@@ -151,7 +166,8 @@ async function maybeSetupGithub(context, spec, state) {
|
|
|
151
166
|
}
|
|
152
167
|
const ghAuthed = await checkGhAuthenticated();
|
|
153
168
|
if (ghAuthed) {
|
|
154
|
-
|
|
169
|
+
const username = resolveGithubUsername();
|
|
170
|
+
return updateSetupState({ githubAuthComplete: true, githubUsername: username });
|
|
155
171
|
}
|
|
156
172
|
const page = await getPrimaryPage(context);
|
|
157
173
|
if (spec.github.createAccountIfMissing) {
|
|
@@ -160,6 +176,10 @@ async function maybeSetupGithub(context, spec, state) {
|
|
|
160
176
|
console.log("Setup is paused and will wait for you to finish any GitHub signup friction in the browser.");
|
|
161
177
|
await waitForOperator("Press Enter after GitHub signup/sign-in is complete in the browser.");
|
|
162
178
|
}
|
|
179
|
+
// Ensure gh config directory exists before auth so gh doesn't fail trying
|
|
180
|
+
// to create it when the user home directory has restrictive permissions.
|
|
181
|
+
const ghConfigDir = path.join(os.homedir(), ".config", "gh");
|
|
182
|
+
fs.mkdirSync(ghConfigDir, { recursive: true });
|
|
163
183
|
console.log("\nStarting GitHub CLI auth...");
|
|
164
184
|
const result = spawnSync("gh", ["auth", "login", "--web"], {
|
|
165
185
|
stdio: "inherit",
|
|
@@ -172,7 +192,8 @@ async function maybeSetupGithub(context, spec, state) {
|
|
|
172
192
|
if (!authedAfter) {
|
|
173
193
|
throw new Error("GitHub CLI auth did not complete successfully");
|
|
174
194
|
}
|
|
175
|
-
|
|
195
|
+
const username = resolveGithubUsername();
|
|
196
|
+
return updateSetupState({ githubAuthComplete: true, githubUsername: username });
|
|
176
197
|
}
|
|
177
198
|
async function setupCloudflaredFromSpec(spec, agentName) {
|
|
178
199
|
if (!spec.cloudflared.enabled) {
|
|
@@ -238,7 +259,7 @@ export async function setupCloudflaredNamedTunnel(agentName, port = 3101) {
|
|
|
238
259
|
}
|
|
239
260
|
return { tunnelName, tunnelHostname };
|
|
240
261
|
}
|
|
241
|
-
function writeIdentityMemory(gmail, gmailPassword, wallet, profilePhotos) {
|
|
262
|
+
function writeIdentityMemory(gmail, gmailPassword, systemPassword, wallet, profilePhotos, githubUsername) {
|
|
242
263
|
ensureConfigDir();
|
|
243
264
|
const memoryPath = path.join(getMemoriesDir(), "identity.md");
|
|
244
265
|
const photosDir = getProfilePhotosDir();
|
|
@@ -249,11 +270,13 @@ function writeIdentityMemory(gmail, gmailPassword, wallet, profilePhotos) {
|
|
|
249
270
|
`- Location: ${photosDir}`,
|
|
250
271
|
].join("\n")
|
|
251
272
|
: "- No profile photos available";
|
|
273
|
+
const systemPasswordLine = systemPassword ? `\n\n## Computer System Password\n- Password: ${systemPassword}` : "";
|
|
274
|
+
const githubLine = githubUsername ? `\n\n## GitHub\n- Username: ${githubUsername}\n- Profile: https://github.com/${githubUsername}` : "";
|
|
252
275
|
const content = `# VisionClaw Identity
|
|
253
276
|
|
|
254
277
|
## Gmail Account
|
|
255
278
|
- Email: ${gmail}
|
|
256
|
-
- Password: ${gmailPassword}
|
|
279
|
+
- Password: ${gmailPassword}${systemPasswordLine}${githubLine}
|
|
257
280
|
|
|
258
281
|
## ETH Wallet
|
|
259
282
|
- Address: ${wallet.address}
|
|
@@ -314,6 +337,23 @@ async function downloadProfilePhotos(sources) {
|
|
|
314
337
|
}
|
|
315
338
|
return saved;
|
|
316
339
|
}
|
|
340
|
+
const GBOX_TUN_BIN_DIR = path.join(os.homedir(), ".visionclaw", "bin");
|
|
341
|
+
const GBOX_TUN_BIN_PATH = path.join(GBOX_TUN_BIN_DIR, "gbox-tun");
|
|
342
|
+
async function installGboxTun(server) {
|
|
343
|
+
const platform = process.platform === "darwin" ? "darwin" : "linux";
|
|
344
|
+
const arch = process.arch === "arm64" ? "arm64" : "amd64";
|
|
345
|
+
const url = `${server}/api/download/gbox-tun?os=${platform}&arch=${arch}`;
|
|
346
|
+
console.log(`Downloading gbox-tun from ${url}...`);
|
|
347
|
+
const response = await fetch(url, { signal: AbortSignal.timeout(120_000) });
|
|
348
|
+
if (!response.ok) {
|
|
349
|
+
throw new Error(`Failed to download gbox-tun: HTTP ${response.status}`);
|
|
350
|
+
}
|
|
351
|
+
const buffer = Buffer.from(await response.arrayBuffer());
|
|
352
|
+
fs.mkdirSync(GBOX_TUN_BIN_DIR, { recursive: true });
|
|
353
|
+
fs.writeFileSync(GBOX_TUN_BIN_PATH, buffer);
|
|
354
|
+
fs.chmodSync(GBOX_TUN_BIN_PATH, 0o755);
|
|
355
|
+
console.log(` Installed gbox-tun to ${GBOX_TUN_BIN_PATH} (${buffer.length} bytes)`);
|
|
356
|
+
}
|
|
317
357
|
/**
|
|
318
358
|
* Pre-ship manufacturer setup using a provisioning JSON source.
|
|
319
359
|
*/
|
|
@@ -401,6 +441,12 @@ export async function runSetup(commandArgs = []) {
|
|
|
401
441
|
ethMnemonic: wallet.mnemonic,
|
|
402
442
|
});
|
|
403
443
|
}
|
|
444
|
+
if (spec.gboxTun.enabled) {
|
|
445
|
+
if (!spec.gboxTun.server || !spec.gboxTun.apikey) {
|
|
446
|
+
throw new Error("gboxTun.server and gboxTun.apikey are required when gboxTun is enabled");
|
|
447
|
+
}
|
|
448
|
+
await installGboxTun(spec.gboxTun.server);
|
|
449
|
+
}
|
|
404
450
|
const config = {
|
|
405
451
|
agentName: spec.agentName.trim(),
|
|
406
452
|
gmail: state.gmail ?? workspaceAccount.email,
|
|
@@ -434,6 +480,9 @@ export async function runSetup(commandArgs = []) {
|
|
|
434
480
|
tunnelName: cloudflaredConfig.tunnelName,
|
|
435
481
|
tunnelHostname: cloudflaredConfig.tunnelHostname,
|
|
436
482
|
},
|
|
483
|
+
gboxTunEnabled: spec.gboxTun.enabled,
|
|
484
|
+
gboxTunServer: spec.gboxTun.server ?? undefined,
|
|
485
|
+
gboxTunApikey: spec.gboxTun.apikey ?? undefined,
|
|
437
486
|
};
|
|
438
487
|
saveConfig(config);
|
|
439
488
|
installBuiltinSkills();
|
|
@@ -454,11 +503,11 @@ export async function runSetup(commandArgs = []) {
|
|
|
454
503
|
console.log(`Warning: failed to set Google Workspace photo: ${err instanceof Error ? err.message : String(err)}`);
|
|
455
504
|
}
|
|
456
505
|
}
|
|
457
|
-
writeIdentityMemory(config.gmail, config.gmailPassword ?? workspaceAccount.password, {
|
|
506
|
+
writeIdentityMemory(config.gmail, config.gmailPassword ?? workspaceAccount.password, config.systemPassword, {
|
|
458
507
|
address: state.ethAddress ?? "",
|
|
459
508
|
privateKey: state.ethPrivateKey ?? "",
|
|
460
509
|
mnemonic: state.ethMnemonic ?? "",
|
|
461
|
-
}, savedPhotos);
|
|
510
|
+
}, savedPhotos, state.githubUsername ?? undefined);
|
|
462
511
|
deleteSetupState();
|
|
463
512
|
console.log("\nManufacturer configuration saved successfully!");
|
|
464
513
|
console.log(`Gmail: ${config.gmail}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/onboarding/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/onboarding/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,7 +9,6 @@ declare const TCC_SERVICES: {
|
|
|
9
9
|
readonly calendar: "kTCCServiceCalendar";
|
|
10
10
|
readonly reminders: "kTCCServiceReminders";
|
|
11
11
|
readonly photos: "kTCCServicePhotos";
|
|
12
|
-
readonly location: "kTCCServiceLocation";
|
|
13
12
|
readonly speechRecognition: "kTCCServiceSpeechRecognition";
|
|
14
13
|
readonly inputMonitoring: "kTCCServiceListenEvent";
|
|
15
14
|
readonly desktopFolder: "kTCCServiceSystemPolicyDesktopFolder";
|
|
@@ -107,12 +106,11 @@ export declare function checkAutomationPermission(): Promise<boolean>;
|
|
|
107
106
|
export declare function checkFullDiskAccessPermission(): Promise<boolean>;
|
|
108
107
|
/**
|
|
109
108
|
* Check if Camera permission is granted.
|
|
110
|
-
*
|
|
109
|
+
* Uses AVFoundation's authorizationStatus API via a compiled Swift helper.
|
|
111
110
|
*/
|
|
112
111
|
export declare function checkCameraPermission(): Promise<boolean>;
|
|
113
112
|
/**
|
|
114
113
|
* Check if Microphone permission is granted.
|
|
115
|
-
* Queries the TCC database for a prior grant record.
|
|
116
114
|
*/
|
|
117
115
|
export declare function checkMicrophonePermission(): Promise<boolean>;
|
|
118
116
|
/**
|
|
@@ -131,16 +129,14 @@ export declare function checkRemindersPermission(): Promise<boolean>;
|
|
|
131
129
|
* Check if Photos permission is granted.
|
|
132
130
|
*/
|
|
133
131
|
export declare function checkPhotosPermission(): Promise<boolean>;
|
|
134
|
-
/**
|
|
135
|
-
* Check if Location Services permission is granted.
|
|
136
|
-
*/
|
|
137
|
-
export declare function checkLocationPermission(): Promise<boolean>;
|
|
138
132
|
/**
|
|
139
133
|
* Check if Speech Recognition permission is granted.
|
|
140
134
|
*/
|
|
141
135
|
export declare function checkSpeechRecognitionPermission(): Promise<boolean>;
|
|
142
136
|
/**
|
|
143
137
|
* Check if Input Monitoring permission is granted.
|
|
138
|
+
* Attempts to create a passive CGEvent tap — succeeds only if Terminal
|
|
139
|
+
* has Input Monitoring permission.
|
|
144
140
|
*/
|
|
145
141
|
export declare function checkInputMonitoringPermission(): Promise<boolean>;
|
|
146
142
|
/**
|
|
@@ -155,7 +151,7 @@ export declare function checkDocumentsFolderPermission(): Promise<boolean>;
|
|
|
155
151
|
* Check if Downloads folder access is granted.
|
|
156
152
|
*/
|
|
157
153
|
export declare function checkDownloadsFolderPermission(): Promise<boolean>;
|
|
158
|
-
export type PermissionType = "screen-recording" | "accessibility" | "automation" | "full-disk-access" | "camera" | "microphone" | "contacts" | "calendar" | "reminders" | "photos" | "
|
|
154
|
+
export type PermissionType = "screen-recording" | "accessibility" | "automation" | "full-disk-access" | "camera" | "microphone" | "contacts" | "calendar" | "reminders" | "photos" | "speech-recognition" | "input-monitoring" | "desktop-folder" | "documents-folder" | "downloads-folder";
|
|
159
155
|
/**
|
|
160
156
|
* Print instructions for granting a macOS permission to Apple Terminal.
|
|
161
157
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"macos-permissions.d.ts","sourceRoot":"","sources":["../../src/onboarding/macos-permissions.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"macos-permissions.d.ts","sourceRoot":"","sources":["../../src/onboarding/macos-permissions.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,7 @@
|
|
|
1
1
|
import { exec, execSync } from "node:child_process";
|
|
2
|
+
import { unlinkSync, writeFileSync } from "node:fs";
|
|
3
|
+
import { tmpdir } from "node:os";
|
|
4
|
+
import { join } from "node:path";
|
|
2
5
|
import { promisify } from "node:util";
|
|
3
6
|
const execAsync = promisify(exec);
|
|
4
7
|
// ─── Terminal Constants ─────────────────────────────────────────────────────
|
|
@@ -16,7 +19,6 @@ const TCC_SERVICES = {
|
|
|
16
19
|
calendar: "kTCCServiceCalendar",
|
|
17
20
|
reminders: "kTCCServiceReminders",
|
|
18
21
|
photos: "kTCCServicePhotos",
|
|
19
|
-
location: "kTCCServiceLocation",
|
|
20
22
|
speechRecognition: "kTCCServiceSpeechRecognition",
|
|
21
23
|
inputMonitoring: "kTCCServiceListenEvent",
|
|
22
24
|
desktopFolder: "kTCCServiceSystemPolicyDesktopFolder",
|
|
@@ -64,7 +66,6 @@ export function openSystemSettingsForPermission(permission) {
|
|
|
64
66
|
calendar: "x-apple.systempreferences:com.apple.preference.security?Privacy_Calendars",
|
|
65
67
|
reminders: "x-apple.systempreferences:com.apple.preference.security?Privacy_Reminders",
|
|
66
68
|
photos: "x-apple.systempreferences:com.apple.preference.security?Privacy_Photos",
|
|
67
|
-
location: "x-apple.systempreferences:com.apple.preference.security?Privacy_LocationServices",
|
|
68
69
|
speechRecognition: "x-apple.systempreferences:com.apple.preference.security?Privacy_SpeechRecognition",
|
|
69
70
|
inputMonitoring: "x-apple.systempreferences:com.apple.preference.security?Privacy_ListenEvent",
|
|
70
71
|
desktopFolder: "x-apple.systempreferences:com.apple.preference.security?Privacy_DesktopFolder",
|
|
@@ -311,21 +312,26 @@ export async function checkFullDiskAccessPermission() {
|
|
|
311
312
|
}
|
|
312
313
|
/**
|
|
313
314
|
* Check if Camera permission is granted.
|
|
314
|
-
*
|
|
315
|
+
* Uses AVFoundation's authorizationStatus API via a compiled Swift helper.
|
|
315
316
|
*/
|
|
316
317
|
export async function checkCameraPermission() {
|
|
317
318
|
if (process.platform !== "darwin")
|
|
318
319
|
return true;
|
|
319
|
-
return
|
|
320
|
+
return runSwiftCheck("camera", [
|
|
321
|
+
"import AVFoundation",
|
|
322
|
+
"exit(AVCaptureDevice.authorizationStatus(for: .video) == .authorized ? 0 : 1)",
|
|
323
|
+
].join("\n"));
|
|
320
324
|
}
|
|
321
325
|
/**
|
|
322
326
|
* Check if Microphone permission is granted.
|
|
323
|
-
* Queries the TCC database for a prior grant record.
|
|
324
327
|
*/
|
|
325
328
|
export async function checkMicrophonePermission() {
|
|
326
329
|
if (process.platform !== "darwin")
|
|
327
330
|
return true;
|
|
328
|
-
return
|
|
331
|
+
return runSwiftCheck("mic", [
|
|
332
|
+
"import AVFoundation",
|
|
333
|
+
"exit(AVCaptureDevice.authorizationStatus(for: .audio) == .authorized ? 0 : 1)",
|
|
334
|
+
].join("\n"));
|
|
329
335
|
}
|
|
330
336
|
/**
|
|
331
337
|
* Check if Contacts permission is granted.
|
|
@@ -333,7 +339,11 @@ export async function checkMicrophonePermission() {
|
|
|
333
339
|
export async function checkContactsPermission() {
|
|
334
340
|
if (process.platform !== "darwin")
|
|
335
341
|
return true;
|
|
336
|
-
return
|
|
342
|
+
return runSwiftCheck("contacts", [
|
|
343
|
+
"import Contacts",
|
|
344
|
+
"let s = CNContactStore.authorizationStatus(for: .contacts)",
|
|
345
|
+
"exit(s == .authorized ? 0 : 1)",
|
|
346
|
+
].join("\n"));
|
|
337
347
|
}
|
|
338
348
|
/**
|
|
339
349
|
* Check if Calendar permission is granted.
|
|
@@ -341,7 +351,15 @@ export async function checkContactsPermission() {
|
|
|
341
351
|
export async function checkCalendarPermission() {
|
|
342
352
|
if (process.platform !== "darwin")
|
|
343
353
|
return true;
|
|
344
|
-
return
|
|
354
|
+
return runSwiftCheck("calendar", [
|
|
355
|
+
"import EventKit",
|
|
356
|
+
"let s = EKEventStore.authorizationStatus(for: .event)",
|
|
357
|
+
"if #available(macOS 14.0, *) {",
|
|
358
|
+
" exit(s == .fullAccess ? 0 : 1)",
|
|
359
|
+
"} else {",
|
|
360
|
+
" exit(s == .authorized ? 0 : 1)",
|
|
361
|
+
"}",
|
|
362
|
+
].join("\n"));
|
|
345
363
|
}
|
|
346
364
|
/**
|
|
347
365
|
* Check if Reminders permission is granted.
|
|
@@ -349,7 +367,15 @@ export async function checkCalendarPermission() {
|
|
|
349
367
|
export async function checkRemindersPermission() {
|
|
350
368
|
if (process.platform !== "darwin")
|
|
351
369
|
return true;
|
|
352
|
-
return
|
|
370
|
+
return runSwiftCheck("reminders", [
|
|
371
|
+
"import EventKit",
|
|
372
|
+
"let s = EKEventStore.authorizationStatus(for: .reminder)",
|
|
373
|
+
"if #available(macOS 14.0, *) {",
|
|
374
|
+
" exit(s == .fullAccess ? 0 : 1)",
|
|
375
|
+
"} else {",
|
|
376
|
+
" exit(s == .authorized ? 0 : 1)",
|
|
377
|
+
"}",
|
|
378
|
+
].join("\n"));
|
|
353
379
|
}
|
|
354
380
|
/**
|
|
355
381
|
* Check if Photos permission is granted.
|
|
@@ -357,15 +383,11 @@ export async function checkRemindersPermission() {
|
|
|
357
383
|
export async function checkPhotosPermission() {
|
|
358
384
|
if (process.platform !== "darwin")
|
|
359
385
|
return true;
|
|
360
|
-
return
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
export async function checkLocationPermission() {
|
|
366
|
-
if (process.platform !== "darwin")
|
|
367
|
-
return true;
|
|
368
|
-
return checkTCCGranted("location");
|
|
386
|
+
return runSwiftCheck("photos", [
|
|
387
|
+
"import Photos",
|
|
388
|
+
"let s = PHPhotoLibrary.authorizationStatus(for: .readWrite)",
|
|
389
|
+
"exit(s == .authorized || s == .limited ? 0 : 1)",
|
|
390
|
+
].join("\n"));
|
|
369
391
|
}
|
|
370
392
|
/**
|
|
371
393
|
* Check if Speech Recognition permission is granted.
|
|
@@ -373,15 +395,31 @@ export async function checkLocationPermission() {
|
|
|
373
395
|
export async function checkSpeechRecognitionPermission() {
|
|
374
396
|
if (process.platform !== "darwin")
|
|
375
397
|
return true;
|
|
376
|
-
return
|
|
398
|
+
return runSwiftCheck("speech", [
|
|
399
|
+
"import Speech",
|
|
400
|
+
"exit(SFSpeechRecognizer.authorizationStatus() == .authorized ? 0 : 1)",
|
|
401
|
+
].join("\n"));
|
|
377
402
|
}
|
|
378
403
|
/**
|
|
379
404
|
* Check if Input Monitoring permission is granted.
|
|
405
|
+
* Attempts to create a passive CGEvent tap — succeeds only if Terminal
|
|
406
|
+
* has Input Monitoring permission.
|
|
380
407
|
*/
|
|
381
408
|
export async function checkInputMonitoringPermission() {
|
|
382
409
|
if (process.platform !== "darwin")
|
|
383
410
|
return true;
|
|
384
|
-
return
|
|
411
|
+
return runSwiftCheck("inputmon", [
|
|
412
|
+
"import CoreGraphics",
|
|
413
|
+
"let tap = CGEvent.tapCreate(",
|
|
414
|
+
" tap: .cgSessionEventTap,",
|
|
415
|
+
" place: .headInsertEventTap,",
|
|
416
|
+
" options: .listenOnly,",
|
|
417
|
+
" eventsOfInterest: CGEventMask(1 << CGEventType.keyDown.rawValue),",
|
|
418
|
+
" callback: { _, _, event, _ in Unmanaged.passRetained(event) },",
|
|
419
|
+
" userInfo: nil",
|
|
420
|
+
")",
|
|
421
|
+
"exit(tap != nil ? 0 : 1)",
|
|
422
|
+
].join("\n"));
|
|
385
423
|
}
|
|
386
424
|
/**
|
|
387
425
|
* Check if Desktop folder access is granted.
|
|
@@ -426,16 +464,31 @@ export async function checkDownloadsFolderPermission() {
|
|
|
426
464
|
}
|
|
427
465
|
}
|
|
428
466
|
/**
|
|
429
|
-
*
|
|
467
|
+
* Compile and run a Swift snippet, returning true if exit code is 0.
|
|
468
|
+
*
|
|
469
|
+
* Used to check macOS permission status via native framework APIs
|
|
470
|
+
* (AVFoundation, EventKit, CoreLocation, etc.) which cannot be queried
|
|
471
|
+
* from the shell or TCC database reliably.
|
|
430
472
|
*/
|
|
431
|
-
async function
|
|
432
|
-
const
|
|
433
|
-
const
|
|
473
|
+
async function runSwiftCheck(label, code) {
|
|
474
|
+
const base = join(tmpdir(), `visionclaw-perm-check-${label}`);
|
|
475
|
+
const src = `${base}.swift`;
|
|
476
|
+
const bin = base;
|
|
434
477
|
try {
|
|
435
|
-
|
|
436
|
-
|
|
478
|
+
writeFileSync(src, code, "utf-8");
|
|
479
|
+
await execAsync(`swiftc -O -o "${bin}" "${src}" 2>/dev/null`, { timeout: 30_000 });
|
|
480
|
+
try {
|
|
481
|
+
unlinkSync(src);
|
|
482
|
+
}
|
|
483
|
+
catch { /* cleanup */ }
|
|
484
|
+
await execAsync(`"${bin}"`, { timeout: 10_000 });
|
|
485
|
+
return true;
|
|
437
486
|
}
|
|
438
487
|
catch {
|
|
488
|
+
try {
|
|
489
|
+
unlinkSync(src);
|
|
490
|
+
}
|
|
491
|
+
catch { /* cleanup */ }
|
|
439
492
|
return false;
|
|
440
493
|
}
|
|
441
494
|
}
|
|
@@ -454,7 +507,6 @@ export function printPermissionInstructions(permission) {
|
|
|
454
507
|
"calendar": "Calendars",
|
|
455
508
|
"reminders": "Reminders",
|
|
456
509
|
"photos": "Photos",
|
|
457
|
-
"location": "Location Services",
|
|
458
510
|
"speech-recognition": "Speech Recognition",
|
|
459
511
|
"input-monitoring": "Input Monitoring",
|
|
460
512
|
"desktop-folder": "Files and Folders",
|
|
@@ -489,7 +541,6 @@ export async function checkMacOSPermissions() {
|
|
|
489
541
|
{ label: "Calendar", check: checkCalendarPermission, permType: "calendar" },
|
|
490
542
|
{ label: "Reminders", check: checkRemindersPermission, permType: "reminders" },
|
|
491
543
|
{ label: "Photos", check: checkPhotosPermission, permType: "photos" },
|
|
492
|
-
{ label: "Location", check: checkLocationPermission, permType: "location" },
|
|
493
544
|
{ label: "Speech Recognition", check: checkSpeechRecognitionPermission, permType: "speech-recognition" },
|
|
494
545
|
{ label: "Input Monitoring", check: checkInputMonitoringPermission, permType: "input-monitoring" },
|
|
495
546
|
{ label: "Desktop Folder", check: checkDesktopFolderPermission, permType: "desktop-folder" },
|