mirror of
http://192.168.0.88:13333/lywsvip/openclaw-zero-token.git
synced 2026-06-09 07:52:24 +08:00
Major upgrade from e26988a38 to upstream v2026.3.28 (f9b107928).
Key changes:
- Upstream src/, ui/, extensions/ (89 bundled extensions)
- Zero-token web providers preserved in src/zero-token/
- AskOnce plugin restored and registered as CLI command
- Added missing packages: @anthropic-ai/vertex-sdk, @modelcontextprotocol/sdk
- Fixed tsconfig rootDir, skipLibCheck for plugin-sdk DTS build
- Added askonce to bundled plugin metadata and package.json exports
- Fixed AskOnce CLI command registration (missing commands metadata)
- Restored AskOnce adapter imports (correct 5-level relative paths)
- Removed stale migration artifacts from root directory
31 lines
899 B
TypeScript
31 lines
899 B
TypeScript
import fs from "node:fs/promises";
|
|
import os from "node:os";
|
|
import path from "node:path";
|
|
|
|
export type SecretFiles = {
|
|
passwordFile?: string;
|
|
tokenFile?: string;
|
|
};
|
|
|
|
export async function withTempSecretFiles<T>(
|
|
prefix: string,
|
|
secrets: { password?: string; token?: string },
|
|
run: (files: SecretFiles) => Promise<T>,
|
|
): Promise<T> {
|
|
const dir = await fs.mkdtemp(path.join(os.tmpdir(), prefix));
|
|
try {
|
|
const files: SecretFiles = {};
|
|
if (secrets.token !== undefined) {
|
|
files.tokenFile = path.join(dir, "token.txt");
|
|
await fs.writeFile(files.tokenFile, secrets.token, "utf8");
|
|
}
|
|
if (secrets.password !== undefined) {
|
|
files.passwordFile = path.join(dir, "password.txt");
|
|
await fs.writeFile(files.passwordFile, secrets.password, "utf8");
|
|
}
|
|
return await run(files);
|
|
} finally {
|
|
await fs.rm(dir, { recursive: true, force: true });
|
|
}
|
|
}
|