chore(claude): move the workflow onto the shared flow plugin

Merged
MH
14d ago
+60-1573

Summary

The workflow commands were hand-copied into every repository of the org and have drifted. This PR moves this repository onto the flow and ruby-gem plugins from the shared claude-plugins marketplace. The repository keeps only its own facts, in AGENTS.md -> ## Workflow.

WhatWhere it went
.claude/commands/{lfg,plan,tdd,review-pr,github-review-pr,github-review-failures,github-review-comments}.mdthe flow plugin (/flow:lfg, /flow:plan, ...). docs-kit had no local finish-prs, follow-through, debug-flaky or fable-validator; the plugin now supplies them
The docs-kit facts in those copiesAGENTS.md -> ## Workflow: required checks from ruleset main (squash only, no merge queue), cubic, the conflict rules (CHANGELOG.md, version.rb, docs/Gemfile.lock, docs/bun.lock, vendored icon SVGs, registries), worktree setup, the release line, main health. The plan/lfg invariants (DocsUI components, config defaults, one Stimulus controller, install generator wiring) were already in AGENTS.md's Critical Rules
.claude/rules/seo.mdAGENTS.md -> new ## SEO head and OG image section, condensed
.claude/rules/git-workflow.mdthe commit scopes and the release-kit rollout note went into AGENTS.md (Labels, Commands); the rest is generic or already in AGENTS.md
.claude/rules/{agents,coding-style,testing}.mddropped: already in AGENTS.md (Critical Rules, Testing, Architecture) or generic. The subagent model tiers and the consuming-site check are two lines under Agent commands
.claude/README.mddropped: it only indexed the deleted commands and rules
CLAUDE.mdthe one line @AGENTS.md
.claude/settings.jsonnew: adds the claude-plugins marketplace (extraKnownMarketplaces, autoUpdate) and enables flow and ruby-gem
LABELS_KIT.md/plan, /lfg -> /flow:plan, /flow:lfg; the rule no longer points at the deleted rules file

Kept local: /architect (docs-kit layer order), /security (HTML output, config trust, render path), /release-kit (rolls the release kit out to the other gems; ruby-gem:release drives a release, not the rollout).

Always-loaded instructions (AGENTS.md + CLAUDE.md + .claude/rules/*.md): 26271 -> 15869 bytes (-40%).

The ## Workflow section is 1910 bytes, above the 1.5 KB target; most of it is the CI and Conflicts lines, which the plugins cannot know.

Operator actions

None.

Test plan

  • From the worktree, claude -p --model haiku --plugin-dir .../plugins/flow --plugin-dir .../plugins/ruby-gem "List every available skill or command name..." lists flow:lfg, flow:plan, flow:follow-through, flow:finish-prs, flow:github-review-pr|failures|comments, flow:review-pr, flow:tdd, flow:debug-flaky, ruby-gem:perf, ruby-gem:release, and of the local commands only architect, security, release-kit
  • jq . .claude/settings.json parses
  • Workflow lines checked against the tree: ruleset main (squash only, 4 required contexts, up-to-date branch, no merge queue), ci.yml job names, conformance.yml, cubic reviewing #101-#104, release.yml / deploy-docs.yml on release, CHANGELOG.md heading shape, ci.yml push runs for main health
  • grep -rn '/lfg\b\|/github-review-pr\b\|/finish-prs\b\|/plan\b' --include=*.md . leaves only .github/LABELS.md and .github/labels.yml, the labels kit (canonical copy here, rolled out with bin/labels sync / script/labels-kit, not edited by a workflow PR)
  • Open a session in a checkout of this branch once claude-plugins#13 is merged: /flow:lfg and /ruby-gem:release are listed and the deleted local copies are gone

Depends on claude-plugins#13 being merged.

https://claude.ai/code/session_01HBXnzmnnrrwjfFHBE8LjpW


Summary by cubic

Moves docs-kit onto the shared flow and ruby-gem plugins from the claude-plugins marketplace, replacing the hand-copied workflow commands and rules that had drifted across the org's repositories.

  • Deletes .claude/commands/{lfg,plan,tdd,review-pr,github-review-*}.md and the generic .claude/rules/ files; the plugins supply them (/flow:lfg, /flow:plan, /flow:github-review-pr, etc.).
  • Adds .claude/settings.json pointing at the zoolutions/claude-plugins marketplace and enabling flow and ruby-gem.
  • Moves docs-kit's own facts (CI checks, conflict rules, release line, worktree setup, main health) into a new ## Workflow section in AGENTS.md; the SEO rule moves in condensed form to a new ## SEO head and OG image section.
  • Keeps /architect, /security, and /release-kit local — the first two are docs-kit-specific, the last rolls the release kit out to the other gems.
  • Updates CLAUDE.md, LABELS_KIT.md, and the Agent-commands section of AGENTS.md for the new command names.
  • Always-loaded instructions shrink from 26 271 to 15 869 bytes (-40%).

Note: this depends on claude-plugins#13 being merged; without it, the plugin commands won't resolve. No operator action required once that lands.