@j0hanz/filesystem-context-mcp 1.2.8 → 1.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 (235) hide show
  1. package/README.md +125 -19
  2. package/dist/__tests__/lib/file-operations/compute-checksums.test.d.ts +2 -0
  3. package/dist/__tests__/lib/file-operations/compute-checksums.test.d.ts.map +1 -0
  4. package/dist/__tests__/lib/file-operations/compute-checksums.test.js +59 -0
  5. package/dist/__tests__/lib/file-operations/compute-checksums.test.js.map +1 -0
  6. package/dist/__tests__/lib/file-operations/get-multiple-file-info.test.d.ts +2 -0
  7. package/dist/__tests__/lib/file-operations/get-multiple-file-info.test.d.ts.map +1 -0
  8. package/dist/__tests__/lib/file-operations/get-multiple-file-info.test.js +46 -0
  9. package/dist/__tests__/lib/file-operations/get-multiple-file-info.test.js.map +1 -0
  10. package/dist/__tests__/lib/file-operations/read-multiple-files-edge-cases.test.js +21 -0
  11. package/dist/__tests__/lib/file-operations/read-multiple-files-edge-cases.test.js.map +1 -1
  12. package/dist/__tests__/lib/file-operations/read-multiple-files.test.js +18 -0
  13. package/dist/__tests__/lib/file-operations/read-multiple-files.test.js.map +1 -1
  14. package/dist/__tests__/lib/file-operations/search-definitions.test.d.ts +2 -0
  15. package/dist/__tests__/lib/file-operations/search-definitions.test.d.ts.map +1 -0
  16. package/dist/__tests__/lib/file-operations/search-definitions.test.js +274 -0
  17. package/dist/__tests__/lib/file-operations/search-definitions.test.js.map +1 -0
  18. package/dist/__tests__/lib/file-operations/sorting.test.d.ts +2 -0
  19. package/dist/__tests__/lib/file-operations/sorting.test.d.ts.map +1 -0
  20. package/dist/__tests__/lib/file-operations/sorting.test.js +47 -0
  21. package/dist/__tests__/lib/file-operations/sorting.test.js.map +1 -0
  22. package/dist/__tests__/lib/fs-helpers/utf8.test.d.ts +2 -0
  23. package/dist/__tests__/lib/fs-helpers/utf8.test.d.ts.map +1 -0
  24. package/dist/__tests__/lib/fs-helpers/utf8.test.js +43 -0
  25. package/dist/__tests__/lib/fs-helpers/utf8.test.js.map +1 -0
  26. package/dist/__tests__/lib/path-validation-errors.test.d.ts +2 -0
  27. package/dist/__tests__/lib/path-validation-errors.test.d.ts.map +1 -0
  28. package/dist/__tests__/lib/path-validation-errors.test.js +35 -0
  29. package/dist/__tests__/lib/path-validation-errors.test.js.map +1 -0
  30. package/dist/__tests__/lib/path-validation-roots.test.d.ts +2 -0
  31. package/dist/__tests__/lib/path-validation-roots.test.d.ts.map +1 -0
  32. package/dist/__tests__/lib/path-validation-roots.test.js +42 -0
  33. package/dist/__tests__/lib/path-validation-roots.test.js.map +1 -0
  34. package/dist/__tests__/lib/path-validation.test.js +5 -0
  35. package/dist/__tests__/lib/path-validation.test.js.map +1 -1
  36. package/dist/__tests__/security/filesystem-boundary.test.js +20 -12
  37. package/dist/__tests__/security/filesystem-boundary.test.js.map +1 -1
  38. package/dist/config/types.d.ts +64 -0
  39. package/dist/config/types.d.ts.map +1 -1
  40. package/dist/config/types.js.map +1 -1
  41. package/dist/instructions.md +93 -28
  42. package/dist/lib/constants.d.ts.map +1 -1
  43. package/dist/lib/constants.js +17 -1
  44. package/dist/lib/constants.js.map +1 -1
  45. package/dist/lib/file-operations/analyze-directory-helpers.d.ts +24 -0
  46. package/dist/lib/file-operations/analyze-directory-helpers.d.ts.map +1 -0
  47. package/dist/lib/file-operations/analyze-directory-helpers.js +50 -0
  48. package/dist/lib/file-operations/analyze-directory-helpers.js.map +1 -0
  49. package/dist/lib/file-operations/analyze-directory.d.ts +1 -0
  50. package/dist/lib/file-operations/analyze-directory.d.ts.map +1 -1
  51. package/dist/lib/file-operations/analyze-directory.js +3 -58
  52. package/dist/lib/file-operations/analyze-directory.js.map +1 -1
  53. package/dist/lib/file-operations/batch-results.d.ts +12 -0
  54. package/dist/lib/file-operations/batch-results.d.ts.map +1 -0
  55. package/dist/lib/file-operations/batch-results.js +23 -0
  56. package/dist/lib/file-operations/batch-results.js.map +1 -0
  57. package/dist/lib/file-operations/compute-checksums.d.ts +9 -0
  58. package/dist/lib/file-operations/compute-checksums.d.ts.map +1 -0
  59. package/dist/lib/file-operations/compute-checksums.js +121 -0
  60. package/dist/lib/file-operations/compute-checksums.js.map +1 -0
  61. package/dist/lib/file-operations/directory-helpers.d.ts.map +1 -1
  62. package/dist/lib/file-operations/directory-helpers.js +18 -10
  63. package/dist/lib/file-operations/directory-helpers.js.map +1 -1
  64. package/dist/lib/file-operations/directory-tree-helpers.d.ts.map +1 -1
  65. package/dist/lib/file-operations/directory-tree-helpers.js +8 -1
  66. package/dist/lib/file-operations/directory-tree-helpers.js.map +1 -1
  67. package/dist/lib/file-operations/directory-tree.d.ts +1 -0
  68. package/dist/lib/file-operations/directory-tree.d.ts.map +1 -1
  69. package/dist/lib/file-operations/directory-tree.js +3 -9
  70. package/dist/lib/file-operations/directory-tree.js.map +1 -1
  71. package/dist/lib/file-operations/get-multiple-file-info.d.ts +7 -0
  72. package/dist/lib/file-operations/get-multiple-file-info.d.ts.map +1 -0
  73. package/dist/lib/file-operations/get-multiple-file-info.js +59 -0
  74. package/dist/lib/file-operations/get-multiple-file-info.js.map +1 -0
  75. package/dist/lib/file-operations/list-directory-entry.d.ts +18 -0
  76. package/dist/lib/file-operations/list-directory-entry.d.ts.map +1 -0
  77. package/dist/lib/file-operations/list-directory-entry.js +90 -0
  78. package/dist/lib/file-operations/list-directory-entry.js.map +1 -0
  79. package/dist/lib/file-operations/list-directory-helpers.d.ts +2 -0
  80. package/dist/lib/file-operations/list-directory-helpers.d.ts.map +1 -1
  81. package/dist/lib/file-operations/list-directory-helpers.js +84 -103
  82. package/dist/lib/file-operations/list-directory-helpers.js.map +1 -1
  83. package/dist/lib/file-operations/list-directory.d.ts +2 -0
  84. package/dist/lib/file-operations/list-directory.d.ts.map +1 -1
  85. package/dist/lib/file-operations/list-directory.js +5 -8
  86. package/dist/lib/file-operations/list-directory.js.map +1 -1
  87. package/dist/lib/file-operations/read-multiple-files.d.ts +2 -0
  88. package/dist/lib/file-operations/read-multiple-files.d.ts.map +1 -1
  89. package/dist/lib/file-operations/read-multiple-files.js +44 -11
  90. package/dist/lib/file-operations/read-multiple-files.js.map +1 -1
  91. package/dist/lib/file-operations/search/engine-options.d.ts.map +1 -1
  92. package/dist/lib/file-operations/search/engine-options.js +1 -8
  93. package/dist/lib/file-operations/search/engine-options.js.map +1 -1
  94. package/dist/lib/file-operations/search/engine.d.ts +1 -1
  95. package/dist/lib/file-operations/search/engine.d.ts.map +1 -1
  96. package/dist/lib/file-operations/search/engine.js +4 -1
  97. package/dist/lib/file-operations/search/engine.js.map +1 -1
  98. package/dist/lib/file-operations/search-content.d.ts +1 -0
  99. package/dist/lib/file-operations/search-content.d.ts.map +1 -1
  100. package/dist/lib/file-operations/search-content.js +1 -1
  101. package/dist/lib/file-operations/search-content.js.map +1 -1
  102. package/dist/lib/file-operations/search-definitions.d.ts +6 -0
  103. package/dist/lib/file-operations/search-definitions.d.ts.map +1 -0
  104. package/dist/lib/file-operations/search-definitions.js +247 -0
  105. package/dist/lib/file-operations/search-definitions.js.map +1 -0
  106. package/dist/lib/file-operations/search-files-helpers.d.ts +2 -24
  107. package/dist/lib/file-operations/search-files-helpers.d.ts.map +1 -1
  108. package/dist/lib/file-operations/search-files-helpers.js +3 -39
  109. package/dist/lib/file-operations/search-files-helpers.js.map +1 -1
  110. package/dist/lib/file-operations/search-files-options.d.ts +31 -0
  111. package/dist/lib/file-operations/search-files-options.d.ts.map +1 -0
  112. package/dist/lib/file-operations/search-files-options.js +33 -0
  113. package/dist/lib/file-operations/search-files-options.js.map +1 -0
  114. package/dist/lib/file-operations/search-files.d.ts +1 -1
  115. package/dist/lib/file-operations/search-files.d.ts.map +1 -1
  116. package/dist/lib/file-operations/search-files.js +3 -2
  117. package/dist/lib/file-operations/search-files.js.map +1 -1
  118. package/dist/lib/file-operations.d.ts +3 -0
  119. package/dist/lib/file-operations.d.ts.map +1 -1
  120. package/dist/lib/file-operations.js +3 -0
  121. package/dist/lib/file-operations.js.map +1 -1
  122. package/dist/lib/fs-helpers/binary-detect.d.ts.map +1 -1
  123. package/dist/lib/fs-helpers/binary-detect.js +13 -16
  124. package/dist/lib/fs-helpers/binary-detect.js.map +1 -1
  125. package/dist/lib/fs-helpers/readers/read-file-content.d.ts +29 -0
  126. package/dist/lib/fs-helpers/readers/read-file-content.d.ts.map +1 -0
  127. package/dist/lib/fs-helpers/readers/read-file-content.js +25 -0
  128. package/dist/lib/fs-helpers/readers/read-file-content.js.map +1 -0
  129. package/dist/lib/fs-helpers/readers/read-file.d.ts +1 -0
  130. package/dist/lib/fs-helpers/readers/read-file.d.ts.map +1 -1
  131. package/dist/lib/fs-helpers/readers/read-file.js +29 -29
  132. package/dist/lib/fs-helpers/readers/read-file.js.map +1 -1
  133. package/dist/lib/merge-defined.d.ts +2 -0
  134. package/dist/lib/merge-defined.d.ts.map +1 -0
  135. package/dist/lib/merge-defined.js +8 -0
  136. package/dist/lib/merge-defined.js.map +1 -0
  137. package/dist/lib/path-validation/validators.d.ts.map +1 -1
  138. package/dist/lib/path-validation/validators.js +8 -0
  139. package/dist/lib/path-validation/validators.js.map +1 -1
  140. package/dist/schemas/common.d.ts +2 -2
  141. package/dist/schemas/index.d.ts +2 -2
  142. package/dist/schemas/index.d.ts.map +1 -1
  143. package/dist/schemas/index.js +2 -2
  144. package/dist/schemas/index.js.map +1 -1
  145. package/dist/schemas/inputs/checksums.d.ts +10 -0
  146. package/dist/schemas/inputs/checksums.d.ts.map +1 -0
  147. package/dist/schemas/inputs/checksums.js +30 -0
  148. package/dist/schemas/inputs/checksums.js.map +1 -0
  149. package/dist/schemas/inputs/directory.d.ts +29 -0
  150. package/dist/schemas/inputs/directory.d.ts.map +1 -0
  151. package/dist/schemas/inputs/directory.js +75 -0
  152. package/dist/schemas/inputs/directory.js.map +1 -0
  153. package/dist/schemas/inputs/file-info.d.ts +9 -0
  154. package/dist/schemas/inputs/file-info.d.ts.map +1 -0
  155. package/dist/schemas/inputs/file-info.js +20 -0
  156. package/dist/schemas/inputs/file-info.js.map +1 -0
  157. package/dist/schemas/inputs/read.d.ts +26 -0
  158. package/dist/schemas/inputs/read.d.ts.map +1 -0
  159. package/dist/schemas/inputs/read.js +54 -0
  160. package/dist/schemas/inputs/read.js.map +1 -0
  161. package/dist/schemas/inputs/search.d.ts +44 -0
  162. package/dist/schemas/inputs/search.d.ts.map +1 -0
  163. package/dist/schemas/inputs/search.js +115 -0
  164. package/dist/schemas/inputs/search.js.map +1 -0
  165. package/dist/schemas/inputs.d.ts +5 -80
  166. package/dist/schemas/inputs.d.ts.map +1 -1
  167. package/dist/schemas/inputs.js +5 -195
  168. package/dist/schemas/inputs.js.map +1 -1
  169. package/dist/schemas/outputs/checksums.d.ts +93 -0
  170. package/dist/schemas/outputs/checksums.d.ts.map +1 -0
  171. package/dist/schemas/outputs/checksums.js +23 -0
  172. package/dist/schemas/outputs/checksums.js.map +1 -0
  173. package/dist/schemas/outputs/directory.d.ts +419 -0
  174. package/dist/schemas/outputs/directory.d.ts.map +1 -0
  175. package/dist/schemas/outputs/directory.js +81 -0
  176. package/dist/schemas/outputs/directory.js.map +1 -0
  177. package/dist/schemas/outputs/file-info.d.ts +270 -0
  178. package/dist/schemas/outputs/file-info.d.ts.map +1 -0
  179. package/dist/schemas/outputs/file-info.js +57 -0
  180. package/dist/schemas/outputs/file-info.js.map +1 -0
  181. package/dist/schemas/outputs/read.d.ts +187 -0
  182. package/dist/schemas/outputs/read.d.ts.map +1 -0
  183. package/dist/schemas/outputs/read.js +39 -0
  184. package/dist/schemas/outputs/read.js.map +1 -0
  185. package/dist/schemas/outputs/search.d.ts +360 -0
  186. package/dist/schemas/outputs/search.d.ts.map +1 -0
  187. package/dist/schemas/outputs/search.js +98 -0
  188. package/dist/schemas/outputs/search.js.map +1 -0
  189. package/dist/schemas/outputs.d.ts +5 -933
  190. package/dist/schemas/outputs.d.ts.map +1 -1
  191. package/dist/schemas/outputs.js +5 -190
  192. package/dist/schemas/outputs.js.map +1 -1
  193. package/dist/server.d.ts.map +1 -1
  194. package/dist/server.js +24 -14
  195. package/dist/server.js.map +1 -1
  196. package/dist/tools/analyze-directory.d.ts.map +1 -1
  197. package/dist/tools/analyze-directory.js +2 -2
  198. package/dist/tools/analyze-directory.js.map +1 -1
  199. package/dist/tools/compute-checksums.d.ts +3 -0
  200. package/dist/tools/compute-checksums.d.ts.map +1 -0
  201. package/dist/tools/compute-checksums.js +77 -0
  202. package/dist/tools/compute-checksums.js.map +1 -0
  203. package/dist/tools/directory-tree.d.ts.map +1 -1
  204. package/dist/tools/directory-tree.js +6 -2
  205. package/dist/tools/directory-tree.js.map +1 -1
  206. package/dist/tools/get-multiple-file-info.d.ts +3 -0
  207. package/dist/tools/get-multiple-file-info.d.ts.map +1 -0
  208. package/dist/tools/get-multiple-file-info.js +95 -0
  209. package/dist/tools/get-multiple-file-info.js.map +1 -0
  210. package/dist/tools/index.d.ts.map +1 -1
  211. package/dist/tools/index.js +6 -0
  212. package/dist/tools/index.js.map +1 -1
  213. package/dist/tools/list-allowed-dirs.d.ts.map +1 -1
  214. package/dist/tools/list-allowed-dirs.js +14 -3
  215. package/dist/tools/list-allowed-dirs.js.map +1 -1
  216. package/dist/tools/list-directory.d.ts.map +1 -1
  217. package/dist/tools/list-directory.js +12 -4
  218. package/dist/tools/list-directory.js.map +1 -1
  219. package/dist/tools/read-file.d.ts.map +1 -1
  220. package/dist/tools/read-file.js +8 -0
  221. package/dist/tools/read-file.js.map +1 -1
  222. package/dist/tools/read-multiple-files.d.ts.map +1 -1
  223. package/dist/tools/read-multiple-files.js +10 -2
  224. package/dist/tools/read-multiple-files.js.map +1 -1
  225. package/dist/tools/search-definitions.d.ts +3 -0
  226. package/dist/tools/search-definitions.d.ts.map +1 -0
  227. package/dist/tools/search-definitions.js +130 -0
  228. package/dist/tools/search-definitions.js.map +1 -0
  229. package/dist/tools/search-files.d.ts.map +1 -1
  230. package/dist/tools/search-files.js +9 -4
  231. package/dist/tools/search-files.js.map +1 -1
  232. package/dist/tools/shared/search-formatting.d.ts.map +1 -1
  233. package/dist/tools/shared/search-formatting.js +4 -1
  234. package/dist/tools/shared/search-formatting.js.map +1 -1
  235. package/package.json +1 -1
