@magic-ingredients/tiny-brain-local 0.5.1 → 0.6.0
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 +202 -23
- package/dist/cli/cli-factory.d.ts +3 -0
- package/dist/cli/cli-factory.d.ts.map +1 -0
- package/dist/cli/cli-factory.js +113 -0
- package/dist/cli/cli-factory.js.map +1 -0
- package/dist/cli/commands/install.command.d.ts +23 -0
- package/dist/cli/commands/install.command.d.ts.map +1 -0
- package/dist/cli/commands/install.command.js +189 -0
- package/dist/cli/commands/install.command.js.map +1 -0
- package/dist/cli/commands/list.command.d.ts +15 -0
- package/dist/cli/commands/list.command.d.ts.map +1 -0
- package/dist/cli/commands/list.command.js +90 -0
- package/dist/cli/commands/list.command.js.map +1 -0
- package/dist/cli/commands/status.command.d.ts +19 -0
- package/dist/cli/commands/status.command.d.ts.map +1 -0
- package/dist/cli/commands/status.command.js +104 -0
- package/dist/cli/commands/status.command.js.map +1 -0
- package/dist/cli/commands/uninstall.command.d.ts +23 -0
- package/dist/cli/commands/uninstall.command.d.ts.map +1 -0
- package/dist/cli/commands/uninstall.command.js +176 -0
- package/dist/cli/commands/uninstall.command.js.map +1 -0
- package/dist/cli/installers/base-installer.d.ts +20 -0
- package/dist/cli/installers/base-installer.d.ts.map +1 -0
- package/dist/cli/installers/base-installer.js +3 -0
- package/dist/cli/installers/base-installer.js.map +1 -0
- package/dist/cli/installers/chatgpt-installer.d.ts +18 -0
- package/dist/cli/installers/chatgpt-installer.d.ts.map +1 -0
- package/dist/cli/installers/chatgpt-installer.js +45 -0
- package/dist/cli/installers/chatgpt-installer.js.map +1 -0
- package/dist/cli/installers/claude-code-installer.d.ts +23 -0
- package/dist/cli/installers/claude-code-installer.d.ts.map +1 -0
- package/dist/cli/installers/claude-code-installer.js +106 -0
- package/dist/cli/installers/claude-code-installer.js.map +1 -0
- package/dist/cli/installers/claude-desktop-installer.d.ts +18 -0
- package/dist/cli/installers/claude-desktop-installer.d.ts.map +1 -0
- package/dist/cli/installers/claude-desktop-installer.js +48 -0
- package/dist/cli/installers/claude-desktop-installer.js.map +1 -0
- package/dist/cli/installers/cursor-installer.d.ts +18 -0
- package/dist/cli/installers/cursor-installer.d.ts.map +1 -0
- package/dist/cli/installers/cursor-installer.js +45 -0
- package/dist/cli/installers/cursor-installer.js.map +1 -0
- package/dist/cli/installers/installer-factory.d.ts +30 -0
- package/dist/cli/installers/installer-factory.d.ts.map +1 -0
- package/dist/cli/installers/installer-factory.js +89 -0
- package/dist/cli/installers/installer-factory.js.map +1 -0
- package/dist/cli/utils/node-resolver.d.ts +53 -0
- package/dist/cli/utils/node-resolver.d.ts.map +1 -0
- package/dist/cli/utils/node-resolver.js +200 -0
- package/dist/cli/utils/node-resolver.js.map +1 -0
- package/dist/cli/utils/package-locator.d.ts +9 -0
- package/dist/cli/utils/package-locator.d.ts.map +1 -0
- package/dist/cli/utils/package-locator.js +81 -0
- package/dist/cli/utils/package-locator.js.map +1 -0
- package/dist/cli.d.ts +3 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +27 -0
- package/dist/cli.js.map +1 -0
- package/dist/prompts/prompt-registry.js +6 -6
- package/dist/prompts/prompt-registry.js.map +1 -1
- package/dist/prompts/rules/rules.prompt.d.ts +32 -0
- package/dist/prompts/rules/rules.prompt.d.ts.map +1 -0
- package/dist/prompts/{memory/memory.prompt.js → rules/rules.prompt.js} +64 -58
- package/dist/prompts/rules/rules.prompt.js.map +1 -0
- package/dist/storage/platform-config-adapter.d.ts +42 -0
- package/dist/storage/platform-config-adapter.d.ts.map +1 -0
- package/dist/storage/platform-config-adapter.js +128 -0
- package/dist/storage/platform-config-adapter.js.map +1 -0
- package/dist/storage/platform-path-builder.d.ts +32 -0
- package/dist/storage/platform-path-builder.d.ts.map +1 -0
- package/dist/storage/platform-path-builder.js +93 -0
- package/dist/storage/platform-path-builder.js.map +1 -0
- package/dist/tools/persona/as.tool.d.ts +4 -4
- package/dist/tools/persona/as.tool.d.ts.map +1 -1
- package/dist/tools/persona/as.tool.js +150 -117
- package/dist/tools/persona/as.tool.js.map +1 -1
- package/dist/tools/{memory/memory.tool.d.ts → rules/rules.tool.d.ts} +5 -5
- package/dist/tools/rules/rules.tool.d.ts.map +1 -0
- package/dist/tools/rules/rules.tool.js +133 -0
- package/dist/tools/rules/rules.tool.js.map +1 -0
- package/dist/tools/tool-registry.js +4 -4
- package/dist/tools/tool-registry.js.map +1 -1
- package/package.json +12 -2
- package/dist/prompts/memory/memory.prompt.d.ts +0 -32
- package/dist/prompts/memory/memory.prompt.d.ts.map +0 -1
- package/dist/prompts/memory/memory.prompt.js.map +0 -1
- package/dist/tools/memory/memory.tool.d.ts.map +0 -1
- package/dist/tools/memory/memory.tool.js +0 -110
- package/dist/tools/memory/memory.tool.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"node-resolver.js","sourceRoot":"","sources":["../../../src/cli/utils/node-resolver.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export declare class PackageLocator {
|
|
2
|
+
private static readonly PACKAGE_NAME;
|
|
3
|
+
static findPackage(): Promise<string>;
|
|
4
|
+
static isGloballyInstalled(): Promise<boolean>;
|
|
5
|
+
private static getGlobalPackagePath;
|
|
6
|
+
private static getLocalPackagePath;
|
|
7
|
+
private static getSourcePath;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=package-locator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"package-locator.d.ts","sourceRoot":"","sources":["../../../src/cli/utils/package-locator.ts"],"names":[],"mappings":"AAQA,qBAAa,cAAc;IACzB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAyC;WAEhE,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC;WAsB9B,mBAAmB,IAAI,OAAO,CAAC,OAAO,CAAC;mBAK/B,oBAAoB;mBAoBpB,mBAAmB;mBAkBnB,aAAa;CAkBnC"}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { existsSync } from 'fs';
|
|
2
|
+
import { exec } from 'child_process';
|
|
3
|
+
import { promisify } from 'util';
|
|
4
|
+
import { join, dirname } from 'path';
|
|
5
|
+
import { fileURLToPath } from 'url';
|
|
6
|
+
const execAsync = promisify(exec);
|
|
7
|
+
export class PackageLocator {
|
|
8
|
+
static PACKAGE_NAME = '@magic-ingredients/tiny-brain-local';
|
|
9
|
+
static async findPackage() {
|
|
10
|
+
// Try to find globally installed package
|
|
11
|
+
const globalPath = await this.getGlobalPackagePath();
|
|
12
|
+
if (globalPath) {
|
|
13
|
+
return join(globalPath, 'dist', 'index.js');
|
|
14
|
+
}
|
|
15
|
+
// Try to find in local node_modules
|
|
16
|
+
const localPath = await this.getLocalPackagePath();
|
|
17
|
+
if (localPath) {
|
|
18
|
+
return join(localPath, 'dist', 'index.js');
|
|
19
|
+
}
|
|
20
|
+
// Check if running from source
|
|
21
|
+
const sourcePath = await this.getSourcePath();
|
|
22
|
+
if (sourcePath) {
|
|
23
|
+
return join(sourcePath, 'dist', 'index.js');
|
|
24
|
+
}
|
|
25
|
+
throw new Error('Could not locate tiny-brain-local package');
|
|
26
|
+
}
|
|
27
|
+
static async isGloballyInstalled() {
|
|
28
|
+
const globalPath = await this.getGlobalPackagePath();
|
|
29
|
+
return !!globalPath;
|
|
30
|
+
}
|
|
31
|
+
static async getGlobalPackagePath() {
|
|
32
|
+
try {
|
|
33
|
+
const { stdout } = await execAsync(`npm list -g ${this.PACKAGE_NAME} --depth=0 --json`);
|
|
34
|
+
const result = JSON.parse(stdout);
|
|
35
|
+
if (result.dependencies && result.dependencies[this.PACKAGE_NAME]) {
|
|
36
|
+
// Get the global npm prefix
|
|
37
|
+
const { stdout: prefix } = await execAsync('npm config get prefix');
|
|
38
|
+
const globalModulesPath = join(prefix.trim(), 'lib', 'node_modules', this.PACKAGE_NAME);
|
|
39
|
+
if (existsSync(globalModulesPath)) {
|
|
40
|
+
return globalModulesPath;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
catch {
|
|
45
|
+
// Package not found globally
|
|
46
|
+
}
|
|
47
|
+
return null;
|
|
48
|
+
}
|
|
49
|
+
static async getLocalPackagePath() {
|
|
50
|
+
// Start from current directory and walk up looking for node_modules
|
|
51
|
+
let currentDir = process.cwd();
|
|
52
|
+
while (currentDir !== '/') {
|
|
53
|
+
const packagePath = join(currentDir, 'node_modules', this.PACKAGE_NAME);
|
|
54
|
+
if (existsSync(packagePath)) {
|
|
55
|
+
return packagePath;
|
|
56
|
+
}
|
|
57
|
+
const parentDir = dirname(currentDir);
|
|
58
|
+
if (parentDir === currentDir)
|
|
59
|
+
break;
|
|
60
|
+
currentDir = parentDir;
|
|
61
|
+
}
|
|
62
|
+
return null;
|
|
63
|
+
}
|
|
64
|
+
static async getSourcePath() {
|
|
65
|
+
try {
|
|
66
|
+
const __filename = fileURLToPath(import.meta.url);
|
|
67
|
+
const __dirname = dirname(__filename);
|
|
68
|
+
// Go up from utils directory to package root
|
|
69
|
+
const packageRoot = join(__dirname, '..', '..', '..');
|
|
70
|
+
const indexPath = join(packageRoot, 'src', 'index.ts');
|
|
71
|
+
if (existsSync(indexPath)) {
|
|
72
|
+
return packageRoot;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
catch {
|
|
76
|
+
// Not running from source
|
|
77
|
+
}
|
|
78
|
+
return null;
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
//# sourceMappingURL=package-locator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"package-locator.js","sourceRoot":"","sources":["../../../src/cli/utils/package-locator.ts"],"names":[],"mappings":"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"}
|
package/dist/cli.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":""}
|
package/dist/cli.js
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import chalk from 'chalk';
|
|
3
|
+
import { fileURLToPath } from 'url';
|
|
4
|
+
import { dirname, join } from 'path';
|
|
5
|
+
import { readFileSync } from 'fs';
|
|
6
|
+
import { createCLI } from './cli/cli-factory.js';
|
|
7
|
+
// Get package.json for version info
|
|
8
|
+
const __filename = fileURLToPath(import.meta.url);
|
|
9
|
+
const __dirname = dirname(__filename);
|
|
10
|
+
const packageJson = JSON.parse(readFileSync(join(__dirname, '..', 'package.json'), 'utf-8'));
|
|
11
|
+
// Create the CLI program
|
|
12
|
+
const program = createCLI();
|
|
13
|
+
program.version(packageJson.version);
|
|
14
|
+
// Default action: If no command is provided, run as MCP server
|
|
15
|
+
if (process.argv.length === 2) {
|
|
16
|
+
// No command provided, run as MCP server
|
|
17
|
+
console.log(chalk.gray('No command provided, starting MCP server...'));
|
|
18
|
+
import('./index.js').catch((error) => {
|
|
19
|
+
console.error(chalk.red('Failed to start MCP server:'), error);
|
|
20
|
+
process.exit(1);
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
else {
|
|
24
|
+
// Parse the command line arguments
|
|
25
|
+
program.parse(process.argv);
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=cli.js.map
|
package/dist/cli.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AACrC,OAAO,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAClC,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,oCAAoC;AACpC,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AACtC,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAC5B,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,cAAc,CAAC,EAAE,OAAO,CAAC,CAC7D,CAAC;AAEF,yBAAyB;AACzB,MAAM,OAAO,GAAG,SAAS,EAAE,CAAC;AAC5B,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;AAErC,+DAA+D;AAC/D,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;IAC9B,yCAAyC;IACzC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC,CAAC;IACvE,MAAM,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;QACnC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,6BAA6B,CAAC,EAAE,KAAK,CAAC,CAAC;QAC/D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC;KAAM,CAAC;IACN,mCAAmC;IACnC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AAC9B,CAAC"}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Central registry that collects prompt definitions from all prompts
|
|
5
5
|
*/
|
|
6
6
|
import { PersonaPrompt } from './persona/persona.prompt.js';
|
|
7
|
-
import {
|
|
7
|
+
import { RulesPrompt } from './rules/rules.prompt.js';
|
|
8
8
|
import { ThinkingPrompt } from './thinking/thinking.prompt.js';
|
|
9
9
|
import { PlanningPrompt } from './planning/planning.prompt.js';
|
|
10
10
|
export class PromptRegistry {
|
|
@@ -14,7 +14,7 @@ export class PromptRegistry {
|
|
|
14
14
|
static getPrompts() {
|
|
15
15
|
return [
|
|
16
16
|
...PersonaPrompt.getPromptDefinitions(),
|
|
17
|
-
...
|
|
17
|
+
...RulesPrompt.getPromptDefinitions(),
|
|
18
18
|
...ThinkingPrompt.getPromptDefinitions(),
|
|
19
19
|
...PlanningPrompt.getPromptDefinitions(),
|
|
20
20
|
];
|
|
@@ -43,10 +43,10 @@ export class PromptRegistry {
|
|
|
43
43
|
archive_persona: PersonaPrompt,
|
|
44
44
|
show_persona: PersonaPrompt,
|
|
45
45
|
current_persona: PersonaPrompt,
|
|
46
|
-
//
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
46
|
+
// Rules prompts
|
|
47
|
+
'add-rule': RulesPrompt,
|
|
48
|
+
'list-rules': RulesPrompt,
|
|
49
|
+
'remove-rule': RulesPrompt,
|
|
50
50
|
// Planning prompts
|
|
51
51
|
'create-plan': PlanningPrompt,
|
|
52
52
|
'update-plan': PlanningPrompt,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompt-registry.js","sourceRoot":"","sources":["../../src/prompts/prompt-registry.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"prompt-registry.js","sourceRoot":"","sources":["../../src/prompts/prompt-registry.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAE/D,MAAM,OAAO,cAAc;IACzB;;OAEG;IACH,MAAM,CAAC,UAAU;QACf,OAAO;YACL,GAAG,aAAa,CAAC,oBAAoB,EAAE;YACvC,GAAG,WAAW,CAAC,oBAAoB,EAAE;YACrC,GAAG,cAAc,CAAC,oBAAoB,EAAE;YACxC,GAAG,cAAc,CAAC,oBAAoB,EAAE;SACzC,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,MAAM,CACjB,IAAY,EACZ,IAA6B,EAC7B,OAAuB;QAEvB,MAAM,WAAW,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QAC/C,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC;QAC7C,CAAC;QAED,OAAO,WAAW,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACjD,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,eAAe,CAAC,IAAY;QACjC,oDAAoD;QACpD,MAAM,SAAS,GAAgC;YAC7C,kBAAkB;YAClB,aAAa,EAAE,aAAa;YAC5B,EAAE,EAAE,aAAa;YACjB,cAAc,EAAE,aAAa;YAC7B,cAAc,EAAE,aAAa;YAC7B,eAAe,EAAE,aAAa;YAC9B,YAAY,EAAE,aAAa;YAC3B,eAAe,EAAE,aAAa;YAE9B,gBAAgB;YAChB,UAAU,EAAE,WAAW;YACvB,YAAY,EAAE,WAAW;YACzB,aAAa,EAAE,WAAW;YAE1B,mBAAmB;YACnB,aAAa,EAAE,cAAc;YAC7B,aAAa,EAAE,cAAc;YAC7B,aAAa,EAAE,cAAc;YAC7B,YAAY,EAAE,cAAc;YAC5B,aAAa,EAAE,cAAc;YAC7B,cAAc,EAAE,cAAc;YAC9B,aAAa,EAAE,cAAc;YAE7B,mBAAmB;YACnB,aAAa,EAAE,cAAc;YAC7B,iBAAiB,EAAE,cAAc;SAClC,CAAC;QAEF,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC;IACzB,CAAC;CACF;AAED,+BAA+B;AAC/B,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,cAAc,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;AACtF,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAG,EAAE,CAAC,cAAc,CAAC,UAAU,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Rules Prompt Handler
|
|
3
|
+
*
|
|
4
|
+
* Thin dispatcher for rules-related prompt executions
|
|
5
|
+
* Validates args with Zod, dispatches to RulesService, formats responses
|
|
6
|
+
*/
|
|
7
|
+
import type { RequestContext } from '../../types/request-context.js';
|
|
8
|
+
import type { Prompt } from '@modelcontextprotocol/sdk/types.js';
|
|
9
|
+
import type { PromptResponse } from '../index.js';
|
|
10
|
+
export declare class RulesPrompt {
|
|
11
|
+
/**
|
|
12
|
+
* Get all rules-related prompt definitions
|
|
13
|
+
*/
|
|
14
|
+
static getPromptDefinitions(): Prompt[];
|
|
15
|
+
/**
|
|
16
|
+
* Main handler that routes to specific prompt handlers
|
|
17
|
+
*/
|
|
18
|
+
static handle(name: string, args: Record<string, unknown>, context: RequestContext): Promise<PromptResponse>;
|
|
19
|
+
/**
|
|
20
|
+
* Handle add-rule prompt - adds a new universal rule
|
|
21
|
+
*/
|
|
22
|
+
static handleAddRule(args: Record<string, unknown>, context: RequestContext): Promise<PromptResponse>;
|
|
23
|
+
/**
|
|
24
|
+
* Handle list-rules prompt - lists all rules or filtered by query
|
|
25
|
+
*/
|
|
26
|
+
static handleListRules(args: Record<string, unknown>, context: RequestContext): Promise<PromptResponse>;
|
|
27
|
+
/**
|
|
28
|
+
* Handle remove-rule prompt - removes a rule from the list
|
|
29
|
+
*/
|
|
30
|
+
static handleRemoveRule(args: Record<string, unknown>, context: RequestContext): Promise<PromptResponse>;
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=rules.prompt.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rules.prompt.d.ts","sourceRoot":"","sources":["../../../src/prompts/rules/rules.prompt.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AACrE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AACjE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAiBlD,qBAAa,WAAW;IACtB;;OAEG;IACH,MAAM,CAAC,oBAAoB,IAAI,MAAM,EAAE;IA4CvC;;OAEG;WACU,MAAM,CACjB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,cAAc,CAAC;IAa1B;;OAEG;WACU,aAAa,CACxB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,cAAc,CAAC;IA8C1B;;OAEG;WACU,eAAe,CAC1B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,cAAc,CAAC;IAiD1B;;OAEG;WACU,gBAAgB,CAC3B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,cAAc,CAAC;CA6C3B"}
|
|
@@ -1,62 +1,62 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* Rules Prompt Handler
|
|
3
3
|
*
|
|
4
|
-
* Thin dispatcher for
|
|
5
|
-
* Validates args with Zod, dispatches to
|
|
4
|
+
* Thin dispatcher for rules-related prompt executions
|
|
5
|
+
* Validates args with Zod, dispatches to RulesService, formats responses
|
|
6
6
|
*/
|
|
7
7
|
import { z } from 'zod';
|
|
8
|
-
import {
|
|
8
|
+
import { RulesService } from '@magic-ingredients/tiny-brain-core';
|
|
9
9
|
// Zod schemas for each prompt handler
|
|
10
|
-
const
|
|
11
|
-
|
|
10
|
+
const AddRuleArgsSchema = z.object({
|
|
11
|
+
rule: z.string(),
|
|
12
12
|
category: z.string().optional(),
|
|
13
13
|
});
|
|
14
|
-
const
|
|
15
|
-
query: z.string(),
|
|
14
|
+
const ListRulesArgsSchema = z.object({
|
|
15
|
+
query: z.string().optional(),
|
|
16
16
|
});
|
|
17
|
-
const
|
|
18
|
-
|
|
17
|
+
const RemoveRuleArgsSchema = z.object({
|
|
18
|
+
rule: z.string(),
|
|
19
19
|
});
|
|
20
|
-
export class
|
|
20
|
+
export class RulesPrompt {
|
|
21
21
|
/**
|
|
22
|
-
* Get all
|
|
22
|
+
* Get all rules-related prompt definitions
|
|
23
23
|
*/
|
|
24
24
|
static getPromptDefinitions() {
|
|
25
25
|
return [
|
|
26
26
|
{
|
|
27
|
-
name: '
|
|
28
|
-
description: '
|
|
27
|
+
name: 'add-rule',
|
|
28
|
+
description: '📋 Add a universal rule or directive that applies across all personas',
|
|
29
29
|
arguments: [
|
|
30
30
|
{
|
|
31
|
-
name: '
|
|
32
|
-
description: 'The
|
|
31
|
+
name: 'rule',
|
|
32
|
+
description: 'The rule or directive to add (e.g., "ALWAYS use TDD")',
|
|
33
33
|
required: true,
|
|
34
34
|
},
|
|
35
35
|
{
|
|
36
36
|
name: 'category',
|
|
37
|
-
description: 'Category
|
|
37
|
+
description: 'Category for this rule (e.g., coding, communication)',
|
|
38
38
|
required: false,
|
|
39
39
|
},
|
|
40
40
|
],
|
|
41
41
|
},
|
|
42
42
|
{
|
|
43
|
-
name: '
|
|
44
|
-
description: '
|
|
43
|
+
name: 'list-rules',
|
|
44
|
+
description: '📋 List all rules or search for specific ones',
|
|
45
45
|
arguments: [
|
|
46
46
|
{
|
|
47
47
|
name: 'query',
|
|
48
|
-
description: '
|
|
49
|
-
required:
|
|
48
|
+
description: 'Optional search query to filter rules. Leave empty to list all rules.',
|
|
49
|
+
required: false,
|
|
50
50
|
},
|
|
51
51
|
],
|
|
52
52
|
},
|
|
53
53
|
{
|
|
54
|
-
name: '
|
|
55
|
-
description: '🗑️ Remove
|
|
54
|
+
name: 'remove-rule',
|
|
55
|
+
description: '🗑️ Remove a specific rule from the system',
|
|
56
56
|
arguments: [
|
|
57
57
|
{
|
|
58
|
-
name: '
|
|
59
|
-
description: '
|
|
58
|
+
name: 'rule',
|
|
59
|
+
description: 'The rule to remove',
|
|
60
60
|
required: true,
|
|
61
61
|
},
|
|
62
62
|
],
|
|
@@ -68,29 +68,31 @@ export class MemoryPrompt {
|
|
|
68
68
|
*/
|
|
69
69
|
static async handle(name, args, context) {
|
|
70
70
|
switch (name) {
|
|
71
|
-
case '
|
|
72
|
-
return await
|
|
73
|
-
case '
|
|
74
|
-
return await
|
|
75
|
-
case '
|
|
76
|
-
return await
|
|
71
|
+
case 'add-rule':
|
|
72
|
+
return await RulesPrompt.handleAddRule(args, context);
|
|
73
|
+
case 'list-rules':
|
|
74
|
+
return await RulesPrompt.handleListRules(args, context);
|
|
75
|
+
case 'remove-rule':
|
|
76
|
+
return await RulesPrompt.handleRemoveRule(args, context);
|
|
77
77
|
default:
|
|
78
|
-
throw new Error(`Unknown
|
|
78
|
+
throw new Error(`Unknown rules prompt: ${name}`);
|
|
79
79
|
}
|
|
80
80
|
}
|
|
81
81
|
/**
|
|
82
|
-
* Handle
|
|
82
|
+
* Handle add-rule prompt - adds a new universal rule
|
|
83
83
|
*/
|
|
84
|
-
static async
|
|
84
|
+
static async handleAddRule(args, context) {
|
|
85
85
|
try {
|
|
86
86
|
// Validate args with Zod
|
|
87
|
-
const validatedArgs =
|
|
87
|
+
const validatedArgs = AddRuleArgsSchema.parse(args);
|
|
88
88
|
// Create memory service with context
|
|
89
|
-
const
|
|
89
|
+
const rulesService = new RulesService(context);
|
|
90
90
|
// Call service method with validated args
|
|
91
|
-
const result = await
|
|
91
|
+
const result = await rulesService.addRule(validatedArgs.rule, context.userId);
|
|
92
92
|
// Format response
|
|
93
|
-
const resultText =
|
|
93
|
+
const resultText = result.success
|
|
94
|
+
? `${result.message}\nRule: "${result.rule}"\nTotal rules: ${result.totalRules}`
|
|
95
|
+
: result.message;
|
|
94
96
|
return {
|
|
95
97
|
description: 'Remember information with smart classification',
|
|
96
98
|
messages: [
|
|
@@ -98,7 +100,7 @@ export class MemoryPrompt {
|
|
|
98
100
|
role: 'user',
|
|
99
101
|
content: {
|
|
100
102
|
type: 'text',
|
|
101
|
-
text: `
|
|
103
|
+
text: `Add rule: ${validatedArgs.rule}${validatedArgs.category ? ` (category: ${validatedArgs.category})` : ''}`,
|
|
102
104
|
},
|
|
103
105
|
},
|
|
104
106
|
{
|
|
@@ -119,28 +121,30 @@ export class MemoryPrompt {
|
|
|
119
121
|
}
|
|
120
122
|
}
|
|
121
123
|
/**
|
|
122
|
-
* Handle
|
|
124
|
+
* Handle list-rules prompt - lists all rules or filtered by query
|
|
123
125
|
*/
|
|
124
|
-
static async
|
|
126
|
+
static async handleListRules(args, context) {
|
|
125
127
|
try {
|
|
126
|
-
// Validate args with Zod
|
|
127
|
-
const validatedArgs =
|
|
128
|
+
// Validate args with Zod - handle empty args object
|
|
129
|
+
const validatedArgs = ListRulesArgsSchema.parse(args || {});
|
|
128
130
|
// Create memory service with context
|
|
129
|
-
const
|
|
131
|
+
const rulesService = new RulesService(context);
|
|
130
132
|
// Call service method with validated args
|
|
131
|
-
const result = await
|
|
133
|
+
const result = await rulesService.listRules(validatedArgs.query, context.userId);
|
|
132
134
|
// Format response
|
|
133
|
-
const resultText = result.
|
|
134
|
-
? `Found ${result.
|
|
135
|
-
: `No
|
|
135
|
+
const resultText = result.rules.length > 0
|
|
136
|
+
? `Found ${result.totalRules} rule(s):\n\n${result.rules.map((rule, index) => `${index + 1}. ${rule}`).join('\n')}`
|
|
137
|
+
: `No rules found${validatedArgs.query ? ` matching "${validatedArgs.query}"` : ''}`;
|
|
136
138
|
return {
|
|
137
|
-
description: '
|
|
139
|
+
description: 'List all rules or search for specific ones',
|
|
138
140
|
messages: [
|
|
139
141
|
{
|
|
140
142
|
role: 'user',
|
|
141
143
|
content: {
|
|
142
144
|
type: 'text',
|
|
143
|
-
text:
|
|
145
|
+
text: validatedArgs.query
|
|
146
|
+
? `List rules matching: ${validatedArgs.query}`
|
|
147
|
+
: 'List all rules',
|
|
144
148
|
},
|
|
145
149
|
},
|
|
146
150
|
{
|
|
@@ -161,18 +165,20 @@ export class MemoryPrompt {
|
|
|
161
165
|
}
|
|
162
166
|
}
|
|
163
167
|
/**
|
|
164
|
-
* Handle
|
|
168
|
+
* Handle remove-rule prompt - removes a rule from the list
|
|
165
169
|
*/
|
|
166
|
-
static async
|
|
170
|
+
static async handleRemoveRule(args, context) {
|
|
167
171
|
try {
|
|
168
172
|
// Validate args with Zod
|
|
169
|
-
const validatedArgs =
|
|
173
|
+
const validatedArgs = RemoveRuleArgsSchema.parse(args);
|
|
170
174
|
// Create memory service with context
|
|
171
|
-
const
|
|
175
|
+
const rulesService = new RulesService(context);
|
|
172
176
|
// Call service method with validated args
|
|
173
|
-
const result = await
|
|
177
|
+
const result = await rulesService.removeRule(validatedArgs.rule, context.userId);
|
|
174
178
|
// Format response
|
|
175
|
-
const resultText = result.
|
|
179
|
+
const resultText = result.success
|
|
180
|
+
? `${result.message}\nRemoved: "${result.removedRule}"\nRemaining rules: ${result.remainingRules}`
|
|
181
|
+
: result.message;
|
|
176
182
|
return {
|
|
177
183
|
description: 'Remove information from memory',
|
|
178
184
|
messages: [
|
|
@@ -180,7 +186,7 @@ export class MemoryPrompt {
|
|
|
180
186
|
role: 'user',
|
|
181
187
|
content: {
|
|
182
188
|
type: 'text',
|
|
183
|
-
text: `
|
|
189
|
+
text: `Remove rule: ${validatedArgs.rule}`,
|
|
184
190
|
},
|
|
185
191
|
},
|
|
186
192
|
{
|
|
@@ -201,4 +207,4 @@ export class MemoryPrompt {
|
|
|
201
207
|
}
|
|
202
208
|
}
|
|
203
209
|
}
|
|
204
|
-
//# sourceMappingURL=
|
|
210
|
+
//# sourceMappingURL=rules.prompt.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rules.prompt.js","sourceRoot":"","sources":["../../../src/prompts/rules/rules.prompt.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { LocalFilesystemStorageAdapter } from './local-filesystem-adapter.js';
|
|
2
|
+
import { ConfigScope } from './platform-path-builder.js';
|
|
3
|
+
export declare class PlatformConfigAdapter extends LocalFilesystemStorageAdapter {
|
|
4
|
+
private platformPathBuilder;
|
|
5
|
+
constructor(config: {
|
|
6
|
+
baseDir: string;
|
|
7
|
+
autoCreate?: boolean;
|
|
8
|
+
});
|
|
9
|
+
/**
|
|
10
|
+
* Read platform-specific configuration file
|
|
11
|
+
*/
|
|
12
|
+
readPlatformConfig(platform: string, scope?: ConfigScope): Promise<any>;
|
|
13
|
+
/**
|
|
14
|
+
* Write platform-specific configuration file
|
|
15
|
+
*/
|
|
16
|
+
writePlatformConfig(platform: string, config: any, scope?: ConfigScope): Promise<void>;
|
|
17
|
+
/**
|
|
18
|
+
* Backup platform configuration
|
|
19
|
+
*/
|
|
20
|
+
backupPlatformConfig(platform: string, scope?: ConfigScope): Promise<string | null>;
|
|
21
|
+
/**
|
|
22
|
+
* Restore platform configuration from backup
|
|
23
|
+
*/
|
|
24
|
+
restorePlatformConfig(platform: string, backupId: string, scope?: ConfigScope): Promise<void>;
|
|
25
|
+
/**
|
|
26
|
+
* Add or update an MCP server in platform configuration
|
|
27
|
+
*/
|
|
28
|
+
addMCPServer(platform: string, serverName: string, serverConfig: {
|
|
29
|
+
command: string;
|
|
30
|
+
args?: string[];
|
|
31
|
+
env?: Record<string, string>;
|
|
32
|
+
}, scope?: ConfigScope): Promise<void>;
|
|
33
|
+
/**
|
|
34
|
+
* Remove an MCP server from platform configuration
|
|
35
|
+
*/
|
|
36
|
+
removeMCPServer(platform: string, serverName: string, scope?: ConfigScope): Promise<void>;
|
|
37
|
+
/**
|
|
38
|
+
* Check if an MCP server is configured
|
|
39
|
+
*/
|
|
40
|
+
isMCPServerConfigured(platform: string, serverName: string, scope?: ConfigScope): Promise<boolean>;
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=platform-config-adapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"platform-config-adapter.d.ts","sourceRoot":"","sources":["../../src/storage/platform-config-adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,6BAA6B,EAAE,MAAM,+BAA+B,CAAC;AAC9E,OAAO,EAAuB,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAQ9E,qBAAa,qBAAsB,SAAQ,6BAA6B;IACtE,OAAO,CAAC,mBAAmB,CAAsB;gBAErC,MAAM,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,OAAO,CAAA;KAAE;IAK7D;;OAEG;IACG,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC;IAe7E;;OAEG;IACG,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAW5F;;OAEG;IACG,oBAAoB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IA+BzF;;OAEG;IACG,qBAAqB,CACzB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,KAAK,CAAC,EAAE,WAAW,GAClB,OAAO,CAAC,IAAI,CAAC;IAahB;;OAEG;IACG,YAAY,CAChB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE;QACZ,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;QAChB,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KAC9B,EACD,KAAK,CAAC,EAAE,WAAW,GAClB,OAAO,CAAC,IAAI,CAAC;IAmBhB;;OAEG;IACG,eAAe,CACnB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,KAAK,CAAC,EAAE,WAAW,GAClB,OAAO,CAAC,IAAI,CAAC;IAahB;;OAEG;IACG,qBAAqB,CACzB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,KAAK,CAAC,EAAE,WAAW,GAClB,OAAO,CAAC,OAAO,CAAC;CASpB"}
|