TimZander / TimZander/claude

Groom standards/CLAUDE.md: extract reference material into skills (+ guaranteed must-have skill bundle)

Open
#166 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
0
Forks
1
Avg merge
1d 3h
Merged PRs (30d)
7

Description

Problem

standards/CLAUDE.md is ~476 lines / ~7.6k tokens, synced into every developer's ~/.claude/CLAUDE.md and loaded into every session. Much of it is rarely-relevant reference material that dilutes instruction-following on unrelated tasks. The dilution comes from procedural reference dumps, not the terse rules:

  • GitHub Issue Relationships GraphQL snippets (~105 lines, ~22% of the file)
  • SQL/TFVC connection how-tos
  • (candidate) the verbose Smoke/Integration/E2E test-writing recipes

Note — @-imports do NOT help: imported files load eagerly into context at startup (same cost as inlining). The only real context-reduction levers are skills (load on invocation) and path-scoped rules (load when a matching file is read). Verified against Claude Code docs.

Goal

Trim standards/CLAUDE.md to terse, always-applicable rules; move reference/procedure material to on-demand skills. Target ~30% smaller always-on footprint with zero content lost — it just becomes on-demand.

Phase 0 (prerequisite): guaranteed "must-have" skill bundle

Moving reference into skills is only safe if those skills are guaranteed installed. Verified mechanism:

  • Declaring plugins in settings.json enabledPlugins does NOT auto-install today (open feature request anthropic-ai/claude-code#23737); it only enables already-installed plugins / prompts during repo-trust.
  • Marketplaces do auto-update by default (or per-entry "autoUpdate": true); installed plugins follow their marketplace, so once installed they stay current. Pin via marketplace #ref if needed.

Plan:

  1. Add the marketplace + must-have plugin set to the team-synced standards/settings.json (setup-env already deep-merges it into ~/.claude/settings.json, so it propagates to everyone and enables auto-update):
    {
      "extraKnownMarketplaces": {
        "tzander-skills": { "source": { "source": "github", "repo": "TimZander/claude" } }
      },
      "enabledPlugins": {
        "start-work@tzander-skills": true,
        "deep-review@tzander-skills": true
      }
    }
    
  2. Because enabledPlugins doesn't auto-install yet, add an idempotent install step to setup-env.sh / setup-env.ps1 that installs the must-have set (re-running enforces presence + pulls updates). Verify the non-interactive install invocation.
  3. Define the must-have set explicitly. Candidates: start-work, deep-review, craft-pr, improve-stories + the new reference skills created in Phase 1.
  4. When native auto-install (#23737) lands, retire the setup-env install step in favor of enabledPlugins alone.

Phase 1: extract reference into skills

  • GitHub Issue Relationships GraphQL block → a skill (e.g. gh-issue-relationships); remove the section from standards/CLAUDE.md.
  • SQL/TFVC connection how-tos → a skill, or fold into the existing tfvc-search skill; trim/remove the section.
  • Test-writing recipes → keep the terse "when to test" rules inline; move the long "how to write" procedures (Smoke/Integration/E2E) to a skill if warranted.
  • Keep inline (terse, always-applicable): naming, formatting, patterns, C# rules, secret handling, git push/config safety, branch naming, PR/review standards.

Phase 2 (optional): path-scoped rules

  • Consider moving language-specific rules (e.g. the C# block) into path-scoped rules (paths: ["**/*.cs"]) so they load only when editing matching files. Caveat: path-scoped rules are documented at project .claude/rules/ scope — confirm they work at user-global ~/.claude/ before relying on them. Low priority; the C# block is small.

Acceptance criteria

  • Must-have skill bundle defined and added to standards/settings.json (extraKnownMarketplaces + enabledPlugins).
  • setup-env.sh / .ps1 install and update the must-have bundle idempotently.
  • GitHub-Issue-Relationships GraphQL reference extracted into a skill; section removed from standards/CLAUDE.md.
  • SQL/TFVC how-tos extracted/relocated; section removed or trimmed.
  • standards/CLAUDE.md reduced to terse always-on rules (target ~30% smaller); no content lost (now on-demand).
  • After the next setup-env run, each developer has the must-have skills installed + auto-updating and a leaner ~/.claude/CLAUDE.md.

Notes

  • Per the PR Size and Splitting standard, Phase 0 should land as its own PR before Phase 1 — the reference must be guaranteed reachable before it's removed from always-on context. Phase 0 may warrant its own issue.
  • Relates to the standards-hygiene theme (rollup #7774 / the ADO "AI Platform" epic).

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Read standards/CLAUDE.md and standards/settings.json first, then inspect setup-env.sh and setup-env.ps1 and verify the non-interactive plugin-install invocation. Define the must-have bundle, extract the named reference sections into skills, and confirm the acceptance checklist, including a leaner CLAUDE.md and idempotent installation/update behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
bash, github, powershell
Domain
developer-experience, documentation, tooling
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.