@zcloak/ai-agent 1.0.0 → 1.0.1
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 +3 -3
- package/dist/bind.d.ts +1 -1
- package/dist/bind.js +1 -4
- package/dist/bind.js.map +1 -1
- package/dist/cli.js +8 -11
- package/dist/cli.js.map +1 -1
- package/dist/config.d.ts +1 -1
- package/dist/config.js +2 -5
- package/dist/config.js.map +1 -1
- package/dist/crypto.js +34 -47
- package/dist/crypto.js.map +1 -1
- package/dist/daemon.js +29 -41
- package/dist/daemon.js.map +1 -1
- package/dist/delete.d.ts +1 -1
- package/dist/delete.js +11 -17
- package/dist/delete.js.map +1 -1
- package/dist/doc.d.ts +1 -1
- package/dist/doc.js +18 -24
- package/dist/doc.js.map +1 -1
- package/dist/error.js +10 -23
- package/dist/error.js.map +1 -1
- package/dist/feed.d.ts +1 -1
- package/dist/feed.js +3 -6
- package/dist/feed.js.map +1 -1
- package/dist/identity.js +16 -24
- package/dist/identity.js.map +1 -1
- package/dist/identity_cmd.d.ts +9 -3
- package/dist/identity_cmd.js +44 -29
- package/dist/identity_cmd.js.map +1 -1
- package/dist/idl.js +9 -18
- package/dist/idl.js.map +1 -1
- package/dist/key-store.js +6 -43
- package/dist/key-store.js.map +1 -1
- package/dist/pow.d.ts +1 -1
- package/dist/pow.js +3 -9
- package/dist/pow.js.map +1 -1
- package/dist/register.d.ts +1 -1
- package/dist/register.js +5 -8
- package/dist/register.js.map +1 -1
- package/dist/rpc.js +4 -10
- package/dist/rpc.js.map +1 -1
- package/dist/serve.d.ts +1 -1
- package/dist/serve.js +27 -31
- package/dist/serve.js.map +1 -1
- package/dist/session.d.ts +4 -4
- package/dist/session.js +23 -30
- package/dist/session.js.map +1 -1
- package/dist/sign.d.ts +1 -1
- package/dist/sign.js +17 -23
- package/dist/sign.js.map +1 -1
- package/dist/types/common.js +1 -2
- package/dist/types/common.js.map +1 -1
- package/dist/types/config.js +1 -2
- package/dist/types/config.js.map +1 -1
- package/dist/types/registry.d.ts +2 -2
- package/dist/types/registry.js +2 -3
- package/dist/types/registry.js.map +1 -1
- package/dist/types/sign-event.d.ts +1 -1
- package/dist/types/sign-event.js +2 -3
- package/dist/types/sign-event.js.map +1 -1
- package/dist/utils.d.ts +2 -2
- package/dist/utils.js +37 -57
- package/dist/utils.js.map +1 -1
- package/dist/verify.d.ts +1 -1
- package/dist/verify.js +17 -23
- package/dist/verify.js.map +1 -1
- package/dist/vetkey.d.ts +1 -1
- package/dist/vetkey.js +24 -60
- package/dist/vetkey.js.map +1 -1
- package/package.json +2 -3
package/README.md
CHANGED
package/dist/bind.d.ts
CHANGED
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
*
|
|
14
14
|
* All commands support --identity=<pem_path> to specify identity file.
|
|
15
15
|
*/
|
|
16
|
-
import { Session } from './session';
|
|
16
|
+
import { Session } from './session.js';
|
|
17
17
|
/**
|
|
18
18
|
* Entry point when invoked via cli.ts.
|
|
19
19
|
* Receives a Session instance with pre-parsed arguments.
|
package/dist/bind.js
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
"use strict";
|
|
3
2
|
/**
|
|
4
3
|
* zCloak.ai Agent-Owner Binding Tool
|
|
5
4
|
*
|
|
@@ -14,8 +13,6 @@
|
|
|
14
13
|
*
|
|
15
14
|
* All commands support --identity=<pem_path> to specify identity file.
|
|
16
15
|
*/
|
|
17
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
-
exports.run = run;
|
|
19
16
|
// ========== Help Information ==========
|
|
20
17
|
function showHelp() {
|
|
21
18
|
console.log('zCloak.ai Agent-Owner Binding Tool');
|
|
@@ -119,7 +116,7 @@ async function cmdPrepare(session, userPrincipal) {
|
|
|
119
116
|
* Entry point when invoked via cli.ts.
|
|
120
117
|
* Receives a Session instance with pre-parsed arguments.
|
|
121
118
|
*/
|
|
122
|
-
async function run(session) {
|
|
119
|
+
export async function run(session) {
|
|
123
120
|
const command = session.args._args[0];
|
|
124
121
|
try {
|
|
125
122
|
switch (command) {
|
package/dist/bind.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bind.js","sourceRoot":"","sources":["../src/bind.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"bind.js","sourceRoot":"","sources":["../src/bind.ts"],"names":[],"mappings":"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"}
|
package/dist/cli.js
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
"use strict";
|
|
3
2
|
/**
|
|
4
3
|
* zCloak.ai Agent CLI
|
|
5
4
|
*
|
|
@@ -28,12 +27,11 @@
|
|
|
28
27
|
* zcloak-ai feed counter
|
|
29
28
|
* zcloak-ai verify file ./report.pdf
|
|
30
29
|
*/
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
};
|
|
34
|
-
|
|
35
|
-
const
|
|
36
|
-
const session_1 = require("./session");
|
|
30
|
+
import path from 'path';
|
|
31
|
+
import { fileURLToPath } from 'url';
|
|
32
|
+
import { Session } from './session.js';
|
|
33
|
+
/** ESM equivalent of __dirname */
|
|
34
|
+
const __dirname = path.dirname(fileURLToPath(import.meta.url));
|
|
37
35
|
/** Supported modules and their corresponding script files (compiled in dist/ directory) */
|
|
38
36
|
const MODULES = {
|
|
39
37
|
identity: 'identity_cmd',
|
|
@@ -109,14 +107,13 @@ async function main() {
|
|
|
109
107
|
// Construct sub-argv without mutating process.argv.
|
|
110
108
|
// Format: [node_binary, script_path, ...remaining_args]
|
|
111
109
|
// This preserves the same index layout that parseArgs() expects (skips first 2 elements).
|
|
112
|
-
const scriptPath =
|
|
110
|
+
const scriptPath = path.join(__dirname, `${scriptFile}.js`);
|
|
113
111
|
const subArgv = [process.argv[0], scriptPath, ...process.argv.slice(3)];
|
|
114
112
|
// Create a Session from the constructed argv
|
|
115
|
-
const session = new
|
|
113
|
+
const session = new Session(subArgv);
|
|
116
114
|
// Load and execute sub-script's run() function.
|
|
117
115
|
// After compilation, __dirname points to dist/, sub-scripts are in the same directory.
|
|
118
|
-
|
|
119
|
-
const mod = require(scriptPath);
|
|
116
|
+
const mod = await import(scriptPath);
|
|
120
117
|
await mod.run(session);
|
|
121
118
|
}
|
|
122
119
|
main().catch((err) => {
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
package/dist/config.d.ts
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Contains canister IDs and related URL configurations.
|
|
5
5
|
* All scripts obtain configuration through this file.
|
|
6
6
|
*/
|
|
7
|
-
import type { AppConfig, CanisterIds } from './types/config';
|
|
7
|
+
import type { AppConfig, CanisterIds } from './types/config.js';
|
|
8
8
|
declare const config: AppConfig;
|
|
9
9
|
export default config;
|
|
10
10
|
/**
|
package/dist/config.js
CHANGED
|
@@ -1,12 +1,9 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
/**
|
|
3
2
|
* zCloak.ai Application Configuration
|
|
4
3
|
*
|
|
5
4
|
* Contains canister IDs and related URL configurations.
|
|
6
5
|
* All scripts obtain configuration through this file.
|
|
7
6
|
*/
|
|
8
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
-
exports.getCanisterIds = getCanisterIds;
|
|
10
7
|
const config = {
|
|
11
8
|
// Canister IDs
|
|
12
9
|
canisterIds: {
|
|
@@ -24,11 +21,11 @@ const config = {
|
|
|
24
21
|
// Event view page URL prefix (append event ID to form the full URL)
|
|
25
22
|
event_url: 'https://social.zcloak.xyz/post/',
|
|
26
23
|
};
|
|
27
|
-
|
|
24
|
+
export default config;
|
|
28
25
|
/**
|
|
29
26
|
* Get canister ID configuration.
|
|
30
27
|
*/
|
|
31
|
-
function getCanisterIds() {
|
|
28
|
+
export function getCanisterIds() {
|
|
32
29
|
return config.canisterIds;
|
|
33
30
|
}
|
|
34
31
|
//# sourceMappingURL=config.js.map
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,MAAM,MAAM,GAAc;IACxB,eAAe;IACf,WAAW,EAAE;QACX,QAAQ,EAAE,6BAA6B,EAAK,oBAAoB;QAChE,UAAU,EAAE,6BAA6B,EAAG,sBAAsB;KACnE;IACD,mCAAmC;IACnC,SAAS,EAAE,CAAC;IACZ,yBAAyB;IACzB,QAAQ,EAAE,kCAAkC;IAC5C,gCAAgC;IAChC,WAAW,EAAE,gCAAgC;IAC7C,4BAA4B;IAC5B,SAAS,EAAE,iCAAiC;IAC5C,oEAAoE;IACpE,SAAS,EAAE,iCAAiC;CAC7C,CAAC;AAEF,eAAe,MAAM,CAAC;AAEtB;;GAEG;AACH,MAAM,UAAU,cAAc;IAC5B,OAAO,MAAM,CAAC,WAAW,CAAC;AAC5B,CAAC"}
|
package/dist/crypto.js
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
/**
|
|
3
2
|
* Cryptographic Primitives for VetKey Operations
|
|
4
3
|
*
|
|
@@ -13,21 +12,9 @@
|
|
|
13
12
|
*
|
|
14
13
|
* All formats are byte-level compatible with the Rust vetkey-tool implementation.
|
|
15
14
|
*/
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
};
|
|
19
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20
|
-
exports.generateTransportKeypair = generateTransportKeypair;
|
|
21
|
-
exports.ibeEncrypt = ibeEncrypt;
|
|
22
|
-
exports.ibeDecrypt = ibeDecrypt;
|
|
23
|
-
exports.decryptVetkey = decryptVetkey;
|
|
24
|
-
exports.makeIbeIdentity = makeIbeIdentity;
|
|
25
|
-
exports.vetkeyToAes256 = vetkeyToAes256;
|
|
26
|
-
exports.aes256Encrypt = aes256Encrypt;
|
|
27
|
-
exports.aes256Decrypt = aes256Decrypt;
|
|
28
|
-
const crypto_1 = __importDefault(require("crypto"));
|
|
29
|
-
const vetkeys_1 = require("@dfinity/vetkeys");
|
|
30
|
-
const error_1 = require("./error");
|
|
15
|
+
import crypto from 'crypto';
|
|
16
|
+
import { TransportSecretKey, DerivedPublicKey, EncryptedVetKey, IbeCiphertext, IbeIdentity, IbeSeed, } from '@dfinity/vetkeys';
|
|
17
|
+
import { encryptionError, decryptionError } from './error.js';
|
|
31
18
|
// ============================================================================
|
|
32
19
|
// Constants
|
|
33
20
|
// ============================================================================
|
|
@@ -55,8 +42,8 @@ const VETKEY_AES256_DOMAIN = "vetkey-aes256-file-encryption";
|
|
|
55
42
|
*
|
|
56
43
|
* @returns [transportSecretKey, transportPublicKeyBytes (48 bytes, compressed G1)]
|
|
57
44
|
*/
|
|
58
|
-
function generateTransportKeypair() {
|
|
59
|
-
const tsk =
|
|
45
|
+
export function generateTransportKeypair() {
|
|
46
|
+
const tsk = TransportSecretKey.random();
|
|
60
47
|
const publicKeyBytes = tsk.publicKeyBytes();
|
|
61
48
|
return [tsk, publicKeyBytes];
|
|
62
49
|
}
|
|
@@ -71,16 +58,16 @@ function generateTransportKeypair() {
|
|
|
71
58
|
* @param plaintext - Data to encrypt
|
|
72
59
|
* @returns IBE ciphertext bytes
|
|
73
60
|
*/
|
|
74
|
-
function ibeEncrypt(dpkBytes, ibeIdentity, plaintext) {
|
|
61
|
+
export function ibeEncrypt(dpkBytes, ibeIdentity, plaintext) {
|
|
75
62
|
try {
|
|
76
|
-
const dpk =
|
|
77
|
-
const identity =
|
|
78
|
-
const seed =
|
|
79
|
-
const ciphertext =
|
|
63
|
+
const dpk = DerivedPublicKey.deserialize(dpkBytes);
|
|
64
|
+
const identity = IbeIdentity.fromString(ibeIdentity);
|
|
65
|
+
const seed = IbeSeed.random();
|
|
66
|
+
const ciphertext = IbeCiphertext.encrypt(dpk, identity, plaintext, seed);
|
|
80
67
|
return ciphertext.serialize();
|
|
81
68
|
}
|
|
82
69
|
catch (e) {
|
|
83
|
-
throw
|
|
70
|
+
throw encryptionError(`IBE encrypt failed: ${e instanceof Error ? e.message : String(e)}`, e);
|
|
84
71
|
}
|
|
85
72
|
}
|
|
86
73
|
/**
|
|
@@ -99,20 +86,20 @@ function ibeEncrypt(dpkBytes, ibeIdentity, plaintext) {
|
|
|
99
86
|
* @param transportSecret - Transport secret key (for decrypting the VetKey)
|
|
100
87
|
* @returns Decrypted plaintext
|
|
101
88
|
*/
|
|
102
|
-
function ibeDecrypt(encryptedKeyBytes, dpkBytes, ibeIdentity, ciphertextBytes, transportSecret) {
|
|
89
|
+
export function ibeDecrypt(encryptedKeyBytes, dpkBytes, ibeIdentity, ciphertextBytes, transportSecret) {
|
|
103
90
|
try {
|
|
104
91
|
// Step 1-2: Transport-decrypt the VetKey
|
|
105
|
-
const encryptedVetKey =
|
|
106
|
-
const dpk =
|
|
92
|
+
const encryptedVetKey = EncryptedVetKey.deserialize(encryptedKeyBytes);
|
|
93
|
+
const dpk = DerivedPublicKey.deserialize(dpkBytes);
|
|
107
94
|
// decryptAndVerify expects raw bytes for the input (derivation ID / IBE identity)
|
|
108
95
|
const identityBytes = new TextEncoder().encode(ibeIdentity);
|
|
109
96
|
const vetKey = encryptedVetKey.decryptAndVerify(transportSecret, dpk, identityBytes);
|
|
110
97
|
// Step 3-4: IBE-decrypt the ciphertext
|
|
111
|
-
const ibeCiphertext =
|
|
98
|
+
const ibeCiphertext = IbeCiphertext.deserialize(ciphertextBytes);
|
|
112
99
|
return ibeCiphertext.decrypt(vetKey);
|
|
113
100
|
}
|
|
114
101
|
catch (e) {
|
|
115
|
-
throw
|
|
102
|
+
throw decryptionError(`IBE decrypt failed: ${e instanceof Error ? e.message : String(e)}`, e);
|
|
116
103
|
}
|
|
117
104
|
}
|
|
118
105
|
/**
|
|
@@ -127,17 +114,17 @@ function ibeDecrypt(encryptedKeyBytes, dpkBytes, ibeIdentity, ciphertextBytes, t
|
|
|
127
114
|
* @param transportSecret - Transport secret key
|
|
128
115
|
* @returns Raw VetKey bytes (48 bytes, compressed G1 point)
|
|
129
116
|
*/
|
|
130
|
-
function decryptVetkey(encryptedKeyBytes, dpkBytes, derivationId, transportSecret) {
|
|
117
|
+
export function decryptVetkey(encryptedKeyBytes, dpkBytes, derivationId, transportSecret) {
|
|
131
118
|
try {
|
|
132
|
-
const encryptedVetKey =
|
|
133
|
-
const dpk =
|
|
119
|
+
const encryptedVetKey = EncryptedVetKey.deserialize(encryptedKeyBytes);
|
|
120
|
+
const dpk = DerivedPublicKey.deserialize(dpkBytes);
|
|
134
121
|
// decryptAndVerify expects raw bytes for the input (derivation ID)
|
|
135
122
|
const derivationIdBytes = new TextEncoder().encode(derivationId);
|
|
136
123
|
const vetKey = encryptedVetKey.decryptAndVerify(transportSecret, dpk, derivationIdBytes);
|
|
137
124
|
return vetKey.signatureBytes();
|
|
138
125
|
}
|
|
139
126
|
catch (e) {
|
|
140
|
-
throw
|
|
127
|
+
throw decryptionError(`VetKey transport decryption failed: ${e instanceof Error ? e.message : String(e)}`, e);
|
|
141
128
|
}
|
|
142
129
|
}
|
|
143
130
|
// ============================================================================
|
|
@@ -156,8 +143,8 @@ function decryptVetkey(encryptedKeyBytes, dpkBytes, derivationId, transportSecre
|
|
|
156
143
|
* @param content - Content bytes to hash
|
|
157
144
|
* @returns IBE identity string
|
|
158
145
|
*/
|
|
159
|
-
function makeIbeIdentity(principal, content) {
|
|
160
|
-
const hash =
|
|
146
|
+
export function makeIbeIdentity(principal, content) {
|
|
147
|
+
const hash = crypto.createHash("sha256").update(content).digest("hex");
|
|
161
148
|
const shortHash = hash.slice(0, 16); // First 16 hex chars
|
|
162
149
|
const timestamp = Date.now();
|
|
163
150
|
return `${principal}:${shortHash}:${timestamp}`;
|
|
@@ -173,13 +160,13 @@ function makeIbeIdentity(principal, content) {
|
|
|
173
160
|
* @param vetkeyBytes - Raw VetKey bytes (48 bytes, compressed G1 point)
|
|
174
161
|
* @returns AES-256 key (32 bytes)
|
|
175
162
|
*/
|
|
176
|
-
function vetkeyToAes256(vetkeyBytes) {
|
|
163
|
+
export function vetkeyToAes256(vetkeyBytes) {
|
|
177
164
|
if (vetkeyBytes.length !== 48) {
|
|
178
|
-
throw
|
|
165
|
+
throw encryptionError(`Invalid VetKey length: expected 48, got ${vetkeyBytes.length}`);
|
|
179
166
|
}
|
|
180
167
|
// HKDF-SHA256 with VetKey as IKM and domain separator as info
|
|
181
168
|
// Using empty salt (matches Rust hkdf::Hkdf::new(None, ikm))
|
|
182
|
-
return Buffer.from(
|
|
169
|
+
return Buffer.from(crypto.hkdfSync("sha256", vetkeyBytes, Buffer.alloc(0), VETKEY_AES256_DOMAIN, 32));
|
|
183
170
|
}
|
|
184
171
|
/**
|
|
185
172
|
* Encrypt plaintext using AES-256-GCM in VKDA format.
|
|
@@ -191,11 +178,11 @@ function vetkeyToAes256(vetkeyBytes) {
|
|
|
191
178
|
* @param plaintext - Data to encrypt
|
|
192
179
|
* @returns VKDA-formatted ciphertext
|
|
193
180
|
*/
|
|
194
|
-
function aes256Encrypt(key, plaintext) {
|
|
181
|
+
export function aes256Encrypt(key, plaintext) {
|
|
195
182
|
// Generate random 12-byte nonce
|
|
196
|
-
const nonce =
|
|
183
|
+
const nonce = crypto.randomBytes(AES_GCM_NONCE_BYTES);
|
|
197
184
|
// Encrypt with AES-256-GCM
|
|
198
|
-
const cipher =
|
|
185
|
+
const cipher = crypto.createCipheriv("aes-256-gcm", key, nonce);
|
|
199
186
|
const encrypted = Buffer.concat([cipher.update(plaintext), cipher.final()]);
|
|
200
187
|
const tag = cipher.getAuthTag(); // 16 bytes
|
|
201
188
|
// Assemble VKDA format: magic + version + nonce + ciphertext + tag
|
|
@@ -217,10 +204,10 @@ function aes256Encrypt(key, plaintext) {
|
|
|
217
204
|
* @param data - VKDA-formatted ciphertext
|
|
218
205
|
* @returns Decrypted plaintext
|
|
219
206
|
*/
|
|
220
|
-
function aes256Decrypt(key, data) {
|
|
207
|
+
export function aes256Decrypt(key, data) {
|
|
221
208
|
// Validate minimum size
|
|
222
209
|
if (data.length < VKDA_OVERHEAD) {
|
|
223
|
-
throw
|
|
210
|
+
throw decryptionError(`Data too short: ${data.length} bytes (minimum ${VKDA_OVERHEAD} bytes for VKDA format)`);
|
|
224
211
|
}
|
|
225
212
|
// Validate magic header
|
|
226
213
|
if (data[0] !== 0x56 || // 'V'
|
|
@@ -228,11 +215,11 @@ function aes256Decrypt(key, data) {
|
|
|
228
215
|
data[2] !== 0x44 || // 'D'
|
|
229
216
|
data[3] !== 0x41 // 'A'
|
|
230
217
|
) {
|
|
231
|
-
throw
|
|
218
|
+
throw decryptionError("Invalid VKDA magic header (expected 'VKDA')");
|
|
232
219
|
}
|
|
233
220
|
// Validate version
|
|
234
221
|
if (data[4] !== AES_DAEMON_VERSION) {
|
|
235
|
-
throw
|
|
222
|
+
throw decryptionError(`Unsupported VKDA version: ${data[4]} (expected ${AES_DAEMON_VERSION})`);
|
|
236
223
|
}
|
|
237
224
|
// Extract components
|
|
238
225
|
const nonce = data.subarray(5, 5 + AES_GCM_NONCE_BYTES); // bytes 5-16
|
|
@@ -241,12 +228,12 @@ function aes256Decrypt(key, data) {
|
|
|
241
228
|
const tag = ciphertextWithTag.subarray(ciphertextWithTag.length - AES_GCM_TAG_BYTES);
|
|
242
229
|
// Decrypt with AES-256-GCM
|
|
243
230
|
try {
|
|
244
|
-
const decipher =
|
|
231
|
+
const decipher = crypto.createDecipheriv("aes-256-gcm", key, nonce);
|
|
245
232
|
decipher.setAuthTag(tag);
|
|
246
233
|
return Buffer.concat([decipher.update(ciphertext), decipher.final()]);
|
|
247
234
|
}
|
|
248
235
|
catch (e) {
|
|
249
|
-
throw
|
|
236
|
+
throw decryptionError(`AES-256-GCM decryption failed (authentication tag mismatch or corrupted data): ${e instanceof Error ? e.message : String(e)}`, e);
|
|
250
237
|
}
|
|
251
238
|
}
|
|
252
239
|
//# sourceMappingURL=crypto.js.map
|
package/dist/crypto.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"crypto.js","sourceRoot":"","sources":["../src/crypto.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"crypto.js","sourceRoot":"","sources":["../src/crypto.ts"],"names":[],"mappings":"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"}
|
package/dist/daemon.js
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
/**
|
|
3
2
|
* Daemon Lifecycle Management — PID file, socket path, runtime directory
|
|
4
3
|
*
|
|
@@ -15,21 +14,11 @@
|
|
|
15
14
|
* process exit handlers, ensuring PID and socket files are removed
|
|
16
15
|
* even on unexpected termination (SIGTERM, SIGINT, uncaught exceptions).
|
|
17
16
|
*/
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
};
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
exports.runtimeDir = runtimeDir;
|
|
24
|
-
exports.sanitizeDerivationId = sanitizeDerivationId;
|
|
25
|
-
exports.socketPath = socketPath;
|
|
26
|
-
exports.pidPath = pidPath;
|
|
27
|
-
exports.findRunningDaemon = findRunningDaemon;
|
|
28
|
-
const fs_1 = require("fs");
|
|
29
|
-
const path_1 = require("path");
|
|
30
|
-
const os_1 = require("os");
|
|
31
|
-
const crypto_1 = __importDefault(require("crypto"));
|
|
32
|
-
const error_1 = require("./error");
|
|
17
|
+
import { existsSync, mkdirSync, readFileSync, writeFileSync, unlinkSync } from 'fs';
|
|
18
|
+
import { join } from 'path';
|
|
19
|
+
import { homedir } from 'os';
|
|
20
|
+
import crypto from 'crypto';
|
|
21
|
+
import { daemonError } from './error.js';
|
|
33
22
|
/** Runtime directory name under home directory */
|
|
34
23
|
const RUNTIME_DIR_NAME = ".vetkey-tool";
|
|
35
24
|
/**
|
|
@@ -42,8 +31,8 @@ const MAX_SOCKET_PATH_LEN = 100;
|
|
|
42
31
|
// Path Utilities
|
|
43
32
|
// ============================================================================
|
|
44
33
|
/** Get the runtime directory path (~/.vetkey-tool/) */
|
|
45
|
-
function runtimeDir() {
|
|
46
|
-
return
|
|
34
|
+
export function runtimeDir() {
|
|
35
|
+
return join(homedir(), RUNTIME_DIR_NAME);
|
|
47
36
|
}
|
|
48
37
|
/**
|
|
49
38
|
* Sanitize a derivation ID for use in file names.
|
|
@@ -56,30 +45,30 @@ function runtimeDir() {
|
|
|
56
45
|
* @param derivationId - Raw derivation ID (e.g. "abc-def:default")
|
|
57
46
|
* @returns Safe file name prefix
|
|
58
47
|
*/
|
|
59
|
-
function sanitizeDerivationId(derivationId) {
|
|
48
|
+
export function sanitizeDerivationId(derivationId) {
|
|
60
49
|
const sanitized = derivationId
|
|
61
50
|
.replace(/:/g, "_")
|
|
62
51
|
.replace(/\//g, "_")
|
|
63
52
|
.replace(/\\/g, "_");
|
|
64
53
|
// Check if the full socket path would be too long
|
|
65
54
|
const dir = runtimeDir();
|
|
66
|
-
const fullPath =
|
|
55
|
+
const fullPath = join(dir, `${sanitized}.sock`);
|
|
67
56
|
if (fullPath.length > MAX_SOCKET_PATH_LEN) {
|
|
68
57
|
// Use SHA-256 hash prefix for long derivation IDs
|
|
69
|
-
const hash =
|
|
58
|
+
const hash = crypto.createHash("sha256").update(derivationId).digest("hex");
|
|
70
59
|
return `vk_${hash.slice(0, 16)}`;
|
|
71
60
|
}
|
|
72
61
|
return sanitized;
|
|
73
62
|
}
|
|
74
63
|
/** Get the socket file path for a derivation ID */
|
|
75
|
-
function socketPath(derivationId) {
|
|
64
|
+
export function socketPath(derivationId) {
|
|
76
65
|
const name = sanitizeDerivationId(derivationId);
|
|
77
|
-
return
|
|
66
|
+
return join(runtimeDir(), `${name}.sock`);
|
|
78
67
|
}
|
|
79
68
|
/** Get the PID file path for a derivation ID */
|
|
80
|
-
function pidPath(derivationId) {
|
|
69
|
+
export function pidPath(derivationId) {
|
|
81
70
|
const name = sanitizeDerivationId(derivationId);
|
|
82
|
-
return
|
|
71
|
+
return join(runtimeDir(), `${name}.pid`);
|
|
83
72
|
}
|
|
84
73
|
// ============================================================================
|
|
85
74
|
// Process Detection
|
|
@@ -124,7 +113,7 @@ function isProcessAlive(pid) {
|
|
|
124
113
|
* - Removes the PID file
|
|
125
114
|
* - Removes the socket file
|
|
126
115
|
*/
|
|
127
|
-
class DaemonRuntime {
|
|
116
|
+
export class DaemonRuntime {
|
|
128
117
|
constructor(socketFilePath, pidFilePath, derivationId) {
|
|
129
118
|
this.cleanedUp = false;
|
|
130
119
|
this._socketPath = socketFilePath;
|
|
@@ -148,16 +137,16 @@ class DaemonRuntime {
|
|
|
148
137
|
const sock = socketPath(derivationId);
|
|
149
138
|
const pid = pidPath(derivationId);
|
|
150
139
|
// Create runtime directory with restricted permissions (0o700)
|
|
151
|
-
if (!
|
|
152
|
-
|
|
140
|
+
if (!existsSync(dir)) {
|
|
141
|
+
mkdirSync(dir, { recursive: true, mode: 0o700 });
|
|
153
142
|
}
|
|
154
143
|
// Check for existing running instance
|
|
155
|
-
if (
|
|
144
|
+
if (existsSync(pid)) {
|
|
156
145
|
try {
|
|
157
|
-
const pidStr =
|
|
146
|
+
const pidStr = readFileSync(pid, "utf-8").trim();
|
|
158
147
|
const existingPid = parseInt(pidStr, 10);
|
|
159
148
|
if (!isNaN(existingPid) && isProcessAlive(existingPid)) {
|
|
160
|
-
throw
|
|
149
|
+
throw daemonError(`Daemon already running (PID ${existingPid}, derivation_id: ${derivationId}). ` +
|
|
161
150
|
`Use 'zcloak-ai vetkey stop --key-name ...' to stop it first.`);
|
|
162
151
|
}
|
|
163
152
|
// Stale PID file — clean up
|
|
@@ -174,12 +163,12 @@ class DaemonRuntime {
|
|
|
174
163
|
safeUnlink(sock);
|
|
175
164
|
}
|
|
176
165
|
// Remove stale socket file if it exists without a PID file
|
|
177
|
-
if (
|
|
166
|
+
if (existsSync(sock)) {
|
|
178
167
|
console.error("Removing stale socket file");
|
|
179
168
|
safeUnlink(sock);
|
|
180
169
|
}
|
|
181
170
|
// Write current PID to PID file
|
|
182
|
-
|
|
171
|
+
writeFileSync(pid, `${process.pid}\n`, { mode: 0o600 });
|
|
183
172
|
return new DaemonRuntime(sock, pid, derivationId);
|
|
184
173
|
}
|
|
185
174
|
/** Socket file path */
|
|
@@ -217,7 +206,6 @@ class DaemonRuntime {
|
|
|
217
206
|
this.cleanup();
|
|
218
207
|
}
|
|
219
208
|
}
|
|
220
|
-
exports.DaemonRuntime = DaemonRuntime;
|
|
221
209
|
/**
|
|
222
210
|
* Find the socket path for a running daemon (used by stop/status commands).
|
|
223
211
|
*
|
|
@@ -228,23 +216,23 @@ exports.DaemonRuntime = DaemonRuntime;
|
|
|
228
216
|
* @returns Socket path if daemon is running
|
|
229
217
|
* @throws ToolError if no running daemon is found
|
|
230
218
|
*/
|
|
231
|
-
function findRunningDaemon(derivationId) {
|
|
219
|
+
export function findRunningDaemon(derivationId) {
|
|
232
220
|
const sock = socketPath(derivationId);
|
|
233
221
|
const pid = pidPath(derivationId);
|
|
234
|
-
if (!
|
|
235
|
-
throw
|
|
222
|
+
if (!existsSync(sock)) {
|
|
223
|
+
throw daemonError(`No running daemon found for derivation_id '${derivationId}'. ` +
|
|
236
224
|
`Socket file not found: ${sock}`);
|
|
237
225
|
}
|
|
238
226
|
// Optionally verify the PID is still alive
|
|
239
|
-
if (
|
|
227
|
+
if (existsSync(pid)) {
|
|
240
228
|
try {
|
|
241
|
-
const pidStr =
|
|
229
|
+
const pidStr = readFileSync(pid, "utf-8").trim();
|
|
242
230
|
const existingPid = parseInt(pidStr, 10);
|
|
243
231
|
if (!isNaN(existingPid) && !isProcessAlive(existingPid)) {
|
|
244
232
|
// Stale files — clean up
|
|
245
233
|
safeUnlink(sock);
|
|
246
234
|
safeUnlink(pid);
|
|
247
|
-
throw
|
|
235
|
+
throw daemonError(`Daemon for '${derivationId}' is no longer running (PID ${existingPid} is dead). ` +
|
|
248
236
|
`Stale files have been cleaned up.`);
|
|
249
237
|
}
|
|
250
238
|
}
|
|
@@ -262,7 +250,7 @@ function findRunningDaemon(derivationId) {
|
|
|
262
250
|
/** Safely delete a file, ignoring errors if it doesn't exist */
|
|
263
251
|
function safeUnlink(filePath) {
|
|
264
252
|
try {
|
|
265
|
-
|
|
253
|
+
unlinkSync(filePath);
|
|
266
254
|
}
|
|
267
255
|
catch {
|
|
268
256
|
// Ignore — file may not exist
|
package/dist/daemon.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"daemon.js","sourceRoot":"","sources":["../src/daemon.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"daemon.js","sourceRoot":"","sources":["../src/daemon.ts"],"names":[],"mappings":"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"}
|
package/dist/delete.d.ts
CHANGED
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
*
|
|
14
14
|
* All commands support --identity=<pem_path> to specify identity file.
|
|
15
15
|
*/
|
|
16
|
-
import { Session } from './session';
|
|
16
|
+
import { Session } from './session.js';
|
|
17
17
|
/**
|
|
18
18
|
* Entry point when invoked via cli.ts.
|
|
19
19
|
* Receives a Session instance with pre-parsed arguments.
|