Skip to content

The eight providers are not equally first-class, and only docs/ceilings.md says so #577

Closed

Description

@omartelo

README.md calls all eight providers first-class. docs/ceilings.md records what each one actually reaches, and the spread is wide:

Reading Providers that have it
Full usage readout (tokens, context window, cost) Claude Code, Codex
Cost only oh-my-pi, opencode, Crush
Context only Kiro CLI, whose spend is metered in credits
No transcript usage at all Antigravity, Cursor CLI
Plan gauge Claude Code, Codex
Session state, and with it the last turn, the turn ring, the interrupt reading and keep-awake all but Crush and Cursor CLI
Hands-on time counted from a turn nobody touched all but Crush and Cursor CLI
Palette search and recap over the conversation all but Antigravity and Cursor CLI

Hard invariant 5 says a session feature is designed against all eight and that a deliberate gap is written down in the same pull request. Every gap above is deliberate and every one of them is written down. The problem is where: docs/ceilings.md is a contributor document, so a user who picks Cursor CLI learns the shape of their install one absent feature at a time, and an empty pane never says whether the provider reported nothing or lich drew nothing.

What done looks like

  • A support matrix in README.md beside the provider list, written in what the user sees (what the footer carries, whether the Review tab has a last turn, whether the machine stays awake), never in lich's internals.
  • The word first-class either earned or spent. Two providers with no transcript reader are not the same product as Claude Code, and the README is where a stranger decides.
  • Where a surface draws nothing because the provider reports nothing, it says so once. FooterSession already renders nothing rather than a zero, which is right for a footer and less right for a Review tab whose switch simply never appears.

Open

  • Does the matrix live only in README.md, or also in Settings › Providers where the binary is chosen, so the trade-off is visible at the moment of choosing?
  • Antigravity and Cursor CLI file their conversations in SQLite lich has no reader for, and neither schema is a contract anybody promised to keep. Is writing those two readers part of closing this, or is the matrix the answer and the gap stays?

Activity

  1. added
    enhancementNew capability or improvement
    needs-shapingOpen questions to settle before implementing
    on Sep 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew capability or improvementneeds-shapingOpen questions to settle before implementing

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions