@yeseh/cortex-cli 0.6.4 → 0.6.6
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/category/commands/create.d.ts +44 -0
- package/dist/category/commands/create.d.ts.map +1 -0
- package/dist/category/commands/create.spec.d.ts +7 -0
- package/dist/category/commands/create.spec.d.ts.map +1 -0
- package/dist/category/index.d.ts +19 -0
- package/dist/category/index.d.ts.map +1 -0
- package/dist/commands/init.d.ts +58 -0
- package/dist/commands/init.d.ts.map +1 -0
- package/dist/commands/init.spec.d.ts +2 -0
- package/dist/commands/init.spec.d.ts.map +1 -0
- package/dist/context.d.ts +18 -0
- package/dist/context.d.ts.map +1 -0
- package/dist/context.spec.d.ts +2 -0
- package/dist/context.spec.d.ts.map +1 -0
- package/dist/create-cli-command.d.ts +23 -0
- package/dist/create-cli-command.d.ts.map +1 -0
- package/dist/create-cli-command.spec.d.ts +10 -0
- package/dist/create-cli-command.spec.d.ts.map +1 -0
- package/dist/errors.d.ts +57 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.spec.d.ts +2 -0
- package/dist/errors.spec.d.ts.map +1 -0
- package/dist/input.d.ts +42 -0
- package/dist/input.d.ts.map +1 -0
- package/dist/input.spec.d.ts +2 -0
- package/dist/input.spec.d.ts.map +1 -0
- package/dist/memory/commands/add.d.ts +62 -0
- package/dist/memory/commands/add.d.ts.map +1 -0
- package/dist/memory/commands/add.spec.d.ts +7 -0
- package/dist/memory/commands/add.spec.d.ts.map +1 -0
- package/dist/memory/commands/definitions.spec.d.ts +10 -0
- package/dist/memory/commands/definitions.spec.d.ts.map +1 -0
- package/dist/memory/commands/handlers.spec.d.ts +2 -0
- package/dist/memory/commands/handlers.spec.d.ts.map +1 -0
- package/dist/memory/commands/list.d.ts +119 -0
- package/dist/memory/commands/list.d.ts.map +1 -0
- package/dist/memory/commands/list.spec.d.ts +2 -0
- package/dist/memory/commands/list.spec.d.ts.map +1 -0
- package/dist/memory/commands/move.d.ts +42 -0
- package/dist/memory/commands/move.d.ts.map +1 -0
- package/dist/memory/commands/move.spec.d.ts +2 -0
- package/dist/memory/commands/move.spec.d.ts.map +1 -0
- package/dist/memory/commands/remove.d.ts +41 -0
- package/dist/memory/commands/remove.d.ts.map +1 -0
- package/dist/memory/commands/remove.spec.d.ts +2 -0
- package/dist/memory/commands/remove.spec.d.ts.map +1 -0
- package/dist/memory/commands/show.d.ts +81 -0
- package/dist/memory/commands/show.d.ts.map +1 -0
- package/dist/memory/commands/show.spec.d.ts +2 -0
- package/dist/memory/commands/show.spec.d.ts.map +1 -0
- package/dist/memory/commands/test-helpers.spec.d.ts +19 -0
- package/dist/memory/commands/test-helpers.spec.d.ts.map +1 -0
- package/dist/memory/commands/update.d.ts +73 -0
- package/dist/memory/commands/update.d.ts.map +1 -0
- package/dist/memory/commands/update.spec.d.ts +2 -0
- package/dist/memory/commands/update.spec.d.ts.map +1 -0
- package/dist/memory/index.d.ts +29 -0
- package/dist/memory/index.d.ts.map +1 -0
- package/dist/memory/index.spec.d.ts +10 -0
- package/dist/memory/index.spec.d.ts.map +1 -0
- package/dist/memory/parsing.d.ts +3 -0
- package/dist/memory/parsing.d.ts.map +1 -0
- package/dist/memory/parsing.spec.d.ts +7 -0
- package/dist/memory/parsing.spec.d.ts.map +1 -0
- package/dist/output.d.ts +87 -0
- package/dist/output.d.ts.map +1 -0
- package/dist/output.spec.d.ts +2 -0
- package/dist/output.spec.d.ts.map +1 -0
- package/dist/paths.d.ts +27 -0
- package/dist/paths.d.ts.map +1 -0
- package/dist/paths.spec.d.ts +7 -0
- package/dist/paths.spec.d.ts.map +1 -0
- package/dist/program.d.ts +41 -0
- package/dist/program.d.ts.map +1 -0
- package/dist/program.spec.d.ts +11 -0
- package/dist/program.spec.d.ts.map +1 -0
- package/dist/run.d.ts +7 -0
- package/dist/run.d.ts.map +1 -0
- package/dist/run.spec.d.ts +12 -0
- package/dist/run.spec.d.ts.map +1 -0
- package/dist/store/commands/add.d.ts +73 -0
- package/dist/store/commands/add.d.ts.map +1 -0
- package/dist/store/commands/add.spec.d.ts +17 -0
- package/dist/store/commands/add.spec.d.ts.map +1 -0
- package/dist/store/commands/init.d.ts +75 -0
- package/dist/store/commands/init.d.ts.map +1 -0
- package/dist/store/commands/init.spec.d.ts +7 -0
- package/dist/store/commands/init.spec.d.ts.map +1 -0
- package/dist/store/commands/list.d.ts +62 -0
- package/dist/store/commands/list.d.ts.map +1 -0
- package/dist/store/commands/list.spec.d.ts +7 -0
- package/dist/store/commands/list.spec.d.ts.map +1 -0
- package/dist/store/commands/prune.d.ts +92 -0
- package/dist/store/commands/prune.d.ts.map +1 -0
- package/dist/store/commands/prune.spec.d.ts +7 -0
- package/dist/store/commands/prune.spec.d.ts.map +1 -0
- package/dist/store/commands/reindexs.d.ts +54 -0
- package/dist/store/commands/reindexs.d.ts.map +1 -0
- package/dist/store/commands/reindexs.spec.d.ts +7 -0
- package/dist/store/commands/reindexs.spec.d.ts.map +1 -0
- package/dist/store/commands/remove.d.ts +63 -0
- package/dist/store/commands/remove.d.ts.map +1 -0
- package/dist/store/commands/remove.spec.d.ts +17 -0
- package/dist/store/commands/remove.spec.d.ts.map +1 -0
- package/dist/store/index.d.ts +32 -0
- package/dist/store/index.d.ts.map +1 -0
- package/dist/store/index.spec.d.ts +9 -0
- package/dist/store/index.spec.d.ts.map +1 -0
- package/dist/store/utils/resolve-store-name.d.ts +30 -0
- package/dist/store/utils/resolve-store-name.d.ts.map +1 -0
- package/dist/store/utils/resolve-store-name.spec.d.ts +2 -0
- package/dist/store/utils/resolve-store-name.spec.d.ts.map +1 -0
- package/dist/test-helpers.spec.d.ts +224 -0
- package/dist/test-helpers.spec.d.ts.map +1 -0
- package/dist/tests/cli.integration.spec.d.ts +11 -0
- package/dist/tests/cli.integration.spec.d.ts.map +1 -0
- package/dist/toon.d.ts +197 -0
- package/dist/toon.d.ts.map +1 -0
- package/dist/toon.spec.d.ts +9 -0
- package/dist/toon.spec.d.ts.map +1 -0
- package/dist/utils/git.d.ts +20 -0
- package/dist/utils/git.d.ts.map +1 -0
- package/dist/utils/git.spec.d.ts +7 -0
- package/dist/utils/git.spec.d.ts.map +1 -0
- package/package.json +7 -7
- package/src/run.ts +0 -0
- package/src/tests/cli.integration.spec.ts +79 -270
- package/src/utils/input.ts +4 -9
- package/src/utils/resolve-default-store.spec.ts +1 -1
- package/src/utils/resolve-default-store.ts +2 -6
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Category create command.
|
|
3
|
+
*
|
|
4
|
+
* Creates a category at the specified path, including any missing ancestors.
|
|
5
|
+
*
|
|
6
|
+
* @example
|
|
7
|
+
* ```bash
|
|
8
|
+
* # Create a category in default store
|
|
9
|
+
* cortex category create standards/typescript
|
|
10
|
+
*
|
|
11
|
+
* # Create a category in a specific store
|
|
12
|
+
* cortex category --store my-store create standards/typescript
|
|
13
|
+
*
|
|
14
|
+
* # Serialize output as JSON
|
|
15
|
+
* cortex category create standards --format json
|
|
16
|
+
* ```
|
|
17
|
+
*/
|
|
18
|
+
import { Command } from '@commander-js/extra-typings';
|
|
19
|
+
import { type CortexContext } from '@yeseh/cortex-core';
|
|
20
|
+
/** Options parsed by Commander for the create command */
|
|
21
|
+
export interface CreateCommandOptions {
|
|
22
|
+
description?: string;
|
|
23
|
+
format?: string;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Handler for the category create command.
|
|
27
|
+
* Exported for direct testing without Commander parsing.
|
|
28
|
+
*
|
|
29
|
+
* @param ctx - CLI execution context
|
|
30
|
+
* @param storeName - Optional store name from parent command
|
|
31
|
+
* @param path - Category path (e.g., "standards/typescript")
|
|
32
|
+
* @param options - Command options from Commander
|
|
33
|
+
*/
|
|
34
|
+
export declare function handleCreate(ctx: CortexContext, storeName: string | undefined, path: string, options?: CreateCommandOptions): Promise<void>;
|
|
35
|
+
/**
|
|
36
|
+
* The `category create` subcommand.
|
|
37
|
+
*
|
|
38
|
+
* Creates a category and any missing ancestors.
|
|
39
|
+
*/
|
|
40
|
+
export declare const createCommand: Command<[string], {
|
|
41
|
+
description?: string | undefined;
|
|
42
|
+
format?: string | undefined;
|
|
43
|
+
}, {}>;
|
|
44
|
+
//# sourceMappingURL=create.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../../src/category/commands/create.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AACtD,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAMxD,yDAAyD;AACzD,MAAM,WAAW,oBAAoB;IACjC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;;GAQG;AACH,wBAAsB,YAAY,CAC9B,GAAG,EAAE,aAAa,EAClB,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,oBAAyB,GACnC,OAAO,CAAC,IAAI,CAAC,CAuCf;AAED;;;;GAIG;AACH,eAAO,MAAM,aAAa;;;MAapB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"create.spec.d.ts","sourceRoot":"","sources":["../../../src/category/commands/create.spec.ts"],"names":[],"mappings":"AAAA;;;;GAIG"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Category command group for the CLI.
|
|
3
|
+
*
|
|
4
|
+
* This module defines the `category` command group, which provides operations
|
|
5
|
+
* for managing categories in the Cortex memory system. The `--store` option
|
|
6
|
+
* is defined at the group level and inherited by all subcommands.
|
|
7
|
+
*/
|
|
8
|
+
import { Command } from '@commander-js/extra-typings';
|
|
9
|
+
/**
|
|
10
|
+
* The `category` command group.
|
|
11
|
+
*
|
|
12
|
+
* Provides category management operations. The `--store` option allows
|
|
13
|
+
* targeting a specific named store instead of the default store.
|
|
14
|
+
* This option is inherited by all subcommands.
|
|
15
|
+
*/
|
|
16
|
+
export declare const categoryCommand: Command<[], {
|
|
17
|
+
store?: string | undefined;
|
|
18
|
+
}, {}>;
|
|
19
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/category/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAItD;;;;;;GAMG;AACH,eAAO,MAAM,eAAe;;MAEmC,CAAC"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Init command for initializing the global cortex configuration store.
|
|
3
|
+
*
|
|
4
|
+
* Creates the global config store at ~/.config/cortex/ with:
|
|
5
|
+
* - config.yaml: Global configuration with default settings
|
|
6
|
+
* - stores.yaml: Store registry with a 'default' store pointing to the memory directory
|
|
7
|
+
* - memory/: Default store with 'global' and 'projects' categories
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* ```bash
|
|
11
|
+
* # Initialize global cortex configuration
|
|
12
|
+
* cortex init
|
|
13
|
+
*
|
|
14
|
+
* # Reinitialize even if already initialized
|
|
15
|
+
* cortex init --force
|
|
16
|
+
* ```
|
|
17
|
+
*/
|
|
18
|
+
import { Command } from '@commander-js/extra-typings';
|
|
19
|
+
import { type CortexContext } from '@yeseh/cortex-core';
|
|
20
|
+
/**
|
|
21
|
+
* Options for the init command.
|
|
22
|
+
*/
|
|
23
|
+
export interface InitCommandOptions {
|
|
24
|
+
/** Reinitialize even if already initialized */
|
|
25
|
+
force?: boolean;
|
|
26
|
+
/** Output format (yaml, json, toon) */
|
|
27
|
+
format?: string;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* The `init` command for initializing the global cortex configuration.
|
|
31
|
+
*
|
|
32
|
+
* Creates the global config store at ~/.config/cortex/ with default settings
|
|
33
|
+
* and store registry.
|
|
34
|
+
*
|
|
35
|
+
* @example
|
|
36
|
+
* ```bash
|
|
37
|
+
* cortex init # Initialize global config
|
|
38
|
+
* cortex init --force # Reinitialize even if exists
|
|
39
|
+
* ```
|
|
40
|
+
*/
|
|
41
|
+
export declare const initCommand: Command<[], {
|
|
42
|
+
force?: true | undefined;
|
|
43
|
+
format: string;
|
|
44
|
+
}, {}>;
|
|
45
|
+
/**
|
|
46
|
+
* Handles the init command execution.
|
|
47
|
+
*
|
|
48
|
+
* This function:
|
|
49
|
+
* 1. Initializes the global cortex config store
|
|
50
|
+
* 2. Creates default categories
|
|
51
|
+
* 3. Outputs the result
|
|
52
|
+
*
|
|
53
|
+
* @param options - Command options (force, format)
|
|
54
|
+
* @throws {InvalidArgumentError} When arguments are invalid
|
|
55
|
+
* @throws {CommanderError} When initialization fails
|
|
56
|
+
*/
|
|
57
|
+
export declare function handleInit(ctx: CortexContext, options?: InitCommandOptions): Promise<void>;
|
|
58
|
+
//# sourceMappingURL=init.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAIH,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAStD,OAAO,EAIH,KAAK,aAAa,EAErB,MAAM,oBAAoB,CAAC;AAG5B;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAC/B,+CAA+C;IAC/C,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,uCAAuC;IACvC,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,WAAW;;;MAalB,CAAC;AAEP;;;;;;;;;;;GAWG;AAIH,wBAAsB,UAAU,CAC5B,GAAG,EAAE,aAAa,EAClB,OAAO,GAAE,kBAAuB,GACjC,OAAO,CAAC,IAAI,CAAC,CAoBf"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"init.spec.d.ts","sourceRoot":"","sources":["../../src/commands/init.spec.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Store resolution utilities for CLI commands.
|
|
3
|
+
*
|
|
4
|
+
* This module provides functions to resolve the store context (root directory)
|
|
5
|
+
* based on command-line options, current working directory, and the global
|
|
6
|
+
* store configuration.
|
|
7
|
+
*/
|
|
8
|
+
/**
|
|
9
|
+
* Default path to the global store.
|
|
10
|
+
*/
|
|
11
|
+
export declare const getDefaultGlobalStorePath: () => string;
|
|
12
|
+
/**
|
|
13
|
+
* Default path to the store configuration file.
|
|
14
|
+
* Respects CORTEX_CONFIG (config file path) and CORTEX_CONFIG_DIR (config directory)
|
|
15
|
+
* environment variables when set.
|
|
16
|
+
*/
|
|
17
|
+
export declare const getDefaultConfigPath: () => string;
|
|
18
|
+
//# sourceMappingURL=context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH;;GAEG;AACH,eAAO,MAAM,yBAAyB,QAAO,MACQ,CAAC;AAEtD;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,QAAO,MAWvC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.spec.d.ts","sourceRoot":"","sources":["../src/context.spec.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { getDefaultSettings, type ConfigValidationError, type CortexContext, type Result } from '@yeseh/cortex-core';
|
|
2
|
+
import { FilesystemStorageAdapter, FilesystemConfigAdapter } from '@yeseh/cortex-storage-fs';
|
|
3
|
+
export declare const validateStorePath: (storePath: string, storeName: string) => Result<void, ConfigValidationError>;
|
|
4
|
+
export interface ConfigLoadOptions {
|
|
5
|
+
cwd?: string;
|
|
6
|
+
globalConfigPath?: string;
|
|
7
|
+
localConfigPath?: string;
|
|
8
|
+
}
|
|
9
|
+
export interface CliContextOptions {
|
|
10
|
+
configDir?: string;
|
|
11
|
+
configCwd?: string;
|
|
12
|
+
}
|
|
13
|
+
export interface CliConfigContext {
|
|
14
|
+
configAdapter: FilesystemConfigAdapter;
|
|
15
|
+
stores: Record<string, any>;
|
|
16
|
+
settings: ReturnType<typeof getDefaultSettings>;
|
|
17
|
+
effectiveCwd: string;
|
|
18
|
+
}
|
|
19
|
+
export declare const createCliConfigAdapter: (configPath: string) => FilesystemConfigAdapter;
|
|
20
|
+
export declare const createCliAdapterFactory: (configAdapter: FilesystemConfigAdapter) => (storeName: string) => FilesystemStorageAdapter;
|
|
21
|
+
export declare const createCliConfigContext: (options?: CliContextOptions) => Promise<Result<CliConfigContext, any>>;
|
|
22
|
+
export declare const createCliCommandContext: (configDir?: string) => Promise<Result<CortexContext, any>>;
|
|
23
|
+
//# sourceMappingURL=create-cli-command.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"create-cli-command.d.ts","sourceRoot":"","sources":["../src/create-cli-command.ts"],"names":[],"mappings":"AAAA,OAAO,EAGH,kBAAkB,EAElB,KAAK,qBAAqB,EAC1B,KAAK,aAAa,EAClB,KAAK,MAAM,EACd,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,wBAAwB,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AAY7F,eAAO,MAAM,iBAAiB,GAC1B,WAAW,MAAM,EACjB,WAAW,MAAM,KAClB,MAAM,CAAC,IAAI,EAAE,qBAAqB,CAWpC,CAAC;AAEF,MAAM,WAAW,iBAAiB;IAC9B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,iBAAiB;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,gBAAgB;IAC7B,aAAa,EAAE,uBAAuB,CAAC;IACvC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC5B,QAAQ,EAAE,UAAU,CAAC,OAAO,kBAAkB,CAAC,CAAC;IAChD,YAAY,EAAE,MAAM,CAAC;CACxB;AAED,eAAO,MAAM,sBAAsB,GAAI,YAAY,MAAM,KAAG,uBAE3D,CAAC;AAEF,eAAO,MAAM,uBAAuB,GAAI,eAAe,uBAAuB,MAClE,WAAW,MAAM,6BAkB5B,CAAC;AAEF,eAAO,MAAM,sBAAsB,GAC/B,UAAS,iBAAsB,KAChC,OAAO,CAAC,MAAM,CAAC,gBAAgB,EAAE,GAAG,CAAC,CA0CvC,CAAC;AAKF,eAAO,MAAM,uBAAuB,GAChC,YAAY,MAAM,KACnB,OAAO,CAAC,MAAM,CAAC,aAAa,EAAE,GAAG,CAAC,CAoCpC,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Unit tests for create-cli-command.ts — validateStorePath.
|
|
3
|
+
*
|
|
4
|
+
* Verifies that absolute paths pass validation and relative paths
|
|
5
|
+
* produce a typed INVALID_STORE_PATH error result.
|
|
6
|
+
*
|
|
7
|
+
* @module cli/create-cli-command.spec
|
|
8
|
+
*/
|
|
9
|
+
export {};
|
|
10
|
+
//# sourceMappingURL=create-cli-command.spec.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"create-cli-command.spec.d.ts","sourceRoot":"","sources":["../src/create-cli-command.spec.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG"}
|
package/dist/errors.d.ts
ADDED
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Error mapping utilities for CLI commands.
|
|
3
|
+
*
|
|
4
|
+
* This module provides utilities to map core Result errors to Commander.js
|
|
5
|
+
* exceptions. Commander.js uses specific exception types to control error
|
|
6
|
+
* output and exit codes:
|
|
7
|
+
*
|
|
8
|
+
* - `InvalidArgumentError` - For user input validation errors (shows usage help)
|
|
9
|
+
* - `CommanderError` - For other errors (shows error message only)
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```ts
|
|
13
|
+
* const result = await runAddCommand(options);
|
|
14
|
+
* if (!result.ok()) {
|
|
15
|
+
* mapCoreError(result.error);
|
|
16
|
+
* }
|
|
17
|
+
* ```
|
|
18
|
+
*/
|
|
19
|
+
/**
|
|
20
|
+
* Represents a core error with a code and message.
|
|
21
|
+
*
|
|
22
|
+
* This interface matches the error shape used throughout the CLI commands,
|
|
23
|
+
* allowing consistent error handling across all command implementations.
|
|
24
|
+
*/
|
|
25
|
+
export interface CoreError {
|
|
26
|
+
code: string;
|
|
27
|
+
message: string;
|
|
28
|
+
cause?: unknown;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Maps a core error to a Commander.js exception and throws it.
|
|
32
|
+
*
|
|
33
|
+
* This function examines the error code to determine the appropriate
|
|
34
|
+
* Commander.js exception type:
|
|
35
|
+
*
|
|
36
|
+
* - **Argument errors** (`InvalidArgumentError`): For errors caused by invalid
|
|
37
|
+
* user input. Commander.js displays usage help for these errors.
|
|
38
|
+
*
|
|
39
|
+
* - **Other errors** (`CommanderError`): For system errors, missing resources,
|
|
40
|
+
* or internal failures. Commander.js displays only the error message.
|
|
41
|
+
*
|
|
42
|
+
* @param error - The core error to map
|
|
43
|
+
* @throws {InvalidArgumentError} When the error code indicates invalid input
|
|
44
|
+
* @throws {CommanderError} For all other error codes
|
|
45
|
+
*
|
|
46
|
+
* @example
|
|
47
|
+
* ```ts
|
|
48
|
+
* // In a command action handler
|
|
49
|
+
* const result = await runShowCommand(options);
|
|
50
|
+
* if (!result.ok()) {
|
|
51
|
+
* mapCoreError(result.error);
|
|
52
|
+
* // Never reaches here - mapCoreError always throws
|
|
53
|
+
* }
|
|
54
|
+
* ```
|
|
55
|
+
*/
|
|
56
|
+
export declare function throwCliError(error: CoreError): never;
|
|
57
|
+
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAIH;;;;;GAKG;AACH,MAAM,WAAW,SAAS;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;CACnB;AAyCD;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,SAAS,GAAG,KAAK,CAMrD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.spec.d.ts","sourceRoot":"","sources":["../src/errors.spec.ts"],"names":[],"mappings":""}
|
package/dist/input.d.ts
ADDED
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CLI helpers for resolving memory content input.
|
|
3
|
+
*/
|
|
4
|
+
import { type Result } from '@yeseh/cortex-core';
|
|
5
|
+
export type MemoryContentSource = 'flag' | 'file' | 'stdin' | 'none';
|
|
6
|
+
export type InputSource = {
|
|
7
|
+
content?: string;
|
|
8
|
+
filePath?: string;
|
|
9
|
+
/**
|
|
10
|
+
* stdin stream to read from.
|
|
11
|
+
*
|
|
12
|
+
* NOTE: Passing a stream does not necessarily mean stdin is intended as an input
|
|
13
|
+
* source. Use `stdinRequested: true` when a command semantics include reading from
|
|
14
|
+
* stdin by default (e.g. `memory add`), typically when piping.
|
|
15
|
+
*/
|
|
16
|
+
stream?: NodeJS.ReadableStream;
|
|
17
|
+
/**
|
|
18
|
+
* Explicitly indicates stdin should be considered as an input source.
|
|
19
|
+
*
|
|
20
|
+
* This is `false` by default so that inheriting a non-TTY stdin in test harnesses
|
|
21
|
+
* or subprocess environments does not accidentally count as providing `--stdin`.
|
|
22
|
+
*/
|
|
23
|
+
stdinRequested?: boolean;
|
|
24
|
+
};
|
|
25
|
+
export interface InputContent {
|
|
26
|
+
content: string | null;
|
|
27
|
+
source: MemoryContentSource;
|
|
28
|
+
}
|
|
29
|
+
export type InputErrorCode = 'MULTIPLE_CONTENT_SOURCES' | 'FILE_READ_FAILED' | 'MISSING_CONTENT' | 'INVALID_FILE_PATH';
|
|
30
|
+
export interface InputError {
|
|
31
|
+
code: InputErrorCode;
|
|
32
|
+
message: string;
|
|
33
|
+
path?: string;
|
|
34
|
+
cause?: unknown;
|
|
35
|
+
}
|
|
36
|
+
type InputResult = Result<InputContent, InputError>;
|
|
37
|
+
type OptionalContentResult = Result<InputContent | null, InputError>;
|
|
38
|
+
export declare const readContentFromFile: (filePath: string | undefined) => Promise<OptionalContentResult>;
|
|
39
|
+
export declare const readContentFromStream: (stream: NodeJS.ReadableStream) => Promise<OptionalContentResult>;
|
|
40
|
+
export declare const resolveInput: (source: InputSource) => Promise<InputResult>;
|
|
41
|
+
export {};
|
|
42
|
+
//# sourceMappingURL=input.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../src/input.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAW,KAAK,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE1D,MAAM,MAAM,mBAAmB,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;AAErE,MAAM,MAAM,WAAW,GAAG;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC,cAAc,CAAC;IAC/B;;;;;OAKG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;CAC5B,CAAC;AAEF,MAAM,WAAW,YAAY;IACzB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,MAAM,EAAE,mBAAmB,CAAC;CAC/B;AAED,MAAM,MAAM,cAAc,GACpB,0BAA0B,GAC1B,kBAAkB,GAClB,iBAAiB,GACjB,mBAAmB,CAAC;AAE1B,MAAM,WAAW,UAAU;IACvB,IAAI,EAAE,cAAc,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,KAAK,WAAW,GAAG,MAAM,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;AACpD,KAAK,qBAAqB,GAAG,MAAM,CAAC,YAAY,GAAG,IAAI,EAAE,UAAU,CAAC,CAAC;AAErE,eAAO,MAAM,mBAAmB,GAC5B,UAAU,MAAM,GAAG,SAAS,KAC7B,OAAO,CAAC,qBAAqB,CAsB/B,CAAC;AAEF,eAAO,MAAM,qBAAqB,GAC9B,QAAQ,MAAM,CAAC,cAAc,KAC9B,OAAO,CAAC,qBAAqB,CAgB/B,CAAC;AAKF,eAAO,MAAM,YAAY,GAAU,QAAQ,WAAW,KAAG,OAAO,CAAC,WAAW,CA6C3E,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"input.spec.d.ts","sourceRoot":"","sources":["../src/input.spec.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Memory add command implementation using Commander.js.
|
|
3
|
+
*
|
|
4
|
+
* Creates a new memory at the specified path with content from inline text,
|
|
5
|
+
* a file, or stdin.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```bash
|
|
9
|
+
* # Add memory with inline content
|
|
10
|
+
* cortex memory add project/tech-stack --content "Using TypeScript and Node.js"
|
|
11
|
+
*
|
|
12
|
+
* # Add memory from a file
|
|
13
|
+
* cortex memory add project/notes --file ./notes.md
|
|
14
|
+
*
|
|
15
|
+
* # Add memory from stdin
|
|
16
|
+
* echo "My notes" | cortex memory add project/notes
|
|
17
|
+
*
|
|
18
|
+
* # Add memory with tags and expiration
|
|
19
|
+
* cortex memory add project/temp --content "Temporary note" \
|
|
20
|
+
* --tags "temp,cleanup" --expires-at "2025-12-31T00:00:00Z"
|
|
21
|
+
* ```
|
|
22
|
+
*/
|
|
23
|
+
import { Command } from '@commander-js/extra-typings';
|
|
24
|
+
import { type CortexContext } from '@yeseh/cortex-core';
|
|
25
|
+
/** Options parsed by Commander for the add command */
|
|
26
|
+
export interface AddCommandOptions {
|
|
27
|
+
content?: string;
|
|
28
|
+
file?: string;
|
|
29
|
+
tags?: string[];
|
|
30
|
+
expiresAt?: string;
|
|
31
|
+
citations?: string[];
|
|
32
|
+
format?: string;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Handler for the memory add command.
|
|
36
|
+
* Exported for direct testing without Commander parsing.
|
|
37
|
+
*
|
|
38
|
+
* @param path - Memory path (e.g., "project/tech-stack")
|
|
39
|
+
* @param options - Command options from Commander
|
|
40
|
+
* @param storeName - Optional store name from parent command
|
|
41
|
+
* @param deps - Injectable dependencies for testing
|
|
42
|
+
*/
|
|
43
|
+
export declare function handleAdd(ctx: CortexContext, storeName: string | undefined, path: string, options: AddCommandOptions): Promise<void>;
|
|
44
|
+
/**
|
|
45
|
+
* The `memory add` subcommand.
|
|
46
|
+
*
|
|
47
|
+
* Creates a new memory at the specified path. Content can be provided via:
|
|
48
|
+
* - `--content` flag for inline text
|
|
49
|
+
* - `--file` flag to read from a file
|
|
50
|
+
* - stdin when piped
|
|
51
|
+
*
|
|
52
|
+
* The `--store` option is inherited from the parent `memory` command.
|
|
53
|
+
*/
|
|
54
|
+
export declare const addCommand: Command<[string], {
|
|
55
|
+
content?: string | undefined;
|
|
56
|
+
file?: string | undefined;
|
|
57
|
+
tags?: string[] | undefined;
|
|
58
|
+
expiresAt?: string | undefined;
|
|
59
|
+
citation?: string[] | undefined;
|
|
60
|
+
format?: string | undefined;
|
|
61
|
+
}, {}>;
|
|
62
|
+
//# sourceMappingURL=add.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"add.d.ts","sourceRoot":"","sources":["../../../src/memory/commands/add.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAEtD,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAMxD,sDAAsD;AACtD,MAAM,WAAW,iBAAiB;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB;AACD;;;;;;;;GAQG;AACH,wBAAsB,SAAS,CAC3B,GAAG,EAAE,aAAa,EAClB,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,iBAAiB,GAC3B,OAAO,CAAC,IAAI,CAAC,CAyEf;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,UAAU;;;;;;;MAiBjB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"add.spec.d.ts","sourceRoot":"","sources":["../../../src/memory/commands/add.spec.ts"],"names":[],"mappings":"AAAA;;;;GAIG"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Unit tests for memory command definitions.
|
|
3
|
+
*
|
|
4
|
+
* Verifies that memory subcommands expose the expected names,
|
|
5
|
+
* arguments, and options.
|
|
6
|
+
*
|
|
7
|
+
* @module cli/memory/commands/definitions.spec
|
|
8
|
+
*/
|
|
9
|
+
export {};
|
|
10
|
+
//# sourceMappingURL=definitions.spec.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"definitions.spec.d.ts","sourceRoot":"","sources":["../../../src/memory/commands/definitions.spec.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"handlers.spec.d.ts","sourceRoot":"","sources":["../../../src/memory/commands/handlers.spec.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Memory list command for browsing memories with optional filtering.
|
|
3
|
+
*
|
|
4
|
+
* Lists all memories in a category, or all memories across all categories
|
|
5
|
+
* if no category is specified. Expired memories are excluded by default
|
|
6
|
+
* unless the `--include-expired` flag is provided.
|
|
7
|
+
*
|
|
8
|
+
* When no category is specified, the command dynamically discovers all
|
|
9
|
+
* root categories from the store's index rather than using a hardcoded list.
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```bash
|
|
13
|
+
* # List all memories
|
|
14
|
+
* cortex memory list
|
|
15
|
+
*
|
|
16
|
+
* # List memories in a specific category
|
|
17
|
+
* cortex memory list project/cortex
|
|
18
|
+
*
|
|
19
|
+
* # Include expired memories
|
|
20
|
+
* cortex memory list --include-expired
|
|
21
|
+
*
|
|
22
|
+
* # Output in JSON format
|
|
23
|
+
* cortex memory list --format json
|
|
24
|
+
*
|
|
25
|
+
* # Use a specific store (either placement works)
|
|
26
|
+
* cortex memory list -s my-store
|
|
27
|
+
* cortex memory -s my-store list
|
|
28
|
+
* ```
|
|
29
|
+
*/
|
|
30
|
+
import { Command } from '@commander-js/extra-typings';
|
|
31
|
+
import { type CortexContext } from '@yeseh/cortex-core';
|
|
32
|
+
/**
|
|
33
|
+
* Options for the list command.
|
|
34
|
+
*/
|
|
35
|
+
export interface ListCommandOptions {
|
|
36
|
+
/** Include expired memories in the output */
|
|
37
|
+
includeExpired?: boolean;
|
|
38
|
+
/** Output format (yaml, json, toon) */
|
|
39
|
+
format?: string;
|
|
40
|
+
/** Store name (can be specified on subcommand or parent) */
|
|
41
|
+
store?: string;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Dependencies for the list command handler.
|
|
45
|
+
* Allows injection for testing.
|
|
46
|
+
*/
|
|
47
|
+
export interface ListHandlerDeps {
|
|
48
|
+
/** Output stream for writing results (defaults to process.stdout) */
|
|
49
|
+
stdout?: NodeJS.WritableStream;
|
|
50
|
+
/** Current time for expiration checks */
|
|
51
|
+
now?: Date;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Entry representing a memory in the list output.
|
|
55
|
+
*/
|
|
56
|
+
export interface ListMemoryEntry {
|
|
57
|
+
path: string;
|
|
58
|
+
tokenEstimate: number;
|
|
59
|
+
summary?: string;
|
|
60
|
+
expiresAt?: Date;
|
|
61
|
+
isExpired: boolean;
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Entry representing a subcategory in the list output.
|
|
65
|
+
*/
|
|
66
|
+
export interface ListSubcategoryEntry {
|
|
67
|
+
path: string;
|
|
68
|
+
memoryCount: number;
|
|
69
|
+
description?: string;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Result of the list command containing memories and subcategories.
|
|
73
|
+
*/
|
|
74
|
+
export interface ListResult {
|
|
75
|
+
memories: ListMemoryEntry[];
|
|
76
|
+
subcategories: ListSubcategoryEntry[];
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Handles the list command execution.
|
|
80
|
+
*
|
|
81
|
+
* This function:
|
|
82
|
+
* 1. Resolves the store context
|
|
83
|
+
* 2. Loads category index (or all categories if none specified)
|
|
84
|
+
* 3. Collects memories and subcategories, filtering expired if needed
|
|
85
|
+
* 4. Formats and outputs the result
|
|
86
|
+
*
|
|
87
|
+
* @param category - Optional category path to list (lists all if omitted)
|
|
88
|
+
* @param options - Command options (includeExpired, format)
|
|
89
|
+
* @param storeName - Optional store name from parent command
|
|
90
|
+
* @param deps - Optional dependencies for testing
|
|
91
|
+
* @throws {InvalidArgumentError} When arguments are invalid
|
|
92
|
+
* @throws {CommanderError} When read or parse fails
|
|
93
|
+
*/
|
|
94
|
+
export declare function handleList(ctx: CortexContext, storeName: string | undefined, category: string | undefined, options: ListCommandOptions, deps?: ListHandlerDeps): Promise<void>;
|
|
95
|
+
/**
|
|
96
|
+
* The `list` subcommand for browsing memories.
|
|
97
|
+
*
|
|
98
|
+
* Lists memories in a category, or all memories across all root categories
|
|
99
|
+
* if no category is specified. By default, expired memories are excluded.
|
|
100
|
+
*
|
|
101
|
+
* The `--store` option can be specified either on this command or on the
|
|
102
|
+
* parent `memory` command for flexibility.
|
|
103
|
+
*
|
|
104
|
+
* @example
|
|
105
|
+
* ```bash
|
|
106
|
+
* cortex memory list
|
|
107
|
+
* cortex memory list project/cortex
|
|
108
|
+
* cortex memory list --include-expired
|
|
109
|
+
* cortex memory list --format json
|
|
110
|
+
* cortex memory list -s my-store
|
|
111
|
+
* cortex memory -s my-store list
|
|
112
|
+
* ```
|
|
113
|
+
*/
|
|
114
|
+
export declare const listCommand: Command<[string | undefined], {
|
|
115
|
+
store?: string | undefined;
|
|
116
|
+
includeExpired?: true | undefined;
|
|
117
|
+
format: string;
|
|
118
|
+
}, {}>;
|
|
119
|
+
//# sourceMappingURL=list.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../../src/memory/commands/list.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAItD,OAAO,EAAa,KAAK,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAKnE;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAC/B,6CAA6C;IAC7C,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,uCAAuC;IACvC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,4DAA4D;IAC5D,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC5B,qEAAqE;IACrE,MAAM,CAAC,EAAE,MAAM,CAAC,cAAc,CAAC;IAC/B,yCAAyC;IACzC,GAAG,CAAC,EAAE,IAAI,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,IAAI,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACvB,QAAQ,EAAE,eAAe,EAAE,CAAC;IAC5B,aAAa,EAAE,oBAAoB,EAAE,CAAC;CACzC;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,UAAU,CAC5B,GAAG,EAAE,aAAa,EAClB,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,OAAO,EAAE,kBAAkB,EAC3B,IAAI,GAAE,eAAoB,GAC3B,OAAO,CAAC,IAAI,CAAC,CAsHf;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,WAAW;;;;MAgBlB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list.spec.d.ts","sourceRoot":"","sources":["../../../src/memory/commands/list.spec.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Memory move command implementation using Commander.js.
|
|
3
|
+
*
|
|
4
|
+
* Moves a memory from one path to another within the same store.
|
|
5
|
+
*
|
|
6
|
+
* @example
|
|
7
|
+
* ```bash
|
|
8
|
+
* # Move a memory to a new location
|
|
9
|
+
* cortex memory move project/old-name project/new-name
|
|
10
|
+
*
|
|
11
|
+
* # Move with explicit store
|
|
12
|
+
* cortex memory --store my-store move project/old project/new
|
|
13
|
+
* ```\n */
|
|
14
|
+
import { Command } from '@commander-js/extra-typings';
|
|
15
|
+
import { type CortexContext } from '@yeseh/cortex-core';
|
|
16
|
+
/** Options for the move command. */
|
|
17
|
+
export interface MoveCommandOptions {
|
|
18
|
+
/** Output format (yaml, json, toon) */
|
|
19
|
+
format?: string;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Handler for the memory move command.
|
|
23
|
+
* Exported for direct testing without Commander parsing.
|
|
24
|
+
*
|
|
25
|
+
* @param ctx - CLI context containing Cortex client and streams
|
|
26
|
+
* @param storeName - Optional store name from parent command
|
|
27
|
+
* @param from - Source memory path
|
|
28
|
+
* @param to - Destination memory path
|
|
29
|
+
*/
|
|
30
|
+
export declare function handleMove(ctx: CortexContext, storeName: string | undefined, from: string, to: string, options?: MoveCommandOptions): Promise<void>;
|
|
31
|
+
/**
|
|
32
|
+
* The `memory move` subcommand.
|
|
33
|
+
*
|
|
34
|
+
* Moves a memory from one path to another within the store.
|
|
35
|
+
* Both paths must be valid memory slug paths.
|
|
36
|
+
*
|
|
37
|
+
* The `--store` option is inherited from the parent `memory` command.
|
|
38
|
+
*/
|
|
39
|
+
export declare const moveCommand: Command<[string, string], {
|
|
40
|
+
format?: string | undefined;
|
|
41
|
+
}, {}>;
|
|
42
|
+
//# sourceMappingURL=move.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"move.d.ts","sourceRoot":"","sources":["../../../src/memory/commands/move.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;WAYW;AAEX,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAEtD,OAAO,EAAc,KAAK,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAIpE,oCAAoC;AACpC,MAAM,WAAW,kBAAkB;IAC/B,uCAAuC;IACvC,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;;GAQG;AACH,wBAAsB,UAAU,CAC5B,GAAG,EAAE,aAAa,EAClB,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,MAAM,EACV,OAAO,GAAE,kBAAuB,GACjC,OAAO,CAAC,IAAI,CAAC,CAkDf;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,WAAW;;MAalB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"move.spec.d.ts","sourceRoot":"","sources":["../../../src/memory/commands/move.spec.ts"],"names":[],"mappings":""}
|