@exaudeus/workrail 0.0.3 → 0.0.4

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 CHANGED
@@ -18,6 +18,36 @@ The codebase now implements the full MVP described in the original specification
18
18
 
19
19
  ---
20
20
 
21
+ ## 🚀 Quick Start
22
+
23
+ ```bash
24
+ # Install globally
25
+ npm install -g @exaudeus/workrail
26
+
27
+ # Initialize your personal workflow directory
28
+ workrail init
29
+
30
+ # List all available workflows (bundled + your custom ones)
31
+ workrail list
32
+
33
+ # Check workflow sources and status
34
+ workrail sources
35
+
36
+ # Validate a workflow file
37
+ workrail validate my-workflow.json
38
+
39
+ # Start the MCP server
40
+ workrail start
41
+ ```
42
+
43
+ **Multiple Workflow Sources**: WorkRail automatically loads workflows from:
44
+ - **Bundled workflows** (included with the package)
45
+ - **User workflows** (`~/.workrail/workflows/`)
46
+ - **Project workflows** (`./workflows/`)
47
+ - **Custom directories** (via `WORKFLOW_STORAGE_PATH` environment variable)
48
+
49
+ ---
50
+
21
51
  ## ✨ Key Features
22
52
 
23
53
  * **Clean Architecture** – clear separation of **Domain → Application → Infrastructure** layers.
package/dist/cli.js CHANGED
@@ -6,44 +6,142 @@ const commander_1 = require("commander");
6
6
  const fs_1 = tslib_1.__importDefault(require("fs"));
7
7
  const path_1 = tslib_1.__importDefault(require("path"));
8
8
  const chalk_1 = tslib_1.__importDefault(require("chalk"));
9
+ const os_1 = tslib_1.__importDefault(require("os"));
9
10
  const server_1 = require("./infrastructure/rpc/server");
10
11
  const workflow_service_1 = require("./application/services/workflow-service");
11
- const storage_1 = require("./infrastructure/storage");
12
+ // import { createDefaultWorkflowStorage } from './infrastructure/storage';
12
13
  const validation_1 = require("./application/validation");
14
+ const multi_directory_workflow_storage_1 = require("./infrastructure/storage/multi-directory-workflow-storage");
13
15
  const program = new commander_1.Command();
14
16
  program
15
- .name('workflow-lookup')
17
+ .name('workrail')
16
18
  .description('MCP server for workflow orchestration and guidance')
17
- .version('0.0.1');
19
+ .version('0.0.3');
18
20
  program
19
- .command('start')
20
- .description('Start the workflow lookup server')
21
+ .command('init')
22
+ .description('Initialize user workflow directory with sample workflows')
21
23
  .action(async () => {
22
24
  try {
23
- const workflowService = new workflow_service_1.DefaultWorkflowService((0, storage_1.createDefaultWorkflowStorage)());
24
- const server = (0, server_1.createWorkflowLookupServer)(workflowService);
25
- await server.start();
26
- console.log('Workflow Lookup MCP Server started successfully');
27
- // Graceful shutdown on SIGINT/SIGTERM
28
- const shutdown = async (signal) => {
29
- console.log(`Received ${signal}, shutting down...`);
30
- await server.stop();
31
- process.exit(0);
32
- };
33
- process.on('SIGINT', () => shutdown('SIGINT'));
34
- process.on('SIGTERM', () => shutdown('SIGTERM'));
25
+ console.log(chalk_1.default.blue('🚀 Initializing user workflow directory...'));
26
+ const userDir = await (0, multi_directory_workflow_storage_1.initializeUserWorkflowDirectory)();
27
+ console.log(chalk_1.default.green('✅ User workflow directory initialized:'));
28
+ console.log(chalk_1.default.cyan(` ${userDir}`));
29
+ console.log();
30
+ console.log(chalk_1.default.yellow('📝 Getting started:'));
31
+ console.log(chalk_1.default.white('1. Edit the sample workflow in the directory above'));
32
+ console.log(chalk_1.default.white('2. Create new workflow JSON files following the schema'));
33
+ console.log(chalk_1.default.white('3. Run "workrail list" to see your workflows'));
34
+ console.log(chalk_1.default.white('4. Use your workflows with any MCP-enabled AI assistant'));
35
+ console.log();
36
+ console.log(chalk_1.default.gray('💡 Tip: Use "workrail validate <file>" to check your workflow syntax'));
35
37
  }
36
38
  catch (error) {
37
- console.error('Failed to start server:', error);
39
+ console.error(chalk_1.default.red('Failed to initialize user workflow directory:'));
40
+ console.error(chalk_1.default.red(error.message));
38
41
  process.exit(1);
39
42
  }
40
43
  });
41
44
  program
