affaan-m/ECC · error · Error
${capability.reason}: ${capability.action}
Error message
${capability.reason}: ${capability.action} What it means
Error "${capability.reason}: ${capability.action}" thrown in affaan-m/ECC.
Source
Thrown at skills/terminal-opener/scripts/open-terminal.js:289
throw new Error('Terminal process did not start correctly.');
}
if (typeof child.once === 'function') {
child.once('error', error => {
onDetachedError(
new Error(`Unable to start ${command}: ${error.message}`, { cause: error })
);
});
}
child.unref();
}
function launch(plan, dependencies = {}) {
const spawnSyncImpl = dependencies.spawnSync || childProcess.spawnSync;
const spawnImpl = dependencies.spawn || childProcess.spawn;
const onDetachedError = dependencies.onDetachedError || reportDetachedError;
const capability = detectTerminalCapability(plan, spawnSyncImpl);
if (!capability.available) {
throw new Error(`${capability.reason}: ${capability.action}`);
}
if (plan.launchMode === 'recover') {
launchDetached(plan.command, plan.args, plan.cwd, spawnImpl, onDetachedError);
return { strategy: 'detached-recover', capability };
}
const muxResult = spawnSyncImpl(plan.command, plan.args, {
cwd: plan.cwd,
encoding: 'utf8',
killSignal: SPAWN_KILL_SIGNAL,
shell: false,
timeout: SYNC_TIMEOUT_MS,
});
if (!muxResult.error && muxResult.status === 0) {
return { strategy: 'mux', capability };
}
View on GitHub (pinned to 01e15490f0)
Solutions
- Install the terminal emulator named in the error (e.g. wezterm) or choose a supported adapter that is already installed.
- Run with --dry-run first to see which capability check fails, then install the missing mux/terminal and retry.
- If running headless (no GUI session), use --launch recover/detached mode or open the terminal on a machine with a desktop session.
Example fix
$ node open-terminal.js --terminal wezterm --dry-run -- echo hi # error: wezterm not found on PATH: install wezterm or pick another adapter $ brew install wezterm # then retry without --dry-run
When it happens
Trigger: Thrown at skills/terminal-opener/scripts/open-terminal.js:289 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of affaan-m/ECC@01e15490f0 (2026-08-13).
Data as JSON: /api/errors/d22388ab673f4a24.
Report an issue: GitHub.