Skip to content

feat: ship Claude Code plugin in-tree#7

Merged
singaraiona merged 1 commit into
mainfrom
feat/claude-plugin
May 1, 2026
Merged

feat: ship Claude Code plugin in-tree#7
singaraiona merged 1 commit into
mainfrom
feat/claude-plugin

Conversation

@singaraiona
Copy link
Copy Markdown
Contributor

Summary

  • Ship raysense as an installable Claude Code plugin alongside the crate. Marketplace manifest at the repo root; plugin sources under ./claude-plugin/. Same physical layout as sentrux uses.
  • Four phase-scoped skills mapped to the agent's edit cycle (raysense-bootstrap / raysense-impact / raysense-verify / raysense-audit). Each is a short markdown playbook over MCP tools already exposed by src/mcp.rs:137.
  • Zero new Rust code — every raysense_* tool referenced across the four SKILL.md files resolves in the existing tool registry. cargo test still 123/123 green.

Multi-codebase isolation

cwd-driven, no global state. Each skill passes path: $CWD to every MCP call; per-project state lives in <repo>/.raysense/. Two CC sessions on two repos = two raysense --mcp processes, two on-disk state trees, zero cross-project bleed.

Install path

cargo install raysense
/plugin marketplace add RayforceDB/raysense
/plugin install raysense

Out of scope (deferred to v2)

  • Slash commands (/raysense-bootstrap, etc.) — manual reinforcement when agent forgets
  • SessionStart / Stop hooks — deterministic auto-fire
  • agents/raysense-analyst.md sub-agent — context isolation for noisy audits
  • Cross-platform packaging (Codex, generic MCP clients)

Test plan

  • cargo fmt --check clean
  • cargo test — 123/123 green
  • All three JSON files parse with jq
  • All 19 distinct raysense_* names referenced in skills exist in tools_list (src/mcp.rs:137)
  • Name-scan: no vendor/reference-project mentions in tracked files
  • End-to-end: /plugin marketplace add <local path>/plugin install raysense → confirm bootstrap activates and writes .raysense/baseline/ + populated tables/
  • Verify: make a small structural regression, trigger raysense-verify, confirm baseline_diff reports it
  • Multi-repo: repeat in a second repo, confirm .raysense/ directories stay independent

Phase-scoped skills layered on the existing raysense MCP server,
packaged as a Claude Code plugin alongside the crate. Layout
mirrors sentrux's: marketplace manifest at the repo root, plugin
sources under ./claude-plugin/.

  .claude-plugin/marketplace.json    # source -> ./claude-plugin
  claude-plugin/
    .claude-plugin/plugin.json
    .mcp.json                        # registers `raysense --mcp`
    skills/
      raysense-bootstrap/SKILL.md    # session start: scan + baseline + memory
      raysense-impact/SKILL.md       # before edits: blast radius + coupling
      raysense-verify/SKILL.md       # after edits: rescan + rule check + diff
      raysense-audit/SKILL.md        # on demand: architecture + dsm + evolution

Each skill is a short markdown playbook over MCP tools that already
exist in src/mcp.rs:137 (verified: every raysense_* name referenced
across all four SKILL.md files resolves in the tool registry).

Multi-codebase isolation is cwd-driven: every skill passes
path: $CWD; per-project state stays in <repo>/.raysense/. Two CC
sessions on two repos = two MCP processes, two on-disk state trees,
zero cross-project bleed.

No new Rust code; cargo test still 123/123 green.

Install path:
  cargo install raysense
  /plugin marketplace add RayforceDB/raysense
  /plugin install raysense
@singaraiona singaraiona merged commit 9695010 into main May 1, 2026
1 check passed
@singaraiona singaraiona deleted the feat/claude-plugin branch May 1, 2026 15:44
singaraiona pushed a commit that referenced this pull request May 1, 2026
Phase-scoped skills layered on the existing raysense MCP server,
packaged as a Claude Code plugin alongside the crate. Layout:

  .claude-plugin/marketplace.json    # source -> ./claude-plugin
  claude-plugin/
    .claude-plugin/plugin.json
    .mcp.json                        # registers `raysense --mcp`
    skills/
      raysense-bootstrap/SKILL.md    # session start: scan + baseline + memory
      raysense-impact/SKILL.md       # before edits: blast radius + coupling
      raysense-verify/SKILL.md       # after edits: rescan + rule check + diff
      raysense-audit/SKILL.md        # on demand: architecture + dsm + evolution

Each skill is a short markdown playbook over MCP tools that already
exist in src/mcp.rs:137 (verified: every raysense_* name referenced
across all four SKILL.md files resolves in the tool registry).

Multi-codebase isolation is cwd-driven: every skill passes
path: $CWD; per-project state stays in <repo>/.raysense/. Two CC
sessions on two repos = two MCP processes, two on-disk state trees,
zero cross-project bleed.

No new Rust code; cargo test still 123/123 green.

Install path:
  cargo install raysense
  /plugin marketplace add RayforceDB/raysense
  /plugin install raysense

Co-authored-by: Anton <anton.kundenko@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant