@procedures/fs 0.0.0-stage → 0.1.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.
- package/CHANGELOG.md +5 -0
- package/LICENSE +21 -0
- package/README.md +895 -2
- package/dist/.tsbuildinfo +1 -0
- package/dist/index.d.ts +17 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +17 -0
- package/dist/index.js.map +1 -0
- package/dist/module.d.ts +16 -0
- package/dist/module.d.ts.map +1 -0
- package/dist/module.js +178 -0
- package/dist/module.js.map +1 -0
- package/dist/procedures/fs/copy.d.ts +11 -0
- package/dist/procedures/fs/copy.d.ts.map +1 -0
- package/dist/procedures/fs/copy.js +21 -0
- package/dist/procedures/fs/copy.js.map +1 -0
- package/dist/procedures/fs/exists.d.ts +11 -0
- package/dist/procedures/fs/exists.d.ts.map +1 -0
- package/dist/procedures/fs/exists.js +20 -0
- package/dist/procedures/fs/exists.js.map +1 -0
- package/dist/procedures/fs/glob.d.ts +17 -0
- package/dist/procedures/fs/glob.d.ts.map +1 -0
- package/dist/procedures/fs/glob.js +85 -0
- package/dist/procedures/fs/glob.js.map +1 -0
- package/dist/procedures/fs/index.d.ts +12 -0
- package/dist/procedures/fs/index.d.ts.map +1 -0
- package/dist/procedures/fs/index.js +12 -0
- package/dist/procedures/fs/index.js.map +1 -0
- package/dist/procedures/fs/json.d.ts +11 -0
- package/dist/procedures/fs/json.d.ts.map +1 -0
- package/dist/procedures/fs/json.js +16 -0
- package/dist/procedures/fs/json.js.map +1 -0
- package/dist/procedures/fs/mkdir.d.ts +11 -0
- package/dist/procedures/fs/mkdir.d.ts.map +1 -0
- package/dist/procedures/fs/mkdir.js +39 -0
- package/dist/procedures/fs/mkdir.js.map +1 -0
- package/dist/procedures/fs/move.d.ts +11 -0
- package/dist/procedures/fs/move.d.ts.map +1 -0
- package/dist/procedures/fs/move.js +46 -0
- package/dist/procedures/fs/move.js.map +1 -0
- package/dist/procedures/fs/read.d.ts +11 -0
- package/dist/procedures/fs/read.d.ts.map +1 -0
- package/dist/procedures/fs/read.js +21 -0
- package/dist/procedures/fs/read.js.map +1 -0
- package/dist/procedures/fs/readdir.d.ts +11 -0
- package/dist/procedures/fs/readdir.d.ts.map +1 -0
- package/dist/procedures/fs/readdir.js +38 -0
- package/dist/procedures/fs/readdir.js.map +1 -0
- package/dist/procedures/fs/rm.d.ts +11 -0
- package/dist/procedures/fs/rm.d.ts.map +1 -0
- package/dist/procedures/fs/rm.js +30 -0
- package/dist/procedures/fs/rm.js.map +1 -0
- package/dist/procedures/fs/stat.d.ts +11 -0
- package/dist/procedures/fs/stat.d.ts.map +1 -0
- package/dist/procedures/fs/stat.js +29 -0
- package/dist/procedures/fs/stat.js.map +1 -0
- package/dist/procedures/fs/write.d.ts +11 -0
- package/dist/procedures/fs/write.d.ts.map +1 -0
- package/dist/procedures/fs/write.js +24 -0
- package/dist/procedures/fs/write.js.map +1 -0
- package/dist/procedures/fs.d.ts +5 -0
- package/dist/procedures/fs.d.ts.map +1 -0
- package/dist/procedures/fs.js +5 -0
- package/dist/procedures/fs.js.map +1 -0
- package/dist/register.d.ts +8 -0
- package/dist/register.d.ts.map +1 -0
- package/dist/register.js +14 -0
- package/dist/register.js.map +1 -0
- package/dist/types.d.ts +187 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +197 -0
- package/dist/types.js.map +1 -0
- package/package.json +74 -3
- package/src/index.ts +17 -0
- package/src/module.ts +238 -0
- package/src/procedures/fs/copy.ts +24 -0
- package/src/procedures/fs/exists.ts +20 -0
- package/src/procedures/fs/glob.ts +92 -0
- package/src/procedures/fs/index.ts +11 -0
- package/src/procedures/fs/json.ts +21 -0
- package/src/procedures/fs/mkdir.ts +43 -0
- package/src/procedures/fs/move.ts +47 -0
- package/src/procedures/fs/read.ts +23 -0
- package/src/procedures/fs/readdir.ts +44 -0
- package/src/procedures/fs/rm.ts +31 -0
- package/src/procedures/fs/stat.ts +30 -0
- package/src/procedures/fs/write.ts +27 -0
- package/src/procedures/fs.ts +5 -0
- package/src/register.ts +17 -0
- package/src/types.ts +407 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"write.d.ts","sourceRoot":"","sources":["../../../src/procedures/fs/write.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE9D;;GAEG;AACH,wBAAsB,KAAK,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC,CAcnE"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* write procedure
|
|
3
|
+
*
|
|
4
|
+
* Write content to file
|
|
5
|
+
*/
|
|
6
|
+
import { writeFile, appendFile } from "node:fs/promises";
|
|
7
|
+
/**
|
|
8
|
+
* Write content to file
|
|
9
|
+
*/
|
|
10
|
+
export async function write(input) {
|
|
11
|
+
const { path, content, encoding, mode } = input;
|
|
12
|
+
const writeOptions = { encoding: encoding };
|
|
13
|
+
if (mode === "append") {
|
|
14
|
+
await appendFile(path, content, writeOptions);
|
|
15
|
+
}
|
|
16
|
+
else {
|
|
17
|
+
await writeFile(path, content, writeOptions);
|
|
18
|
+
}
|
|
19
|
+
return {
|
|
20
|
+
path,
|
|
21
|
+
bytesWritten: Buffer.byteLength(content, encoding),
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=write.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"write.js","sourceRoot":"","sources":["../../../src/procedures/fs/write.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAGzD;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,KAAK,CAAC,KAAiB;IAC3C,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC;IAChD,MAAM,YAAY,GAAG,EAAE,QAAQ,EAAE,QAA0B,EAAE,CAAC;IAE9D,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;QACtB,MAAM,UAAU,CAAC,IAAI,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;IAChD,CAAC;SAAM,CAAC;QACN,MAAM,SAAS,CAAC,IAAI,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;IAC/C,CAAC;IAED,OAAO;QACL,IAAI;QACJ,YAAY,EAAE,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,QAA0B,CAAC;KACrE,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fs.d.ts","sourceRoot":"","sources":["../../src/procedures/fs.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,eAAe,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fs.js","sourceRoot":"","sources":["../../src/procedures/fs.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,eAAe,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Importing this file registers the procedures of @procedures/fs in the global registry
|
|
3
|
+
* (DECISIONS-2026-10, "Every package root registers its procedures"). The procedures as data
|
|
4
|
+
* are in `module.ts`, which registers nothing: a host with its own registry uses that one.
|
|
5
|
+
*/
|
|
6
|
+
export * from "./module.js";
|
|
7
|
+
export declare function registerFsProcedures(): void;
|
|
8
|
+
//# sourceMappingURL=register.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"register.d.ts","sourceRoot":"","sources":["../src/register.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,cAAc,aAAa,CAAC;AAE5B,wBAAgB,oBAAoB,IAAI,IAAI,CAE3C"}
|
package/dist/register.js
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Importing this file registers the procedures of @procedures/fs in the global registry
|
|
3
|
+
* (DECISIONS-2026-10, "Every package root registers its procedures"). The procedures as data
|
|
4
|
+
* are in `module.ts`, which registers nothing: a host with its own registry uses that one.
|
|
5
|
+
*/
|
|
6
|
+
import { registerProcedures } from "@procedures/client";
|
|
7
|
+
import { fsModule } from "./module.js";
|
|
8
|
+
export * from "./module.js";
|
|
9
|
+
export function registerFsProcedures() {
|
|
10
|
+
registerProcedures(fsModule.procedures);
|
|
11
|
+
}
|
|
12
|
+
// Auto-register when this module is loaded
|
|
13
|
+
registerFsProcedures();
|
|
14
|
+
//# sourceMappingURL=register.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"register.js","sourceRoot":"","sources":["../src/register.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,cAAc,aAAa,CAAC;AAE5B,MAAM,UAAU,oBAAoB;IAClC,kBAAkB,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;AAC1C,CAAC;AAED,2CAA2C;AAC3C,oBAAoB,EAAE,CAAC"}
|
package/dist/types.d.ts
ADDED
|
@@ -0,0 +1,187 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Type definitions for client-fs procedures
|
|
3
|
+
*/
|
|
4
|
+
import type { Stats } from "node:fs";
|
|
5
|
+
import { z } from "zod";
|
|
6
|
+
export declare const ReadInputSchema: z.ZodObject<{
|
|
7
|
+
path: z.ZodString;
|
|
8
|
+
encoding: z.ZodDefault<z.ZodOptional<z.ZodString>>;
|
|
9
|
+
}>;
|
|
10
|
+
export type ReadInput = z.infer<typeof ReadInputSchema>;
|
|
11
|
+
export interface ReadOutput {
|
|
12
|
+
/** File content */
|
|
13
|
+
content: string;
|
|
14
|
+
/** File path */
|
|
15
|
+
path: string;
|
|
16
|
+
/** File size in bytes */
|
|
17
|
+
stats: StatOutput;
|
|
18
|
+
}
|
|
19
|
+
export declare const WriteInputSchema: z.ZodObject<{
|
|
20
|
+
path: z.ZodString;
|
|
21
|
+
content: z.ZodString;
|
|
22
|
+
encoding: z.ZodDefault<z.ZodOptional<z.ZodString>>;
|
|
23
|
+
mode: z.ZodDefault<z.ZodOptional<z.ZodEnum<{
|
|
24
|
+
write: "write";
|
|
25
|
+
append: "append";
|
|
26
|
+
}>>>;
|
|
27
|
+
}>;
|
|
28
|
+
export type WriteInput = z.infer<typeof WriteInputSchema>;
|
|
29
|
+
export interface WriteOutput {
|
|
30
|
+
/** File path that was written */
|
|
31
|
+
path: string;
|
|
32
|
+
/** Bytes written */
|
|
33
|
+
bytesWritten: number;
|
|
34
|
+
}
|
|
35
|
+
export declare const FileTypeInputSchema: z.ZodObject<{
|
|
36
|
+
path: z.ZodString;
|
|
37
|
+
}>;
|
|
38
|
+
export type FileTypeInput = z.infer<typeof FileTypeInputSchema>;
|
|
39
|
+
export interface FileTypeOutput {
|
|
40
|
+
/** Path that was checked */
|
|
41
|
+
path: string;
|
|
42
|
+
/** Type if exists: file, directory, or other */
|
|
43
|
+
type: FileType;
|
|
44
|
+
stats: Stats;
|
|
45
|
+
}
|
|
46
|
+
export declare const ExistsInputSchema: z.ZodObject<{
|
|
47
|
+
path: z.ZodString;
|
|
48
|
+
}>;
|
|
49
|
+
export type ExistsInput = z.infer<typeof ExistsInputSchema>;
|
|
50
|
+
export declare enum FileType {
|
|
51
|
+
File = "file",
|
|
52
|
+
Directory = "directory",
|
|
53
|
+
Other = "other"
|
|
54
|
+
}
|
|
55
|
+
export type ExistsOutput = {
|
|
56
|
+
exists: false;
|
|
57
|
+
} | {
|
|
58
|
+
exists: true;
|
|
59
|
+
stats: StatOutput;
|
|
60
|
+
};
|
|
61
|
+
export declare const MkdirInputSchema: z.ZodObject<{
|
|
62
|
+
path: z.ZodString;
|
|
63
|
+
recursive: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
64
|
+
}>;
|
|
65
|
+
export type MkdirInput = z.infer<typeof MkdirInputSchema>;
|
|
66
|
+
export interface MkdirOutput {
|
|
67
|
+
/** Path that was created */
|
|
68
|
+
path: string;
|
|
69
|
+
/** Whether the directory was created (false if already existed) */
|
|
70
|
+
created: boolean;
|
|
71
|
+
}
|
|
72
|
+
export declare const RmInputSchema: z.ZodObject<{
|
|
73
|
+
path: z.ZodString;
|
|
74
|
+
recursive: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
75
|
+
force: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
76
|
+
}>;
|
|
77
|
+
export type RmInput = z.infer<typeof RmInputSchema>;
|
|
78
|
+
export interface RmOutput {
|
|
79
|
+
/** Path that was removed */
|
|
80
|
+
path: string;
|
|
81
|
+
/** Whether something was removed (false if didn't exist with force=true) */
|
|
82
|
+
removed: boolean;
|
|
83
|
+
}
|
|
84
|
+
export declare const ReaddirInputSchema: z.ZodObject<{
|
|
85
|
+
path: z.ZodString;
|
|
86
|
+
recursive: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
87
|
+
includeStats: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
88
|
+
}>;
|
|
89
|
+
export type ReaddirInput = z.infer<typeof ReaddirInputSchema>;
|
|
90
|
+
export interface ReaddirEntry {
|
|
91
|
+
/** Entry name */
|
|
92
|
+
name: string;
|
|
93
|
+
/** Full path */
|
|
94
|
+
path: string;
|
|
95
|
+
/** Type: file, directory, or other */
|
|
96
|
+
type: FileType;
|
|
97
|
+
/** Stats if includeStats was true */
|
|
98
|
+
stats?: StatOutput | undefined;
|
|
99
|
+
}
|
|
100
|
+
export interface ReaddirOutput {
|
|
101
|
+
/** Directory path */
|
|
102
|
+
path: string;
|
|
103
|
+
/** Directory entries */
|
|
104
|
+
entries: ReaddirEntry[];
|
|
105
|
+
}
|
|
106
|
+
export declare const StatInputSchema: z.ZodObject<{
|
|
107
|
+
path: z.ZodString;
|
|
108
|
+
}>;
|
|
109
|
+
export type StatInput = z.infer<typeof StatInputSchema>;
|
|
110
|
+
export interface StatOutput {
|
|
111
|
+
/** Path */
|
|
112
|
+
path: string;
|
|
113
|
+
/** Type: file, directory, or other */
|
|
114
|
+
type: FileType;
|
|
115
|
+
/** Size in bytes */
|
|
116
|
+
size: number;
|
|
117
|
+
/** Last modified time (ISO string) */
|
|
118
|
+
mtime: string;
|
|
119
|
+
/** Creation time (ISO string) */
|
|
120
|
+
ctime: string;
|
|
121
|
+
/** Last access time (ISO string) */
|
|
122
|
+
atime: string;
|
|
123
|
+
/** Unix mode/permissions */
|
|
124
|
+
mode: number;
|
|
125
|
+
}
|
|
126
|
+
export declare const CopyInputSchema: z.ZodObject<{
|
|
127
|
+
src: z.ZodString;
|
|
128
|
+
dest: z.ZodString;
|
|
129
|
+
recursive: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
130
|
+
overwrite: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
131
|
+
}>;
|
|
132
|
+
export type CopyInput = z.infer<typeof CopyInputSchema>;
|
|
133
|
+
export interface CopyOutput {
|
|
134
|
+
/** Source path */
|
|
135
|
+
src: string;
|
|
136
|
+
/** Destination path */
|
|
137
|
+
dest: string;
|
|
138
|
+
}
|
|
139
|
+
export declare const MoveInputSchema: z.ZodObject<{
|
|
140
|
+
src: z.ZodString;
|
|
141
|
+
dest: z.ZodString;
|
|
142
|
+
overwrite: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
143
|
+
}>;
|
|
144
|
+
export type MoveInput = z.infer<typeof MoveInputSchema>;
|
|
145
|
+
export interface MoveOutput {
|
|
146
|
+
/** Source path (original) */
|
|
147
|
+
src: string;
|
|
148
|
+
/** Destination path (new location) */
|
|
149
|
+
dest: string;
|
|
150
|
+
}
|
|
151
|
+
export declare const GlobInputSchema: z.ZodObject<{
|
|
152
|
+
pattern: z.ZodString;
|
|
153
|
+
cwd: z.ZodOptional<z.ZodString>;
|
|
154
|
+
absolute: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
155
|
+
dot: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
156
|
+
ignore: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
157
|
+
}>;
|
|
158
|
+
export type GlobInput = z.infer<typeof GlobInputSchema>;
|
|
159
|
+
export interface GlobOutput {
|
|
160
|
+
/** Glob pattern used */
|
|
161
|
+
pattern: string;
|
|
162
|
+
/** Matching paths, sorted: relative to `cwd` with "/" separators, or absolute with `absolute: true` */
|
|
163
|
+
matches: string[];
|
|
164
|
+
}
|
|
165
|
+
export declare const ReadJsonInputSchema: z.ZodObject<{
|
|
166
|
+
path: z.ZodString;
|
|
167
|
+
}>;
|
|
168
|
+
export type ReadJsonInput = z.infer<typeof ReadJsonInputSchema>;
|
|
169
|
+
export interface ReadJsonOutput {
|
|
170
|
+
/** File path */
|
|
171
|
+
path: string;
|
|
172
|
+
/** Parsed JSON data */
|
|
173
|
+
data: unknown;
|
|
174
|
+
stats: StatOutput;
|
|
175
|
+
}
|
|
176
|
+
export declare const StatOutputSchema: z.ZodType<StatOutput>;
|
|
177
|
+
export declare const ReadOutputSchema: z.ZodType<ReadOutput>;
|
|
178
|
+
export declare const WriteOutputSchema: z.ZodType<WriteOutput>;
|
|
179
|
+
export declare const ExistsOutputSchema: z.ZodType<ExistsOutput>;
|
|
180
|
+
export declare const MkdirOutputSchema: z.ZodType<MkdirOutput>;
|
|
181
|
+
export declare const RmOutputSchema: z.ZodType<RmOutput>;
|
|
182
|
+
export declare const ReaddirOutputSchema: z.ZodType<ReaddirOutput>;
|
|
183
|
+
export declare const CopyOutputSchema: z.ZodType<CopyOutput>;
|
|
184
|
+
export declare const MoveOutputSchema: z.ZodType<MoveOutput>;
|
|
185
|
+
export declare const GlobOutputSchema: z.ZodType<GlobOutput>;
|
|
186
|
+
export declare const ReadJsonOutputSchema: z.ZodType<ReadJsonOutput>;
|
|
187
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/types.js
ADDED
|
@@ -0,0 +1,197 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Type definitions for client-fs procedures
|
|
3
|
+
*/
|
|
4
|
+
import { z } from "zod";
|
|
5
|
+
// =============================================================================
|
|
6
|
+
// read Types - Read file contents
|
|
7
|
+
// =============================================================================
|
|
8
|
+
export const ReadInputSchema = z.object({
|
|
9
|
+
/** Path to file to read */
|
|
10
|
+
path: z.string().describe("Path to file to read"),
|
|
11
|
+
/** File encoding (default: utf8) */
|
|
12
|
+
encoding: z.string().optional().default("utf8").describe("File encoding (default: utf8)"),
|
|
13
|
+
});
|
|
14
|
+
// =============================================================================
|
|
15
|
+
// write Types - Write content to file
|
|
16
|
+
// =============================================================================
|
|
17
|
+
export const WriteInputSchema = z.object({
|
|
18
|
+
/** Path to file to write */
|
|
19
|
+
path: z.string().describe("Path to file to write"),
|
|
20
|
+
/** Content to write */
|
|
21
|
+
content: z.string().describe("Content to write"),
|
|
22
|
+
/** File encoding (default: utf8) */
|
|
23
|
+
encoding: z.string().optional().default("utf8").describe("File encoding (default: utf8)"),
|
|
24
|
+
/** Write mode: write (overwrite) or append (default: write) */
|
|
25
|
+
mode: z.enum(["write", "append"]).optional().default("write").describe("Write mode: write (overwrite) or append (default: write)"),
|
|
26
|
+
});
|
|
27
|
+
export const FileTypeInputSchema = z.object({
|
|
28
|
+
/** Path to check */
|
|
29
|
+
path: z.string().describe("Path to check"),
|
|
30
|
+
});
|
|
31
|
+
// =============================================================================
|
|
32
|
+
// exists Types - Check if file or directory exists
|
|
33
|
+
// =============================================================================
|
|
34
|
+
export const ExistsInputSchema = z.object({
|
|
35
|
+
/** Path to check */
|
|
36
|
+
path: z.string().describe("Path to check"),
|
|
37
|
+
});
|
|
38
|
+
export var FileType;
|
|
39
|
+
(function (FileType) {
|
|
40
|
+
FileType["File"] = "file";
|
|
41
|
+
FileType["Directory"] = "directory";
|
|
42
|
+
FileType["Other"] = "other";
|
|
43
|
+
})(FileType || (FileType = {}));
|
|
44
|
+
// =============================================================================
|
|
45
|
+
// mkdir Types - Create directory
|
|
46
|
+
// =============================================================================
|
|
47
|
+
export const MkdirInputSchema = z.object({
|
|
48
|
+
/** Path of directory to create */
|
|
49
|
+
path: z.string().describe("Path of directory to create"),
|
|
50
|
+
/** Create parent directories if needed (default: true) */
|
|
51
|
+
recursive: z.boolean().optional().default(true).describe("Create parent directories if needed (default: true)"),
|
|
52
|
+
});
|
|
53
|
+
// =============================================================================
|
|
54
|
+
// rm Types - Remove file or directory
|
|
55
|
+
// =============================================================================
|
|
56
|
+
export const RmInputSchema = z.object({
|
|
57
|
+
/** Path to remove */
|
|
58
|
+
path: z.string().describe("Path to remove"),
|
|
59
|
+
/** Remove directories and contents recursively (default: false) */
|
|
60
|
+
recursive: z.boolean().optional().default(false).describe("Remove directories and contents recursively (default: false)"),
|
|
61
|
+
/** Ignore errors if path doesn't exist (default: false) */
|
|
62
|
+
force: z.boolean().optional().default(false).describe("Ignore errors if path doesn't exist (default: false)"),
|
|
63
|
+
});
|
|
64
|
+
// =============================================================================
|
|
65
|
+
// readdir Types - Read directory contents
|
|
66
|
+
// =============================================================================
|
|
67
|
+
export const ReaddirInputSchema = z.object({
|
|
68
|
+
/** Path of directory to read */
|
|
69
|
+
path: z.string().describe("Path of directory to read"),
|
|
70
|
+
/** Read subdirectories recursively (default: false) */
|
|
71
|
+
recursive: z.boolean().optional().default(false).describe("Read subdirectories recursively (default: false)"),
|
|
72
|
+
/** Include file stats with each entry (default: false) */
|
|
73
|
+
includeStats: z.boolean().optional().default(false).describe("Include file stats with each entry (default: false)"),
|
|
74
|
+
});
|
|
75
|
+
// =============================================================================
|
|
76
|
+
// stat Types - Get file or directory stats
|
|
77
|
+
// =============================================================================
|
|
78
|
+
export const StatInputSchema = z.object({
|
|
79
|
+
/** Path to get stats for */
|
|
80
|
+
path: z.string().describe("Path to get stats for"),
|
|
81
|
+
});
|
|
82
|
+
// =============================================================================
|
|
83
|
+
// copy Types - Copy file or directory
|
|
84
|
+
// =============================================================================
|
|
85
|
+
export const CopyInputSchema = z.object({
|
|
86
|
+
/** Source path */
|
|
87
|
+
src: z.string().describe("Source path"),
|
|
88
|
+
/** Destination path */
|
|
89
|
+
dest: z.string().describe("Destination path"),
|
|
90
|
+
/** Copy directories recursively (default: true) */
|
|
91
|
+
recursive: z.boolean().optional().default(true).describe("Copy directories recursively (default: true)"),
|
|
92
|
+
/** Overwrite existing files (default: false) */
|
|
93
|
+
overwrite: z.boolean().optional().default(false).describe("Overwrite existing files (default: false)"),
|
|
94
|
+
});
|
|
95
|
+
// =============================================================================
|
|
96
|
+
// move Types - Move or rename file/directory
|
|
97
|
+
// =============================================================================
|
|
98
|
+
export const MoveInputSchema = z.object({
|
|
99
|
+
/** Source path */
|
|
100
|
+
src: z.string().describe("Source path"),
|
|
101
|
+
/** Destination path */
|
|
102
|
+
dest: z.string().describe("Destination path"),
|
|
103
|
+
/** Overwrite existing files (default: false) */
|
|
104
|
+
overwrite: z.boolean().optional().default(false).describe("Overwrite existing files (default: false)"),
|
|
105
|
+
});
|
|
106
|
+
// =============================================================================
|
|
107
|
+
// glob Types - Find files matching glob pattern
|
|
108
|
+
// =============================================================================
|
|
109
|
+
export const GlobInputSchema = z.object({
|
|
110
|
+
/** Glob pattern to match */
|
|
111
|
+
pattern: z.string().describe("Glob pattern to match"),
|
|
112
|
+
/** Working directory (default: process.cwd()) */
|
|
113
|
+
cwd: z.string().optional().describe("Working directory (default: process.cwd())"),
|
|
114
|
+
/** Return absolute paths (default: false) */
|
|
115
|
+
absolute: z.boolean().optional().default(false).describe("Return absolute paths (default: false)"),
|
|
116
|
+
/** Include dotfiles (default: false) */
|
|
117
|
+
dot: z.boolean().optional().default(false).describe("Include dotfiles (default: false)"),
|
|
118
|
+
/** Glob patterns of the paths to leave out. The search does not enter the folders that they match. */
|
|
119
|
+
ignore: z.array(z.string()).optional().describe("Glob patterns of the paths to leave out. The search does not enter the folders that they match."),
|
|
120
|
+
});
|
|
121
|
+
// =============================================================================
|
|
122
|
+
// read.json Types - Read and parse JSON file
|
|
123
|
+
// =============================================================================
|
|
124
|
+
export const ReadJsonInputSchema = z.object({
|
|
125
|
+
/** Path to JSON file */
|
|
126
|
+
path: z.string().describe("Path to JSON file"),
|
|
127
|
+
});
|
|
128
|
+
// =============================================================================
|
|
129
|
+
// Output schemas (roadmap 2.1)
|
|
130
|
+
// =============================================================================
|
|
131
|
+
// Loose objects: a field that a schema does not name stays in the result (a strict schema would
|
|
132
|
+
// remove it when the output is validated).
|
|
133
|
+
const fileType = z.enum(FileType).describe("file, directory or other");
|
|
134
|
+
export const StatOutputSchema = z.looseObject({
|
|
135
|
+
path: z.string().describe("The path"),
|
|
136
|
+
type: fileType,
|
|
137
|
+
size: z.number().describe("The size, in bytes"),
|
|
138
|
+
mtime: z.string().describe("The time of the last change (ISO 8601)"),
|
|
139
|
+
ctime: z.string().describe("The time of the last status change (ISO 8601)"),
|
|
140
|
+
atime: z.string().describe("The time of the last access (ISO 8601)"),
|
|
141
|
+
mode: z.number().describe("The mode bits (type and permissions)"),
|
|
142
|
+
});
|
|
143
|
+
export const ReadOutputSchema = z.looseObject({
|
|
144
|
+
content: z.string().describe("The content of the file"),
|
|
145
|
+
path: z.string().describe("The path of the file"),
|
|
146
|
+
stats: StatOutputSchema.describe("The stats of the file"),
|
|
147
|
+
});
|
|
148
|
+
export const WriteOutputSchema = z.looseObject({
|
|
149
|
+
path: z.string().describe("The path of the file"),
|
|
150
|
+
bytesWritten: z.number().describe("The number of bytes written"),
|
|
151
|
+
});
|
|
152
|
+
export const ExistsOutputSchema = z.union([
|
|
153
|
+
z.looseObject({ exists: z.literal(false).describe("The path does not exist") }),
|
|
154
|
+
z.looseObject({
|
|
155
|
+
exists: z.literal(true).describe("The path exists"),
|
|
156
|
+
stats: StatOutputSchema.describe("The stats of the path"),
|
|
157
|
+
}),
|
|
158
|
+
]);
|
|
159
|
+
export const MkdirOutputSchema = z.looseObject({
|
|
160
|
+
path: z.string().describe("The path of the folder"),
|
|
161
|
+
created: z.boolean().describe("False when the folder existed already"),
|
|
162
|
+
});
|
|
163
|
+
export const RmOutputSchema = z.looseObject({
|
|
164
|
+
path: z.string().describe("The path"),
|
|
165
|
+
removed: z.boolean().describe("False when the path did not exist (with force)"),
|
|
166
|
+
});
|
|
167
|
+
export const ReaddirOutputSchema = z.looseObject({
|
|
168
|
+
path: z.string().describe("The path of the folder"),
|
|
169
|
+
entries: z
|
|
170
|
+
.array(z.looseObject({
|
|
171
|
+
name: z.string().describe("The name of the entry"),
|
|
172
|
+
path: z.string().describe("The full path of the entry"),
|
|
173
|
+
type: fileType,
|
|
174
|
+
stats: StatOutputSchema.optional().describe("The stats, with includeStats"),
|
|
175
|
+
}))
|
|
176
|
+
.describe("The entries of the folder"),
|
|
177
|
+
});
|
|
178
|
+
export const CopyOutputSchema = z.looseObject({
|
|
179
|
+
src: z.string().describe("The source path"),
|
|
180
|
+
dest: z.string().describe("The destination path"),
|
|
181
|
+
});
|
|
182
|
+
export const MoveOutputSchema = z.looseObject({
|
|
183
|
+
src: z.string().describe("The old path"),
|
|
184
|
+
dest: z.string().describe("The new path"),
|
|
185
|
+
});
|
|
186
|
+
export const GlobOutputSchema = z.looseObject({
|
|
187
|
+
pattern: z.string().describe("The glob pattern"),
|
|
188
|
+
matches: z
|
|
189
|
+
.array(z.string())
|
|
190
|
+
.describe('The matching paths, sorted: relative to cwd with "/" separators, or absolute with absolute: true'),
|
|
191
|
+
});
|
|
192
|
+
export const ReadJsonOutputSchema = z.looseObject({
|
|
193
|
+
path: z.string().describe("The path of the file"),
|
|
194
|
+
data: z.unknown().describe("The parsed JSON value"),
|
|
195
|
+
stats: StatOutputSchema.describe("The stats of the file"),
|
|
196
|
+
});
|
|
197
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,77 @@
|
|
|
1
1
|
{
|
|
2
|
+
"$schema": "https://json.schemastore.org/package",
|
|
2
3
|
"name": "@procedures/fs",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"
|
|
5
|
-
"
|
|
4
|
+
"version": "0.1.0",
|
|
5
|
+
"description": "File system procedures: read, write, copy, move, glob, exists, mkdir and JSON read and write, callable in process, over RPC or from Claude through MCP.",
|
|
6
|
+
"keywords": [
|
|
7
|
+
"filesystem",
|
|
8
|
+
"fs",
|
|
9
|
+
"glob",
|
|
10
|
+
"files",
|
|
11
|
+
"procedures",
|
|
12
|
+
"rpc"
|
|
13
|
+
],
|
|
14
|
+
"homepage": "https://mark1russell7.github.io/client/",
|
|
15
|
+
"bugs": {
|
|
16
|
+
"url": "https://github.com/mark1russell7/client/issues"
|
|
17
|
+
},
|
|
18
|
+
"repository": {
|
|
19
|
+
"type": "git",
|
|
20
|
+
"url": "git+https://github.com/mark1russell7/client.git",
|
|
21
|
+
"directory": "packages/client-fs"
|
|
22
|
+
},
|
|
23
|
+
"license": "MIT",
|
|
24
|
+
"author": "Mark Russell (https://github.com/mark1russell7)",
|
|
25
|
+
"type": "module",
|
|
26
|
+
"main": "./dist/index.js",
|
|
27
|
+
"types": "./dist/index.d.ts",
|
|
28
|
+
"exports": {
|
|
29
|
+
".": {
|
|
30
|
+
"types": "./dist/index.d.ts",
|
|
31
|
+
"import": "./dist/index.js"
|
|
32
|
+
},
|
|
33
|
+
"./module": {
|
|
34
|
+
"types": "./dist/module.d.ts",
|
|
35
|
+
"import": "./dist/module.js"
|
|
36
|
+
}
|
|
37
|
+
},
|
|
38
|
+
"files": [
|
|
39
|
+
"dist",
|
|
40
|
+
"src",
|
|
41
|
+
"!src/**/*.test.ts",
|
|
42
|
+
"!src/**/*.test.tsx",
|
|
43
|
+
"!src/**/__tests__",
|
|
44
|
+
"CHANGELOG.md"
|
|
45
|
+
],
|
|
46
|
+
"sideEffects": [
|
|
47
|
+
"./dist/index.js",
|
|
48
|
+
"./dist/register.js"
|
|
49
|
+
],
|
|
50
|
+
"engines": {
|
|
51
|
+
"node": ">=22"
|
|
52
|
+
},
|
|
53
|
+
"publishConfig": {
|
|
54
|
+
"access": "public",
|
|
55
|
+
"provenance": true
|
|
56
|
+
},
|
|
57
|
+
"client": {
|
|
58
|
+
"procedures": "./dist/register.js"
|
|
59
|
+
},
|
|
60
|
+
"dependencies": {
|
|
61
|
+
"@procedures/client": "0.1.0",
|
|
62
|
+
"zod": "^4.6.5"
|
|
63
|
+
},
|
|
64
|
+
"devDependencies": {
|
|
65
|
+
"typescript": "^7.0.2",
|
|
66
|
+
"@types/node": "^22.0.0",
|
|
67
|
+
"@mark1russell7/cue": "^1.0.0",
|
|
68
|
+
"vitest": "^5.0.3"
|
|
69
|
+
},
|
|
70
|
+
"scripts": {
|
|
71
|
+
"build": "tsc -b",
|
|
72
|
+
"typecheck": "tsc --noEmit",
|
|
73
|
+
"clean": "rm -rf dist .tsbuildinfo",
|
|
74
|
+
"test": "vitest run",
|
|
75
|
+
"test:watch": "vitest"
|
|
76
|
+
}
|
|
6
77
|
}
|
package/src/index.ts
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Client-FS - Filesystem operations as RPC procedures
|
|
3
|
+
*
|
|
4
|
+
* Provides fs.read, fs.write, fs.exists, and other filesystem procedures.
|
|
5
|
+
*
|
|
6
|
+
* @example
|
|
7
|
+
* ```typescript
|
|
8
|
+
* import { fsProcedures } from "@procedures/fs";
|
|
9
|
+
*
|
|
10
|
+
* // Or use via client.call
|
|
11
|
+
* await client.call(["fs", "read"], { path: "./file.txt" });
|
|
12
|
+
* await client.call(["fs", "write"], { path: "./out.txt", content: "hello" });
|
|
13
|
+
* ```
|
|
14
|
+
*/
|
|
15
|
+
|
|
16
|
+
export * from "./procedures/fs.js";
|
|
17
|
+
export * from "./register.js";
|