earendil-works/pi · error · Error
Invalid default for flag "${name}": expected ${options.type}
Error message
Invalid default for flag "${name}": expected ${options.type}, got ${typeof options.default} What it means
Error "Invalid default for flag "${name}": expected ${options.type}, got ${typeof options.default}" thrown in earendil-works/pi.
Source
Thrown at packages/coding-agent/src/core/extensions/loader.ts:324
registerShortcut(
shortcut: KeyId,
options: {
description?: string;
handler: (ctx: import("./types.ts").ExtensionContext) => Promise<void> | void;
},
): void {
assertActive();
extension.shortcuts.set(shortcut, { shortcut, extensionPath: extension.path, ...options });
},
registerFlag(
name: string,
options: { description?: string; type: "boolean" | "string"; default?: boolean | string },
): void {
assertActive();
if (options.default !== undefined && typeof options.default !== options.type) {
throw new Error(
`Invalid default for flag "${name}": expected ${options.type}, got ${typeof options.default}`,
);
}
extension.flags.set(name, { name, extensionPath: extension.path, ...options });
if (options.default !== undefined && !runtime.flagValues.has(name)) {
if (state === "loading") {
if (!pendingFlagValues.has(name)) pendingFlagValues.set(name, options.default);
} else {
runtime.flagValues.set(name, options.default);
}
}
},
registerMessageRenderer<T>(customType: string, renderer: MessageRenderer<T>): void {
assertActive();
extension.messageRenderers.set(customType, renderer as MessageRenderer);
},
View on GitHub (pinned to 4af9d21d3b)
When it happens
Trigger: Thrown at packages/coding-agent/src/core/extensions/loader.ts:324 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of earendil-works/pi@4af9d21d3b (2026-08-24).
Data as JSON: /api/errors/e22400c795c23347.
Report an issue: GitHub.