@@ -0,0 +1,23 @@
1
+ import { z } from 'zod';
2
+ import { ErrorSchema } from '../common.js';
3
+ export const ComputeChecksumsOutputSchema = z.object({
4
+ ok: z.boolean(),
5
+ results: z
6
+ .array(z.object({
7
+ path: z.string(),
8
+ checksum: z.string().optional(),
9
+ algorithm: z.string(),
10
+ size: z.number().optional(),
11
+ error: z.string().optional(),
12
+ }))
13
+ .optional(),
14
+ summary: z
15
+ .object({
16
+ total: z.number(),
17
+ succeeded: z.number(),
18
+ failed: z.number(),
19
+ })
20
+ .optional(),
21
+ error: ErrorSchema.optional(),
22
+ });
23
+ //# sourceMappingURL=checksums.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checksums.js","sourceRoot":"","sources":["../../../src/schemas/outputs/checksums.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC,MAAM,CAAC;IACnD,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE;IACf,OAAO,EAAE,CAAC;SACP,KAAK,CACJ,CAAC,CAAC,MAAM,CAAC;QACP,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;QAChB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC/B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;QACrB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC3B,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;KAC7B,CAAC,CACH;SACA,QAAQ,EAAE;IACb,OAAO,EAAE,CAAC;SACP,MAAM,CAAC;QACN,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;QACjB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;QACrB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;KACnB,CAAC;SACD,QAAQ,EAAE;IACb,KAAK,EAAE,WAAW,CAAC,QAAQ,EAAE;CAC9B,CAAC,CAAC"}
@@ -0,0 +1,419 @@
1
+ import { z } from 'zod';
2
+ export declare const ListAllowedDirectoriesOutputSchema: z.ZodObject<{
3
+ ok: z.ZodBoolean;
4
+ allowedDirectories: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
5
+ count: z.ZodOptional<z.ZodNumber>;
6
+ accessStatus: z.ZodOptional<z.ZodArray<z.ZodObject<{
7
+ path: z.ZodString;
8
+ accessible: z.ZodBoolean;
9
+ readable: z.ZodBoolean;
10
+ }, "strip", z.ZodTypeAny, {
11
+ readable: boolean;
12
+ path: string;
13
+ accessible: boolean;
14
+ }, {
15
+ readable: boolean;
16
+ path: string;
17
+ accessible: boolean;
18
+ }>, "many">>;
19
+ hint: z.ZodOptional<z.ZodString>;
20
+ error: z.ZodOptional<z.ZodObject<{
21
+ code: z.ZodString;
22
+ message: z.ZodString;
23
+ path: z.ZodOptional<z.ZodString>;
24
+ suggestion: z.ZodOptional<z.ZodString>;
25
+ }, "strip", z.ZodTypeAny, {
26
+ code: string;
27
+ message: string;
28
+ path?: string | undefined;
29
+ suggestion?: string | undefined;
30
+ }, {
31
+ code: string;
32
+ message: string;
33
+ path?: string | undefined;
34
+ suggestion?: string | undefined;
35
+ }>>;
36
+ }, "strip", z.ZodTypeAny, {
37
+ ok: boolean;
38
+ error?: {
39
+ code: string;
40
+ message: string;
41
+ path?: string | undefined;
42
+ suggestion?: string | undefined;
43
+ } | undefined;
44
+ allowedDirectories?: string[] | undefined;
45
+ count?: number | undefined;
46
+ accessStatus?: {
47
+ readable: boolean;
48
+ path: string;
49
+ accessible: boolean;
50
+ }[] | undefined;
51
+ hint?: string | undefined;
52
+ }, {
53
+ ok: boolean;
54
+ error?: {
55
+ code: string;
56
+ message: string;
57
+ path?: string | undefined;
58
+ suggestion?: string | undefined;
59
+ } | undefined;
60
+ allowedDirectories?: string[] | undefined;
61
+ count?: number | undefined;
62
+ accessStatus?: {
63
+ readable: boolean;
64
+ path: string;
65
+ accessible: boolean;
66
+ }[] | undefined;
67
+ hint?: string | undefined;
68
+ }>;
69
+ export declare const ListDirectoryOutputSchema: z.ZodObject<{
70
+ ok: z.ZodBoolean;
71
+ path: z.ZodOptional<z.ZodString>;
72
+ entries: z.ZodOptional<z.ZodArray<z.ZodObject<{
73
+ name: z.ZodString;
74
+ relativePath: z.ZodOptional<z.ZodString>;
75
+ type: z.ZodEnum<["file", "directory", "symlink", "other"]>;
76
+ extension: z.ZodOptional<z.ZodString>;
77
+ size: z.ZodOptional<z.ZodNumber>;
78
+ modified: z.ZodOptional<z.ZodString>;
79
+ symlinkTarget: z.ZodOptional<z.ZodString>;
80
+ }, "strip", z.ZodTypeAny, {
81
+ type: "file" | "directory" | "symlink" | "other";
82
+ name: string;
83
+ size?: number | undefined;
84
+ modified?: string | undefined;
85
+ symlinkTarget?: string | undefined;
86
+ relativePath?: string | undefined;
87
+ extension?: string | undefined;
88
+ }, {
89
+ type: "file" | "directory" | "symlink" | "other";
90
+ name: string;
91
+ size?: number | undefined;
92
+ modified?: string | undefined;
93
+ symlinkTarget?: string | undefined;
94
+ relativePath?: string | undefined;
95
+ extension?: string | undefined;
96
+ }>, "many">>;
97
+ summary: z.ZodOptional<z.ZodObject<{
98
+ totalEntries: z.ZodOptional<z.ZodNumber>;
99
+ } & {
100
+ totalFiles: z.ZodNumber;
101
+ totalDirectories: z.ZodNumber;
102
+ maxDepthReached: z.ZodOptional<z.ZodNumber>;
103
+ truncated: z.ZodBoolean;
104
+ skippedInaccessible: z.ZodOptional<z.ZodNumber>;
105
+ symlinksNotFollowed: z.ZodOptional<z.ZodNumber>;
106
+ }, "strip", z.ZodTypeAny, {
107
+ truncated: boolean;
108
+ totalFiles: number;
109
+ totalDirectories: number;
110
+ skippedInaccessible?: number | undefined;
111
+ maxDepthReached?: number | undefined;
112
+ symlinksNotFollowed?: number | undefined;
113
+ totalEntries?: number | undefined;
114
+ }, {
115
+ truncated: boolean;
116
+ totalFiles: number;
117
+ totalDirectories: number;
118
+ skippedInaccessible?: number | undefined;
119
+ maxDepthReached?: number | undefined;
120
+ symlinksNotFollowed?: number | undefined;
121
+ totalEntries?: number | undefined;
122
+ }>>;
123
+ error: z.ZodOptional<z.ZodObject<{
124
+ code: z.ZodString;
125
+ message: z.ZodString;
126
+ path: z.ZodOptional<z.ZodString>;
127
+ suggestion: z.ZodOptional<z.ZodString>;
128
+ }, "strip", z.ZodTypeAny, {
129
+ code: string;
130
+ message: string;
131
+ path?: string | undefined;
132
+ suggestion?: string | undefined;
133
+ }, {
134
+ code: string;
135
+ message: string;
136
+ path?: string | undefined;
137
+ suggestion?: string | undefined;
138
+ }>>;
139
+ }, "strip", z.ZodTypeAny, {
140
+ ok: boolean;
141
+ entries?: {
142
+ type: "file" | "directory" | "symlink" | "other";
143
+ name: string;
144
+ size?: number | undefined;
145
+ modified?: string | undefined;
146
+ symlinkTarget?: string | undefined;
147
+ relativePath?: string | undefined;
148
+ extension?: string | undefined;
149
+ }[] | undefined;
150
+ error?: {
151
+ code: string;
152
+ message: string;
153
+ path?: string | undefined;
154
+ suggestion?: string | undefined;
155
+ } | undefined;
156
+ summary?: {
157
+ truncated: boolean;
158
+ totalFiles: number;
159
+ totalDirectories: number;
160
+ skippedInaccessible?: number | undefined;
161
+ maxDepthReached?: number | undefined;
162
+ symlinksNotFollowed?: number | undefined;
163
+ totalEntries?: number | undefined;
164
+ } | undefined;
165
+ path?: string | undefined;
166
+ }, {
167
+ ok: boolean;
168
+ entries?: {
169
+ type: "file" | "directory" | "symlink" | "other";
170
+ name: string;
171
+ size?: number | undefined;
172
+ modified?: string | undefined;
173
+ symlinkTarget?: string | undefined;
174
+ relativePath?: string | undefined;
175
+ extension?: string | undefined;
176
+ }[] | undefined;
177
+ error?: {
178
+ code: string;
179
+ message: string;
180
+ path?: string | undefined;
181
+ suggestion?: string | undefined;
182
+ } | undefined;
183
+ summary?: {
184
+ truncated: boolean;
185
+ totalFiles: number;
186
+ totalDirectories: number;
187
+ skippedInaccessible?: number | undefined;
188
+ maxDepthReached?: number | undefined;
189
+ symlinksNotFollowed?: number | undefined;
190
+ totalEntries?: number | undefined;
191
+ } | undefined;
192
+ path?: string | undefined;
193
+ }>;
194
+ export declare const AnalyzeDirectoryOutputSchema: z.ZodObject<{
195
+ ok: z.ZodBoolean;
196
+ path: z.ZodOptional<z.ZodString>;
197
+ totalFiles: z.ZodOptional<z.ZodNumber>;
198
+ totalDirectories: z.ZodOptional<z.ZodNumber>;
199
+ totalSize: z.ZodOptional<z.ZodNumber>;
200
+ fileTypes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNumber>>;
201
+ largestFiles: z.ZodOptional<z.ZodArray<z.ZodObject<{
202
+ path: z.ZodString;
203
+ size: z.ZodNumber;
204
+ }, "strip", z.ZodTypeAny, {
205
+ size: number;
206
+ path: string;
207
+ }, {
208
+ size: number;
209
+ path: string;
210
+ }>, "many">>;
211
+ recentlyModified: z.ZodOptional<z.ZodArray<z.ZodObject<{
212
+ path: z.ZodString;
213
+ modified: z.ZodString;
214
+ }, "strip", z.ZodTypeAny, {
215
+ path: string;
216
+ modified: string;
217
+ }, {
218
+ path: string;
219
+ modified: string;
220
+ }>, "many">>;
221
+ summary: z.ZodOptional<z.ZodObject<{
222
+ truncated: z.ZodOptional<z.ZodBoolean>;
223
+ skippedInaccessible: z.ZodOptional<z.ZodNumber>;
224
+ symlinksNotFollowed: z.ZodOptional<z.ZodNumber>;
225
+ }, "strip", z.ZodTypeAny, {
226
+ truncated?: boolean | undefined;
227
+ skippedInaccessible?: number | undefined;
228
+ symlinksNotFollowed?: number | undefined;
229
+ }, {
230
+ truncated?: boolean | undefined;
231
+ skippedInaccessible?: number | undefined;
232
+ symlinksNotFollowed?: number | undefined;
233
+ }>>;
234
+ error: z.ZodOptional<z.ZodObject<{
235
+ code: z.ZodString;
236
+ message: z.ZodString;
237
+ path: z.ZodOptional<z.ZodString>;
238
+ suggestion: z.ZodOptional<z.ZodString>;
239
+ }, "strip", z.ZodTypeAny, {
240
+ code: string;
241
+ message: string;
242
+ path?: string | undefined;
243
+ suggestion?: string | undefined;
244
+ }, {
245
+ code: string;
246
+ message: string;
247
+ path?: string | undefined;
248
+ suggestion?: string | undefined;
249
+ }>>;
250
+ }, "strip", z.ZodTypeAny, {
251
+ ok: boolean;
252
+ error?: {
253
+ code: string;
254
+ message: string;
255
+ path?: string | undefined;
256
+ suggestion?: string | undefined;
257
+ } | undefined;
258
+ summary?: {
259
+ truncated?: boolean | undefined;
260
+ skippedInaccessible?: number | undefined;
261
+ symlinksNotFollowed?: number | undefined;
262
+ } | undefined;
263
+ path?: string | undefined;
264
+ totalFiles?: number | undefined;
265
+ totalDirectories?: number | undefined;
266
+ totalSize?: number | undefined;
267
+ fileTypes?: Record<string, number> | undefined;
268
+ largestFiles?: {
269
+ size: number;
270
+ path: string;
271
+ }[] | undefined;
272
+ recentlyModified?: {
273
+ path: string;
274
+ modified: string;
275
+ }[] | undefined;
276
+ }, {
277
+ ok: boolean;
278
+ error?: {
279
+ code: string;
280
+ message: string;
281
+ path?: string | undefined;
282
+ suggestion?: string | undefined;
283
+ } | undefined;
284
+ summary?: {
285
+ truncated?: boolean | undefined;
286
+ skippedInaccessible?: number | undefined;
287
+ symlinksNotFollowed?: number | undefined;
288
+ } | undefined;
289
+ path?: string | undefined;
290
+ totalFiles?: number | undefined;
291
+ totalDirectories?: number | undefined;
292
+ totalSize?: number | undefined;
293
+ fileTypes?: Record<string, number> | undefined;
294
+ largestFiles?: {
295
+ size: number;
296
+ path: string;
297
+ }[] | undefined;
298
+ recentlyModified?: {
299
+ path: string;
300
+ modified: string;
301
+ }[] | undefined;
302
+ }>;
303
+ export declare const DirectoryTreeOutputSchema: z.ZodObject<{
304
+ ok: z.ZodBoolean;
305
+ tree: z.ZodOptional<z.ZodType<{
306
+ type: "file" | "directory";
307
+ name: string;
308
+ size?: number | undefined;
309
+ } & {
310
+ children?: ({
311
+ type: "file" | "directory";
312
+ name: string;
313
+ size?: number | undefined;
314
+ } & /*elided*/ any)[];
315
+ }, z.ZodTypeDef, {
316
+ type: "file" | "directory";
317
+ name: string;
318
+ size?: number | undefined;
319
+ } & {
320
+ children?: ({
321
+ type: "file" | "directory";
322
+ name: string;
323
+ size?: number | undefined;
324
+ } & /*elided*/ any)[];
325
+ }>>;
326
+ summary: z.ZodOptional<z.ZodObject<{
327
+ totalFiles: z.ZodNumber;
328
+ totalDirectories: z.ZodNumber;
329
+ maxDepthReached: z.ZodOptional<z.ZodNumber>;
330
+ truncated: z.ZodBoolean;
331
+ skippedInaccessible: z.ZodOptional<z.ZodNumber>;
332
+ symlinksNotFollowed: z.ZodOptional<z.ZodNumber>;
333
+ }, "strip", z.ZodTypeAny, {
334
+ truncated: boolean;
335
+ totalFiles: number;
336
+ totalDirectories: number;
337
+ skippedInaccessible?: number | undefined;
338
+ maxDepthReached?: number | undefined;
339
+ symlinksNotFollowed?: number | undefined;
340
+ }, {
341
+ truncated: boolean;
342
+ totalFiles: number;
343
+ totalDirectories: number;
344
+ skippedInaccessible?: number | undefined;
345
+ maxDepthReached?: number | undefined;
346
+ symlinksNotFollowed?: number | undefined;
347
+ }>>;
348
+ error: z.ZodOptional<z.ZodObject<{
349
+ code: z.ZodString;
350
+ message: z.ZodString;
351
+ path: z.ZodOptional<z.ZodString>;
352
+ suggestion: z.ZodOptional<z.ZodString>;
353
+ }, "strip", z.ZodTypeAny, {
354
+ code: string;
355
+ message: string;
356
+ path?: string | undefined;
357
+ suggestion?: string | undefined;
358
+ }, {
359
+ code: string;
360
+ message: string;
361
+ path?: string | undefined;
362
+ suggestion?: string | undefined;
363
+ }>>;
364
+ }, "strip", z.ZodTypeAny, {
365
+ ok: boolean;
366
+ error?: {
367
+ code: string;
368
+ message: string;
369
+ path?: string | undefined;
370
+ suggestion?: string | undefined;
371
+ } | undefined;
372
+ summary?: {
373
+ truncated: boolean;
374
+ totalFiles: number;
375
+ totalDirectories: number;
376
+ skippedInaccessible?: number | undefined;
377
+ maxDepthReached?: number | undefined;
378
+ symlinksNotFollowed?: number | undefined;
379
+ } | undefined;
380
+ tree?: ({
381
+ type: "file" | "directory";
382
+ name: string;
383
+ size?: number | undefined;
384
+ } & {
385
+ children?: ({
386
+ type: "file" | "directory";
387
+ name: string;
388
+ size?: number | undefined;
389
+ } & /*elided*/ any)[];
390
+ }) | undefined;
391
+ }, {
392
+ ok: boolean;
393
+ error?: {
394
+ code: string;
395
+ message: string;
396
+ path?: string | undefined;
397
+ suggestion?: string | undefined;
398
+ } | undefined;
399
+ summary?: {
400
+ truncated: boolean;
401
+ totalFiles: number;
402
+ totalDirectories: number;
403
+ skippedInaccessible?: number | undefined;
404
+ maxDepthReached?: number | undefined;
405
+ symlinksNotFollowed?: number | undefined;
406
+ } | undefined;
407
+ tree?: ({
408
+ type: "file" | "directory";
409
+ name: string;
410
+ size?: number | undefined;
411
+ } & {
412
+ children?: ({
413
+ type: "file" | "directory";
414
+ name: string;
415
+ size?: number | undefined;
416
+ } & /*elided*/ any)[];
417
+ }) | undefined;
418
+ }>;
419
+ //# sourceMappingURL=directory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"directory.d.ts","sourceRoot":"","sources":["../../../src/schemas/outputs/directory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,kCAAkC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgB7C,CAAC;AAEH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgCpC,CAAC;AAEH,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4BvC,CAAC;AAEH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAKpC,CAAC"}
@@ -0,0 +1,81 @@
1
+ import { z } from 'zod';
2
+ import { ErrorSchema, FileTypeSchema, TreeEntrySchema } from '../common.js';
3
+ import { TraversalSummarySchema } from '../output-helpers.js';
4
+ export const ListAllowedDirectoriesOutputSchema = z.object({
5
+ ok: z.boolean(),
6
+ allowedDirectories: z.array(z.string()).optional(),
7
+ count: z.number().optional().describe('Number of allowed directories'),
8
+ accessStatus: z
9
+ .array(z.object({
10
+ path: z.string(),
11
+ accessible: z.boolean().describe('Whether the directory exists'),
12
+ readable: z.boolean().describe('Whether the directory is readable'),
13
+ }))
14
+ .optional()
15
+ .describe('Access status for each allowed directory'),
16
+ hint: z.string().optional().describe('Usage hint based on configuration'),
17
+ error: ErrorSchema.optional(),
18
+ });
19
+ export const ListDirectoryOutputSchema = z.object({
20
+ ok: z.boolean(),
21
+ path: z.string().optional(),
22
+ entries: z
23
+ .array(z.object({
24
+ name: z.string().describe('Entry name (basename)'),
25
+ relativePath: z
26
+ .string()
27
+ .optional()
28
+ .describe('Relative path from the listed base directory'),
29
+ type: FileTypeSchema,
30
+ extension: z
31
+ .string()
32
+ .optional()
33
+ .describe('File extension without dot (e.g., "ts", "json")'),
34
+ size: z.number().optional(),
35
+ modified: z.string().optional(),
36
+ symlinkTarget: z
37
+ .string()
38
+ .optional()
39
+ .describe('Target path for symbolic links'),
40
+ }))
41
+ .optional(),
42
+ summary: z
43
+ .object({
44
+ totalEntries: z.number().optional(),
45
+ })
46
+ .merge(TraversalSummarySchema)
47
+ .optional(),
48
+ error: ErrorSchema.optional(),
49
+ });
50
+ export const AnalyzeDirectoryOutputSchema = z.object({
51
+ ok: z.boolean(),
52
+ path: z.string().optional(),
53
+ totalFiles: z.number().optional(),
54
+ totalDirectories: z.number().optional(),
55
+ totalSize: z.number().optional(),
56
+ fileTypes: z.record(z.number()).optional(),
57
+ largestFiles: z
58
+ .array(z.object({ path: z.string().describe('Relative path'), size: z.number() }))
59
+ .optional(),
60
+ recentlyModified: z
61
+ .array(z.object({
62
+ path: z.string().describe('Relative path'),
63
+ modified: z.string(),
64
+ }))
65
+ .optional(),
66
+ summary: z
67
+ .object({
68
+ truncated: z.boolean().optional(),
69
+ skippedInaccessible: z.number().optional(),
70
+ symlinksNotFollowed: z.number().optional(),
71
+ })
72
+ .optional(),
73
+ error: ErrorSchema.optional(),
74
+ });
75
+ export const DirectoryTreeOutputSchema = z.object({
76
+ ok: z.boolean(),
77
+ tree: TreeEntrySchema.optional(),
78
+ summary: TraversalSummarySchema.optional(),
79
+ error: ErrorSchema.optional(),
80
+ });
81
+ //# sourceMappingURL=directory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"directory.js","sourceRoot":"","sources":["../../../src/schemas/outputs/directory.ts"],"names":[],"mappings":"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"}