cline/cline · error

unknown tool(s): ${invalid.join(", ")}

Error message

unknown tool(s): ${invalid.join(", ")}

What it means

Error "unknown tool(s): ${invalid.join(", ")}" thrown in cline/cline.

Source

Thrown at sdk/packages/core/src/cron/specs/cron-spec-parser.ts:129

			raw
				.map((item) => (typeof item === "string" ? item.trim() : ""))
				.filter((item) => item.length > 0),
		),
	];
	if (Array.isArray(value) && options.preserveEmptyArray) {
		return normalized;
	}
	return normalized.length > 0 ? normalized : undefined;
}

const DEFAULT_TOOL_NAME_SET = new Set<string>(ALL_DEFAULT_TOOL_NAMES);

function normalizeToolList(value: unknown): string[] | undefined {
	const tools = normalizeStringList(value, { preserveEmptyArray: true });
	if (!tools) return undefined;
	const invalid = tools.filter((tool) => !DEFAULT_TOOL_NAME_SET.has(tool));
	if (invalid.length > 0) {
		throw new Error(`unknown tool(s): ${invalid.join(", ")}`);
	}
	return tools;
}

const CRON_EXTENSION_KINDS = new Set<CronSpecExtensionKind>([
	"rules",
	"skills",
	"plugins",
]);

function normalizeExtensions(
	value: unknown,
): CronSpecExtensionKind[] | undefined {
	const extensions = normalizeStringList(value, { preserveEmptyArray: true });
	if (!extensions) return undefined;
	const invalid = extensions.filter(
		(extension) =>
			!CRON_EXTENSION_KINDS.has(extension as CronSpecExtensionKind),

View on GitHub (pinned to 491b30b806)

When it happens

Trigger: Thrown at sdk/packages/core/src/cron/specs/cron-spec-parser.ts:129 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of cline/cline@491b30b806 (2026-08-25). Data as JSON: /api/errors/74c778079db768f0. Report an issue: GitHub.