@vybestack/llxprt-code-storage 0.10.0 → 0.11.0-nightly.260728.ffaa8d5d7
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/src/config/storage.d.ts +35 -0
- package/dist/src/config/storage.js +49 -0
- package/dist/src/config/storage.js.map +1 -1
- package/dist/src/index.d.ts +1 -1
- package/dist/src/index.js +1 -1
- package/dist/src/index.js.map +1 -1
- package/package.json +1 -1
- package/src/config/storage.ts +56 -0
- package/src/index.ts +1 -0
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
export declare const LLXPRT_DIR = ".llxprt";
|
|
7
|
+
export declare const AGENTS_DIR = ".agents";
|
|
7
8
|
export declare const PROVIDER_ACCOUNTS_FILENAME = "provider_accounts.json";
|
|
8
9
|
export declare const OAUTH_FILE = "oauth_creds.json";
|
|
9
10
|
/**
|
|
@@ -87,6 +88,21 @@ export declare class Storage {
|
|
|
87
88
|
static getGlobalSettingsPath(): string;
|
|
88
89
|
static getUserCommandsDir(): string;
|
|
89
90
|
static getUserSkillsDir(): string;
|
|
91
|
+
/**
|
|
92
|
+
* Returns the global `.agents/` directory under the user's home directory,
|
|
93
|
+
* matching the cross-tool Agent Skills open standard
|
|
94
|
+
* (https://agentskills.io). Always resolved against `os.homedir()` so it
|
|
95
|
+
* never falls back to a world-writable temp directory. If the home
|
|
96
|
+
* directory cannot be determined, this throws rather than silently
|
|
97
|
+
* resolving to a relative or temp path (fail-closed for security).
|
|
98
|
+
*/
|
|
99
|
+
static getGlobalAgentsDir(): string;
|
|
100
|
+
/**
|
|
101
|
+
* Returns the user-level skills directory under the cross-tool
|
|
102
|
+
* `.agents/skills/` standard (https://agentskills.io), enabling
|
|
103
|
+
* interoperability with tools like `npx skills add`.
|
|
104
|
+
*/
|
|
105
|
+
static getUserAgentSkillsDir(): string;
|
|
90
106
|
static getUserPoliciesDir(): string;
|
|
91
107
|
static getMcpOAuthTokensPath(): string;
|
|
92
108
|
static getInstallationIdPath(): string;
|
|
@@ -187,7 +203,26 @@ export declare class Storage {
|
|
|
187
203
|
getWorkspaceSettingsPath(): string;
|
|
188
204
|
getProjectCommandsDir(): string;
|
|
189
205
|
getProjectSkillsDir(): string;
|
|
206
|
+
/**
|
|
207
|
+
* Returns the workspace-local `.agents/` directory, matching the cross-tool
|
|
208
|
+
* Agent Skills open standard (https://agentskills.io).
|
|
209
|
+
*/
|
|
210
|
+
getAgentsDir(): string;
|
|
211
|
+
/**
|
|
212
|
+
* Returns the workspace-local skills directory under the cross-tool
|
|
213
|
+
* `.agents/skills/` standard (https://agentskills.io), enabling
|
|
214
|
+
* interoperability with tools like `npx skills add`.
|
|
215
|
+
*/
|
|
216
|
+
getProjectAgentSkillsDir(): string;
|
|
190
217
|
getProjectTempCheckpointsDir(): string;
|
|
218
|
+
/**
|
|
219
|
+
* The single source of truth for the chats directory, where session
|
|
220
|
+
* recordings/persistence files live (`<projectTempDir>/chats`). Every
|
|
221
|
+
* consumer (session recording, resume probes, session cleanup, chat
|
|
222
|
+
* persistence) must derive the path through this helper so the writers and
|
|
223
|
+
* the readers/probes can never drift apart on the location.
|
|
224
|
+
*/
|
|
225
|
+
getProjectChatsDir(): string;
|
|
191
226
|
getExtensionsDir(): string;
|
|
192
227
|
getExtensionsConfigPath(): string;
|
|
193
228
|
getHistoryFilePath(): string;
|
|
@@ -9,6 +9,7 @@ import * as crypto from 'crypto';
|
|
|
9
9
|
import * as fs from 'fs';
|
|
10
10
|
import { resolveGlobalConfigDir as resolveGlobalConfigDirShared, resolveGlobalDataDir as resolveGlobalDataDirShared, resolveGlobalCacheDir as resolveGlobalCacheDirShared, resolveGlobalLogDir as resolveGlobalLogDirShared, resolveEnvOverride, } from './path-resolver.js';
|
|
11
11
|
export const LLXPRT_DIR = '.llxprt';
|
|
12
|
+
export const AGENTS_DIR = '.agents';
|
|
12
13
|
export const PROVIDER_ACCOUNTS_FILENAME = 'provider_accounts.json';
|
|
13
14
|
export const OAUTH_FILE = 'oauth_creds.json';
|
|
14
15
|
const TMP_DIR_NAME = 'tmp';
|
|
@@ -129,6 +130,29 @@ export class Storage {
|
|
|
129
130
|
static getUserSkillsDir() {
|
|
130
131
|
return path.join(Storage.getGlobalConfigDir(), 'skills');
|
|
131
132
|
}
|
|
133
|
+
/**
|
|
134
|
+
* Returns the global `.agents/` directory under the user's home directory,
|
|
135
|
+
* matching the cross-tool Agent Skills open standard
|
|
136
|
+
* (https://agentskills.io). Always resolved against `os.homedir()` so it
|
|
137
|
+
* never falls back to a world-writable temp directory. If the home
|
|
138
|
+
* directory cannot be determined, this throws rather than silently
|
|
139
|
+
* resolving to a relative or temp path (fail-closed for security).
|
|
140
|
+
*/
|
|
141
|
+
static getGlobalAgentsDir() {
|
|
142
|
+
const homeDir = os.homedir();
|
|
143
|
+
if (!homeDir || !path.isAbsolute(homeDir)) {
|
|
144
|
+
throw new Error('Unable to resolve user home directory for .agents skills; refusing to fall back to a relative or temp path.');
|
|
145
|
+
}
|
|
146
|
+
return path.join(homeDir, AGENTS_DIR);
|
|
147
|
+
}
|
|
148
|
+
/**
|
|
149
|
+
* Returns the user-level skills directory under the cross-tool
|
|
150
|
+
* `.agents/skills/` standard (https://agentskills.io), enabling
|
|
151
|
+
* interoperability with tools like `npx skills add`.
|
|
152
|
+
*/
|
|
153
|
+
static getUserAgentSkillsDir() {
|
|
154
|
+
return path.join(Storage.getGlobalAgentsDir(), 'skills');
|
|
155
|
+
}
|
|
132
156
|
static getUserPoliciesDir() {
|
|
133
157
|
return path.join(Storage.getGlobalConfigDir(), 'policies');
|
|
134
158
|
}
|
|
@@ -306,9 +330,34 @@ export class Storage {
|
|
|
306
330
|
getProjectSkillsDir() {
|
|
307
331
|
return path.join(this.getLlxprtDir(), 'skills');
|
|
308
332
|
}
|
|
333
|
+
/**
|
|
334
|
+
* Returns the workspace-local `.agents/` directory, matching the cross-tool
|
|
335
|
+
* Agent Skills open standard (https://agentskills.io).
|
|
336
|
+
*/
|
|
337
|
+
getAgentsDir() {
|
|
338
|
+
return path.join(this.targetDir, AGENTS_DIR);
|
|
339
|
+
}
|
|
340
|
+
/**
|
|
341
|
+
* Returns the workspace-local skills directory under the cross-tool
|
|
342
|
+
* `.agents/skills/` standard (https://agentskills.io), enabling
|
|
343
|
+
* interoperability with tools like `npx skills add`.
|
|
344
|
+
*/
|
|
345
|
+
getProjectAgentSkillsDir() {
|
|
346
|
+
return path.join(this.getAgentsDir(), 'skills');
|
|
347
|
+
}
|
|
309
348
|
getProjectTempCheckpointsDir() {
|
|
310
349
|
return path.join(this.getProjectTempDir(), 'checkpoints');
|
|
311
350
|
}
|
|
351
|
+
/**
|
|
352
|
+
* The single source of truth for the chats directory, where session
|
|
353
|
+
* recordings/persistence files live (`<projectTempDir>/chats`). Every
|
|
354
|
+
* consumer (session recording, resume probes, session cleanup, chat
|
|
355
|
+
* persistence) must derive the path through this helper so the writers and
|
|
356
|
+
* the readers/probes can never drift apart on the location.
|
|
357
|
+
*/
|
|
358
|
+
getProjectChatsDir() {
|
|
359
|
+
return path.join(this.getProjectTempDir(), 'chats');
|
|
360
|
+
}
|
|
312
361
|
getExtensionsDir() {
|
|
313
362
|
return path.join(this.getLlxprtDir(), 'extensions');
|
|
314
363
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"storage.js","sourceRoot":"","sources":["../../../src/config/storage.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"storage.js","sourceRoot":"","sources":["../../../src/config/storage.ts"],"names":[],"mappings":"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"}
|
package/dist/src/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export type { StorageLogger, NullStorageLogger } from './types/logger.js';
|
|
2
2
|
export { NullStorageLoggerImpl } from './types/logger.js';
|
|
3
|
-
export { Storage, LLXPRT_DIR, PROVIDER_ACCOUNTS_FILENAME, OAUTH_FILE, } from './config/storage.js';
|
|
3
|
+
export { Storage, LLXPRT_DIR, AGENTS_DIR, PROVIDER_ACCOUNTS_FILENAME, OAUTH_FILE, } from './config/storage.js';
|
|
4
4
|
export { FileSystemService, StandardFileSystemService, } from './services/fileSystemService.js';
|
|
5
5
|
export { FileDiscoveryService } from './services/fileDiscoveryService.js';
|
|
6
6
|
export type { FilterFilesOptions, FilterReport, } from './services/fileDiscoveryService.js';
|
package/dist/src/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export { NullStorageLoggerImpl } from './types/logger.js';
|
|
2
2
|
// Storage paths and constants
|
|
3
|
-
export { Storage, LLXPRT_DIR, PROVIDER_ACCOUNTS_FILENAME, OAUTH_FILE, } from './config/storage.js';
|
|
3
|
+
export { Storage, LLXPRT_DIR, AGENTS_DIR, PROVIDER_ACCOUNTS_FILENAME, OAUTH_FILE, } from './config/storage.js';
|
|
4
4
|
// File services
|
|
5
5
|
export { FileSystemService, StandardFileSystemService, } from './services/fileSystemService.js';
|
|
6
6
|
export { FileDiscoveryService } from './services/fileDiscoveryService.js';
|
package/dist/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAE1D,8BAA8B;AAC9B,OAAO,EACL,OAAO,EACP,UAAU,EACV,0BAA0B,EAC1B,UAAU,GACX,MAAM,qBAAqB,CAAC;AAE7B,gBAAgB;AAChB,OAAO,EACL,iBAAiB,EACjB,yBAAyB,GAC1B,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAM1E,kDAAkD;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAO7D,iBAAiB;AACjB,OAAO,EACL,WAAW,EACX,gBAAgB,EAChB,2BAA2B,GAC5B,MAAM,gCAAgC,CAAC;AAMxC,OAAO,EACL,kBAAkB,EAClB,cAAc,EACd,qBAAqB,EACrB,uBAAuB,EACvB,eAAe,GAChB,MAAM,wCAAwC,CAAC;AAGhD,0DAA0D;AAC1D,OAAO,EACL,qBAAqB,EACrB,qBAAqB,EACrB,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,kCAAkC,CAAC;AAO1C,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAE7D,8BAA8B;AAC9B,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAOhE,2BAA2B;AAC3B,OAAO,EACL,sBAAsB,EACtB,yBAAyB,GAC1B,MAAM,0CAA0C,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAE1D,8BAA8B;AAC9B,OAAO,EACL,OAAO,EACP,UAAU,EACV,UAAU,EACV,0BAA0B,EAC1B,UAAU,GACX,MAAM,qBAAqB,CAAC;AAE7B,gBAAgB;AAChB,OAAO,EACL,iBAAiB,EACjB,yBAAyB,GAC1B,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAM1E,kDAAkD;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAO7D,iBAAiB;AACjB,OAAO,EACL,WAAW,EACX,gBAAgB,EAChB,2BAA2B,GAC5B,MAAM,gCAAgC,CAAC;AAMxC,OAAO,EACL,kBAAkB,EAClB,cAAc,EACd,qBAAqB,EACrB,uBAAuB,EACvB,eAAe,GAChB,MAAM,wCAAwC,CAAC;AAGhD,0DAA0D;AAC1D,OAAO,EACL,qBAAqB,EACrB,qBAAqB,EACrB,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,kCAAkC,CAAC;AAO1C,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAE7D,8BAA8B;AAC9B,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAOhE,2BAA2B;AAC3B,OAAO,EACL,sBAAsB,EACtB,yBAAyB,GAC1B,MAAM,0CAA0C,CAAC"}
|
package/package.json
CHANGED
package/src/config/storage.ts
CHANGED
|
@@ -17,6 +17,7 @@ import {
|
|
|
17
17
|
} from './path-resolver.js';
|
|
18
18
|
|
|
19
19
|
export const LLXPRT_DIR = '.llxprt';
|
|
20
|
+
export const AGENTS_DIR = '.agents';
|
|
20
21
|
export const PROVIDER_ACCOUNTS_FILENAME = 'provider_accounts.json';
|
|
21
22
|
export const OAUTH_FILE = 'oauth_creds.json';
|
|
22
23
|
const TMP_DIR_NAME = 'tmp';
|
|
@@ -152,6 +153,33 @@ export class Storage {
|
|
|
152
153
|
return path.join(Storage.getGlobalConfigDir(), 'skills');
|
|
153
154
|
}
|
|
154
155
|
|
|
156
|
+
/**
|
|
157
|
+
* Returns the global `.agents/` directory under the user's home directory,
|
|
158
|
+
* matching the cross-tool Agent Skills open standard
|
|
159
|
+
* (https://agentskills.io). Always resolved against `os.homedir()` so it
|
|
160
|
+
* never falls back to a world-writable temp directory. If the home
|
|
161
|
+
* directory cannot be determined, this throws rather than silently
|
|
162
|
+
* resolving to a relative or temp path (fail-closed for security).
|
|
163
|
+
*/
|
|
164
|
+
static getGlobalAgentsDir(): string {
|
|
165
|
+
const homeDir = os.homedir();
|
|
166
|
+
if (!homeDir || !path.isAbsolute(homeDir)) {
|
|
167
|
+
throw new Error(
|
|
168
|
+
'Unable to resolve user home directory for .agents skills; refusing to fall back to a relative or temp path.',
|
|
169
|
+
);
|
|
170
|
+
}
|
|
171
|
+
return path.join(homeDir, AGENTS_DIR);
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
/**
|
|
175
|
+
* Returns the user-level skills directory under the cross-tool
|
|
176
|
+
* `.agents/skills/` standard (https://agentskills.io), enabling
|
|
177
|
+
* interoperability with tools like `npx skills add`.
|
|
178
|
+
*/
|
|
179
|
+
static getUserAgentSkillsDir(): string {
|
|
180
|
+
return path.join(Storage.getGlobalAgentsDir(), 'skills');
|
|
181
|
+
}
|
|
182
|
+
|
|
155
183
|
static getUserPoliciesDir(): string {
|
|
156
184
|
return path.join(Storage.getGlobalConfigDir(), 'policies');
|
|
157
185
|
}
|
|
@@ -366,10 +394,38 @@ export class Storage {
|
|
|
366
394
|
return path.join(this.getLlxprtDir(), 'skills');
|
|
367
395
|
}
|
|
368
396
|
|
|
397
|
+
/**
|
|
398
|
+
* Returns the workspace-local `.agents/` directory, matching the cross-tool
|
|
399
|
+
* Agent Skills open standard (https://agentskills.io).
|
|
400
|
+
*/
|
|
401
|
+
getAgentsDir(): string {
|
|
402
|
+
return path.join(this.targetDir, AGENTS_DIR);
|
|
403
|
+
}
|
|
404
|
+
|
|
405
|
+
/**
|
|
406
|
+
* Returns the workspace-local skills directory under the cross-tool
|
|
407
|
+
* `.agents/skills/` standard (https://agentskills.io), enabling
|
|
408
|
+
* interoperability with tools like `npx skills add`.
|
|
409
|
+
*/
|
|
410
|
+
getProjectAgentSkillsDir(): string {
|
|
411
|
+
return path.join(this.getAgentsDir(), 'skills');
|
|
412
|
+
}
|
|
413
|
+
|
|
369
414
|
getProjectTempCheckpointsDir(): string {
|
|
370
415
|
return path.join(this.getProjectTempDir(), 'checkpoints');
|
|
371
416
|
}
|
|
372
417
|
|
|
418
|
+
/**
|
|
419
|
+
* The single source of truth for the chats directory, where session
|
|
420
|
+
* recordings/persistence files live (`<projectTempDir>/chats`). Every
|
|
421
|
+
* consumer (session recording, resume probes, session cleanup, chat
|
|
422
|
+
* persistence) must derive the path through this helper so the writers and
|
|
423
|
+
* the readers/probes can never drift apart on the location.
|
|
424
|
+
*/
|
|
425
|
+
getProjectChatsDir(): string {
|
|
426
|
+
return path.join(this.getProjectTempDir(), 'chats');
|
|
427
|
+
}
|
|
428
|
+
|
|
373
429
|
getExtensionsDir(): string {
|
|
374
430
|
return path.join(this.getLlxprtDir(), 'extensions');
|
|
375
431
|
}
|