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.
- package/README.md +21 -1
- package/bin/file-organizer-mcp.mjs +2 -2
- package/bin/file-organizer-setup.mjs +3 -3
- package/dist/src/config.d.ts +3 -3
- package/dist/src/config.d.ts.map +1 -1
- package/dist/src/config.js +51 -43
- package/dist/src/config.js.map +1 -1
- package/dist/src/constants.d.ts +1 -1
- package/dist/src/constants.d.ts.map +1 -1
- package/dist/src/constants.js +24 -24
- package/dist/src/constants.js.map +1 -1
- package/dist/src/debate/__init__.d.ts +7 -0
- package/dist/src/debate/__init__.d.ts.map +1 -0
- package/dist/src/debate/__init__.js +7 -0
- package/dist/src/debate/__init__.js.map +1 -0
- package/dist/src/debate/dashboard.d.ts +251 -0
- package/dist/src/debate/dashboard.d.ts.map +1 -0
- package/dist/src/debate/dashboard.js +886 -0
- package/dist/src/debate/dashboard.js.map +1 -0
- package/dist/src/debate/documentation-generator.d.ts +322 -0
- package/dist/src/debate/documentation-generator.d.ts.map +1 -0
- package/dist/src/debate/documentation-generator.js +706 -0
- package/dist/src/debate/documentation-generator.js.map +1 -0
- package/dist/src/debate/enhanced-voting.d.ts +209 -0
- package/dist/src/debate/enhanced-voting.d.ts.map +1 -0
- package/dist/src/debate/enhanced-voting.js +289 -0
- package/dist/src/debate/enhanced-voting.js.map +1 -0
- package/dist/src/debate/example-usage.d.ts +5 -0
- package/dist/src/debate/example-usage.d.ts.map +1 -0
- package/dist/src/debate/example-usage.js +273 -0
- package/dist/src/debate/example-usage.js.map +1 -0
- package/dist/src/debate/index.d.ts +7 -0
- package/dist/src/debate/index.d.ts.map +1 -0
- package/dist/src/debate/index.js +6 -0
- package/dist/src/debate/index.js.map +1 -0
- package/dist/src/debate/issue-integration.d.ts +153 -0
- package/dist/src/debate/issue-integration.d.ts.map +1 -0
- package/dist/src/debate/issue-integration.js +357 -0
- package/dist/src/debate/issue-integration.js.map +1 -0
- package/dist/src/debate/pattern-learning.d.ts +288 -0
- package/dist/src/debate/pattern-learning.d.ts.map +1 -0
- package/dist/src/debate/pattern-learning.js +1099 -0
- package/dist/src/debate/pattern-learning.js.map +1 -0
- package/dist/src/debate/post-mortem.d.ts +501 -0
- package/dist/src/debate/post-mortem.d.ts.map +1 -0
- package/dist/src/debate/post-mortem.js +1475 -0
- package/dist/src/debate/post-mortem.js.map +1 -0
- package/dist/src/debate/templates.d.ts +215 -0
- package/dist/src/debate/templates.d.ts.map +1 -0
- package/dist/src/debate/templates.js +1099 -0
- package/dist/src/debate/templates.js.map +1 -0
- package/dist/src/debate/tie-breaking.d.ts +386 -0
- package/dist/src/debate/tie-breaking.d.ts.map +1 -0
- package/dist/src/debate/tie-breaking.js +651 -0
- package/dist/src/debate/tie-breaking.js.map +1 -0
- package/dist/src/debate/timeboxing-conflicts.d.ts +176 -0
- package/dist/src/debate/timeboxing-conflicts.d.ts.map +1 -0
- package/dist/src/debate/timeboxing-conflicts.js +537 -0
- package/dist/src/debate/timeboxing-conflicts.js.map +1 -0
- package/dist/src/errors.d.ts +1 -1
- package/dist/src/errors.js +2 -2
- package/dist/src/index.d.ts +2 -2
- package/dist/src/index.js +60 -54
- package/dist/src/index.js.map +1 -1
- package/dist/src/security/archive-validator.d.ts +47 -0
- package/dist/src/security/archive-validator.d.ts.map +1 -0
- package/dist/src/security/archive-validator.js +188 -0
- package/dist/src/security/archive-validator.js.map +1 -0
- package/dist/src/security/security-constants.d.ts +103 -0
- package/dist/src/security/security-constants.d.ts.map +1 -0
- package/dist/src/security/security-constants.js +109 -0
- package/dist/src/security/security-constants.js.map +1 -0
- package/dist/src/server.d.ts +1 -1
- package/dist/src/server.js +1 -1
- package/package.json +5 -4
package/README.md
CHANGED
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
[](https://github.com/kridaydave/File-Organizer-MCP)
|
|
12
12
|
[](https://nodejs.org)
|
|
13
13
|
[](LICENSE)
|
|
14
|
-
[](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);
|
package/dist/src/config.d.ts
CHANGED
|
@@ -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?:
|
|
27
|
+
conflictStrategy?: "rename" | "skip" | "overwrite";
|
|
28
28
|
/** Auto-organize schedule settings */
|
|
29
29
|
autoOrganize?: {
|
|
30
30
|
enabled: boolean;
|
|
31
|
-
schedule?:
|
|
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?:
|
|
66
|
+
catchup_mode?: "smart" | "always" | "never";
|
|
67
67
|
};
|
|
68
68
|
}
|
|
69
69
|
/**
|
package/dist/src/config.d.ts.map
CHANGED
|
@@ -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;
|
|
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"}
|
package/dist/src/config.js
CHANGED
|
@@ -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
|
|
6
|
-
import path from
|
|
7
|
-
import fs from
|
|
5
|
+
import os from "os";
|
|
6
|
+
import path from "path";
|
|
7
|
+
import fs from "fs";
|
|
8
8
|
export const CONFIG = {
|
|
9
|
-
VERSION:
|
|
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,
|
|
33
|
-
path.join(home,
|
|
34
|
-
path.join(home,
|
|
35
|
-
path.join(home,
|
|
36
|
-
path.join(home,
|
|
37
|
-
path.join(home,
|
|
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,
|
|
42
|
-
path.join(home,
|
|
43
|
-
path.join(home,
|
|
44
|
-
path.join(home,
|
|
45
|
-
path.join(home,
|
|
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 ===
|
|
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 ===
|
|
55
|
+
else if (platform === "darwin") {
|
|
56
56
|
// macOS: Add iCloud Drive if it exists
|
|
57
|
-
const iCloudDrive = path.join(home,
|
|
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,
|
|
60
|
+
commonDirs.push(path.join(home, "Movies"));
|
|
61
61
|
}
|
|
62
|
-
else if (platform ===
|
|
62
|
+
else if (platform === "linux") {
|
|
63
63
|
// Linux: Add common development directories
|
|
64
|
-
commonDirs.push(path.join(home,
|
|
64
|
+
commonDirs.push(path.join(home, "dev"));
|
|
65
65
|
}
|
|
66
66
|
// Add project directory when running tests
|
|
67
|
-
const isTestMode = process.env.NODE_ENV ===
|
|
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 ===
|
|
94
|
+
if (typeof sourceValue === "object" &&
|
|
95
95
|
sourceValue !== null &&
|
|
96
96
|
!Array.isArray(sourceValue) &&
|
|
97
|
-
typeof targetValue ===
|
|
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,
|
|
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 !==
|
|
127
|
-
|
|
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(
|
|
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(
|
|
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(
|
|
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(
|
|
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(
|
|
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 ===
|
|
241
|
+
if (platform === "win32") {
|
|
239
242
|
// Windows: %APPDATA%\file-organizer-mcp\config.json
|
|
240
|
-
const appData = process.env.APPDATA || path.join(home,
|
|
241
|
-
return path.join(appData,
|
|
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 ===
|
|
246
|
+
else if (platform === "darwin") {
|
|
244
247
|
// macOS: ~/Library/Application Support/file-organizer-mcp/config.json
|
|
245
|
-
return path.join(home,
|
|
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,
|
|
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 ===
|
|
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 ===
|
|
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:
|
|
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(
|
|
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 = [
|
|
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
|
};
|
package/dist/src/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,MAAM,IAAI,CAAC;AAEpB,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,OAAO,EAAE,OAAO;IAEhB,oBAAoB;IACpB,QAAQ,EAAE;QACR,oBAAoB,EAAE,IAAI;QAC1B,sBAAsB,EAAE,IAAI;QAC5B,SAAS,EAAE,IAAI;QACf,YAAY,EAAE,EAAE;QAChB,oBAAoB,EAAE,KAAK;KAC5B;IAED,sBAAsB;IACtB,KAAK,EAAE;QACL,cAAc,EAAE,qBAAqB,EAAE;QACvC,aAAa,EAAE,qBAAqB,EAAE;QACtC,aAAa,EAAE,wBAAwB,EAAE;KAC1C;CACF,CAAC;AAqDF;;GAEG;AACH,SAAS,qBAAqB;IAC5B,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC;IAC/B,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC;IAE1B,IAAI,UAAU,GAAG;QACf,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC;QAC1B,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC;QAC5B,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC;QAC5B,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC;QAC3B,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC;QACzB,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC;KACzB,CAAC;IAEF,+CAA+C;IAC/C,MAAM,WAAW,GAAG;QAClB,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC;QAC3B,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC;QAC5B,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC;QAC5B,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,aAAa,CAAC;QAC9B,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC;KACxB,CAAC;IAEF,UAAU,GAAG,CAAC,GAAG,UAAU,EAAE,GAAG,WAAW,CAAC,CAAC;IAE7C,8BAA8B;IAC9B,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;QACzB,qCAAqC;QACrC,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;QACtE,IAAI,QAAQ;YAAE,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC1C,CAAC;SAAM,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;QACjC,uCAAuC;QACvC,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"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"}
|
package/dist/src/constants.d.ts
CHANGED
|
@@ -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,
|
|
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"}
|
package/dist/src/constants.js
CHANGED
|
@@ -6,31 +6,31 @@
|
|
|
6
6
|
* File extension to category mappings
|
|
7
7
|
*/
|
|
8
8
|
export const CATEGORIES = {
|
|
9
|
-
Executables: [
|
|
10
|
-
Videos: [
|
|
11
|
-
Documents: [
|
|
12
|
-
Presentations: [
|
|
13
|
-
Spreadsheets: [
|
|
14
|
-
Images: [
|
|
15
|
-
Audio: [
|
|
16
|
-
Archives: [
|
|
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
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
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: [
|
|
32
|
-
Ebooks: [
|
|
33
|
-
Fonts: [
|
|
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
|
|
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,
|
|
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 @@
|
|
|
1
|
+
{"version":3,"file":"__init__.d.ts","sourceRoot":"","sources":["../../../src/debate/__init__.ts"],"names":[],"mappings":";AAAA;;;;GAIG"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"__init__.js","sourceRoot":"","sources":["../../../src/debate/__init__.ts"],"names":[],"mappings":";AAAA;;;;GAIG"}
|