Skip to content

Support Matrix

This page is the audited truth source for DreamCLI's current support surface.

Use it for questions like:

  • what is fully supported today;
  • what is intentionally deferred;
  • where the supporting code and tests live;
  • which product claims are already true versus planned next.

Last audited: 2026-04-03

Status Meanings

StatusMeaning
SupportedShipped today and backed by code, tests, and docs.
DeferredIntentionally not supported yet, or currently represented only by explicit not-supported behavior.
ExperimentalPresent in some form, but not yet stable enough to recommend as part of the supported surface.

Important Scope Note

Some TypeScript surfaces can be broader than the supported surface.

Treat this matrix as the current truth source whenever implementation and planned scope could diverge. For completions specifically, Shell and SHELLS now match the shipped shell set.

Execution and Semantics

ClaimStatusEvidenceNotes
Schema-first parse -> resolve -> execute flowSupportedCLI Semantics, runCommand(), src/core/testkit/index.ts, src/core/cli/index.ts, src/core/execution/index.tsThe shared executor now owns the canonical command execution flow; both CLI and testkit delegate to it directly.
Root help, version, default-command, and nested command behaviorSupportedCLI Semantics, src/core/cli/index.ts, src/core/cli/cli-dispatch.test.tsPlanner extraction is planned, not a current user-facing gap.
Typed derive and middleware executionSupportedMiddleware guide, src/core/schema/command.ts, src/core/testkit/middleware-context-e2e.test.tsExecution is centralized in the shared executor while preserving the existing typed builder surface.
Explicit planner / executor internal boundaryDeferredspecs/dreamcli-re-foundation-prd.mdTracked by planner-contracts, scaffold-core-execution, and related tasks.

Runtime Support

ClaimStatusEvidenceNotes
Node.js >= 22.22.2 runtime supportSupportedRuntime Support, src/runtime/node.ts, docs/reference/runtime.mdThis is the primary adapter implementation.
Bun >= 1.3.11 runtime supportSupportedRuntime Support, src/runtime/bun.ts, docs/reference/runtime.mdBun currently delegates through the Node adapter strategy.
Deno >= 2.6.0 runtime supportSupportedRuntime Support, src/runtime/deno.ts, docs/reference/runtime.mdDeno support is permission-aware and published through JSR.
Cross-platform CI coverage for all supported runtimes and shellsDeferreddocs/reference/runtime.md, /.github/workflows/ci.ymlRuntime support is shipped, but broader platform coverage is still planned.

Input Sources and Resolution

ClaimStatusEvidenceNotes
Flag precedence CLI -> env -> config -> prompt -> defaultSupportedCLI Semantics, Config Files, Interactive Prompts, src/core/resolve/index.tsThis is the current supported behavior. Re-foundation work is about internal clarity, not removing the chain.
Positional argument precedence CLI -> stdin -> env -> default for opted-in argsSupportedCLI Semantics, src/core/resolve/index.tsOnly args that opt into .stdin() or .env() use these extra sources.
Built-in JSON config discoverySupportedConfig Files, src/core/config/index.tsJSON is the only built-in format by design.
Custom YAML / TOML / other config formats via configFormat()SupportedConfig Files, docs/reference/main.mdAdditional formats require explicit parser wiring. They are not built-in.
Per-flag prompts and command-level interactive promptsSupportedInteractive Prompts, src/core/schema/prompt.ts, src/core/resolve/index.tsPrompts are integrated into the resolution chain.
Automatic prompts in non-interactive stdin contextsDeferredInteractive Prompts, CLI SemanticsDreamCLI intentionally skips prompting when stdinIsTTY is false. This is a design choice, not a bug.

Completions

ClaimStatusEvidenceNotes
Bash completion generationSupportedShell Completions, src/core/completion/shells/bash.ts, src/core/completion/completion.test.tsIncluded in the supported shell set today.
Zsh completion generationSupportedShell Completions, src/core/completion/shells/zsh.ts, src/core/completion/completion.test.tsIncluded in the supported shell set today.
Fish completion generationSupportedShell Completions, src/core/completion/shells/fish.ts, src/core/completion/completion.test.tsIncluded in the supported shell set today.
PowerShell completion generationSupportedShell Completions, src/core/completion/shells/powershell.ts, src/core/completion/completion.test.tsIncluded in the supported shell set today.
Built-in .completions() helper on cli()SupportedShell Completions, src/core/completion/index.ts, src/core/cli/cli-completions.test.tsThe user-facing helper, Shell union, and SHELLS tuple now advertise the same four shipped shells.

Output

ClaimStatusEvidenceNotes
Text, warning, error, JSON, and table outputSupportedOutput, Output Contract, docs/reference/main.md, src/core/output/index.tsCore output surface is shipped and documented.
Spinner and progress support with testable activity eventsSupportedOutput, Output Contract, Testing, src/core/output/activity.ts, src/core/testkit/index.tsActivity behavior is part of the supported output channel.
TTY-aware suppression of decorative output in piped / JSON modeSupportedOutput, Output Contract, src/core/output/index.ts, src/core/testkit/output-e2e.test.tsRe-foundation work clarifies the internal policy boundary without changing support.

Testing Surface

ClaimStatusEvidenceNotes
In-process command testing via runCommand()SupportedTesting, docs/reference/testkit.md, src/core/testkit/index.tsThis is one of DreamCLI's strongest first-class features.
Injected env/config/stdin/prompt/output test controlSupportedTesting, docs/reference/testkit.md, src/core/testkit/index.tsCurrent support is broad; docs depth is still improving.
Consolidated testing guidance for advanced failure modesSupportedTesting, Troubleshooting, specs/dreamcli-re-foundation-prd.mdThe troubleshooting guide now covers the common prompt, stdin, config, and output-mode failure cases serious adopters hit first.

Docs and Learning Surfaces

ClaimStatusEvidenceNotes
Authored guides and reference overviewsSupportedGuide, API ReferenceThe current docs backbone is real and useful.
Examples index and per-example pagesSupported/examples/, docs/examples/index.md, examples/*.tsThe examples section is source-backed and built with bun run docs:build.
IDE-like hover on example pagesSupported/examples/, docs/reference/example-hover-prototype.md, docs/.vitepress/config.tsHover is shipped on example source blocks; guides and shell transcripts stay plain text.
Public changelog page in referenceSupporteddocs/reference/changelog.md, CHANGELOG.mdThe docs route mirrors the repository changelog directly.
API index and symbol pagesSupporteddocs/reference/api.md, docs/reference/symbols/**/*.md, specs/dreamcli-re-foundation-prd.mdSymbol pages are generated at build time from the checked-in docs sources.
Consolidated rationale and limitations pagesSupportedArchitecture Rationale, Limitations And Workarounds, Semantic Delta Log, specs/dreamcli-re-foundation-prd.mdThese pages explain the settled architecture trade-offs and current edges as the baseline for adoption guidance.
Migration and troubleshooting guidesSupportedMigration And Adoption, Troubleshooting, Limitations And Workarounds, specs/dreamcli-re-foundation-prd.mdThe narrative docs set now covers evaluation, phased adoption, and likely real failure modes without overstating unsupported surfaces.

Released under the MIT License.