Skip to content

EPIC: Retire gradata-plugin, fold slash commands into SDK CLI (Option A) #206

@Gradata

Description

@Gradata

Why

Plugin is mostly redundant. Audit (2026-05-19) found:

  • Hooks duplicate Python SDK behavior in Node (post-edit.js, pre-tool.js, session-stop.js, etc. — 615 LOC of parallel implementation)
  • 6 slash commands wrap functionality that either already exists in gradata <verb> or could trivially be added
  • Two install paths confuse users: a Claude Code user runs pip install gradata && gradata install --agent claude-code (hooks wired) AND /plugin install gradata (second set of hooks wired) — both fire, possibly stepping on each other
  • Maintenance burden in two languages for the same feature

Operator decision: Option A — kill the plugin entirely. All capture/inject logic lives in the SDK.

Migration map

Plugin slash command SDK action
/gradata:doctor Already exists: gradata doctor
/gradata:review Already exists: gradata review
/gradata:status NEW gradata status — wrap existing health+stats into one human-readable summary
/gradata:forget NEW gradata forget <last | last N | category:X | <fuzzy>> — undo lessons
/gradata:promote NEW gradata promote <rule-id> — project-level rule to global scope
/gradata:prove NEW gradata prove — statistical evidence brain improves output quality

Plugin hooks → DELETE. Python gradata.hooks.* already covers every lifecycle except pre-compact (CC-specific). Add gradata.hooks.pre_compact Python module + wire via gradata install --agent claude-code.

Phased rollout

Phase Work Repo
1 Add status, forget, promote, prove subcommands. Add gradata.hooks.pre_compact. Update gradata install --agent claude-code to wire pre-compact. gradata
2 Update README — single install path documented gradata
3 Add deprecation notice to gradata-plugin/README. Link to SDK. Stop accepting PRs except security. gradata-plugin
4 After 30 days, archive gradata-plugin repo (read-only). Delete from CC plugin marketplace listing. gradata-plugin

Test plan

  • New tests: tests/test_status_command.py, test_forget_command.py, test_promote_command.py, test_prove_command.py
  • Snapshot test: gradata install --agent claude-code produces a CC settings.json that wires ALL lifecycles previously covered by both SDK hooks AND plugin hooks (no regression)
  • Live verification on oliver-admin: gradata install --agent claude-code from scratch in a temp brain, exercise each new subcommand, confirm pre-compact hook fires

Assignment

Boss-decomposed, eng-mgr-coordinated. Phase 1 is bulk — likely 3-5 child issues.

Related

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions