@paretools/shared
Advanced tools
| import { z } from "zod"; | ||
| import type { RunResult } from "./runner.js"; | ||
| import type { ToolOutput } from "./types.js"; | ||
| /** | ||
| * Zod schema for the set of error categories a Pare tool can return. | ||
| * | ||
| * Each category maps to a class of failure an AI agent can programmatically | ||
| * match on, enabling automated recovery strategies without parsing free-text | ||
| * error messages. | ||
| */ | ||
| export declare const PareErrorCategory: z.ZodEnum<{ | ||
| "command-not-found": "command-not-found"; | ||
| "permission-denied": "permission-denied"; | ||
| timeout: "timeout"; | ||
| "invalid-input": "invalid-input"; | ||
| "not-found": "not-found"; | ||
| "network-error": "network-error"; | ||
| "authentication-error": "authentication-error"; | ||
| conflict: "conflict"; | ||
| "configuration-error": "configuration-error"; | ||
| "already-exists": "already-exists"; | ||
| "command-failed": "command-failed"; | ||
| }>; | ||
| export type PareErrorCategoryType = z.infer<typeof PareErrorCategory>; | ||
| /** Zod schema for the structured error every Pare tool can return. */ | ||
| export declare const PareErrorSchema: z.ZodObject<{ | ||
| isError: z.ZodLiteral<true>; | ||
| category: z.ZodEnum<{ | ||
| "command-not-found": "command-not-found"; | ||
| "permission-denied": "permission-denied"; | ||
| timeout: "timeout"; | ||
| "invalid-input": "invalid-input"; | ||
| "not-found": "not-found"; | ||
| "network-error": "network-error"; | ||
| "authentication-error": "authentication-error"; | ||
| conflict: "conflict"; | ||
| "configuration-error": "configuration-error"; | ||
| "already-exists": "already-exists"; | ||
| "command-failed": "command-failed"; | ||
| }>; | ||
| message: z.ZodString; | ||
| command: z.ZodOptional<z.ZodString>; | ||
| exitCode: z.ZodOptional<z.ZodNumber>; | ||
| suggestion: z.ZodOptional<z.ZodString>; | ||
| }, z.core.$strip>; | ||
| export type PareError = z.infer<typeof PareErrorSchema>; | ||
| /** Returns true when stderr / error text indicates the command was not found. */ | ||
| export declare function isCommandNotFound(text: string): boolean; | ||
| /** Returns true when stderr indicates a permission / access error. */ | ||
| export declare function isPermissionDenied(text: string): boolean; | ||
| /** Returns true when stderr indicates a timeout. */ | ||
| export declare function isTimeout(text: string): boolean; | ||
| /** Returns true when stderr indicates a network connectivity problem. */ | ||
| export declare function isNetworkError(text: string): boolean; | ||
| /** Returns true when stderr indicates an authentication / authorisation failure. */ | ||
| export declare function isAuthError(text: string): boolean; | ||
| /** Returns true when stderr indicates a conflict (merge, lock, etc.). */ | ||
| export declare function isConflict(text: string): boolean; | ||
| /** Returns true when stderr indicates a resource was not found. */ | ||
| export declare function isNotFound(text: string): boolean; | ||
| /** Returns true when stderr indicates a resource already exists. */ | ||
| export declare function isAlreadyExists(text: string): boolean; | ||
| /** Returns true when stderr indicates a configuration problem. */ | ||
| export declare function isConfigurationError(text: string): boolean; | ||
| /** | ||
| * Classifies a failed {@link RunResult} into a structured {@link PareError}. | ||
| * | ||
| * The function inspects stderr (and stdout when stderr is empty), the exit | ||
| * code, and well-known patterns to determine the most specific category. | ||
| * When no pattern matches, the category falls back to `"command-failed"`. | ||
| * | ||
| * @param result - The {@link RunResult} returned by the command runner. | ||
| * @param command - A human-readable label for the command (e.g. `"git tag"`). | ||
| * @returns A fully populated {@link PareError}. | ||
| */ | ||
| export declare function classifyError(result: RunResult, command: string): PareError; | ||
| /** | ||
| * Creates a dual-output error response that can be returned directly from a | ||
| * tool handler. The response carries both human-readable text (`content`) and | ||
| * structured JSON (`structuredContent`) with `isError: true` so the MCP | ||
| * client knows the call did not succeed. | ||
| * | ||
| * Usage: | ||
| * ```ts | ||
| * if (result.exitCode !== 0) { | ||
| * return errorOutput(classifyError(result, "git tag")); | ||
| * } | ||
| * ``` | ||
| */ | ||
| export declare function errorOutput(error: PareError): ToolOutput<PareError>; | ||
| /** | ||
| * Convenience: creates a {@link PareError} for input-validation failures and | ||
| * returns it as a dual-output response. Useful in `inputSchema` guards before | ||
| * the CLI command is even invoked. | ||
| * | ||
| * @param message - Description of what was wrong with the input. | ||
| */ | ||
| export declare function invalidInputError(message: string): ToolOutput<PareError>; | ||
| //# sourceMappingURL=errors.d.ts.map |
| {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAM7C;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;EAY5B,CAAC;AAEH,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAMtE,sEAAsE;AACtE,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;iBAO1B,CAAC;AAEH,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAMxD,iFAAiF;AACjF,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CASvD;AAED,sEAAsE;AACtE,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CASxD;AAED,oDAAoD;AACpD,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAG/C;AAED,yEAAyE;AACzE,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAYpD;AAED,oFAAoF;AACpF,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAcjD;AAED,yEAAyE;AACzE,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAShD;AAED,mEAAmE;AACnE,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAUhD;AAED,oEAAoE;AACpE,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAGrD;AAED,kEAAkE;AAClE,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAY1D;AAMD;;;;;;;;;;GAUG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,GAAG,SAAS,CAY3E;AAgFD;;;;;;;;;;;;GAYG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC,CAMnE;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU,CAAC,SAAS,CAAC,CAOxE"} |
+261
| import { z } from "zod"; | ||
| // --------------------------------------------------------------------------- | ||
| // Error categories | ||
| // --------------------------------------------------------------------------- | ||
| /** | ||
| * Zod schema for the set of error categories a Pare tool can return. | ||
| * | ||
| * Each category maps to a class of failure an AI agent can programmatically | ||
| * match on, enabling automated recovery strategies without parsing free-text | ||
| * error messages. | ||
| */ | ||
| export const PareErrorCategory = z.enum([ | ||
| "command-not-found", // CLI tool not installed or not in PATH | ||
| "permission-denied", // Insufficient OS/filesystem permissions | ||
| "timeout", // Command exceeded its time limit | ||
| "invalid-input", // Validation failure on user-supplied input | ||
| "not-found", // Requested resource does not exist | ||
| "network-error", // Network connectivity / DNS failure | ||
| "authentication-error", // Auth / credential failure | ||
| "conflict", // Merge conflict, lock contention, etc. | ||
| "configuration-error", // Missing or invalid config file | ||
| "already-exists", // Resource already exists | ||
| "command-failed", // Generic catch-all for unrecognised failures | ||
| ]); | ||
| // --------------------------------------------------------------------------- | ||
| // Structured error object | ||
| // --------------------------------------------------------------------------- | ||
| /** Zod schema for the structured error every Pare tool can return. */ | ||
| export const PareErrorSchema = z.object({ | ||
| isError: z.literal(true), | ||
| category: PareErrorCategory, | ||
| message: z.string(), | ||
| command: z.string().optional(), | ||
| exitCode: z.number().optional(), | ||
| suggestion: z.string().optional(), | ||
| }); | ||
| // --------------------------------------------------------------------------- | ||
| // Pattern-matching helpers | ||
| // --------------------------------------------------------------------------- | ||
| /** Returns true when stderr / error text indicates the command was not found. */ | ||
| export function isCommandNotFound(text) { | ||
| const lower = text.toLowerCase(); | ||
| return (lower.includes("command not found") || | ||
| lower.includes("not recognized") || | ||
| lower.includes("enoent") || | ||
| lower.includes("no such file or directory") || | ||
| /is not recognized as an internal or external command/.test(lower)); | ||
| } | ||
| /** Returns true when stderr indicates a permission / access error. */ | ||
| export function isPermissionDenied(text) { | ||
| const lower = text.toLowerCase(); | ||
| return (lower.includes("permission denied") || | ||
| lower.includes("eacces") || | ||
| lower.includes("eperm") || | ||
| lower.includes("access denied") || | ||
| lower.includes("operation not permitted")); | ||
| } | ||
| /** Returns true when stderr indicates a timeout. */ | ||
| export function isTimeout(text) { | ||
| const lower = text.toLowerCase(); | ||
| return lower.includes("timed out") || lower.includes("timeout"); | ||
| } | ||
| /** Returns true when stderr indicates a network connectivity problem. */ | ||
| export function isNetworkError(text) { | ||
| const lower = text.toLowerCase(); | ||
| return (lower.includes("connection refused") || | ||
| lower.includes("econnrefused") || | ||
| lower.includes("etimedout") || | ||
| lower.includes("econnreset") || | ||
| lower.includes("enetunreach") || | ||
| lower.includes("could not resolve host") || | ||
| lower.includes("network is unreachable") || | ||
| lower.includes("dns resolution failed")); | ||
| } | ||
| /** Returns true when stderr indicates an authentication / authorisation failure. */ | ||
| export function isAuthError(text) { | ||
| const lower = text.toLowerCase(); | ||
| return (lower.includes("authentication") || | ||
| lower.includes("authenticated") || | ||
| lower.includes("credential") || | ||
| lower.includes("unauthorized") || | ||
| / 401[ :]/.test(lower) || | ||
| / 403[ :]/.test(lower) || | ||
| lower.includes("permission denied (publickey") || | ||
| lower.includes("invalid credentials") || | ||
| lower.includes("bad credentials") || | ||
| lower.includes("login required")); | ||
| } | ||
| /** Returns true when stderr indicates a conflict (merge, lock, etc.). */ | ||
| export function isConflict(text) { | ||
| const lower = text.toLowerCase(); | ||
| return (lower.includes("merge conflict") || | ||
| lower.includes("conflict") || | ||
| lower.includes("lock file") || | ||
| lower.includes("locked") || | ||
| lower.includes("already locked")); | ||
| } | ||
| /** Returns true when stderr indicates a resource was not found. */ | ||
| export function isNotFound(text) { | ||
| const lower = text.toLowerCase(); | ||
| return (lower.includes("not found") || | ||
| lower.includes("does not exist") || | ||
| lower.includes("no such") || | ||
| / 404[ :]/.test(lower) || | ||
| lower.includes("unknown revision") || | ||
| lower.includes("pathspec")); | ||
| } | ||
| /** Returns true when stderr indicates a resource already exists. */ | ||
| export function isAlreadyExists(text) { | ||
| const lower = text.toLowerCase(); | ||
| return lower.includes("already exists") || lower.includes("already exist"); | ||
| } | ||
| /** Returns true when stderr indicates a configuration problem. */ | ||
| export function isConfigurationError(text) { | ||
| const lower = text.toLowerCase(); | ||
| return (lower.includes("missing config") || | ||
| lower.includes("configuration error") || | ||
| lower.includes("config file not found") || | ||
| lower.includes("invalid configuration") || | ||
| lower.includes("no configuration") || | ||
| lower.includes(".eslintrc") || | ||
| lower.includes("tsconfig") || | ||
| lower.includes("could not read config")); | ||
| } | ||
| // --------------------------------------------------------------------------- | ||
| // Classifier | ||
| // --------------------------------------------------------------------------- | ||
| /** | ||
| * Classifies a failed {@link RunResult} into a structured {@link PareError}. | ||
| * | ||
| * The function inspects stderr (and stdout when stderr is empty), the exit | ||
| * code, and well-known patterns to determine the most specific category. | ||
| * When no pattern matches, the category falls back to `"command-failed"`. | ||
| * | ||
| * @param result - The {@link RunResult} returned by the command runner. | ||
| * @param command - A human-readable label for the command (e.g. `"git tag"`). | ||
| * @returns A fully populated {@link PareError}. | ||
| */ | ||
| export function classifyError(result, command) { | ||
| const text = result.stderr || result.stdout; | ||
| const category = classifyText(text, result.exitCode); | ||
| return { | ||
| isError: true, | ||
| category, | ||
| message: text.trim() || `${command} failed with exit code ${result.exitCode}`, | ||
| command, | ||
| exitCode: result.exitCode, | ||
| suggestion: suggestRecovery(category, command), | ||
| }; | ||
| } | ||
| /** | ||
| * Determines the error category from combined error text and exit code. | ||
| * | ||
| * Order matters — more specific patterns are checked before generic ones. | ||
| * For example `"permission denied (publickey)"` should match | ||
| * `authentication-error` rather than `permission-denied`. | ||
| */ | ||
| function classifyText(text, exitCode) { | ||
| // Timeout (often signalled by exit code 124 from `timeout(1)`) | ||
| if (exitCode === 124 || isTimeout(text)) | ||
| return "timeout"; | ||
| // Command not found | ||
| if (isCommandNotFound(text)) | ||
| return "command-not-found"; | ||
| // Auth — checked before permission-denied because some auth errors | ||
| // contain the substring "permission denied" | ||
| if (isAuthError(text)) | ||
| return "authentication-error"; | ||
| // Permission | ||
| if (isPermissionDenied(text)) | ||
| return "permission-denied"; | ||
| // Network | ||
| if (isNetworkError(text)) | ||
| return "network-error"; | ||
| // Already exists | ||
| if (isAlreadyExists(text)) | ||
| return "already-exists"; | ||
| // Configuration | ||
| if (isConfigurationError(text)) | ||
| return "configuration-error"; | ||
| // Conflict — checked before not-found because conflict messages sometimes | ||
| // contain path references that include "not found" | ||
| if (isConflict(text)) | ||
| return "conflict"; | ||
| // Not found | ||
| if (isNotFound(text)) | ||
| return "not-found"; | ||
| // Catch-all | ||
| return "command-failed"; | ||
| } | ||
| // --------------------------------------------------------------------------- | ||
| // Suggestions | ||
| // --------------------------------------------------------------------------- | ||
| const SUGGESTION_MAP = { | ||
| "command-not-found": (cmd) => `Ensure "${cmd}" is installed and available in your PATH.`, | ||
| "permission-denied": () => "Check file/directory permissions or run with elevated privileges.", | ||
| timeout: () => "The command took too long. Retry with a longer timeout or a smaller scope.", | ||
| "invalid-input": () => "Check the input parameters and try again.", | ||
| "not-found": () => "Verify the resource (file, branch, ref, etc.) exists.", | ||
| "network-error": () => "Check your network connection and try again.", | ||
| "authentication-error": () => "Verify your credentials or tokens are valid and not expired.", | ||
| conflict: () => "Resolve the conflict or release the lock and retry.", | ||
| "configuration-error": () => "Check that all required config files exist and are valid.", | ||
| "already-exists": () => "The resource already exists. Use a different name or remove it first.", | ||
| "command-failed": (cmd) => `Inspect the error message from "${cmd}" for more details.`, | ||
| }; | ||
| function suggestRecovery(category, command) { | ||
| return SUGGESTION_MAP[category](command); | ||
| } | ||
| // --------------------------------------------------------------------------- | ||
| // Error output helper | ||
| // --------------------------------------------------------------------------- | ||
| /** | ||
| * Formats a {@link PareError} as human-readable text for the `content` field. | ||
| */ | ||
| function formatPareError(error) { | ||
| const lines = [`Error [${error.category}]: ${error.message}`]; | ||
| if (error.command) | ||
| lines.push(`Command: ${error.command}`); | ||
| if (error.exitCode !== undefined) | ||
| lines.push(`Exit code: ${error.exitCode}`); | ||
| if (error.suggestion) | ||
| lines.push(`Suggestion: ${error.suggestion}`); | ||
| return lines.join("\n"); | ||
| } | ||
| /** | ||
| * Creates a dual-output error response that can be returned directly from a | ||
| * tool handler. The response carries both human-readable text (`content`) and | ||
| * structured JSON (`structuredContent`) with `isError: true` so the MCP | ||
| * client knows the call did not succeed. | ||
| * | ||
| * Usage: | ||
| * ```ts | ||
| * if (result.exitCode !== 0) { | ||
| * return errorOutput(classifyError(result, "git tag")); | ||
| * } | ||
| * ``` | ||
| */ | ||
| export function errorOutput(error) { | ||
| return { | ||
| content: [{ type: "text", text: formatPareError(error) }], | ||
| structuredContent: error, | ||
| isError: true, | ||
| }; | ||
| } | ||
| /** | ||
| * Convenience: creates a {@link PareError} for input-validation failures and | ||
| * returns it as a dual-output response. Useful in `inputSchema` guards before | ||
| * the CLI command is even invoked. | ||
| * | ||
| * @param message - Description of what was wrong with the input. | ||
| */ | ||
| export function invalidInputError(message) { | ||
| return errorOutput({ | ||
| isError: true, | ||
| category: "invalid-input", | ||
| message, | ||
| suggestion: "Check the input parameters and try again.", | ||
| }); | ||
| } | ||
| //# sourceMappingURL=errors.js.map |
| {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"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"} |
| /** | ||
| * Shared Zod input schemas for common tool parameters. | ||
| * | ||
| * These schemas centralize definitions that were previously duplicated | ||
| * across every server package (e.g. `compact`, `path`, `fix`). | ||
| * | ||
| * - **Constants** are used when the schema is identical everywhere. | ||
| * - **Factories** are used when only the `.describe()` text varies. | ||
| */ | ||
| import { z } from "zod"; | ||
| /** `compact: z.boolean().optional().default(true).describe("Prefer compact output")` */ | ||
| export declare const compactInput: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>; | ||
| /** `path` for servers whose root concept is a project (go, lint, build, make, cargo, python, test, npm). */ | ||
| export declare const projectPathInput: z.ZodOptional<z.ZodString>; | ||
| /** `path` for servers whose root concept is a repository (git, github, security). */ | ||
| export declare const repoPathInput: z.ZodOptional<z.ZodString>; | ||
| /** `path` for servers whose root concept is a working directory (docker, http, process, search). */ | ||
| export declare const cwdPathInput: z.ZodOptional<z.ZodString>; | ||
| /** `fix: z.boolean().optional().default(false).describe("Auto-fix problems")` */ | ||
| export declare const fixInput: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>; | ||
| /** Generic optional path string — use when none of the constants above fit. */ | ||
| export declare const pathInput: (desc: string) => z.ZodOptional<z.ZodString>; | ||
| /** Optional config-file path. */ | ||
| export declare const configInput: (desc: string) => z.ZodOptional<z.ZodString>; | ||
| /** Optional array of file-path patterns with INPUT_LIMITS applied. */ | ||
| export declare const filePatternsInput: (desc: string, defaultValue?: string[]) => z.ZodOptional<z.ZodArray<z.ZodString>> | z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>; | ||
| //# sourceMappingURL=input-schemas.d.ts.map |
| {"version":3,"file":"input-schemas.d.ts","sourceRoot":"","sources":["../src/input-schemas.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB,wFAAwF;AACxF,eAAO,MAAM,YAAY,2CAAyE,CAAC;AAEnG,4GAA4G;AAC5G,eAAO,MAAM,gBAAgB,4BAIG,CAAC;AAEjC,qFAAqF;AACrF,eAAO,MAAM,aAAa,4BAII,CAAC;AAE/B,oGAAoG;AACpG,eAAO,MAAM,YAAY,4BAIO,CAAC;AAEjC,iFAAiF;AACjF,eAAO,MAAM,QAAQ,2CAAsE,CAAC;AAM5F,+EAA+E;AAC/E,eAAO,MAAM,SAAS,GAAI,MAAM,MAAM,+BAC2B,CAAC;AAElE,iCAAiC;AACjC,eAAO,MAAM,WAAW,GAAI,MAAM,MAAM,+BACyB,CAAC;AAElE,sEAAsE;AACtE,eAAO,MAAM,iBAAiB,GAAI,MAAM,MAAM,EAAE,eAAe,MAAM,EAAE,kGAMtE,CAAC"} |
| /** | ||
| * Shared Zod input schemas for common tool parameters. | ||
| * | ||
| * These schemas centralize definitions that were previously duplicated | ||
| * across every server package (e.g. `compact`, `path`, `fix`). | ||
| * | ||
| * - **Constants** are used when the schema is identical everywhere. | ||
| * - **Factories** are used when only the `.describe()` text varies. | ||
| */ | ||
| import { z } from "zod"; | ||
| import { INPUT_LIMITS } from "./limits.js"; | ||
| // --------------------------------------------------------------------------- | ||
| // Constants (zero variation across servers) | ||
| // --------------------------------------------------------------------------- | ||
| /** `compact: z.boolean().optional().default(true).describe("Prefer compact output")` */ | ||
| export const compactInput = z.boolean().optional().default(true).describe("Prefer compact output"); | ||
| /** `path` for servers whose root concept is a project (go, lint, build, make, cargo, python, test, npm). */ | ||
| export const projectPathInput = z | ||
| .string() | ||
| .max(INPUT_LIMITS.PATH_MAX) | ||
| .optional() | ||
| .describe("Project root path"); | ||
| /** `path` for servers whose root concept is a repository (git, github, security). */ | ||
| export const repoPathInput = z | ||
| .string() | ||
| .max(INPUT_LIMITS.PATH_MAX) | ||
| .optional() | ||
| .describe("Repository path"); | ||
| /** `path` for servers whose root concept is a working directory (docker, http, process, search). */ | ||
| export const cwdPathInput = z | ||
| .string() | ||
| .max(INPUT_LIMITS.PATH_MAX) | ||
| .optional() | ||
| .describe("Working directory"); | ||
| /** `fix: z.boolean().optional().default(false).describe("Auto-fix problems")` */ | ||
| export const fixInput = z.boolean().optional().default(false).describe("Auto-fix problems"); | ||
| // --------------------------------------------------------------------------- | ||
| // Factories (same shape, varied descriptions) | ||
| // --------------------------------------------------------------------------- | ||
| /** Generic optional path string — use when none of the constants above fit. */ | ||
| export const pathInput = (desc) => z.string().max(INPUT_LIMITS.PATH_MAX).optional().describe(desc); | ||
| /** Optional config-file path. */ | ||
| export const configInput = (desc) => z.string().max(INPUT_LIMITS.PATH_MAX).optional().describe(desc); | ||
| /** Optional array of file-path patterns with INPUT_LIMITS applied. */ | ||
| export const filePatternsInput = (desc, defaultValue) => { | ||
| const base = z | ||
| .array(z.string().max(INPUT_LIMITS.PATH_MAX)) | ||
| .max(INPUT_LIMITS.ARRAY_MAX) | ||
| .optional(); | ||
| return defaultValue ? base.default(defaultValue).describe(desc) : base.describe(desc); | ||
| }; | ||
| //# sourceMappingURL=input-schemas.js.map |
| {"version":3,"file":"input-schemas.js","sourceRoot":"","sources":["../src/input-schemas.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,8EAA8E;AAC9E,4CAA4C;AAC5C,8EAA8E;AAE9E,wFAAwF;AACxF,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,uBAAuB,CAAC,CAAC;AAEnG,4GAA4G;AAC5G,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC;KAC9B,MAAM,EAAE;KACR,GAAG,CAAC,YAAY,CAAC,QAAQ,CAAC;KAC1B,QAAQ,EAAE;KACV,QAAQ,CAAC,mBAAmB,CAAC,CAAC;AAEjC,qFAAqF;AACrF,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC;KAC3B,MAAM,EAAE;KACR,GAAG,CAAC,YAAY,CAAC,QAAQ,CAAC;KAC1B,QAAQ,EAAE;KACV,QAAQ,CAAC,iBAAiB,CAAC,CAAC;AAE/B,oGAAoG;AACpG,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC;KAC1B,MAAM,EAAE;KACR,GAAG,CAAC,YAAY,CAAC,QAAQ,CAAC;KAC1B,QAAQ,EAAE;KACV,QAAQ,CAAC,mBAAmB,CAAC,CAAC;AAEjC,iFAAiF;AACjF,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC;AAE5F,8EAA8E;AAC9E,8CAA8C;AAC9C,8EAA8E;AAE9E,+EAA+E;AAC/E,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,IAAY,EAAE,EAAE,CACxC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAElE,iCAAiC;AACjC,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,IAAY,EAAE,EAAE,CAC1C,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAElE,sEAAsE;AACtE,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,IAAY,EAAE,YAAuB,EAAE,EAAE;IACzE,MAAM,IAAI,GAAG,CAAC;SACX,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;SAC5C,GAAG,CAAC,YAAY,CAAC,SAAS,CAAC;SAC3B,QAAQ,EAAE,CAAC;IACd,OAAO,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AACxF,CAAC,CAAC"} |
+3
-0
@@ -6,2 +6,3 @@ export { dualOutput, estimateTokens, compactDualOutput } from "./output.js"; | ||
| export { INPUT_LIMITS } from "./limits.js"; | ||
| export { compactInput, projectPathInput, repoPathInput, cwdPathInput, fixInput, pathInput, configInput, filePatternsInput, } from "./input-schemas.js"; | ||
| export { sanitizeErrorOutput } from "./sanitize.js"; | ||
@@ -13,2 +14,4 @@ export { shouldRegisterTool, _resetProfileCache } from "./tool-filter.js"; | ||
| export type { ToolOutput } from "./types.js"; | ||
| export { PareErrorCategory, PareErrorSchema, classifyError, errorOutput, invalidInputError, isCommandNotFound, isPermissionDenied, isTimeout, isNetworkError, isAuthError, isConflict, isNotFound, isAlreadyExists, isConfigurationError, } from "./errors.js"; | ||
| export type { PareErrorCategoryType, PareError } from "./errors.js"; | ||
| //# sourceMappingURL=index.d.ts.map |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAC5E,OAAO,EAAE,GAAG,EAAE,YAAY,EAAE,KAAK,SAAS,EAAE,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AACjF,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EACL,qBAAqB,EACrB,kBAAkB,EAClB,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACzD,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EACL,qBAAqB,EACrB,iBAAiB,EACjB,4BAA4B,GAC7B,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC"} | ||
| {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAC5E,OAAO,EAAE,GAAG,EAAE,YAAY,EAAE,KAAK,SAAS,EAAE,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AACjF,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EACL,qBAAqB,EACrB,kBAAkB,EAClB,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EACL,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACb,YAAY,EACZ,QAAQ,EACR,SAAS,EACT,WAAW,EACX,iBAAiB,GAClB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACzD,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EACL,qBAAqB,EACrB,iBAAiB,EACjB,4BAA4B,GAC7B,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,aAAa,EACb,WAAW,EACX,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,EAClB,SAAS,EACT,cAAc,EACd,WAAW,EACX,UAAU,EACV,UAAU,EACV,eAAe,EACf,oBAAoB,GACrB,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,qBAAqB,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC"} |
+2
-0
@@ -6,2 +6,3 @@ export { dualOutput, estimateTokens, compactDualOutput } from "./output.js"; | ||
| export { INPUT_LIMITS } from "./limits.js"; | ||
| export { compactInput, projectPathInput, repoPathInput, cwdPathInput, fixInput, pathInput, configInput, filePatternsInput, } from "./input-schemas.js"; | ||
| export { sanitizeErrorOutput } from "./sanitize.js"; | ||
@@ -11,2 +12,3 @@ export { shouldRegisterTool, _resetProfileCache } from "./tool-filter.js"; | ||
| export { assertAllowedByPolicy, assertAllowedRoot, assertNoPathQualifiedCommand, } from "./policy.js"; | ||
| export { PareErrorCategory, PareErrorSchema, classifyError, errorOutput, invalidInputError, isCommandNotFound, isPermissionDenied, isTimeout, isNetworkError, isAuthError, isConflict, isNotFound, isAlreadyExists, isConfigurationError, } from "./errors.js"; | ||
| //# sourceMappingURL=index.js.map |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAC5E,OAAO,EAAE,GAAG,EAAE,YAAY,EAAmC,MAAM,aAAa,CAAC;AACjF,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EACL,qBAAqB,EACrB,kBAAkB,EAClB,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAEzD,OAAO,EACL,qBAAqB,EACrB,iBAAiB,EACjB,4BAA4B,GAC7B,MAAM,aAAa,CAAC"} | ||
| {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAC5E,OAAO,EAAE,GAAG,EAAE,YAAY,EAAmC,MAAM,aAAa,CAAC;AACjF,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EACL,qBAAqB,EACrB,kBAAkB,EAClB,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EACL,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACb,YAAY,EACZ,QAAQ,EACR,SAAS,EACT,WAAW,EACX,iBAAiB,GAClB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAEzD,OAAO,EACL,qBAAqB,EACrB,iBAAiB,EACjB,4BAA4B,GAC7B,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,aAAa,EACb,WAAW,EACX,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,EAClB,SAAS,EACT,cAAc,EACd,WAAW,EACX,UAAU,EACV,UAAU,EACV,eAAe,EACf,oBAAoB,GACrB,MAAM,aAAa,CAAC"} |
+1
-1
| { | ||
| "name": "@paretools/shared", | ||
| "version": "0.10.2", | ||
| "version": "0.11.0", | ||
| "description": "Shared utilities for Pare MCP servers", | ||
@@ -5,0 +5,0 @@ "license": "MIT", |
109198
40.8%55
17.02%1709
34.67%