file-organizer-mcp 3.2.7 โ†’ 3.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (193) hide show
  1. package/CHANGELOG.md +82 -0
  2. package/CONTRIBUTING.md +314 -314
  3. package/MIGRATION.md +1 -1
  4. package/README.md +433 -13
  5. package/dist/src/config.d.ts.map +1 -1
  6. package/dist/src/config.js +13 -12
  7. package/dist/src/config.js.map +1 -1
  8. package/dist/src/constants/file-signatures.d.ts +97 -0
  9. package/dist/src/constants/file-signatures.d.ts.map +1 -0
  10. package/dist/src/constants/file-signatures.js +884 -0
  11. package/dist/src/constants/file-signatures.js.map +1 -0
  12. package/dist/src/constants.d.ts.map +1 -1
  13. package/dist/src/constants.js +4 -0
  14. package/dist/src/constants.js.map +1 -1
  15. package/dist/src/index.js +15 -15
  16. package/dist/src/index.js.map +1 -1
  17. package/dist/src/schemas/rename.schemas.d.ts +6 -6
  18. package/dist/src/server.d.ts.map +1 -1
  19. package/dist/src/server.js +17 -2
  20. package/dist/src/server.js.map +1 -1
  21. package/dist/src/services/audio-metadata.service.d.ts +61 -0
  22. package/dist/src/services/audio-metadata.service.d.ts.map +1 -0
  23. package/dist/src/services/audio-metadata.service.js +667 -0
  24. package/dist/src/services/audio-metadata.service.js.map +1 -0
  25. package/dist/src/services/categorizer.service.d.ts +91 -2
  26. package/dist/src/services/categorizer.service.d.ts.map +1 -1
  27. package/dist/src/services/categorizer.service.js +576 -24
  28. package/dist/src/services/categorizer.service.js.map +1 -1
  29. package/dist/src/services/content-analyzer.service.d.ts +103 -0
  30. package/dist/src/services/content-analyzer.service.d.ts.map +1 -0
  31. package/dist/src/services/content-analyzer.service.js +1100 -0
  32. package/dist/src/services/content-analyzer.service.js.map +1 -0
  33. package/dist/src/services/content-screening.service.d.ts +88 -0
  34. package/dist/src/services/content-screening.service.d.ts.map +1 -0
  35. package/dist/src/services/content-screening.service.js +574 -0
  36. package/dist/src/services/content-screening.service.js.map +1 -0
  37. package/dist/src/services/duplicate-finder.service.d.ts +2 -2
  38. package/dist/src/services/duplicate-finder.service.d.ts.map +1 -1
  39. package/dist/src/services/duplicate-finder.service.js +34 -32
  40. package/dist/src/services/duplicate-finder.service.js.map +1 -1
  41. package/dist/src/services/file-scanner.service.d.ts +4 -1
  42. package/dist/src/services/file-scanner.service.d.ts.map +1 -1
  43. package/dist/src/services/file-scanner.service.js +41 -27
  44. package/dist/src/services/file-scanner.service.js.map +1 -1
  45. package/dist/src/services/hash-calculator.service.d.ts +2 -2
  46. package/dist/src/services/hash-calculator.service.d.ts.map +1 -1
  47. package/dist/src/services/hash-calculator.service.js +15 -10
  48. package/dist/src/services/hash-calculator.service.js.map +1 -1
  49. package/dist/src/services/image-metadata.service.d.ts +200 -0
  50. package/dist/src/services/image-metadata.service.d.ts.map +1 -0
  51. package/dist/src/services/image-metadata.service.js +983 -0
  52. package/dist/src/services/image-metadata.service.js.map +1 -0
  53. package/dist/src/services/index.d.ts +24 -10
  54. package/dist/src/services/index.d.ts.map +1 -1
  55. package/dist/src/services/index.js +28 -11
  56. package/dist/src/services/index.js.map +1 -1
  57. package/dist/src/services/metadata-cache.service.d.ts +144 -0
  58. package/dist/src/services/metadata-cache.service.d.ts.map +1 -0
  59. package/dist/src/services/metadata-cache.service.js +755 -0
  60. package/dist/src/services/metadata-cache.service.js.map +1 -0
  61. package/dist/src/services/metadata.service.d.ts +26 -1
  62. package/dist/src/services/metadata.service.d.ts.map +1 -1
  63. package/dist/src/services/metadata.service.js +158 -55
  64. package/dist/src/services/metadata.service.js.map +1 -1
  65. package/dist/src/services/music-organizer.service.d.ts +136 -0
  66. package/dist/src/services/music-organizer.service.d.ts.map +1 -0
  67. package/dist/src/services/music-organizer.service.js +459 -0
  68. package/dist/src/services/music-organizer.service.js.map +1 -0
  69. package/dist/src/services/organizer.service.d.ts +7 -4
  70. package/dist/src/services/organizer.service.d.ts.map +1 -1
  71. package/dist/src/services/organizer.service.js +55 -31
  72. package/dist/src/services/organizer.service.js.map +1 -1
  73. package/dist/src/services/path-validator.service.d.ts +2 -2
  74. package/dist/src/services/path-validator.service.d.ts.map +1 -1
  75. package/dist/src/services/path-validator.service.js +45 -29
  76. package/dist/src/services/path-validator.service.js.map +1 -1
  77. package/dist/src/services/photo-organizer.service.d.ts +101 -0
  78. package/dist/src/services/photo-organizer.service.d.ts.map +1 -0
  79. package/dist/src/services/photo-organizer.service.js +515 -0
  80. package/dist/src/services/photo-organizer.service.js.map +1 -0
  81. package/dist/src/services/streaming-scanner.service.d.ts +1 -1
  82. package/dist/src/services/streaming-scanner.service.d.ts.map +1 -1
  83. package/dist/src/services/streaming-scanner.service.js +12 -4
  84. package/dist/src/services/streaming-scanner.service.js.map +1 -1
  85. package/dist/src/services/text-extraction.service.d.ts +36 -0
  86. package/dist/src/services/text-extraction.service.d.ts.map +1 -0
  87. package/dist/src/services/text-extraction.service.js +276 -0
  88. package/dist/src/services/text-extraction.service.js.map +1 -0
  89. package/dist/src/services/topic-extractor.service.d.ts +29 -0
  90. package/dist/src/services/topic-extractor.service.d.ts.map +1 -0
  91. package/dist/src/services/topic-extractor.service.js +637 -0
  92. package/dist/src/services/topic-extractor.service.js.map +1 -0
  93. package/dist/src/tools/batch-file-reader.d.ts +38 -0
  94. package/dist/src/tools/batch-file-reader.d.ts.map +1 -0
  95. package/dist/src/tools/batch-file-reader.js +482 -0
  96. package/dist/src/tools/batch-file-reader.js.map +1 -0
  97. package/dist/src/tools/content-organization.d.ts +23 -0
  98. package/dist/src/tools/content-organization.d.ts.map +1 -0
  99. package/dist/src/tools/content-organization.js +242 -0
  100. package/dist/src/tools/content-organization.js.map +1 -0
  101. package/dist/src/tools/file-categorization.d.ts +1 -0
  102. package/dist/src/tools/file-categorization.d.ts.map +1 -1
  103. package/dist/src/tools/file-categorization.js +67 -9
  104. package/dist/src/tools/file-categorization.js.map +1 -1
  105. package/dist/src/tools/file-organization.d.ts +1 -0
  106. package/dist/src/tools/file-organization.d.ts.map +1 -1
  107. package/dist/src/tools/file-organization.js +27 -5
  108. package/dist/src/tools/file-organization.js.map +1 -1
  109. package/dist/src/tools/file-renaming.d.ts +3 -3
  110. package/dist/src/tools/file-scanning.d.ts +3 -2
  111. package/dist/src/tools/file-scanning.d.ts.map +1 -1
  112. package/dist/src/tools/file-scanning.js +72 -33
  113. package/dist/src/tools/file-scanning.js.map +1 -1
  114. package/dist/src/tools/index.d.ts +10 -0
  115. package/dist/src/tools/index.d.ts.map +1 -1
  116. package/dist/src/tools/index.js +19 -0
  117. package/dist/src/tools/index.js.map +1 -1
  118. package/dist/src/tools/music-organization.d.ts +34 -0
  119. package/dist/src/tools/music-organization.d.ts.map +1 -0
  120. package/dist/src/tools/music-organization.js +164 -0
  121. package/dist/src/tools/music-organization.js.map +1 -0
  122. package/dist/src/tools/photo-organization.d.ts +31 -0
  123. package/dist/src/tools/photo-organization.d.ts.map +1 -0
  124. package/dist/src/tools/photo-organization.js +175 -0
  125. package/dist/src/tools/photo-organization.js.map +1 -0
  126. package/dist/src/tools/smart-organization.d.ts +41 -0
  127. package/dist/src/tools/smart-organization.d.ts.map +1 -0
  128. package/dist/src/tools/smart-organization.js +460 -0
  129. package/dist/src/tools/smart-organization.js.map +1 -0
  130. package/dist/src/types.d.ts +177 -7
  131. package/dist/src/types.d.ts.map +1 -1
  132. package/dist/src/types.js +4 -4
  133. package/dist/src/types.js.map +1 -1
  134. package/dist/src/utils/error-handler.d.ts +1 -1
  135. package/dist/src/utils/error-handler.d.ts.map +1 -1
  136. package/dist/src/utils/error-handler.js +16 -10
  137. package/dist/src/utils/error-handler.js.map +1 -1
  138. package/dist/src/utils/file-utils.d.ts.map +1 -1
  139. package/dist/src/utils/file-utils.js +30 -17
  140. package/dist/src/utils/file-utils.js.map +1 -1
  141. package/dist/src/utils/logger.d.ts +22 -1
  142. package/dist/src/utils/logger.d.ts.map +1 -1
  143. package/dist/src/utils/logger.js +63 -8
  144. package/dist/src/utils/logger.js.map +1 -1
  145. package/package.json +5 -2
  146. package/dist/src/debate/__init__.d.ts +0 -7
  147. package/dist/src/debate/__init__.d.ts.map +0 -1
  148. package/dist/src/debate/__init__.js +0 -7
  149. package/dist/src/debate/__init__.js.map +0 -1
  150. package/dist/src/debate/dashboard.d.ts +0 -251
  151. package/dist/src/debate/dashboard.d.ts.map +0 -1
  152. package/dist/src/debate/dashboard.js +0 -886
  153. package/dist/src/debate/dashboard.js.map +0 -1
  154. package/dist/src/debate/documentation-generator.d.ts +0 -322
  155. package/dist/src/debate/documentation-generator.d.ts.map +0 -1
  156. package/dist/src/debate/documentation-generator.js +0 -706
  157. package/dist/src/debate/documentation-generator.js.map +0 -1
  158. package/dist/src/debate/enhanced-voting.d.ts +0 -209
  159. package/dist/src/debate/enhanced-voting.d.ts.map +0 -1
  160. package/dist/src/debate/enhanced-voting.js +0 -289
  161. package/dist/src/debate/enhanced-voting.js.map +0 -1
  162. package/dist/src/debate/example-usage.d.ts +0 -5
  163. package/dist/src/debate/example-usage.d.ts.map +0 -1
  164. package/dist/src/debate/example-usage.js +0 -273
  165. package/dist/src/debate/example-usage.js.map +0 -1
  166. package/dist/src/debate/index.d.ts +0 -7
  167. package/dist/src/debate/index.d.ts.map +0 -1
  168. package/dist/src/debate/index.js +0 -6
  169. package/dist/src/debate/index.js.map +0 -1
  170. package/dist/src/debate/issue-integration.d.ts +0 -153
  171. package/dist/src/debate/issue-integration.d.ts.map +0 -1
  172. package/dist/src/debate/issue-integration.js +0 -357
  173. package/dist/src/debate/issue-integration.js.map +0 -1
  174. package/dist/src/debate/pattern-learning.d.ts +0 -288
  175. package/dist/src/debate/pattern-learning.d.ts.map +0 -1
  176. package/dist/src/debate/pattern-learning.js +0 -1099
  177. package/dist/src/debate/pattern-learning.js.map +0 -1
  178. package/dist/src/debate/post-mortem.d.ts +0 -501
  179. package/dist/src/debate/post-mortem.d.ts.map +0 -1
  180. package/dist/src/debate/post-mortem.js +0 -1475
  181. package/dist/src/debate/post-mortem.js.map +0 -1
  182. package/dist/src/debate/templates.d.ts +0 -215
  183. package/dist/src/debate/templates.d.ts.map +0 -1
  184. package/dist/src/debate/templates.js +0 -1099
  185. package/dist/src/debate/templates.js.map +0 -1
  186. package/dist/src/debate/tie-breaking.d.ts +0 -386
  187. package/dist/src/debate/tie-breaking.d.ts.map +0 -1
  188. package/dist/src/debate/tie-breaking.js +0 -651
  189. package/dist/src/debate/tie-breaking.js.map +0 -1
  190. package/dist/src/debate/timeboxing-conflicts.d.ts +0 -176
  191. package/dist/src/debate/timeboxing-conflicts.d.ts.map +0 -1
  192. package/dist/src/debate/timeboxing-conflicts.js +0 -537
  193. package/dist/src/debate/timeboxing-conflicts.js.map +0 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,87 @@
