Fission-AI/OpenSpec · error
Cannot combine reserved values "all" or "none" with…
Error message
Cannot combine reserved values "all" or "none" with specific tool IDs.
What it means
Thrown by resolveToolsArg when the token list contains a reserved value ("all" or "none", after alias resolution) mixed with specific tool IDs. The combination is semantically contradictory — select everything and select specific tools — so the argument is rejected instead of guessing intent.
Solutions
- Use --tools all alone or --tools none alone
- List specific tool ids without all or none
- Split into separate runs if you need both behaviors
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at src/core/init.ts:741 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of Fission-AI/OpenSpec@6926ccb18a (2026-08-25).
Data as JSON: /api/errors/bd9725ff70207724.
Report an issue: GitHub.
Appendix: source
Thrown at src/core/init.ts:741
}
const tokens = raw
.split(',')
.map((token) => token.trim())
.filter((token) => token.length > 0);
if (tokens.length === 0) {
throw new Error(
'The --tools option requires at least one tool ID when not using "all" or "none".'
);
}
// Retired ids resolve to their current tool, so a rebrand does not break
// an existing `--tools windsurf` in someone's setup script.
const normalizedTokens = tokens.map((token) => resolveToolIdAlias(token.toLowerCase()));
if (normalizedTokens.some((token) => token === 'all' || token === 'none')) {
throw new Error('Cannot combine reserved values "all" or "none" with specific tool IDs.');
}
const invalidTokens = tokens.filter(
(_token, index) => !availableSet.has(normalizedTokens[index])
);
if (invalidTokens.length > 0) {
throw new Error(
`Invalid tool(s): ${invalidTokens.join(', ')}. Available values: ${availableList}`
);
}
// Deduplicate while preserving order
const deduped: string[] = [];
for (const token of normalizedTokens) {
if (!deduped.includes(token)) {
deduped.push(token);
}View on GitHub (pinned to 6926ccb18a)