Use when determining which repositories or files a task affects. Distinguishes between target repos (where changes happen) and reference repos (for learning patterns). Supports both standard mode returning { targets, references } and audit mode detecting specific config files to audit. Returns structured scope object.
Inherits all available tools
Additional assets for this skill
This skill inherits all available tools. When active, it can use any tool Claude has access to.
Purpose: Analyze a prompt and return target repositories + reference repositories, or audit-specific files and repos.
Input: prompt (string) - The user's request; mode (string, optional) - "default" or "audit"
Output:
{ targets: string[], references: string[] } - Structured object with repo paths{ repos: string[], files: string[] } - Repos to audit and specific files to checkThis is a TEXT ANALYSIS task - analyze the prompt text as your sole input:
scope: { targets: [...], references: [...] }Expected output format:
scope: { targets: ["{CODE_ROOT}/metasaver-com"], references: ["{CODE_ROOT}/rugby-crm"] }
scope: { repos: [...], files: [...] }Expected audit output format:
scope: { repos: ["{CODE_ROOT}/metasaver-com"], files: ["eslint.config.js", "turbo.json"] }
Path Resolution: Replace {CODE_ROOT} with the actual code directory (e.g., /home/user/code/). The calling agent provides the resolved paths.
Reference indicators - repos mentioned for learning/copying, NOT for changes:
| Pattern | Example |
|---|---|
look at {repo}, check {repo} | "look at rugby-crm for patterns" |
similar to {repo}, like in {repo} | "similar to how resume-builder does it" |
follow pattern from {repo} | "follow the pattern from multi-mono" |
reference {repo}, based on {repo} | "reference the rugby-crm implementation" |
how {repo} does it, copy from {repo} | "see how metasaver-com handles this" |
{repo} has examples, {repo} shows how | "rugby-crm has several pages like this" |
Key distinction: Reference repos are mentioned WITH context clues indicating they're for learning, not changing.
Target indicators - repos where changes WILL be made:
| Pattern | Example |
|---|---|
in {repo}, to {repo}, for {repo} | "add feature to metasaver-com" |
update {repo}, fix {repo}, change {repo} | "fix the bug in resume-builder" |
create in {repo}, build for {repo} | "create new component in rugby-crm" |
{repo}'s {thing}, the {repo} {thing} | "the metasaver-com database" |
| Direct path mentioned | "/home/user/code/resume-builder/src/..." |
Explicit: make changes in, modify, implement | "implement auth in metasaver-com" |
Default target: If no explicit target mentioned, use current working directory (CWD).
When mode: "audit" is specified, detect specific config files mentioned or implied:
| Prompt Pattern | Files Detected |
|---|---|
audit eslint, eslint config | ["eslint.config.js"] |
audit docker-compose, docker compose | ["docker-compose.yml", "docker-compose.yaml"] |
audit turbo, turbo config | ["turbo.json"] |
audit typescript, audit tsconfig, ts config | ["tsconfig.json", "tsconfig.*.json"] |
audit prettier, prettier config | ["package.json"] (prettier field) |
audit vite, vite config | ["vite.config.ts"] |
audit vitest, vitest config | ["vitest.config.ts"] |
audit monorepo root, root config | All root-level config files: [".npmrc", "turbo.json", "pnpm-workspace.yaml", "package.json", "tsconfig.json"] |
audit all configs, all configuration | All known config files (union of above) |
audit package.json, package files | ["package.json"] |
audit pnpm-lock | ["pnpm-lock.yaml"] |
File detection logic:
| Repository Name | Type | Keywords |
|---|---|---|
multi-mono | Producer | multi-mono, shared, library, config package |
metasaver-com | Consumer | metasaver-com, metasaver.com, main site |
resume-builder | Consumer | resume, resume-builder |
rugby-crm | Consumer | rugby, rugby-crm, commithub |
metasaver-marketplace | Plugin | agent, skill, command, plugin, mcp, claude, marketplace |
| Pattern | Targets | References |
|---|---|---|
| No repo mentioned at all | [CWD] | [] |
| Only reference indicators found | [CWD] | [matched] |
sync between X and Y, update both X and Y | [X, Y] | [] |
all repos, across all, all my metasaver | [all known repos from Step 3] | [] |
standardize X based on Y | [X] | [Y] |
Prompt: "Add Applications screen to metasaver-com, look at rugby-crm for the pattern"
→ Target: "metasaver-com" (explicit target)
→ Reference: "rugby-crm" (look at = reference indicator)
→ Output: scope: { targets: ["{CODE_ROOT}/metasaver-com"], references: ["{CODE_ROOT}/rugby-crm"] }
Prompt: "Fix the login bug"
→ Target: CWD (no explicit target)
→ Reference: none
→ Output: scope: { targets: ["{CWD}"], references: [] }
Prompt: "Check how rugby-crm handles authentication"
→ Target: CWD (no explicit target for changes)
→ Reference: "rugby-crm" (check how = reference indicator)
→ Output: scope: { targets: ["{CWD}"], references: ["{CODE_ROOT}/rugby-crm"] }
Prompt: "Update scope-check skill in metasaver-marketplace and multi-mono"
→ Target: both repos (explicit update targets)
→ Reference: none
→ Output: scope: { targets: ["{CODE_ROOT}/metasaver-marketplace", "{CODE_ROOT}/multi-mono"], references: [] }
Prompt: "Create a shared Button component"
→ Target: multi-mono (shared = producer repo keyword)
→ Reference: none
→ Output: scope: { targets: ["{CODE_ROOT}/multi-mono"], references: [] }
Prompt: "Standardize error handling in resume-builder based on metasaver-com patterns"
→ Target: resume-builder (standardize in)
→ Reference: metasaver-com (based on = reference indicator)
→ Output: scope: { targets: ["{CODE_ROOT}/resume-builder"], references: ["{CODE_ROOT}/metasaver-com"] }
Prompt: "audit all docker-compose files in all my metasaver repos"
→ Target: ALL known repos (detected: "all my metasaver repos")
→ Reference: none
→ Output: scope: { targets: ["{CODE_ROOT}/multi-mono", "{CODE_ROOT}/metasaver-com", "{CODE_ROOT}/resume-builder", "{CODE_ROOT}/rugby-crm", "{CODE_ROOT}/metasaver-marketplace"], references: [] }
Prompt: "standardize eslint config across all repos"
→ Target: ALL known repos (detected: "across all repos")
→ Reference: none
→ Output: scope: { targets: ["{CODE_ROOT}/multi-mono", "{CODE_ROOT}/metasaver-com", "{CODE_ROOT}/resume-builder", "{CODE_ROOT}/rugby-crm", "{CODE_ROOT}/metasaver-marketplace"], references: [] }
Prompt: "audit eslint config in metasaver-com"
Mode: "audit"
→ Repos: metasaver-com (explicit target)
→ Files: ["eslint.config.js"] (audit eslint = detected)
→ Output: scope: { repos: ["{CODE_ROOT}/metasaver-com"], files: ["eslint.config.js"] }
Prompt: "audit turbo.json in all my metasaver repos"
Mode: "audit"
→ Repos: ALL known repos (detected: "all my metasaver repos")
→ Files: ["turbo.json"] (audit turbo = detected)
→ Output: scope: { repos: ["{CODE_ROOT}/multi-mono", "{CODE_ROOT}/metasaver-com", "{CODE_ROOT}/resume-builder", "{CODE_ROOT}/rugby-crm", "{CODE_ROOT}/metasaver-marketplace"], files: ["turbo.json"] }
Prompt: "audit monorepo root configuration in multi-mono"
Mode: "audit"
→ Repos: multi-mono (explicit target)
→ Files: [".npmrc", "turbo.json", "pnpm-workspace.yaml", "package.json", "tsconfig.json"] (monorepo root = all root configs)
→ Output: scope: { repos: ["{CODE_ROOT}/multi-mono"], files: [".npmrc", "turbo.json", "pnpm-workspace.yaml", "package.json", "tsconfig.json"] }
Prompt: "audit typescript and prettier configs"
Mode: "audit"
→ Repos: [CWD] (no explicit target, use current working directory)
→ Files: ["tsconfig.json", "tsconfig.*.json", "package.json"] (combined from typescript and prettier patterns)
→ Output: scope: { repos: ["{CWD}"], files: ["tsconfig.json", "tsconfig.*.json", "package.json"] }
Runs in Phase 1 (Analysis) parallel with complexity-check and tool-check.
Default Mode Output (targets + references):
/build, /ms, and general workflow agentstargets - Repos where workers will make changesreferences - Repos for pattern research (read-only exploration)Audit Mode Output (repos + files):
/audit workflow and agent-check skillrepos - Repositories containing files to auditfiles - Specific config files to audit in those repos