Skip to content

Agent surface conformance matrix (one config, many agents — make the wedge a tracked contract) #68

@liam-ai-reality

Description

@liam-ai-reality

Why

klasp's wedge is "one config, many agents." Treating that as a marketing line is fragile — it has to be a tracked, public contract. This issue creates the conformance matrix that says, per agent surface, what works today and what doesn't.

Modeled after browser-vendor compatibility tables (caniuse / MDN). When a cell is ?, that's a backlog item, not a feature.

Matrix (initial state, post v0.2.2)

Surface Install Uninstall Doctor Commit gate Push gate Structured verdict Conflict handling Captured-session test Known limitations
Claude Code ✓ (husky / lefthook / pre-commit framework)
Codex CLI
Aider not yet supported (target v0.3)
Cursor go/no-go pending #44
Windsurf not surveyed
Cline not surveyed

What "✓" means in this matrix

A row may only claim ✓ in a column if all three of the following are true:

  1. Install / uninstall integration test that runs the path against a temp repo and asserts on-disk state (managed block correct, hook script idempotent, conflict detection halts cleanly).
  2. Captured-session test that replays an actual agent transcript, blocks on a check, and verifies the agent receives a structured verdict it can act on.
  3. Doctor coverage that surfaces MissingHook / StaleConfig / WrongVersion findings when the underlying state is wrong (depends on per-surface doctor_check from Extend AgentSurface trait with install_with_warnings + doctor_check (kill stringly-typed dispatch + close doctor coverage gap) #55).

Anything weaker is ? — feature claimed, but not load-bearing.

Acceptance

  • Matrix lives at docs/agent-surfaces.md and is referenced from the README's "Why klasp" section.
  • Each ✓ links to the test file that proves it.
  • PR template adds a checkbox: "If this PR adds or changes an agent surface, agent-surfaces.md is updated."
  • CI fails (or warns loudly) if a new surface lands without a row.
  • Mirrored on klasp.dev (replaces the current ad-hoc 5-row support table).

Out of scope

Implementing missing rows for Aider / Cursor / etc. — that's per-surface work tracked under their own issues. This issue is the matrix + the discipline that goes with it.

Why now

Pulling forward to v0.2.5. Without it, every new surface is a snowflake; with it, surface work has a definition of done that's externally legible. Pairs with #55 (per-surface contract) and #65 (gate cwd-correctness) as the "surface reliability + repo correctness" theme for v0.2.5.

Metadata

Metadata

Assignees

No one assigned

    Labels

    documentationImprovements or additions to documentationsurface-reliabilityv0.2.5 theme: surface reliability + repo correctnessv0.2.5klasp v0.2.5 milestone work

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions