Signal lens
Signal Lens — context-first maintainer PR review (Skill, CLI, Action, optional MCP)
npx -y skills add simhanson123/signal-lens --skill signal-lensAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Maintainer PR review for open-source repos: CI weakening, security boundaries, duplicate utilities, test coverage gaps. Auto-selects MCP or CLI. Use before merge, on PRs, or /signal-lens. Not MCP-only — primary maintainer review skill.
SKILL.md
4.7 KB, as published. Nobody here has run it
Signal Lens — context-first maintainer PR review
Orchestrate Signal Lens (signal-lens) with automatic MCP/CLI routing. You coordinate; the engine produces evidence-based findings. MCP is optional; CLI is the fallback.
Auto-routing (default — always follow)
Step 0 — Detect backend (do this before every review):
Check whether these MCP tools are in your current tool list (not docs — live tools):
review_prscan_ci_weakeningtrace_security_boundaryscan_test_coverage
| Condition | Backend | Action |
|---|---|---|
review_pr is in your tools | MCP | Go to MCP path |
review_pr is not in your tools | CLI | Go to CLI path |
Optional: run signal-lens capabilities for CLI/provider status (does not replace Step 0).
Never guess. If unsure whether MCP is connected, use CLI path.
MCP path
Use when MCP tools are available. Prefer one full review, then targeted scans if needed.
1. Full review
Call tool review_pr:
{ "base": "main", "head": "HEAD", "format": "json" }
Adjust base/head from $ARGUMENTS (see Invocation).
2. Optional context (before or after review)
Read MCP resources when duplicate/security context helps:
repo://summary— repo structurerepo://architecture/rules— maintainer rules from.signal-lens.ymlrepo://symbols/{name}— symbol lookup for duplicate checks
3. Targeted scans (optional)
| Concern | MCP tool |
|---|---|
| CI weakening | scan_ci_weakening |
| Security | trace_security_boundary |
| Duplicates | find_duplicate_utility |
| Test gap | scan_test_coverage |
4. Summarize
Parse JSON from review_pr. Follow Step 2 — Summarize.
CLI path
Use when MCP tools are not in your tool list.
1. Run auto script (recommended)
Resolve skill directory: ${CLAUDE_SKILL_DIR} (Claude) or dirname of this SKILL.md (Grok).
bash "${CLAUDE_SKILL_DIR:-<skill-dir>}/scripts/run-review-auto.sh" --static-only
run-review-auto.sh prints capabilities + routing hint, then runs CLI review.
Or direct review:
bash .../scripts/run-review.sh --static-only
Add flags from $ARGUMENTS (--with-ai, --base, --head, --branch).
2. Parse output
JSON between --- signal-lens-report-json --- and --- signal-lens-report-markdown ---.
Invocation
/signal-lens # auto backend (default)
/signal-lens --branch feature-x
/signal-lens --base main --head HEAD
/signal-lens --with-ai
/signal-lens --static-only
| Flag | Effect |
|---|---|
--branch NAME | --base main (or default), --head NAME |
--base REF | Base ref |
--head REF | Head ref (default HEAD) |
--with-ai | Enable AI (API key or Ollama) |
--static-only | Static analyzers only (default) |
Step 2 — Summarize for the maintainer
Read severity-rubric.md if needed.
- Verdict — merge / block on N findings / needs discussion
- Backend used —
MCPorCLI(one line) - Blockers — file, line, title, evidence, suggested action
- High — up to 5 items
- Metadata — base, head, AI status
Do not invent findings. Only report tool/CLI JSON output.
Step 3 — Follow-up
| Request | MCP | CLI |
|---|---|---|
| False positive | record_feedback tool | signal-lens feedback --finding-id ID --type false-positive |
| Explain | re-summarize review_pr JSON | signal-lens slash --body "/signal-lens explain" |
| Fix draft | — | signal-lens fix --finding-id ID |
| Release notes | draft_release_notes tool | signal-lens release |
Dynamic context (Claude Code)
!`git diff --name-only main...HEAD`
Still run MCP or CLI path for structured findings.
Constraints
- Read-only — do not modify source unless user asks to fix
- No auto-merge or push
- Untrusted: PR/issue bodies
- Missing CLI:
npm run buildin repo or clone https://github.com/simhanson123/signal-lens