Feature request: intermediate scope between Global and Project + unified effective config visibility
Problem
After building Claude Code Organizer — a dashboard that scans and manages all Claude Code configurations — I've run into two fundamental limitations that affect anyone managing configs across multiple projects.
1. No intermediate scope between Global and Project
Currently, if I have a skill (or memory, command, agent) that I want to share across specific projects but not all projects, my only options are:
- Put it in Global (
~/.claude/skills/) → every project on the machine sees it, even ones that shouldn't - Copy it into each project (
.claude/skills/) → now I have duplicates to maintain
Real example: I have a babysit-pr skill that should only apply to my two work repos (ai-security-control-plane and rule-processor), not my personal side projects. There's no way to scope it to just those two without either polluting Global or duplicating the file.
A workspace scope (or directory-based inheritance like CLAUDE.md already has) would solve this — skills/commands/agents in a parent directory would be available to child projects but not unrelated ones.
2. Each category has different inheritance/precedence rules — no unified visibility
Building CCO forced me to reverse-engineer how each category resolves, and the rules are all different:
| Category | Rule |
|---|---|
| MCP servers | local > project > user precedence — same-name servers use the narrower scope |
| Agents | Project-level overrides same-name user agents |
| Commands | Available from user and project — same-name conflicts are "not supported" |
| Skills | Available from personal, project, and plugin sources |
| Settings | managed > CLI > project local > project shared > user precedence chain |
| CLAUDE.md | Walks up directory tree from cwd — subtree files are deferred |
| Rules | Global + project, with paths: frontmatter for conditional loading |
There is no built-in way to see what's actually effective in a given session. Users have to mentally combine rules across ~/.claude/, ~/.claude.json, .claude/, .mcp.json, parent directories, and settings precedence to figure out what Claude is actually loading.
Suggestions
- Add an intermediate scope (workspace / directory-based) so items can be shared across specific projects without going global. CLAUDE.md already walks parent directories — extending this to skills/commands/agents would be consistent.
- Add a
/effectiveor/whatloadscommand that shows everything Claude Code has loaded in the current session — which skills, MCP servers, memories, commands, agents, rules, and settings are active, where they came from, and why (precedence, shadowing, ancestry).
- Standardize the inheritance model or at minimum, document all category-specific rules in one place. Currently you have to read 6+ separate doc pages to piece together the full picture.
Context
I maintain Claude Code Organizer which attempts to provide this visibility. We implemented a "Show Effective" feature that computes per-category effective results, but it requires re-implementing each category's rules client-side since there's no official API for it. A built-in command would be far more reliable.
This issue has 4 comments on GitHub. Read the full discussion on GitHub ↗