Skip to content

feat(cli): add llamadart doctor diagnostics commands #124

@leehack

Description

@leehack

Feature description

Add first-party diagnostics commands for users to inspect their local llamadart runtime setup before opening support issues.

Motivation

Recent backend, native-asset, Windows DLL, WebGPU, and load-time tuning work made runtime behavior more capable but also harder for users to self-diagnose. A doctor flow would turn common environment failures into actionable output.

Proposed scope

  • Add a llamadart doctor command, or an equivalent package-supported diagnostics entrypoint.
  • Report platform, OS, architecture, Dart/Flutter version, package version, selected backend, available emitted runtime libraries, and relevant environment variables.
  • Detect common native failures: missing Linux runtime dependencies, Windows DLL resolution problems, backend bundle mismatch, and CPU/GPU backend selection surprises.
  • Detect common WebGPU failures: browser support, secure-context requirement, adapter/features/limits, bridge asset version, and fallback behavior.
  • Add optional machine-readable JSON output for issue reports and automated checks.
  • Consider sibling commands such as llamadart backends and a bounded llamadart benchmark smoke check.

Acceptance criteria

  • Diagnostics work without requiring a model when possible.
  • Output includes clear remediation hints, not only raw environment data.
  • Public docs include examples for native, Flutter desktop/mobile, and Flutter Web.
  • Tests cover command formatting and at least the pure Dart capability-detection logic.

Metadata

Metadata

Assignees

No one assigned

    Labels

    diagnosticsRuntime diagnostics and doctor toolingenhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions