一键导入
scope-resolver
Internal skill that resolves scope for review agents.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Internal skill that resolves scope for review agents.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
| name | scope-resolver |
| description | Internal skill that resolves scope for review agents. |
| user-invocable | false |
Resolves user intent (feature name, diff range, or "uncommitted") into a Scope Bundle for review agents.
| Rule | Description |
|---|---|
| 1. Return valid Scope Bundle JSON | Output must always be a complete JSON object matching the Scope Bundle schema; never return partial or prose output. |
| 2. Never modify files | This skill is read-only; it resolves scope but must not create, edit, or delete any files. |
| 3. Fail fast on ambiguous scope | If the scope key cannot be resolved to files, return an error immediately instead of guessing. |
scope-resolverNatural language or structured scope specification:
feature:my-feature - Named feature from features.jsonuncommitted - Uncommitted changes (staged + unstaged)diff:HEAD~1 - Single commit diffdiffs:main..HEAD - Range of commitsReturns a JSON Scope Bundle with:
{
"scope_key": "feature:my-feature",
"scope_slug": "feature-my-feature",
"scope_type": "feature",
"commit_hash": "abc1234",
"files": ["list of files"],
"diff": "unified diff (truncated for context)",
"language_breakdown": {"python": 3, "swift": 5},
"risk_profile": {
"auth": false,
"storage": true,
"network": true,
"crypto": false,
"pii": false
},
"tests_touched": ["tests/test_*.py"],
"likely_tests_missing": ["heuristic suggestions"],
"entrypoints": {
"routes": ["/api/data"],
"screens": ["HomeView"]
}
}
Input: "my feature" or "my-feature" or "feature:my-feature"
Output: scope_key = "feature:my-feature", scope_slug = "feature-my-feature"
Input: "my changes" or "uncommitted" or nothing
Output: scope_key = "uncommitted", scope_slug = "uncommitted"
Input: "last commit" or "HEAD~1"
Output: scope_key = "diff:HEAD~1", scope_slug = "diff-HEAD-1"
Input: "this branch" or "main..HEAD"
Output: scope_key = "diffs:main..HEAD", scope_slug = "diffs-main-HEAD"
For features: Read features.json, expand globs
For uncommitted: git status --porcelain
For diffs: git diff --name-only <range>
# Uncommitted
git diff HEAD
# Specific commit
git diff HEAD~1
# Range
git diff main..HEAD
Scan files for patterns:
auth: Files in auth/, login, token, sessionstorage: Database access, file I/Onetwork: HTTP clients, API callscrypto: Encryption, hashingpii: User data, personal infoFrom features.json for feature scopes, or infer from file paths.
Projects should create a features.json file to define their feature registry.
This file maps feature names to file globs and entrypoints.
Called internally by review-suite orchestrator. Not typically invoked directly.
# Internal call pattern
scope_bundle = scope_resolver.resolve("feature:my-feature")
Use when updating the toolkit to a new version.
Use when code changes need review before merging or completing.
Use when diagnosing toolkit health issues or optimizing configuration.
Use when contributing generic improvements back to the toolkit repo.
Use when setting up or reconfiguring the toolkit for a project.
Use when existing code needs iterative quality improvement.