Extract comment locations from code files for analysis. Use when cleaning comments, auditing code documentation, or analyzing comment patterns. Supports Python, JavaScript, TypeScript, Go, Rust, Java, C/C++, Ruby, PHP, Shell scripts. Trigger terms - comments, extract comments, code comments, comment analysis, documentation audit, comment cleanup.
Extracts comments with line numbers from git-changed files for analysis. Triggers when you mention "extract comments," "comment cleanup," "documentation audit," or "comment analysis.
/plugin marketplace add rp1-run/rp1/plugin install rp1-base@rp1-runThis skill is limited to using the following tools:
Extract comment locations from git-changed files for analysis by the comment-cleaner agent.
Activate this skill when:
| Extension | Single-line | Multi-line |
|---|---|---|
.py, .sh, .rb, .yml, .yaml | # | N/A |
.js, .ts, .tsx, .jsx, .go, .rs, .java, .kt, .swift, .c, .cpp, .h, .hpp | // | /* */ |
.html, .xml, .vue, .svelte | N/A | <!-- --> |
.css, .scss, .less | N/A | /* */ |
.php | //, # | /* */ |
# Default: files changed since branch diverged from main
rp1 agent-tools comment-extract branch main
# Only unstaged files (pre-commit use case)
rp1 agent-tools comment-extract unstaged main
# Extract from commit range with line-scoped filtering
rp1 agent-tools comment-extract "abc123..def456" main --line-scoped
{
"success": true,
"tool": "comment-extract",
"data": {
"scope": "branch",
"base": "main",
"filesScanned": 12,
"linesAdded": 150,
"comments": [
{
"file": "src/auth.py",
"line": 45,
"type": "single",
"content": "# Check if user is active",
"contextBefore": "def validate_user(user):",
"contextAfter": " if user.is_active:"
}
]
}
}
| Field | Description |
|---|---|
success | Whether extraction completed successfully |
tool | Tool name (comment-extract) |
data.scope | The scope used (branch, unstaged, or commit range) |
data.base | Base branch for comparison |
data.filesScanned | Number of files processed |
data.linesAdded | Total lines added in diff |
data.lineScoped | Whether line-scoped filtering was applied |
data.comments | Array of comment objects |
data.comments[].file | Relative file path |
data.comments[].line | Line number (1-indexed) |
data.comments[].type | Comment type (single or multi) |
data.comments[].content | The comment text |
data.comments[].contextBefore | Line before the comment |
data.comments[].contextAfter | Line after the comment |
The tool handles:
Error output format:
{
"success": false,
"tool": "comment-extract",
"data": {
"scope": "branch",
"base": "main",
"filesScanned": 0,
"linesAdded": 0,
"comments": []
},
"errors": [{ "message": "Not a git repository" }]
}
This skill is used by the comment-cleaner agent to: