ComposioHQ/composio · error · Error
Bundled binary ${value.bundledBinary} was not found for ${co
Error message
Bundled binary ${value.bundledBinary} was not found for ${context.platform} and no fallback command was provided. What it means
A local tool command references a bundled binary (shipped with the packaged Composio CLI), resolution for the current platform failed to find the binary on disk, and no fallbackCommand was configured in the tool definition. The runtime therefore has nothing to execute and throws before spawning.
Source
Thrown at ts/packages/cli-local-tools/src/runtime.ts:60
const isBundledBinaryRef = (value: unknown): value is LocalBundledBinaryRef =>
typeof value === 'object' &&
value !== null &&
'bundledBinary' in value &&
typeof (value as { bundledBinary?: unknown }).bundledBinary === 'string';
const commandValueToInvocation = async (
value: LocalCommandValue,
context: LocalExecutionContext
): Promise<LocalCommandInvocation> => {
if (typeof value === 'string') return { command: value };
if (isBundledBinaryRef(value)) {
const resolved = await resolveBundledBinary(context.toolkit, value, {
currentPlatform: context.platform,
});
const command = resolved?.exists ? resolved.path : value.fallbackCommand;
if (!command) {
throw new Error(
`Bundled binary ${value.bundledBinary} was not found for ${context.platform} and no fallback command was provided.`
);
}
if (resolved?.exists && resolved.source === 'bundled') {
await ensureBundledBinaryExecutable(resolved.path);
}
return { ...value, command };
}
return value;
};
const resolveCommandInvocation = async (
execution: LocalCommandExecution,
input: Record<string, unknown>,
context: LocalExecutionContext
): Promise<LocalCommandInvocation> => {
const commandValue = resolveValue(execution.command, input);View on GitHub (pinned to 64b1b85502)
Solutions
- Install the officially packaged CLI build for your platform so bundled binaries ship
- Reinstall/repair the CLI distribution if binaries are missing
- If authoring a tool, provide a fallbackCommand in the bundled-binary reference
- Verify the binary exists in the CLI's bin directory for your platform
Example fix
// before (tool definition)
{ command: { bundledBinary: 'imessage-export', platforms: ['darwin'] } }
// after
{ command: { bundledBinary: 'imessage-export', platforms: ['darwin'], fallbackCommand: 'imessage-export' } } Defensive patterns
Strategy: fallback
Validate before calling
// Before running a bundled-binary tool, probe availability: const resolution = resolveLocalTool(slug); // ensure your CLI install includes platform binaries; check install docs
Try / catch
try { await executeLocalTool(slug, args, ctx); } catch (e) { if (e.message.includes('Bundled binary') && e.message.includes('not found')) useRemoteAlternative(); } Prevention
- Install the packaged CLI rather than running from source
- Keep a non-bundled fallback command when authoring tools
When it happens
Trigger: Running a local tool whose command is a bundledBinaryRef on a platform for which no binary was packaged; using a dev install (no bundled binaries) instead of the packaged CLI; corrupted or partially extracted CLI distribution.
Common situations: Running the CLI from source via bun/node instead of the packaged binary; downloading a CLI build missing platform assets; antivirus/quarantine removing the bundled executable.
Related errors
- Local tool ${resolution.finalSlug} is not supported on ${res
- Local command failed for ${context.finalSlug}: ${invocation.
- Bundled FFI library ${execution.library.bundledBinary} was n
- proxy() requires an authenticated Composio user session.
- Missing required flag: ${name}
AI-assisted analysis of ComposioHQ/composio@64b1b85502 (2026-08-28).
Data as JSON: /api/errors/16734186a2702690.
Report an issue: GitHub.