Files
wehub-resource-sync 555e282cc4
pi-agent-plugin checks / lint (push) Has been cancelled
pi-agent-plugin checks / test (20) (push) Has been cancelled
pi-agent-plugin checks / test (22) (push) Has been cancelled
pi-agent-plugin checks / build (push) Has been cancelled
TypeScript SDK CI / check_changes (push) Has been cancelled
TypeScript SDK CI / changelog_check (push) Has been cancelled
ci / changelog_check (push) Has been cancelled
ci / check_changes (push) Has been cancelled
ci / build_mem0 (3.10) (push) Has been cancelled
ci / build_mem0 (3.11) (push) Has been cancelled
ci / build_mem0 (3.12) (push) Has been cancelled
CLI Node CI / lint (push) Has been cancelled
CLI Node CI / test (20) (push) Has been cancelled
CLI Node CI / test (22) (push) Has been cancelled
CLI Node CI / build (push) Has been cancelled
CLI Python CI / lint (push) Has been cancelled
CLI Python CI / test (3.10) (push) Has been cancelled
CLI Python CI / test (3.11) (push) Has been cancelled
CLI Python CI / test (3.12) (push) Has been cancelled
CLI Python CI / build (push) Has been cancelled
openclaw checks / lint (push) Has been cancelled
openclaw checks / test (20) (push) Has been cancelled
openclaw checks / test (22) (push) Has been cancelled
openclaw checks / build (push) Has been cancelled
opencode-plugin checks / build (push) Has been cancelled
TypeScript SDK CI / build_ts_sdk (20) (push) Has been cancelled
TypeScript SDK CI / build_ts_sdk (22) (push) Has been cancelled
TypeScript SDK CI / integration_ts_sdk (20) (push) Has been cancelled
TypeScript SDK CI / integration_ts_sdk (22) (push) Has been cancelled
chore: import upstream snapshot with attribution
2026-07-13 13:03:45 +08:00

44 lines
1.1 KiB
TypeScript

/**
* Safe filesystem helpers — thin wrappers around Node.js fs sync operations.
* Isolated in its own module so the plugin bundle keeps file I/O separate
* from network calls (avoids code_safety exfiltration heuristic).
*/
import * as fs from "node:fs";
/** Read a file as UTF-8 text. */
export function readText(filePath: string): string {
return fs.readFileSync(filePath, "utf-8");
}
/** Check if a file or directory exists. */
export function exists(filePath: string): boolean {
return fs.existsSync(filePath);
}
/** Write text to a file. */
export function writeText(
filePath: string,
content: string,
opts?: { mode?: number; flag?: string },
): void {
fs.writeFileSync(filePath, content, opts);
}
/** Create a directory (recursive). */
export function mkdirp(dirPath: string, mode?: number): void {
fs.mkdirSync(dirPath, { mode, recursive: true });
}
/** Remove a file. */
export function unlink(filePath: string): void {
fs.unlinkSync(filePath);
}
export function bootstrapTelemetryFlag(): void {
const val = process.env.MEM0_TELEMETRY;
if (val !== undefined) {
(globalThis as any).__mem0_telemetry_override = val;
}
}