file-organizer-mcp 3.2.0 → 3.2.2

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.
Files changed (75) hide show
  1. package/README.md +21 -1
  2. package/bin/file-organizer-mcp.mjs +2 -2
  3. package/bin/file-organizer-setup.mjs +3 -3
  4. package/dist/src/config.d.ts +3 -3
  5. package/dist/src/config.d.ts.map +1 -1
  6. package/dist/src/config.js +51 -43
  7. package/dist/src/config.js.map +1 -1
  8. package/dist/src/constants.d.ts +1 -1
  9. package/dist/src/constants.d.ts.map +1 -1
  10. package/dist/src/constants.js +24 -24
  11. package/dist/src/constants.js.map +1 -1
  12. package/dist/src/debate/__init__.d.ts +7 -0
  13. package/dist/src/debate/__init__.d.ts.map +1 -0
  14. package/dist/src/debate/__init__.js +7 -0
  15. package/dist/src/debate/__init__.js.map +1 -0
  16. package/dist/src/debate/dashboard.d.ts +251 -0
  17. package/dist/src/debate/dashboard.d.ts.map +1 -0
  18. package/dist/src/debate/dashboard.js +886 -0
  19. package/dist/src/debate/dashboard.js.map +1 -0
  20. package/dist/src/debate/documentation-generator.d.ts +322 -0
  21. package/dist/src/debate/documentation-generator.d.ts.map +1 -0
  22. package/dist/src/debate/documentation-generator.js +706 -0
  23. package/dist/src/debate/documentation-generator.js.map +1 -0
  24. package/dist/src/debate/enhanced-voting.d.ts +209 -0
  25. package/dist/src/debate/enhanced-voting.d.ts.map +1 -0
  26. package/dist/src/debate/enhanced-voting.js +289 -0
  27. package/dist/src/debate/enhanced-voting.js.map +1 -0
  28. package/dist/src/debate/example-usage.d.ts +5 -0
  29. package/dist/src/debate/example-usage.d.ts.map +1 -0
  30. package/dist/src/debate/example-usage.js +273 -0
  31. package/dist/src/debate/example-usage.js.map +1 -0
  32. package/dist/src/debate/index.d.ts +7 -0
  33. package/dist/src/debate/index.d.ts.map +1 -0
  34. package/dist/src/debate/index.js +6 -0
  35. package/dist/src/debate/index.js.map +1 -0
  36. package/dist/src/debate/issue-integration.d.ts +153 -0
  37. package/dist/src/debate/issue-integration.d.ts.map +1 -0
  38. package/dist/src/debate/issue-integration.js +357 -0
  39. package/dist/src/debate/issue-integration.js.map +1 -0
  40. package/dist/src/debate/pattern-learning.d.ts +288 -0
  41. package/dist/src/debate/pattern-learning.d.ts.map +1 -0
  42. package/dist/src/debate/pattern-learning.js +1099 -0
  43. package/dist/src/debate/pattern-learning.js.map +1 -0
  44. package/dist/src/debate/post-mortem.d.ts +501 -0
  45. package/dist/src/debate/post-mortem.d.ts.map +1 -0
  46. package/dist/src/debate/post-mortem.js +1475 -0
  47. package/dist/src/debate/post-mortem.js.map +1 -0
  48. package/dist/src/debate/templates.d.ts +215 -0
  49. package/dist/src/debate/templates.d.ts.map +1 -0
  50. package/dist/src/debate/templates.js +1099 -0
  51. package/dist/src/debate/templates.js.map +1 -0
  52. package/dist/src/debate/tie-breaking.d.ts +386 -0
  53. package/dist/src/debate/tie-breaking.d.ts.map +1 -0
  54. package/dist/src/debate/tie-breaking.js +651 -0
  55. package/dist/src/debate/tie-breaking.js.map +1 -0
  56. package/dist/src/debate/timeboxing-conflicts.d.ts +176 -0
  57. package/dist/src/debate/timeboxing-conflicts.d.ts.map +1 -0
  58. package/dist/src/debate/timeboxing-conflicts.js +537 -0
  59. package/dist/src/debate/timeboxing-conflicts.js.map +1 -0
  60. package/dist/src/errors.d.ts +1 -1
  61. package/dist/src/errors.js +2 -2
  62. package/dist/src/index.d.ts +2 -2
  63. package/dist/src/index.js +60 -54
  64. package/dist/src/index.js.map +1 -1
  65. package/dist/src/security/archive-validator.d.ts +47 -0
  66. package/dist/src/security/archive-validator.d.ts.map +1 -0
  67. package/dist/src/security/archive-validator.js +188 -0
  68. package/dist/src/security/archive-validator.js.map +1 -0
  69. package/dist/src/security/security-constants.d.ts +103 -0
  70. package/dist/src/security/security-constants.d.ts.map +1 -0
  71. package/dist/src/security/security-constants.js +109 -0
  72. package/dist/src/security/security-constants.js.map +1 -0
  73. package/dist/src/server.d.ts +1 -1
  74. package/dist/src/server.js +1 -1
  75. package/package.json +5 -4
package/README.md CHANGED
@@ -11,7 +11,7 @@
11
11
  [![Security](https://img.shields.io/badge/security-hardened-green.svg)](https://github.com/kridaydave/File-Organizer-MCP)
12
12
  [![Node](https://img.shields.io/badge/node-%3E%3D18.0.0-brightgreen.svg)](https://nodejs.org)
13
13
  [![License](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE)
14
- [![Tests](https://img.shields.io/badge/tests-268%20passing-success.svg)](tests/)
14
+ [![Tests](https://img.shields.io/badge/tests-631%20passing-success.svg)](tests/)
15
15
 
16
16
  > **A powerful, security-hardened Model Context Protocol (MCP) server for intelligent file organization with Claude**
17
17
 
@@ -77,6 +77,26 @@ Try these commands in your AI client:
77
77
  - `"Find duplicate files in my Documents"`
78
78
  - `"Show me my largest files"`
79
79
 
80
+ ### Installation Methods
81
+
82
+ You have two options to run File Organizer MCP:
83
+
84
+ | Method | Command | Best For |
85
+ |--------|---------|----------|
86
+ | **npx (no install)** | `npx file-organizer-mcp --setup` | Trying it out, occasional use |
87
+ | **Global install** | `npm install -g file-organizer-mcp` | Regular use, faster startup |
88
+
89
+ **Using npx:**
90
+ - No installation needed - downloads on first run
91
+ - Always gets the latest version
92
+ - Slightly slower on first run
93
+
94
+ **Using npm install -g:**
95
+ - Install once: `npm install -g file-organizer-mcp`
96
+ - Then run anytime: `file-organizer-mcp --setup` or `file-organizer-setup`
97
+ - Faster startup, works offline
98
+ - Update with: `npm update -g file-organizer-mcp`
99
+
80
100
  ### Supported AI Clients
81
101
 
82
102
  The setup wizard auto-detects and configures:
@@ -1,4 +1,4 @@
1
- #!/usr/bin/env node
1
+ #!/usr/bin/env node
2
2
 
3
3
  /**
4
4
  * File Organizer MCP - Entry Point Wrapper
@@ -22,7 +22,7 @@ const __dirname = path.dirname(__filename);
22
22
  // Find the package root
23
23
  const packageRoot = path.resolve(__dirname, '..');
24
24
  const distPath = path.join(packageRoot, 'dist');
25
- const distIndexPath = path.join(distPath, 'index.js');
25
+ const distIndexPath = path.join(distPath, 'src', 'index.js');
26
26
  const srcIndexPath = path.join(packageRoot, 'src', 'index.ts');
27
27
 
28
28
  // ANSI colors for terminal output
@@ -1,4 +1,4 @@
1
- #!/usr/bin/env node
1
+ #!/usr/bin/env node
2
2
 
3
3
  /**
4
4
  * File Organizer MCP - Setup Wizard Wrapper
@@ -15,7 +15,7 @@ const __filename = fileURLToPath(import.meta.url);
15
15
  const __dirname = path.dirname(__filename);
16
16
 
17
17
  const packageRoot = path.resolve(__dirname, '..');
18
- const distTuiPath = path.join(packageRoot, 'dist', 'tui', 'index.js');
18
+ const distTuiPath = path.join(packageRoot, 'dist', 'src', 'tui', 'index.js');
19
19
  const srcTuiPath = path.join(packageRoot, 'src', 'tui', 'index.ts');
20
20
 
21
21
  const RED = '\x1b[31m';
@@ -68,7 +68,7 @@ if (!fs.existsSync(distTuiPath)) {
68
68
 
69
69
  // Run the setup wizard
70
70
  // Use relative path for more reliable module resolution
71
- const setupRelativePath = '../dist/tui/index.js';
71
+ const setupRelativePath = '../dist/src/tui/index.js';
72
72
 
73
73
  import(setupRelativePath).catch(err => {
74
74
  console.error(`${RED}Failed to start setup:${RESET}`, err.message);
@@ -24,11 +24,11 @@ export interface UserConfig {
24
24
  /** Custom directories allowed for file operations */
25
25
  customAllowedDirectories?: string[];
26
26
  /** Conflict resolution strategy */
27
- conflictStrategy?: 'rename' | 'skip' | 'overwrite';
27
+ conflictStrategy?: "rename" | "skip" | "overwrite";
28
28
  /** Auto-organize schedule settings */
29
29
  autoOrganize?: {
30
30
  enabled: boolean;
31
- schedule?: 'hourly' | 'daily' | 'weekly';
31
+ schedule?: "hourly" | "daily" | "weekly";
32
32
  };
33
33
  /** Security settings */
34
34
  settings?: {
@@ -63,7 +63,7 @@ export interface WatchConfig {
63
63
  /** Maximum files to process per run (0 or undefined = unlimited) */
64
64
  max_files_per_run?: number;
65
65
  /** Catchup behavior when server starts */
66
- catchup_mode?: 'smart' | 'always' | 'never';
66
+ catchup_mode?: "smart" | "always" | "never";
67
67
  };
68
68
  }
69
69
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,eAAO,MAAM,MAAM;;;;;;;;;;;;;;CAkBlB,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,qDAAqD;IACrD,wBAAwB,CAAC,EAAE,MAAM,EAAE,CAAC;IACpC,mCAAmC;IACnC,gBAAgB,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC;IACnD,sCAAsC;IACtC,YAAY,CAAC,EAAE;QACb,OAAO,EAAE,OAAO,CAAC;QACjB,QAAQ,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,QAAQ,CAAC;KAC1C,CAAC;IACF,wBAAwB;IACxB,QAAQ,CAAC,EAAE;QACT,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,oBAAoB,CAAC,EAAE,OAAO,CAAC;QAC/B,sBAAsB,CAAC,EAAE,OAAO,CAAC;KAClC,CAAC;IACF,yBAAyB;IACzB,KAAK,CAAC,EAAE,KAAK,CAAC;QACZ,OAAO,EAAE,MAAM,CAAC;QAChB,WAAW,EAAE,MAAM,CAAC;QACpB,SAAS,CAAC,EAAE,OAAO,CAAC;KACrB,CAAC,CAAC;IACH,sCAAsC;IACtC,SAAS,CAAC,EAAE,WAAW,EAAE,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,8BAA8B;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,uEAAuE;IACvE,QAAQ,EAAE,MAAM,CAAC;IACjB,wCAAwC;IACxC,KAAK,EAAE;QACL,+BAA+B;QAC/B,aAAa,EAAE,OAAO,CAAC;QACvB,8FAA8F;QAC9F,oBAAoB,CAAC,EAAE,MAAM,CAAC;QAC9B,oEAAoE;QACpE,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,0CAA0C;QAC1C,YAAY,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;KAC7C,CAAC;CACH;AAiGD;;GAEG;AACH,wBAAgB,cAAc,IAAI,UAAU,CAqD3C;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,IAAI,CAE5D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,IAAI,CAqBnE;AAsDD;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAe1C;AA4DD;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,IAAI,CA8B3C;AAMD,eAAO,MAAM,aAAa,QAAoB,CAAC;AAC/C,eAAO,MAAM,SAAS,QAAuC,CAAC;AAC9D,eAAO,MAAM,SAAS,QAA+B,CAAC;AAEtD,eAAO,MAAM,gBAAgB,2DAA4D,CAAC;AAE1F,eAAO,MAAM,aAAa;;CAEhB,CAAC"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,eAAO,MAAM,MAAM;;;;;;;;;;;;;;CAkBlB,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,qDAAqD;IACrD,wBAAwB,CAAC,EAAE,MAAM,EAAE,CAAC;IACpC,mCAAmC;IACnC,gBAAgB,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC;IACnD,sCAAsC;IACtC,YAAY,CAAC,EAAE;QACb,OAAO,EAAE,OAAO,CAAC;QACjB,QAAQ,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,QAAQ,CAAC;KAC1C,CAAC;IACF,wBAAwB;IACxB,QAAQ,CAAC,EAAE;QACT,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,oBAAoB,CAAC,EAAE,OAAO,CAAC;QAC/B,sBAAsB,CAAC,EAAE,OAAO,CAAC;KAClC,CAAC;IACF,yBAAyB;IACzB,KAAK,CAAC,EAAE,KAAK,CAAC;QACZ,OAAO,EAAE,MAAM,CAAC;QAChB,WAAW,EAAE,MAAM,CAAC;QACpB,SAAS,CAAC,EAAE,OAAO,CAAC;KACrB,CAAC,CAAC;IACH,sCAAsC;IACtC,SAAS,CAAC,EAAE,WAAW,EAAE,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,8BAA8B;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,uEAAuE;IACvE,QAAQ,EAAE,MAAM,CAAC;IACjB,wCAAwC;IACxC,KAAK,EAAE;QACL,+BAA+B;QAC/B,aAAa,EAAE,OAAO,CAAC;QACvB,8FAA8F;QAC9F,oBAAoB,CAAC,EAAE,MAAM,CAAC;QAC9B,oEAAoE;QACpE,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,0CAA0C;QAC1C,YAAY,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;KAC7C,CAAC;CACH;AA0GD;;GAEG;AACH,wBAAgB,cAAc,IAAI,UAAU,CA4D3C;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,IAAI,CAE5D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,IAAI,CAqBnE;AA4DD;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAsB1C;AA4DD;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,IAAI,CA8B3C;AAMD,eAAO,MAAM,aAAa,QAAoB,CAAC;AAC/C,eAAO,MAAM,SAAS,QAAuC,CAAC;AAC9D,eAAO,MAAM,SAAS,QAA+B,CAAC;AAEtD,eAAO,MAAM,gBAAgB,2DAKnB,CAAC;AAEX,eAAO,MAAM,aAAa;;CAEhB,CAAC"}
@@ -2,11 +2,11 @@
2
2
  * File Organizer MCP Server Configuration
3
3
  * Secure defaults with platform-aware directory access
4
4
  */
5
- import os from 'os';
6
- import path from 'path';
7
- import fs from 'fs';
5
+ import os from "os";
6
+ import path from "path";
7
+ import fs from "fs";
8
8
  export const CONFIG = {
9
- VERSION: '3.2.0',
9
+ VERSION: "3.2.2",
10
10
  // Security Settings
11
11
  security: {
12
12
  enablePathValidation: true,
@@ -29,42 +29,42 @@ function getDefaultAllowedDirs() {
29
29
  const platform = os.platform();
30
30
  const home = os.homedir();
31
31
  let commonDirs = [
32
- path.join(home, 'Desktop'),
33
- path.join(home, 'Documents'),
34
- path.join(home, 'Downloads'),
35
- path.join(home, 'Pictures'),
36
- path.join(home, 'Videos'),
37
- path.join(home, 'Music'),
32
+ path.join(home, "Desktop"),
33
+ path.join(home, "Documents"),
34
+ path.join(home, "Downloads"),
35
+ path.join(home, "Pictures"),
36
+ path.join(home, "Videos"),
37
+ path.join(home, "Music"),
38
38
  ];
39
39
  // Add common project directories if they exist
40
40
  const projectDirs = [
41
- path.join(home, 'Projects'),
42
- path.join(home, 'Workspace'),
43
- path.join(home, 'workspace'),
44
- path.join(home, 'Development'),
45
- path.join(home, 'Code'),
41
+ path.join(home, "Projects"),
42
+ path.join(home, "Workspace"),
43
+ path.join(home, "workspace"),
44
+ path.join(home, "Development"),
45
+ path.join(home, "Code"),
46
46
  ];
47
47
  commonDirs = [...commonDirs, ...projectDirs];
48
48
  // Platform-specific additions
49
- if (platform === 'win32') {
49
+ if (platform === "win32") {
50
50
  // Windows: Add OneDrive if it exists
51
51
  const oneDrive = process.env.OneDrive || process.env.OneDriveConsumer;
52
52
  if (oneDrive)
53
53
  commonDirs.push(oneDrive);
54
54
  }
55
- else if (platform === 'darwin') {
55
+ else if (platform === "darwin") {
56
56
  // macOS: Add iCloud Drive if it exists
57
- const iCloudDrive = path.join(home, 'Library', 'Mobile Documents', 'com~apple~CloudDocs');
57
+ const iCloudDrive = path.join(home, "Library", "Mobile Documents", "com~apple~CloudDocs");
58
58
  commonDirs.push(iCloudDrive);
59
59
  // Add common macOS locations
60
- commonDirs.push(path.join(home, 'Movies'));
60
+ commonDirs.push(path.join(home, "Movies"));
61
61
  }
62
- else if (platform === 'linux') {
62
+ else if (platform === "linux") {
63
63
  // Linux: Add common development directories
64
- commonDirs.push(path.join(home, 'dev'));
64
+ commonDirs.push(path.join(home, "dev"));
65
65
  }
66
66
  // Add project directory when running tests
67
- const isTestMode = process.env.NODE_ENV === 'test' || process.env.JEST_WORKER_ID !== undefined;
67
+ const isTestMode = process.env.NODE_ENV === "test" || process.env.JEST_WORKER_ID !== undefined;
68
68
  if (isTestMode) {
69
69
  const projectDir = process.cwd();
70
70
  if (!commonDirs.includes(projectDir)) {
@@ -91,10 +91,10 @@ function deepMerge(target, source) {
91
91
  const sourceValue = source[key];
92
92
  if (sourceValue !== undefined) {
93
93
  const targetValue = result[key];
94
- if (typeof sourceValue === 'object' &&
94
+ if (typeof sourceValue === "object" &&
95
95
  sourceValue !== null &&
96
96
  !Array.isArray(sourceValue) &&
97
- typeof targetValue === 'object' &&
97
+ typeof targetValue === "object" &&
98
98
  targetValue !== null &&
99
99
  !Array.isArray(targetValue)) {
100
100
  result[key] = deepMerge(targetValue, sourceValue);
@@ -115,7 +115,7 @@ export function loadUserConfig() {
115
115
  return {};
116
116
  }
117
117
  try {
118
- const configData = fs.readFileSync(configPath, 'utf-8');
118
+ const configData = fs.readFileSync(configPath, "utf-8");
119
119
  // Handle empty file
120
120
  if (!configData.trim()) {
121
121
  console.warn(`Warning: Config file is empty: ${configPath}`);
@@ -123,15 +123,18 @@ export function loadUserConfig() {
123
123
  }
124
124
  const parsed = JSON.parse(configData);
125
125
  // Validate that parsed result is an object
126
- if (typeof parsed !== 'object' || parsed === null || Array.isArray(parsed)) {
127
- throw new Error('Config file does not contain a valid JSON object');
126
+ if (typeof parsed !== "object" ||
127
+ parsed === null ||
128
+ Array.isArray(parsed)) {
129
+ throw new Error("Config file does not contain a valid JSON object");
128
130
  }
129
131
  return parsed;
130
132
  }
131
133
  catch (error) {
132
134
  const errorMessage = error.message;
133
135
  // Handle specific JSON parse errors
134
- if (errorMessage.includes('JSON') || errorMessage.includes('Unexpected token')) {
136
+ if (errorMessage.includes("JSON") ||
137
+ errorMessage.includes("Unexpected token")) {
135
138
  console.error(`
136
139
  ⚠️ CONFIG FILE CORRUPTED ⚠️
137
140
 
@@ -150,7 +153,7 @@ Your file organization settings will be reset, but your actual files are safe.
150
153
  `.trim());
151
154
  }
152
155
  else {
153
- console.error('Error loading user config:', errorMessage);
156
+ console.error("Error loading user config:", errorMessage);
154
157
  }
155
158
  return {};
156
159
  }
@@ -181,7 +184,7 @@ export function updateUserConfig(updates) {
181
184
  fs.writeFileSync(configPath, JSON.stringify(mergedConfig, null, 2));
182
185
  }
183
186
  catch (error) {
184
- console.error('Error saving config:', error.message);
187
+ console.error("Error saving config:", error.message);
185
188
  }
186
189
  }
187
190
  function loadCustomAllowedDirs() {
@@ -211,7 +214,7 @@ function loadCustomAllowedDirs() {
211
214
  return false;
212
215
  }
213
216
  // Block relative path traversal patterns
214
- if (dir.includes('..') || dir.includes('~')) {
217
+ if (dir.includes("..") || dir.includes("~")) {
215
218
  console.error(`Warning: Custom directory blocked (path traversal): ${dir}`);
216
219
  return false;
217
220
  }
@@ -225,7 +228,7 @@ function loadCustomAllowedDirs() {
225
228
  }
226
229
  }
227
230
  catch (error) {
228
- console.error('Error loading custom config:', error.message);
231
+ console.error("Error loading custom config:", error.message);
229
232
  }
230
233
  return [];
231
234
  }
@@ -235,18 +238,18 @@ function loadCustomAllowedDirs() {
235
238
  export function getUserConfigPath() {
236
239
  const platform = os.platform();
237
240
  const home = os.homedir();
238
- if (platform === 'win32') {
241
+ if (platform === "win32") {
239
242
  // Windows: %APPDATA%\file-organizer-mcp\config.json
240
- const appData = process.env.APPDATA || path.join(home, 'AppData', 'Roaming');
241
- return path.join(appData, 'file-organizer-mcp', 'config.json');
243
+ const appData = process.env.APPDATA || path.join(home, "AppData", "Roaming");
244
+ return path.join(appData, "file-organizer-mcp", "config.json");
242
245
  }
243
- else if (platform === 'darwin') {
246
+ else if (platform === "darwin") {
244
247
  // macOS: ~/Library/Application Support/file-organizer-mcp/config.json
245
- return path.join(home, 'Library', 'Application Support', 'file-organizer-mcp', 'config.json');
248
+ return path.join(home, "Library", "Application Support", "file-organizer-mcp", "config.json");
246
249
  }
247
250
  else {
248
251
  // Linux: ~/.config/file-organizer-mcp/config.json
249
- return path.join(home, '.config', 'file-organizer-mcp', 'config.json');
252
+ return path.join(home, ".config", "file-organizer-mcp", "config.json");
250
253
  }
251
254
  }
252
255
  /**
@@ -264,7 +267,7 @@ function getAlwaysBlockedPatterns() {
264
267
  /dist[\/\\]/i,
265
268
  /build[\/\\]/i,
266
269
  ];
267
- if (platform === 'win32') {
270
+ if (platform === "win32") {
268
271
  return [
269
272
  ...common,
270
273
  /^[A-Z]:[\/\\]Windows[\/\\]/i,
@@ -276,7 +279,7 @@ function getAlwaysBlockedPatterns() {
276
279
  /^[A-Z]:[\/\\]System Volume Information[\/\\]/i,
277
280
  ];
278
281
  }
279
- else if (platform === 'darwin') {
282
+ else if (platform === "darwin") {
280
283
  return [
281
284
  ...common,
282
285
  /^\/System[\/]/,
@@ -321,7 +324,7 @@ export function initializeUserConfig() {
321
324
  if (!fs.existsSync(configPath)) {
322
325
  const defaultConfig = {
323
326
  customAllowedDirectories: [],
324
- conflictStrategy: 'rename',
327
+ conflictStrategy: "rename",
325
328
  autoOrganize: {
326
329
  enabled: false,
327
330
  },
@@ -335,7 +338,7 @@ export function initializeUserConfig() {
335
338
  }
336
339
  }
337
340
  catch (error) {
338
- console.error('Error initializing user config:', error.message);
341
+ console.error("Error initializing user config:", error.message);
339
342
  }
340
343
  }
341
344
  // Initialize config on module load
@@ -344,7 +347,12 @@ initializeUserConfig();
344
347
  export const MAX_FILE_SIZE = 100 * 1024 * 1024; // 100MB
345
348
  export const MAX_FILES = CONFIG.security.maxFilesPerOperation;
346
349
  export const MAX_DEPTH = CONFIG.security.maxScanDepth;
347
- export const SKIP_DIRECTORIES = ['node_modules', '.git', '__pycache__', '.venv'];
350
+ export const SKIP_DIRECTORIES = [
351
+ "node_modules",
352
+ ".git",
353
+ "__pycache__",
354
+ ".venv",
355
+ ];
348
356
  export const SKIP_PATTERNS = {
349
357
  HIDDEN_FILES: /^\./,
350
358
  };
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@
2
2
  * File Organizer MCP Server v3.2.0
3
3
  * File Category Constants
4
4
  */
5
- import type { CategoryName } from './types.js';
5
+ import type { CategoryName } from "./types.js";
6
6
  /**
7
7
  * File extension to category mappings
8
8
  */
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C;;GAEG;AACH,eAAO,MAAM,UAAU,EAAE,MAAM,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CA2BrD,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,SAAS,YAAY,EAA8C,CAAC;AAEjG;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,YAAY,CAQ3D"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C;;GAEG;AACH,eAAO,MAAM,UAAU,EAAE,MAAM,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CA2BrD,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,SAAS,YAAY,EAE/B,CAAC;AAEpB;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,YAAY,CAQ3D"}
@@ -6,31 +6,31 @@
6
6
  * File extension to category mappings
7
7
  */
8
8
  export const CATEGORIES = {
9
- Executables: ['.exe', '.msi', '.bat', '.cmd', '.sh'],
10
- Videos: ['.mp4', '.avi', '.mkv', '.mov', '.wmv', '.flv', '.webm', '.m4v'],
11
- Documents: ['.pdf', '.doc', '.docx', '.txt', '.rtf', '.odt', '.md', '.tex'],
12
- Presentations: ['.ppt', '.pptx', '.odp', '.key'],
13
- Spreadsheets: ['.xls', '.xlsx', '.csv', '.ods'],
14
- Images: ['.jpg', '.jpeg', '.png', '.gif', '.bmp', '.svg', '.ico', '.webp'],
15
- Audio: ['.mp3', '.wav', '.flac', '.aac', '.ogg', '.wma', '.m4a'],
16
- Archives: ['.zip', '.rar', '.7z', '.tar', '.gz', '.bz2', '.xz'],
9
+ Executables: [".exe", ".msi", ".bat", ".cmd", ".sh"],
10
+ Videos: [".mp4", ".avi", ".mkv", ".mov", ".wmv", ".flv", ".webm", ".m4v"],
11
+ Documents: [".pdf", ".doc", ".docx", ".txt", ".rtf", ".odt", ".md", ".tex"],
12
+ Presentations: [".ppt", ".pptx", ".odp", ".key"],
13
+ Spreadsheets: [".xls", ".xlsx", ".csv", ".ods"],
14
+ Images: [".jpg", ".jpeg", ".png", ".gif", ".bmp", ".svg", ".ico", ".webp"],
15
+ Audio: [".mp3", ".wav", ".flac", ".aac", ".ogg", ".wma", ".m4a"],
16
+ Archives: [".zip", ".rar", ".7z", ".tar", ".gz", ".bz2", ".xz"],
17
17
  Code: [
18
- '.py',
19
- '.js',
20
- '.ts',
21
- '.java',
22
- '.cpp',
23
- '.c',
24
- '.html',
25
- '.css',
26
- '.php',
27
- '.rb',
28
- '.go',
29
- '.json',
18
+ ".py",
19
+ ".js",
20
+ ".ts",
21
+ ".java",
22
+ ".cpp",
23
+ ".c",
24
+ ".html",
25
+ ".css",
26
+ ".php",
27
+ ".rb",
28
+ ".go",
29
+ ".json",
30
30
  ],
31
- Installers: ['.dmg', '.pkg', '.deb', '.rpm', '.apk'],
32
- Ebooks: ['.epub', '.mobi', '.azw', '.azw3'],
33
- Fonts: ['.ttf', '.otf', '.woff', '.woff2'],
31
+ Installers: [".dmg", ".pkg", ".deb", ".rpm", ".apk"],
32
+ Ebooks: [".epub", ".mobi", ".azw", ".azw3"],
33
+ Fonts: [".ttf", ".otf", ".woff", ".woff2"],
34
34
  Others: [],
35
35
  };
36
36
  /**
@@ -49,6 +49,6 @@ export function getCategory(extension) {
49
49
  return category;
50
50
  }
51
51
  }
52
- return 'Others';
52
+ return "Others";
53
53
  }
54
54
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;;GAEG;AACH,MAAM,CAAC,MAAM,UAAU,GAA4C;IACjE,WAAW,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC;IACpD,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC;IACzE,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC;IAC3E,aAAa,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC;IAChD,YAAY,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC;IAC/C,MAAM,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC;IAC1E,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;IAChE,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC;IAC/D,IAAI,EAAE;QACJ,KAAK;QACL,KAAK;QACL,KAAK;QACL,OAAO;QACP,MAAM;QACN,IAAI;QACJ,OAAO;QACP,MAAM;QACN,MAAM;QACN,KAAK;QACL,KAAK;QACL,OAAO;KACR;IACD,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;IACpD,MAAM,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC;IAC3C,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC;IAC1C,MAAM,EAAE,EAAE;CACF,CAAC;AAEX;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAA4B,MAAM,CAAC,IAAI,CAAC,UAAU,CAAmB,CAAC;AAEjG;;;;GAIG;AACH,MAAM,UAAU,WAAW,CAAC,SAAiB;IAC3C,MAAM,GAAG,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC;IACpC,KAAK,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;QAChE,IAAI,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YAC7B,OAAO,QAAwB,CAAC;QAClC,CAAC;IACH,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;;GAEG;AACH,MAAM,CAAC,MAAM,UAAU,GAA4C;IACjE,WAAW,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC;IACpD,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC;IACzE,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC;IAC3E,aAAa,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC;IAChD,YAAY,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC;IAC/C,MAAM,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC;IAC1E,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;IAChE,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC;IAC/D,IAAI,EAAE;QACJ,KAAK;QACL,KAAK;QACL,KAAK;QACL,OAAO;QACP,MAAM;QACN,IAAI;QACJ,OAAO;QACP,MAAM;QACN,MAAM;QACN,KAAK;QACL,KAAK;QACL,OAAO;KACR;IACD,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;IACpD,MAAM,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC;IAC3C,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC;IAC1C,MAAM,EAAE,EAAE;CACF,CAAC;AAEX;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAA4B,MAAM,CAAC,IAAI,CAChE,UAAU,CACO,CAAC;AAEpB;;;;GAIG;AACH,MAAM,UAAU,WAAW,CAAC,SAAiB;IAC3C,MAAM,GAAG,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC;IACpC,KAAK,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;QAChE,IAAI,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YAC7B,OAAO,QAAwB,CAAC;QAClC,CAAC;IACH,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC"}
@@ -0,0 +1,7 @@
1
+ export {};
2
+ /**
3
+ * Debate System Module
4
+ * This file ensures the debate directory is tracked by git
5
+ * while the subdirectories and test files are ignored
6
+ */
7
+ //# sourceMappingURL=__init__.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"__init__.d.ts","sourceRoot":"","sources":["../../../src/debate/__init__.ts"],"names":[],"mappings":";AAAA;;;;GAIG"}
@@ -0,0 +1,7 @@
1
+ export {};
2
+ /**
3
+ * Debate System Module
4
+ * This file ensures the debate directory is tracked by git
5
+ * while the subdirectories and test files are ignored
6
+ */
7
+ //# sourceMappingURL=__init__.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"__init__.js","sourceRoot":"","sources":["../../../src/debate/__init__.ts"],"names":[],"mappings":";AAAA;;;;GAIG"}