42
- .command('validate')
43
- .description('Validate a workflow file against the schema')
44
- .argument('<file>', 'path to workflow JSON file')
45
- .action(async (file) => {
46
- await validateWorkflowFile(file);
45
+ .command('list')
46
+ .description('List all available workflows from all sources')
47
+ .option('-v, --verbose', 'Show detailed information including sources')
48
+ .action(async (options) => {
49
+ try {
50
+ console.log(chalk_1.default.blue('📋 Available workflows:'));
51
+ console.log();
52
+ const workflowService = new workflow_service_1.DefaultWorkflowService();
53
+ const workflows = await workflowService.listWorkflowSummaries();
54
+ if (workflows.length === 0) {
55
+ console.log(chalk_1.default.yellow(' No workflows found.'));
56
+ console.log(chalk_1.default.gray(' Run "workrail init" to create your first workflow.'));
57
+ return;
58
+ }
59
+ workflows.forEach((workflow, index) => {
60
+ console.log(chalk_1.default.green(`${index + 1}. ${workflow.name}`));
61
+ console.log(chalk_1.default.white(` ID: ${workflow.id}`));
62
+ console.log(chalk_1.default.gray(` ${workflow.description}`));
63
+ if (options.verbose) {
64
+ console.log(chalk_1.default.cyan(` Version: ${workflow.version}`));
65
+ }
66
+ console.log();
67
+ });
68
+ console.log(chalk_1.default.gray(`Total: ${workflows.length} workflows`));
69
+ }
70
+ catch (error) {
71
+ console.error(chalk_1.default.red('❌ Failed to list workflows:'));
72
+ console.error(chalk_1.default.red(error.message));
73
+ process.exit(1);
74
+ }
75
+ });
76
+ program
77
+ .command('sources')
78
+ .description('Show workflow directory sources and their status')
79
+ .action(async () => {
80
+ try {
81
+ console.log(chalk_1.default.blue('📂 Workflow directory sources:'));
82
+ console.log();
83
+ const sources = [
84
+ {
85
+ name: 'Bundled Workflows',
86
+ path: path_1.default.resolve(__dirname, '../workflows'),
87
+ type: 'bundled',
88
+ description: 'Pre-built workflows included with WorkRail'
89
+ },
90
+ {
91
+ name: 'User Workflows',
92
+ path: path_1.default.join(os_1.default.homedir(), '.workrail', 'workflows'),
93
+ type: 'user',
94
+ description: 'Your personal workflow collection'
95
+ },
96
+ {
97
+ name: 'Project Workflows',
98
+ path: path_1.default.resolve(process.cwd(), 'workflows'),
99
+ type: 'project',
100
+ description: 'Project-specific workflows'
101
+ }
102
+ ];
103
+ // Add custom paths from environment
104
+ const envPaths = process.env['WORKFLOW_STORAGE_PATH'];
105
+ if (envPaths) {
106
+ const customPaths = envPaths.split(path_1.default.delimiter);
107
+ customPaths.forEach((customPath, index) => {
108
+ sources.push({
109
+ name: `Custom Path ${index + 1}`,
110
+ path: path_1.default.resolve(customPath.trim()),
111
+ type: 'custom',
112
+ description: 'Custom workflow directory'
113
+ });
114
+ });
115
+ }
116
+ sources.forEach((source, index) => {
117
+ const exists = fs_1.default.existsSync(source.path);
118
+ const icon = exists ? '✅' : '❌';
119
+ const status = exists ? 'Found' : 'Not found';
120
+ console.log(chalk_1.default.white(`${index + 1}. ${source.name} ${icon}`));
121
+ console.log(chalk_1.default.gray(` Path: ${source.path}`));
122
+ console.log(chalk_1.default.gray(` Status: ${status}`));
123
+ console.log(chalk_1.default.gray(` ${source.description}`));
124
+ if (exists) {
125
+ try {
126
+ const files = fs_1.default.readdirSync(source.path).filter(f => f.endsWith('.json'));
127
+ console.log(chalk_1.default.cyan(` Workflows: ${files.length} files`));
128
+ }
129
+ catch (error) {
130
+ console.log(chalk_1.default.red(` Error reading directory`));
131
+ }
132
+ }
133
+ console.log();
134
+ });
135
+ console.log(chalk_1.default.yellow('💡 Tips:'));
136
+ console.log(chalk_1.default.white('• Run "workrail init" to create the user workflow directory'));
137
+ console.log(chalk_1.default.white('• Set WORKFLOW_STORAGE_PATH to add custom directories'));
138
+ console.log(chalk_1.default.white('• Use colon-separated paths for multiple custom directories'));
139
+ }
140
+ catch (error) {
141
+ console.error(chalk_1.default.red('❌ Failed to check workflow sources:'));
142
+ console.error(chalk_1.default.red(error.message));
143
+ process.exit(1);
144
+ }
47
145
  });
48
146
  async function validateWorkflowFile(filePath) {
49
147
  try {
@@ -102,5 +200,24 @@ async function validateWorkflowFile(filePath) {
102
200
  process.exit(1);
103
201
  }
104
202
  }
203
+ program
204
+ .command('validate <file>')
205
+ .description('Validate a workflow file against the schema')
206
+ .action(validateWorkflowFile);
207
+ program
208
+ .command('start')
209
+ .description('Start the MCP server')
210
+ .action(async () => {
211
+ try {
212
+ console.log(chalk_1.default.blue('🚀 Starting WorkRail MCP server...'));
213
+ const workflowService = new workflow_service_1.DefaultWorkflowService();
214
+ const server = (0, server_1.createWorkflowLookupServer)(workflowService);
215
+ await server.start();
216
+ }
217
+ catch (error) {
218
+ console.error(chalk_1.default.red('❌ Failed to start server:'), error.message);
219
+ process.exit(1);
220
+ }
221
+ });
105
222
  program.parse();
106
223
  //# sourceMappingURL=cli.js.map
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";;;;AAEA,yCAAoC;AACpC,oDAAoB;AACpB,wDAAwB;AACxB,0DAA0B;AAC1B,wDAAyE;AACzE,8EAAiF;AACjF,sDAAwE;AACxE,yDAA4D;AAE5D,MAAM,OAAO,GAAG,IAAI,mBAAO,EAAE,CAAC;AAE9B,OAAO;KACJ,IAAI,CAAC,iBAAiB,CAAC;KACvB,WAAW,CAAC,oDAAoD,CAAC;KACjE,OAAO,CAAC,OAAO,CAAC,CAAC;AAEpB,OAAO;KACJ,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,kCAAkC,CAAC;KAC/C,MAAM,CAAC,KAAK,IAAI,EAAE;IACjB,IAAI,CAAC;QACH,MAAM,eAAe,GAAG,IAAI,yCAAsB,CAAC,IAAA,sCAA4B,GAAE,CAAC,CAAC;QACnF,MAAM,MAAM,GAAG,IAAA,mCAA0B,EAAC,eAAe,CAAC,CAAC;QAC3D,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;QACrB,OAAO,CAAC,GAAG,CAAC,iDAAiD,CAAC,CAAC;QAE/D,sCAAsC;QACtC,MAAM,QAAQ,GAAG,KAAK,EAAE,MAAc,EAAE,EAAE;YACxC,OAAO,CAAC,GAAG,CAAC,YAAY,MAAM,oBAAoB,CAAC,CAAC;YACpD,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;YACpB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC,CAAC;QACF,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC/C,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;IACnD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,yBAAyB,EAAE,KAAK,CAAC,CAAC;QAChD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,UAAU,CAAC;KACnB,WAAW,CAAC,6CAA6C,CAAC;KAC1D,QAAQ,CAAC,QAAQ,EAAE,4BAA4B,CAAC;KAChD,MAAM,CAAC,KAAK,EAAE,IAAY,EAAE,EAAE;IAC7B,MAAM,oBAAoB,CAAC,IAAI,CAAC,CAAC;AACnC,CAAC,CAAC,CAAC;AAEL,KAAK,UAAU,oBAAoB,CAAC,QAAgB;IAClD,IAAI,CAAC;QACH,iCAAiC;QACjC,MAAM,YAAY,GAAG,cAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAE5C,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;YACjC,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,0BAA0B,CAAC,EAAE,QAAQ,CAAC,CAAC;YAC/D,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,MAAM,CAAC,6CAA6C,CAAC,CAAC,CAAC;YAC3E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,uBAAuB;QACvB,IAAI,OAAe,CAAC;QACpB,IAAI,CAAC;YACH,OAAO,GAAG,YAAE,CAAC,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QACnD,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC5B,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,6BAA6B,CAAC,EAAE,QAAQ,CAAC,CAAC;gBAClE,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,MAAM,CAAC,gDAAgD,CAAC,CAAC,CAAC;YAChF,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,uBAAuB,CAAC,EAAE,QAAQ,CAAC,CAAC;gBAC5D,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,MAAM,CAAC,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;YACpD,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,gBAAgB;QAChB,IAAI,QAAa,CAAC;QAClB,IAAI,CAAC;YACH,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACjC,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,iCAAiC,CAAC,EAAE,QAAQ,CAAC,CAAC;YACtE,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,MAAM,CAAC,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;YAClD,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,MAAM,CAAC,+CAA+C,CAAC,CAAC,CAAC;YAC7E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,uBAAuB;QACvB,MAAM,MAAM,GAAG,IAAA,6BAAgB,EAAC,QAAQ,CAAC,CAAC;QAE1C,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YACjB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,sBAAsB,CAAC,EAAE,QAAQ,CAAC,CAAC;YAC3D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,+BAA+B,CAAC,EAAE,QAAQ,CAAC,CAAC;YACpE,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC,CAAC;YACpD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;gBAC5B,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC;YACzC,CAAC,CAAC,CAAC;YACH,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,MAAM,CAAC,WAAW,MAAM,CAAC,MAAM,CAAC,MAAM,oBAAoB,MAAM,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;YACzH,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IAEH,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,qBAAqB,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QAC/D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,OAAO,CAAC,KAAK,EAAE,CAAC"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,50 @@
1
+ import { IWorkflowStorage } from '../../types/storage';
2
+ import { Workflow, WorkflowSummary } from '../../types/mcp-types';
3
+ /**
4
+ * Multi-directory workflow storage that loads workflows from multiple directories
5
+ * and merges them together. Supports:
6
+ * - Bundled workflows (always included)
7
+ * - User-specific workflows (~/.workrail/workflows)
8
+ * - Project-specific workflows (./workflows or custom path)
9
+ * - Multiple custom directories (colon-separated paths)
10
+ */
11
+ export declare class MultiDirectoryWorkflowStorage implements IWorkflowStorage {
12
+ private storageInstances;
13
+ constructor(options?: MultiDirectoryOptions);
14
+ private resolveDirectories;
15
+ loadAllWorkflows(): Promise<Workflow[]>;
16
+ getWorkflowById(id: string): Promise<Workflow | null>;
17
+ listWorkflowSummaries(): Promise<WorkflowSummary[]>;
18
+ save?(_workflow: Workflow): Promise<void>;
19
+ /**
20
+ * Get information about loaded directories
21
+ */
22
+ getDirectoryInfo(): DirectoryInfo[];
23
+ private getDirectoryType;
24
+ }
25
+ export interface MultiDirectoryOptions {
26
+ excludeBundled?: boolean;
27
+ excludeUser?: boolean;
28
+ excludeProject?: boolean;
29
+ additionalDirectories?: string[];
30
+ fileStorageOptions?: {
31
+ maxFileSizeBytes?: number;
32
+ cacheTTLms?: number;
33
+ cacheSize?: number;
34
+ indexCacheTTLms?: number;
35
+ };
36
+ }
37
+ export interface DirectoryInfo {
38
+ path: string;
39
+ index: number;
40
+ type: 'bundled' | 'user' | 'project' | 'custom';
41
+ }
42
+ /**
43
+ * Create a multi-directory storage with sensible defaults
44
+ */
45
+ export declare function createMultiDirectoryWorkflowStorage(options?: MultiDirectoryOptions): MultiDirectoryWorkflowStorage;
46
+ /**
47
+ * Initialize user workflow directory if it doesn't exist
48
+ */
49
+ export declare function initializeUserWorkflowDirectory(): Promise<string>;
50
+ //# sourceMappingURL=multi-directory-workflow-storage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"multi-directory-workflow-storage.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/storage/multi-directory-workflow-storage.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAGlE;;;;;;;GAOG;AACH,qBAAa,6BAA8B,YAAW,gBAAgB;IACpE,OAAO,CAAC,gBAAgB,CAA6B;gBAEzC,OAAO,GAAE,qBAA0B;IAS/C,OAAO,CAAC,kBAAkB;IAgDpB,gBAAgB,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;IA8BvC,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;IAmBrD,qBAAqB,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;IAWnD,IAAI,CAAC,CAAC,SAAS,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAgB/C;;OAEG;IACI,gBAAgB,IAAI,aAAa,EAAE;IAQ1C,OAAO,CAAC,gBAAgB;CAYzB;AAED,MAAM,WAAW,qBAAqB;IACpC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,qBAAqB,CAAC,EAAE,MAAM,EAAE,CAAC;IACjC,kBAAkB,CAAC,EAAE;QACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,eAAe,CAAC,EAAE,MAAM,CAAC;KAC1B,CAAC;CACH;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,SAAS,GAAG,MAAM,GAAG,SAAS,GAAG,QAAQ,CAAC;CACjD;AAED;;GAEG;AACH,wBAAgB,mCAAmC,CAAC,OAAO,GAAE,qBAA0B,GAAG,6BAA6B,CAStH;AAED;;GAEG;AACH,wBAAsB,+BAA+B,IAAI,OAAO,CAAC,MAAM,CAAC,CAmCvE"}
@@ -0,0 +1,209 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MultiDirectoryWorkflowStorage = void 0;
4
+ exports.createMultiDirectoryWorkflowStorage = createMultiDirectoryWorkflowStorage;
5
+ exports.initializeUserWorkflowDirectory = initializeUserWorkflowDirectory;
6
+ const tslib_1 = require("tslib");
7
+ const promises_1 = tslib_1.__importDefault(require("fs/promises"));
8
+ const fs_1 = require("fs");
9
+ const path_1 = tslib_1.__importDefault(require("path"));
10
+ const os_1 = tslib_1.__importDefault(require("os"));
11
+ const file_workflow_storage_1 = require("./file-workflow-storage");
12
+ /**
13
+ * Multi-directory workflow storage that loads workflows from multiple directories
14
+ * and merges them together. Supports:
15
+ * - Bundled workflows (always included)
16
+ * - User-specific workflows (~/.workrail/workflows)
17
+ * - Project-specific workflows (./workflows or custom path)
18
+ * - Multiple custom directories (colon-separated paths)
19
+ */
20
+ class MultiDirectoryWorkflowStorage {
21
+ storageInstances = [];
22
+ constructor(options = {}) {
23
+ const directories = this.resolveDirectories(options);
24
+ // Create storage instances for each valid directory
25
+ this.storageInstances = directories.map(dir => new file_workflow_storage_1.FileWorkflowStorage(dir, options.fileStorageOptions));
26
+ }
27
+ resolveDirectories(options) {
28
+ const directories = [];
29
+ // 1. Always include bundled workflows (unless explicitly disabled)
30
+ if (!options.excludeBundled) {
31
+ const bundledDir = path_1.default.resolve(__dirname, '../../../workflows');
32
+ if ((0, fs_1.existsSync)(bundledDir)) {
33
+ directories.push(bundledDir);
34
+ }
35
+ }
36
+ // 2. User-specific workflows directory
37
+ if (!options.excludeUser) {
38
+ const userDir = path_1.default.join(os_1.default.homedir(), '.workrail', 'workflows');
39
+ if ((0, fs_1.existsSync)(userDir)) {
40
+ directories.push(userDir);
41
+ }
42
+ }
43
+ // 3. Project-specific workflows
44
+ if (!options.excludeProject) {
45
+ const projectDir = path_1.default.resolve(process.cwd(), 'workflows');
46
+ if ((0, fs_1.existsSync)(projectDir)) {
47
+ directories.push(projectDir);
48
+ }
49
+ }
50
+ // 4. Custom directories from environment variable
51
+ const envPaths = process.env['WORKFLOW_STORAGE_PATH'];
52
+ if (envPaths) {
53
+ const customDirs = envPaths.split(path_1.default.delimiter)
54
+ .map(dir => path_1.default.resolve(dir.trim()))
55
+ .filter(dir => (0, fs_1.existsSync)(dir));
56
+ directories.push(...customDirs);
57
+ }
58
+ // 5. Additional custom directories
59
+ if (options.additionalDirectories) {
60
+ const additionalDirs = options.additionalDirectories
61
+ .map(dir => path_1.default.resolve(dir))
62
+ .filter(dir => (0, fs_1.existsSync)(dir));
63
+ directories.push(...additionalDirs);
64
+ }
65
+ // Remove duplicates while preserving order
66
+ return [...new Set(directories)];
67
+ }
68
+ async loadAllWorkflows() {
69
+ const allWorkflows = [];
70
+ const seenIds = new Set();
71
+ // Load from all directories, with later directories taking precedence
72
+ for (const storage of this.storageInstances) {
73
+ try {
74
+ const workflows = await storage.loadAllWorkflows();
75
+ // Add workflows, with later ones overriding earlier ones with same ID
76
+ for (const workflow of workflows) {
77
+ if (seenIds.has(workflow.id)) {
78
+ // Replace existing workflow with same ID
79
+ const existingIndex = allWorkflows.findIndex(wf => wf.id === workflow.id);
80
+ if (existingIndex >= 0) {
81
+ allWorkflows[existingIndex] = workflow;
82
+ }
83
+ }
84
+ else {
85
+ allWorkflows.push(workflow);
86
+ seenIds.add(workflow.id);
87
+ }
88
+ }
89
+ }
90
+ catch (error) {
91
+ console.warn(`Failed to load workflows from storage:`, error);
92
+ }
93
+ }
94
+ return allWorkflows;
95
+ }
96
+ async getWorkflowById(id) {
97
+ // Search in reverse order (later directories take precedence)
98
+ for (let i = this.storageInstances.length - 1; i >= 0; i--) {
99
+ try {
100
+ const storage = this.storageInstances[i];
101
+ if (storage) {
102
+ const workflow = await storage.getWorkflowById(id);
103
+ if (workflow) {
104
+ return workflow;
105
+ }
106
+ }
107
+ }
108
+ catch (error) {
109
+ console.warn(`Failed to load workflow ${id} from storage:`, error);
110
+ }
111
+ }
112
+ return null;
113
+ }
114
+ async listWorkflowSummaries() {
115
+ const workflows = await this.loadAllWorkflows();
116
+ return workflows.map(workflow => ({
117
+ id: workflow.id,
118
+ name: workflow.name,
119
+ description: workflow.description,
120
+ category: 'default',
121
+ version: workflow.version
122
+ }));
123
+ }
124
+ async save(_workflow) {
125
+ // Save to the first writable directory (usually user directory)
126
+ for (const storage of this.storageInstances) {
127
+ if (typeof storage.save === 'function') {
128
+ try {
129
+ await storage.save();
130
+ return;
131
+ }
132
+ catch (error) {
133
+ console.warn(`Failed to save workflow to storage:`, error);
134
+ }
135
+ }
136
+ }
137
+ throw new Error('No writable storage available');
138
+ }
139
+ /**
140
+ * Get information about loaded directories
141
+ */
142
+ getDirectoryInfo() {
143
+ return this.storageInstances.map((storage, index) => ({
144
+ path: storage.baseDirReal,
145
+ index,
146
+ type: this.getDirectoryType(storage.baseDirReal)
147
+ }));
148
+ }
149
+ getDirectoryType(dirPath) {
150
+ if (dirPath.includes('/workflows') && dirPath.includes('dist')) {
151
+ return 'bundled';
152
+ }
153
+ if (dirPath.includes('.workrail')) {
154
+ return 'user';
155
+ }
156
+ if (dirPath.endsWith(path_1.default.join(process.cwd(), 'workflows'))) {
157
+ return 'project';
158
+ }
159
+ return 'custom';
160
+ }
161
+ }
162
+ exports.MultiDirectoryWorkflowStorage = MultiDirectoryWorkflowStorage;
163
+ /**
164
+ * Create a multi-directory storage with sensible defaults
165
+ */
166
+ function createMultiDirectoryWorkflowStorage(options = {}) {
167
+ return new MultiDirectoryWorkflowStorage({
168
+ fileStorageOptions: {
169
+ cacheTTLms: 10000,
170
+ cacheSize: 200,
171
+ indexCacheTTLms: 60000,
172
+ },
173
+ ...options
174
+ });
175
+ }
176
+ /**
177
+ * Initialize user workflow directory if it doesn't exist
178
+ */
179
+ async function initializeUserWorkflowDirectory() {
180
+ const userDir = path_1.default.join(os_1.default.homedir(), '.workrail', 'workflows');
181
+ try {
182
+ await promises_1.default.mkdir(userDir, { recursive: true });
183
+ // Create a sample custom workflow if directory is empty
184
+ const entries = await promises_1.default.readdir(userDir);
185
+ if (entries.length === 0) {
186
+ const sampleWorkflow = {
187
+ id: 'my-custom-workflow',
188
+ name: 'My Custom Workflow',
189
+ description: 'A template for creating custom workflows',
190
+ version: '1.0.0',
191
+ steps: [
192
+ {
193
+ id: 'step-1',
194
+ name: 'First Step',
195
+ description: 'Replace this with your custom step',
196
+ guidance: 'Add your specific instructions here'
197
+ }
198
+ ]
199
+ };
200
+ await promises_1.default.writeFile(path_1.default.join(userDir, 'my-custom-workflow.json'), JSON.stringify(sampleWorkflow, null, 2));
201
+ }
202
+ return userDir;
203
+ }
204
+ catch (error) {
205
+ console.warn('Failed to initialize user workflow directory:', error);
206
+ throw error;
207
+ }
208
+ }
209
+ //# sourceMappingURL=multi-directory-workflow-storage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"multi-directory-workflow-storage.js","sourceRoot":"","sources":["../../../src/infrastructure/storage/multi-directory-workflow-storage.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,10 @@
1
1
  import { FileWorkflowStorage } from './file-workflow-storage';
2
2
  import { SchemaValidatingWorkflowStorage } from './schema-validating-workflow-storage';
3
3
  import { CachingWorkflowStorage } from './caching-workflow-storage';
4
+ import { MultiDirectoryWorkflowStorage, createMultiDirectoryWorkflowStorage } from './multi-directory-workflow-storage';
4
5
  /**
5
6
  * Create the default, production-grade storage stack consisting of:
6
- * 1. File-system backed storage
7
+ * 1. Multi-directory workflow storage (bundled + user + project + custom)
7
8
  * 2. JSON-Schema validation decorator
8
9
  * 3. In-memory TTL cache decorator
9
10
  *
@@ -12,5 +13,9 @@ import { CachingWorkflowStorage } from './caching-workflow-storage';
12
13
  * share or isolate storage state.
13
14
  */
14
15
  export declare function createDefaultWorkflowStorage(): CachingWorkflowStorage;
15
- export { FileWorkflowStorage, SchemaValidatingWorkflowStorage, CachingWorkflowStorage };
16
+ /**
17
+ * Create the legacy single-directory storage (for backward compatibility)
18
+ */
19
+ export declare function createLegacyWorkflowStorage(): CachingWorkflowStorage;
20
+ export { FileWorkflowStorage, SchemaValidatingWorkflowStorage, CachingWorkflowStorage, MultiDirectoryWorkflowStorage, createMultiDirectoryWorkflowStorage };
16
21
  //# sourceMappingURL=storage.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/storage/storage.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAoC,MAAM,yBAAyB,CAAC;AAChG,OAAO,EAAE,+BAA+B,EAAE,MAAM,sCAAsC,CAAC;AACvF,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AAOpE;;;;;;;;;GASG;AACH,wBAAgB,4BAA4B,IAAI,sBAAsB,CAKrE;AAGD,OAAO,EACL,mBAAmB,EACnB,+BAA+B,EAC/B,sBAAsB,EACvB,CAAC"}
1
+ {"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/storage/storage.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAoC,MAAM,yBAAyB,CAAC;AAChG,OAAO,EAAE,+BAA+B,EAAE,MAAM,sCAAsC,CAAC;AACvF,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,6BAA6B,EAAE,mCAAmC,EAAE,MAAM,oCAAoC,CAAC;AAOxH;;;;;;;;;GASG;AACH,wBAAgB,4BAA4B,IAAI,sBAAsB,CAKrE;AAED;;GAEG;AACH,wBAAgB,2BAA2B,IAAI,sBAAsB,CAKpE;AAGD,OAAO,EACL,mBAAmB,EACnB,+BAA+B,EAC/B,sBAAsB,EACtB,6BAA6B,EAC7B,mCAAmC,EACpC,CAAC"}
@@ -1,21 +1,25 @@
1
1
  "use strict";
2
2
  // Re-export new modular storage pieces and compose them to keep backward compatibility
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.CachingWorkflowStorage = exports.SchemaValidatingWorkflowStorage = exports.FileWorkflowStorage = void 0;
4
+ exports.createMultiDirectoryWorkflowStorage = exports.MultiDirectoryWorkflowStorage = exports.CachingWorkflowStorage = exports.SchemaValidatingWorkflowStorage = exports.FileWorkflowStorage = void 0;
5
5
  exports.createDefaultWorkflowStorage = createDefaultWorkflowStorage;
6
+ exports.createLegacyWorkflowStorage = createLegacyWorkflowStorage;
6
7
  const file_workflow_storage_1 = require("./file-workflow-storage");
7
8
  Object.defineProperty(exports, "FileWorkflowStorage", { enumerable: true, get: function () { return file_workflow_storage_1.FileWorkflowStorage; } });
8
9
  const schema_validating_workflow_storage_1 = require("./schema-validating-workflow-storage");
9
10
  Object.defineProperty(exports, "SchemaValidatingWorkflowStorage", { enumerable: true, get: function () { return schema_validating_workflow_storage_1.SchemaValidatingWorkflowStorage; } });
10
11
  const caching_workflow_storage_1 = require("./caching-workflow-storage");
11
12
  Object.defineProperty(exports, "CachingWorkflowStorage", { enumerable: true, get: function () { return caching_workflow_storage_1.CachingWorkflowStorage; } });
13
+ const multi_directory_workflow_storage_1 = require("./multi-directory-workflow-storage");
14
+ Object.defineProperty(exports, "MultiDirectoryWorkflowStorage", { enumerable: true, get: function () { return multi_directory_workflow_storage_1.MultiDirectoryWorkflowStorage; } });
15
+ Object.defineProperty(exports, "createMultiDirectoryWorkflowStorage", { enumerable: true, get: function () { return multi_directory_workflow_storage_1.createMultiDirectoryWorkflowStorage; } });
12
16
  // (intentionally left blank – no direct dependency on Workflow types here)
13
17
  // -----------------------------------------------------------------------------
14
18
  // Default composition helper – now exposed as a factory for DI friendliness
15
19
  // -----------------------------------------------------------------------------
16
20
  /**
17
21
  * Create the default, production-grade storage stack consisting of:
18
- * 1. File-system backed storage
22
+ * 1. Multi-directory workflow storage (bundled + user + project + custom)
19
23
  * 2. JSON-Schema validation decorator
20
24
  * 3. In-memory TTL cache decorator
21
25
  *
@@ -24,6 +28,15 @@ Object.defineProperty(exports, "CachingWorkflowStorage", { enumerable: true, get
24
28
  * share or isolate storage state.
25
29
  */
26
30
  function createDefaultWorkflowStorage() {
31
+ const baseStorage = (0, multi_directory_workflow_storage_1.createMultiDirectoryWorkflowStorage)();
32
+ const validatingStorage = new schema_validating_workflow_storage_1.SchemaValidatingWorkflowStorage(baseStorage);
33
+ const cacheTtlMs = Number(process.env['CACHE_TTL'] ?? 300_000); // 5 minutes default
34
+ return new caching_workflow_storage_1.CachingWorkflowStorage(validatingStorage, cacheTtlMs);
35
+ }
36
+ /**
37
+ * Create the legacy single-directory storage (for backward compatibility)
38
+ */
39
+ function createLegacyWorkflowStorage() {
27
40
  const baseStorage = (0, file_workflow_storage_1.createDefaultFileWorkflowStorage)();
28
41
  const validatingStorage = new schema_validating_workflow_storage_1.SchemaValidatingWorkflowStorage(baseStorage);
29
42
  const cacheTtlMs = Number(process.env['CACHE_TTL'] ?? 300_000); // 5 minutes default
@@ -1 +1 @@
1
- {"version":3,"file":"storage.js","sourceRoot":"","sources":["../../../src/infrastructure/storage/storage.ts"],"names":[],"mappings":";AAAA,uFAAuF;;;AAqBvF,oEAKC;AAxBD,mEAAgG;AA4B9F,oGA5BO,2CAAmB,OA4BP;AA3BrB,6FAAuF;AA4BrF,gHA5BO,oEAA+B,OA4BP;AA3BjC,yEAAoE;AA4BlE,uGA5BO,iDAAsB,OA4BP;AA3BxB,2EAA2E;AAE3E,gFAAgF;AAChF,4EAA4E;AAC5E,gFAAgF;AAEhF;;;;;;;;;GASG;AACH,SAAgB,4BAA4B;IAC1C,MAAM,WAAW,GAAG,IAAA,wDAAgC,GAAE,CAAC;IACvD,MAAM,iBAAiB,GAAG,IAAI,oEAA+B,CAAC,WAAW,CAAC,CAAC;IAC3E,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,oBAAoB;IACpF,OAAO,IAAI,iDAAsB,CAAC,iBAAiB,EAAE,UAAU,CAAC,CAAC;AACnE,CAAC"}
1
+ {"version":3,"file":"storage.js","sourceRoot":"","sources":["../../../src/infrastructure/storage/storage.ts"],"names":[],"mappings":";AAAA,uFAAuF;;;AAsBvF,oEAKC;AAKD,kEAKC;AAnCD,mEAAgG;AAuC9F,oGAvCO,2CAAmB,OAuCP;AAtCrB,6FAAuF;AAuCrF,gHAvCO,oEAA+B,OAuCP;AAtCjC,yEAAoE;AAuClE,uGAvCO,iDAAsB,OAuCP;AAtCxB,yFAAwH;AAuCtH,8GAvCO,gEAA6B,OAuCP;AAC7B,oHAxCsC,sEAAmC,OAwCtC;AAvCrC,2EAA2E;AAE3E,gFAAgF;AAChF,4EAA4E;AAC5E,gFAAgF;AAEhF;;;;;;;;;GASG;AACH,SAAgB,4BAA4B;IAC1C,MAAM,WAAW,GAAG,IAAA,sEAAmC,GAAE,CAAC;IAC1D,MAAM,iBAAiB,GAAG,IAAI,oEAA+B,CAAC,WAAW,CAAC,CAAC;IAC3E,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,oBAAoB;IACpF,OAAO,IAAI,iDAAsB,CAAC,iBAAiB,EAAE,UAAU,CAAC,CAAC;AACnE,CAAC;AAED;;GAEG;AACH,SAAgB,2BAA2B;IACzC,MAAM,WAAW,GAAG,IAAA,wDAAgC,GAAE,CAAC;IACvD,MAAM,iBAAiB,GAAG,IAAI,oEAA+B,CAAC,WAAW,CAAC,CAAC;IAC3E,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,oBAAoB;IACpF,OAAO,IAAI,iDAAsB,CAAC,iBAAiB,EAAE,UAAU,CAAC,CAAC;AACnE,CAAC"}
@@ -6,8 +6,11 @@ declare const configSchema: z.ZodObject<{
6
6
  HOST: z.ZodDefault<z.ZodString>;
7
7
  MCP_SERVER_HOST: z.ZodDefault<z.ZodString>;
8
8
  MCP_SERVER_PORT: z.ZodDefault<z.ZodPipeline<z.ZodEffects<z.ZodString, number, string>, z.ZodNumber>>;
9
- WORKFLOW_STORAGE_PATH: z.ZodDefault<z.ZodString>;
9
+ WORKFLOW_STORAGE_PATH: z.ZodOptional<z.ZodString>;
10
10
  WORKFLOW_STORAGE_TYPE: z.ZodDefault<z.ZodEnum<["file", "database"]>>;
11
+ WORKFLOW_INCLUDE_BUNDLED: z.ZodDefault<z.ZodEffects<z.ZodString, boolean, string>>;
12
+ WORKFLOW_INCLUDE_USER: z.ZodDefault<z.ZodEffects<z.ZodString, boolean, string>>;
13
+ WORKFLOW_INCLUDE_PROJECT: z.ZodDefault<z.ZodEffects<z.ZodString, boolean, string>>;
11
14
  JWT_SECRET: z.ZodDefault<z.ZodString>;
12
15
  MCP_API_KEY: z.ZodOptional<z.ZodString>;
13
16
  MAX_INPUT_SIZE: z.ZodDefault<z.ZodPipeline<z.ZodEffects<z.ZodString, number, string>, z.ZodNumber>>;
@@ -36,7 +39,6 @@ declare const configSchema: z.ZodObject<{
36
39
  MCP_DEBUG: z.ZodDefault<z.ZodEffects<z.ZodString, boolean, string>>;
37
40
  MCP_TIMEOUT: z.ZodDefault<z.ZodPipeline<z.ZodEffects<z.ZodString, number, string>, z.ZodNumber>>;
38
41
  }, "strip", z.ZodTypeAny, {
39
- WORKFLOW_STORAGE_PATH: string;
40
42
  CACHE_TTL: number;
41
43
  NODE_ENV: "test" | "development" | "production";
42
44
  PORT: number;
@@ -44,6 +46,9 @@ declare const configSchema: z.ZodObject<{
44
46
  MCP_SERVER_HOST: string;
45
47
  MCP_SERVER_PORT: number;
46
48
  WORKFLOW_STORAGE_TYPE: "file" | "database";
49
+ WORKFLOW_INCLUDE_BUNDLED: boolean;
50
+ WORKFLOW_INCLUDE_USER: boolean;
51
+ WORKFLOW_INCLUDE_PROJECT: boolean;
47
52
  JWT_SECRET: string;
48
53
  MAX_INPUT_SIZE: number;
49
54
  RATE_LIMIT_WINDOW: number;
@@ -67,6 +72,7 @@ declare const configSchema: z.ZodObject<{
67
72
  MCP_PROTOCOL_VERSION: string;
68
73
  MCP_DEBUG: boolean;
69
74
  MCP_TIMEOUT: number;
75
+ WORKFLOW_STORAGE_PATH?: string | undefined;
70
76
  MCP_API_KEY?: string | undefined;
71
77
  DATABASE_URL?: string | undefined;
72
78
  REDIS_URL?: string | undefined;
@@ -79,6 +85,9 @@ declare const configSchema: z.ZodObject<{
79
85
  MCP_SERVER_HOST?: string | undefined;
80
86
  MCP_SERVER_PORT?: string | undefined;
81
87
  WORKFLOW_STORAGE_TYPE?: "file" | "database" | undefined;
88
+ WORKFLOW_INCLUDE_BUNDLED?: string | undefined;
89
+ WORKFLOW_INCLUDE_USER?: string | undefined;
90
+ WORKFLOW_INCLUDE_PROJECT?: string | undefined;
82
91
  JWT_SECRET?: string | undefined;
83
92
  MCP_API_KEY?: string | undefined;
84
93
  MAX_INPUT_SIZE?: string | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAMlD,QAAA,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA0DhB,CAAC;AAMH,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAgB;IACvC,OAAO,CAAC,MAAM,CAA+B;IAE7C,OAAO;WAIO,WAAW,IAAI,aAAa;IAO1C;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAqBzB;;OAEG;IACI,SAAS,IAAI,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC;IAIhD;;OAEG;IACI,eAAe,IAAI,YAAY;IA2BtC;;OAEG;IACI,GAAG,CAAC,CAAC,SAAS,MAAM,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC,CAAC,CAAC;IAIjG;;OAEG;IACI,aAAa,IAAI,OAAO;IAI/B;;OAEG;IACI,YAAY,IAAI,OAAO;IAI9B;;OAEG;IACI,MAAM,IAAI,OAAO;IAIxB;;OAEG;IACI,cAAc,IAAI,OAAO;IAIhC;;OAEG;IACI,gBAAgB,IAAI,OAAO;IAIlC;;OAEG;IACI,cAAc,IAAI,MAAM,EAAE;IAIjC;;OAEG;IACI,mBAAmB,IAAI,MAAM;IAqBpC;;OAEG;IACI,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG;QAAE,KAAK,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAE;IAmCnF;;OAEG;IACI,gBAAgB,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAgC9C;;OAEG;IACI,MAAM,IAAI,IAAI;CAGtB;AAMD,eAAO,MAAM,MAAM,eAA8B,CAAC;AAElD;;GAEG;AACH,wBAAgB,SAAS,CAAC,CAAC,SAAS,MAAM,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC,CAAC,CAAC,CAE/G;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAazD;AAED;;GAEG;AACH,wBAAgB,qBAAqB,IAAI;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CA0B5E;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,IAAI,CAIzC"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAMlD,QAAA,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA6DhB,CAAC;AAMH,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAgB;IACvC,OAAO,CAAC,MAAM,CAA+B;IAE7C,OAAO;WAIO,WAAW,IAAI,aAAa;IAO1C;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAqBzB;;OAEG;IACI,SAAS,IAAI,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC;IAIhD;;OAEG;IACI,eAAe,IAAI,YAAY;IA2BtC;;OAEG;IACI,GAAG,CAAC,CAAC,SAAS,MAAM,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC,CAAC,CAAC;IAIjG;;OAEG;IACI,aAAa,IAAI,OAAO;IAI/B;;OAEG;IACI,YAAY,IAAI,OAAO;IAI9B;;OAEG;IACI,MAAM,IAAI,OAAO;IAIxB;;OAEG;IACI,cAAc,IAAI,OAAO;IAIhC;;OAEG;IACI,gBAAgB,IAAI,OAAO;IAIlC;;OAEG;IACI,cAAc,IAAI,MAAM,EAAE;IAIjC;;OAEG;IACI,mBAAmB,IAAI,MAAM;IAqBpC;;OAEG;IACI,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG;QAAE,KAAK,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAE;IAmCnF;;OAEG;IACI,gBAAgB,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAgC9C;;OAEG;IACI,MAAM,IAAI,IAAI;CAGtB;AAMD,eAAO,MAAM,MAAM,eAA8B,CAAC;AAElD;;GAEG;AACH,wBAAgB,SAAS,CAAC,CAAC,SAAS,MAAM,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC,CAAC,CAAC,CAE/G;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAazD;AAED;;GAEG;AACH,wBAAgB,qBAAqB,IAAI;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CA0B5E;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,IAAI,CAIzC"}
@@ -20,8 +20,11 @@ const configSchema = zod_1.z.object({
20
20
  MCP_SERVER_HOST: zod_1.z.string().default('localhost'),
21
21
  MCP_SERVER_PORT: zod_1.z.string().transform(Number).pipe(zod_1.z.number().min(1).max(65535)).default('3000'),
22
22
  // Workflow storage
23
- WORKFLOW_STORAGE_PATH: zod_1.z.string().default('./workflows'),
23
+ WORKFLOW_STORAGE_PATH: zod_1.z.string().optional(),
24
24
  WORKFLOW_STORAGE_TYPE: zod_1.z.enum(['file', 'database']).default('file'),
25
+ WORKFLOW_INCLUDE_BUNDLED: zod_1.z.string().transform(val => val !== 'false').default('true'),
26
+ WORKFLOW_INCLUDE_USER: zod_1.z.string().transform(val => val !== 'false').default('true'),
27
+ WORKFLOW_INCLUDE_PROJECT: zod_1.z.string().transform(val => val !== 'false').default('true'),
25
28
  // Security settings
26
29
  JWT_SECRET: zod_1.z.string().min(32, 'JWT secret must be at least 32 characters').default('your-super-secret-jwt-key-change-this-in-production'),
27
30
  MCP_API_KEY: zod_1.z.string().optional(),
@@ -113,7 +116,7 @@ class Configuration {
113
116
  logLevel: this.config.LOG_LEVEL,
114
117
  workflowStorage: {
115
118
  type: this.config.WORKFLOW_STORAGE_TYPE,
116
- path: this.config.WORKFLOW_STORAGE_PATH,
119
+ path: this.config.WORKFLOW_STORAGE_PATH || './workflows',
117
120
  },
118
121
  security: {
119
122
  jwtSecret: this.config.JWT_SECRET,
@@ -236,7 +239,7 @@ class Configuration {
236
239
  logLevel: this.config.LOG_LEVEL,
237
240
  workflowStorage: {
238
241
  type: this.config.WORKFLOW_STORAGE_TYPE,
239
- path: this.config.WORKFLOW_STORAGE_PATH,
242
+ path: this.config.WORKFLOW_STORAGE_PATH || './workflows',
240
243
  },
241
244
  security: {
242
245
  hasApiKey: !!this.config.MCP_API_KEY,
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":";AAAA,kCAAkC;AAClC,8DAA8D;;;AAwT9D,8BAEC;AAKD,4CAaC;AAKD,sDA0BC;AAKD,gDAIC;AAlXD,6BAAwB;AAGxB,gFAAgF;AAChF,wBAAwB;AACxB,gFAAgF;AAEhF,MAAM,YAAY,GAAG,OAAC,CAAC,MAAM,CAAC;IAC5B,qBAAqB;IACrB,QAAQ,EAAE,OAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,YAAY,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC;IAC9E,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IACrF,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC;IAEnC,2BAA2B;IAC3B,eAAe,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC;IAChD,eAAe,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IAEhG,mBAAmB;IACnB,qBAAqB,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC;IACxD,qBAAqB,EAAE,OAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IAEnE,oBAAoB;IACpB,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,2CAA2C,CAAC,CAAC,OAAO,CAAC,qDAAqD,CAAC;IAC1I,WAAW,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAClC,cAAc,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;IAC3F,iBAAiB,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;IAC5F,cAAc,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;IAEvF,uBAAuB;IACvB,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;IACrF,uBAAuB,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IACjG,YAAY,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC;IAEzC,uBAAuB;IACvB,SAAS,EAAE,OAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IACrE,eAAe,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,MAAM,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IAC5E,qBAAqB,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;IAEhG,sBAAsB;IACtB,YAAY,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACnC,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAEhC,uBAAuB;IACvB,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,MAAM,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;IACnE,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,MAAM,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IAEvE,mBAAmB;IACnB,iBAAiB,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,iBAAiB,CAAC;IACxD,0BAA0B,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,4BAA4B,CAAC;IAE5E,sBAAsB;IACtB,mBAAmB,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,MAAM,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IAChF,YAAY,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,6CAA6C,CAAC;IAC/E,WAAW,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,MAAM,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;IAEzE,6BAA6B;IAC7B,iBAAiB,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;IAC9F,kBAAkB,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;IAC1F,2BAA2B,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,MAAM,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IACxF,0BAA0B,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,MAAM,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IAEvF,wBAAwB;IACxB,oBAAoB,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC;IACtD,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,MAAM,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;IACvE,WAAW,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;CACvF,CAAC,CAAC;AAEH,gFAAgF;AAChF,sBAAsB;AACtB,gFAAgF;AAEhF,MAAa,aAAa;IAChB,MAAM,CAAC,QAAQ,CAAgB;IAC/B,MAAM,CAA+B;IAE7C;QACE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;IACzC,CAAC;IAEM,MAAM,CAAC,WAAW;QACvB,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;YAC5B,aAAa,CAAC,QAAQ,GAAG,IAAI,aAAa,EAAE,CAAC;QAC/C,CAAC;QACD,OAAO,aAAa,CAAC,QAAQ,CAAC;IAChC,CAAC;IAED;;OAEG;IACK,iBAAiB;QACvB,IAAI,CAAC;YACH,6BAA6B;YAC7B,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC;YAE5B,mCAAmC;YACnC,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAE3C,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,OAAC,CAAC,QAAQ,EAAE,CAAC;gBAChC,OAAO,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;gBAClD,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,GAAe,EAAE,EAAE;oBACvC,OAAO,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;gBAC3D,CAAC,CAAC,CAAC;gBACH,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED;;OAEG;IACI,SAAS;QACd,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED;;OAEG;IACI,eAAe;QACpB,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;YACtB,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;YACtB,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ;YACjC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;YAC/B,eAAe,EAAE;gBACf,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,qBAAqB;gBACvC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,qBAAqB;aACxC;YACD,QAAQ,EAAE;gBACR,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU;gBACjC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;gBACnE,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,cAAc;gBACxC,SAAS,EAAE;oBACT,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,iBAAiB;oBACvC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,cAAc;iBAChC;aACF;YACD,WAAW,EAAE;gBACX,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;gBAC/B,qBAAqB,EAAE,IAAI,CAAC,MAAM,CAAC,uBAAuB;gBAC1D,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,YAAY;aACtC;SACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACI,GAAG,CAA+C,GAAM;QAC7D,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IAED;;OAEG;IACI,aAAa;QAClB,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,KAAK,aAAa,CAAC;IAChD,CAAC;IAED;;OAEG;IACI,YAAY;QACjB,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,KAAK,YAAY,CAAC;IAC/C,CAAC;IAED;;OAEG;IACI,MAAM;QACX,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,KAAK,MAAM,CAAC;IACzC,CAAC;IAED;;OAEG;IACI,cAAc;QACnB,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;IAC3B,CAAC;IAED;;OAEG;IACI,gBAAgB;QACrB,OAAO,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC;IACrC,CAAC;IAED;;OAEG;IACI,cAAc;QACnB,OAAO,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;IAC1E,CAAC;IAED;;OAEG;IACI,mBAAmB;QACxB,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC;QAC7C,MAAM,KAAK,GAA2B;YACpC,GAAG,EAAE,CAAC;YACN,IAAI,EAAE,IAAI;YACV,IAAI,EAAE,IAAI,GAAG,IAAI;YACjB,IAAI,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI;SACzB,CAAC;QAEF,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;QACnD,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CAAC,gCAAgC,WAAW,EAAE,CAAC,CAAC;QACjE,CAAC;QAED,MAAM,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,KAAK,CAAC;QAC9B,MAAM,SAAS,GAAG,IAAI,EAAE,WAAW,EAAE,IAAI,IAAI,CAAC;QAC9C,MAAM,UAAU,GAAG,KAAK,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC;QAEnD,OAAO,QAAQ,CAAC,KAAK,IAAI,GAAG,CAAC,GAAG,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC;IACpD,CAAC;IAED;;OAEG;IACI,qBAAqB,CAAC,OAAe;QAC1C,MAAM,MAAM,GAAa,EAAE,CAAC;QAE5B,QAAQ,OAAO,EAAE,CAAC;YAChB,KAAK,UAAU;gBACb,IAAI,IAAI,CAAC,MAAM,CAAC,qBAAqB,KAAK,UAAU,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;oBAClF,MAAM,CAAC,IAAI,CAAC,sDAAsD,CAAC,CAAC;gBACtE,CAAC;gBACD,MAAM;YAER,KAAK,OAAO;gBACV,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;oBAC3B,MAAM,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAC;gBAC5D,CAAC;gBACD,MAAM;YAER,KAAK,UAAU;gBACb,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,KAAK,qDAAqD,EAAE,CAAC;oBACrF,MAAM,CAAC,IAAI,CAAC,6DAA6D,CAAC,CAAC;gBAC7E,CAAC;gBACD,MAAM;YAER,KAAK,qBAAqB;gBACxB,IAAI,IAAI,CAAC,MAAM,CAAC,2BAA2B,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,0BAA0B,EAAE,CAAC;oBACvF,MAAM,CAAC,IAAI,CAAC,6DAA6D,CAAC,CAAC;gBAC7E,CAAC;gBACD,MAAM;QACV,CAAC;QAED,OAAO;YACL,KAAK,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC;YAC1B,MAAM;SACP,CAAC;IACJ,CAAC;IAED;;OAEG;IACI,gBAAgB;QACrB,OAAO;YACL,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ;YACjC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;YACtB,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;YACtB,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;YAC/B,eAAe,EAAE;gBACf,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,qBAAqB;gBACvC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,qBAAqB;aACxC;YACD,QAAQ,EAAE;gBACR,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW;gBACpC,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,cAAc;gBACxC,SAAS,EAAE;oBACT,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,iBAAiB;oBACvC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,cAAc;iBAChC;aACF;YACD,WAAW,EAAE;gBACX,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;gBAC/B,qBAAqB,EAAE,IAAI,CAAC,MAAM,CAAC,uBAAuB;gBAC1D,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,YAAY;aACtC;YACD,QAAQ,EAAE;gBACR,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK;gBACxB,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,eAAe;gBACpC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,mBAAmB;gBAC5C,kBAAkB,EAAE,IAAI,CAAC,MAAM,CAAC,2BAA2B;aAC5D;SACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACI,MAAM;QACX,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;IACzC,CAAC;CACF;AApOD,sCAoOC;AAED,gFAAgF;AAChF,0BAA0B;AAC1B,gFAAgF;AAEnE,QAAA,MAAM,GAAG,aAAa,CAAC,WAAW,EAAE,CAAC;AAElD;;GAEG;AACH,SAAgB,SAAS,CAA+C,GAAM;IAC5E,OAAO,cAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AACzB,CAAC;AAED;;GAEG;AACH,SAAgB,gBAAgB,CAAC,OAAe;IAC9C,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,OAAO;YACV,OAAO,cAAM,CAAC,cAAc,EAAE,CAAC;QACjC,KAAK,SAAS;YACZ,OAAO,cAAM,CAAC,gBAAgB,EAAE,CAAC;QACnC,KAAK,aAAa;YAChB,OAAO,cAAM,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;QAC3C,KAAK,qBAAqB;YACxB,OAAO,cAAM,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;QACnD;YACE,OAAO,KAAK,CAAC;IACjB,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAgB,qBAAqB;IACnC,MAAM,MAAM,GAAa,EAAE,CAAC;IAE5B,yBAAyB;IACzB,MAAM,QAAQ,GAAG,CAAC,UAAU,EAAE,OAAO,EAAE,UAAU,EAAE,qBAAqB,CAAC,CAAC;IAC1E,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,MAAM,UAAU,GAAG,cAAM,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;QACzD,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;YACtB,MAAM,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;IAED,6CAA6C;IAC7C,IAAI,cAAM,CAAC,YAAY,EAAE,EAAE,CAAC;QAC1B,IAAI,cAAM,CAAC,GAAG,CAAC,YAAY,CAAC,KAAK,qDAAqD,EAAE,CAAC;YACvF,MAAM,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC;QAC1D,CAAC;QACD,IAAI,cAAM,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;YACxB,MAAM,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;IAED,OAAO;QACL,KAAK,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC;QAC1B,MAAM;KACP,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAgB,kBAAkB;IAChC,MAAM,OAAO,GAAG,cAAM,CAAC,gBAAgB,EAAE,CAAC;IAC1C,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;IACtC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AAChD,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@exaudeus/workrail",
3
- "version": "0.0.3",
3
+ "version": "0.0.4",
4
4
  "description": "MCP server for structured workflow orchestration and step-by-step task guidance",
5
5
  "license": "MIT",
6
6
  "bin": {