1
1
  # Changelog
2
2
 
3
+ ## [3.3.0] - 2026-02-13
4
+
5
+ ### โœจ New Features
6
+
7
+ #### ๐Ÿง  Smart Organization (Unified Tool)
8
+ - **New Tool: `file_organizer_organize_smart`** - Automatically organizes mixed folders
9
+ - Auto-detects file types (music, photos, documents)
10
+ - Routes files to appropriate organizer:
11
+ - ๐ŸŽต Music โ†’ Artist/Album structure
12
+ - ๐Ÿ“ธ Photos โ†’ Date-based folders (YYYY/MM/DD)
13
+ - ๐Ÿ“„ Documents โ†’ Topic-based folders
14
+ - Creates organized subdirectories: `Music/`, `Photos/`, `Documents/`, `Other/`
15
+ - All options supported: GPS stripping, camera grouping, shortcuts, etc.
16
+
17
+ #### ๐ŸŽต Music Organization
18
+ - **New Tool: `file_organizer_organize_music`** - Music library organization
19
+ - Organizes by Artist/Album/Title structure
20
+ - Supports MP3, FLAC, OGG, WAV, M4A, AAC
21
+ - Configurable folder structures: `artist/album`, `album`, `genre/artist`, `flat`
22
+ - ID3 metadata extraction with graceful fallback
23
+
24
+ #### ๐Ÿ“ธ Photo Organization
25
+ - **New Tool: `file_organizer_organize_photos`** - Photo library organization
26
+ - Organizes by EXIF date: YYYY/MM/DD structure
27
+ - GPS stripping for privacy (using piexifjs)
28
+ - Camera model grouping option
29
+ - Supports JPEG, PNG, TIFF, HEIC, RAW formats
30
+
31
+ #### ๐Ÿ“„ Content-Based Organization
32
+ - **New Tool: `file_organizer_organize_by_content`** - Document organization
33
+ - Topic extraction from document content
34
+ - Supports PDF, DOCX, TXT, MD, RTF, ODT
35
+ - Multi-topic shortcut creation
36
+ - Text analysis with keyword extraction
37
+
38
+ #### ๐Ÿ“š Batch File Reading
39
+ - **New Tool: `file_organizer_batch_read_files`** - Read multiple files at once
40
+ - Efficient batch processing
41
+ - Multiple encoding support
42
+
43
+ ### ๐Ÿ”ง Code Quality Improvements
44
+ - Full GPS stripping implementation (was TODO stub)
45
+ - All console.* calls migrated to structured logger
46
+ - Removed 24+ redundant type assertions
47
+ - Added comprehensive type guards
48
+ - Improved error handling consistency
49
+
50
+ ### ๐Ÿ“ฆ Dependencies
51
+ - Added `piexifjs` for EXIF manipulation
52
+ - Added `pdf-parse` for PDF text extraction
53
+ - Added `mammoth` for DOCX text extraction
54
+
55
+ ### ๐Ÿงช Testing
56
+ - Added 800+ new tests for metadata services
57
+ - Tests for audio metadata extraction
58
+ - Tests for image metadata extraction
59
+ - Tests for music organizer
60
+ - Tests for content organization
61
+ - Tests for topic extractor
62
+
63
+ ### ๐Ÿ› ๏ธ New Services
64
+ - `audio-metadata.service.ts` - Music metadata extraction
65
+ - `image-metadata.service.ts` - Photo metadata extraction
66
+ - `text-extraction.service.ts` - Document text extraction
67
+ - `topic-extractor.service.ts` - Topic/keyword extraction
68
+ - `content-analyzer.service.ts` - File type detection
69
+ - `content-screening.service.ts` - Security screening
70
+ - `metadata-cache.service.ts` - Caching for faster operations
71
+ - `music-organizer.service.ts` - Music organization logic
72
+ - `photo-organizer.service.ts` - Photo organization logic
73
+ - `smart-organization.ts` - Unified organization tool
74
+
75
+ ---
76
+
77
+ ## [3.2.8] - 2026-02-10
78
+
79
+ ### ๐Ÿšจ CRITICAL FIX: MCP Protocol Compatibility
80
+
81
+ **FINAL FIX - v3.2.8**
82
+ - Removed old local node_modules version conflict
83
+ - npx now correctly resolves to global installation
84
+
3
85
  ## [3.2.7] - 2026-02-10
4
86
 
5
87
  ### ๐Ÿšจ CRITICAL FIX: MCP Protocol Compatibility