Install
$ agentstack add skill-sandsower-beislid-fresh-eyes ✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
About
Fresh Eyes
Run a final whole-diff review pass with no session-history bias. This is a side-effect-free review primitive that uses the same output contract as review, but with a different posture: look across the entire change set after the obvious iterative fixes are done.
fresh-eyes may read files, inspect diffs, and classify findings. It must not edit files, commit, push, post comments, update tickets, create PRs, or run a fix loop. Callers decide what to do with the findings.
Use this for:
- Final pre-PR review from
ready-for-reviewafter the normalreviewloop - A last-pass review after
rinsehas applied iterative fixes - Checking a supplied patch for cross-file consistency and drift
- Catching baseline issues that hunk-by-hunk review missed
If the repo declares custom lifecycle hooks, read ../lifecycle-hooks.md and honor any phase-boundary hooks before and after fresh-eyes.
Do not use this for:
- The first local diff review — use
review - Interactive walkthroughs — use
walk-the-diff - Fixing review findings — return findings to the caller
- Posting PR comments — use
pr-patrol
Process
1. Establish the input
Accept one of:
- Caller-supplied diff/range/context
- Local git diff against a base branch
- Pasted patch/diff
If reviewing local changes and the caller did not supply a range:
git status --short
gh pr view --json baseRefName,headRefName 2>/dev/null
git merge-base HEAD main # or master / PR base when applicable
git diff ...HEAD --stat
git diff ...HEAD
If the base is unclear, ask once.
2. Load compact context only
Prefer context supplied by the caller:
- What changed and why
- Ticket/spec/design summary
- Verification already run
- Previous review findings that were fixed or accepted
- matching
break_spec_approved,spec_approved, orblueprint_approvedlatest pointer entries when the ticket uses custom artifact locations
Do not rely on long conversation history. If context is missing, say so and review against general production readiness.
3. Review the whole change set
Read the diff as a completed unit, not as a sequence of local fixes. Look for mismatches across files and lifecycle gaps introduced by incremental work.
Check especially:
- Cross-file naming, data-shape, API, and behavior consistency
- Environment variable, feature flag, config, and documentation drift
- Pagination, limits, ordering, retries, timeouts, and default values
- Backward compatibility, migrations, rollbacks, and baseline behavior
- Error handling consistency across all call sites
- Security, permission, token, privacy, and data-integrity boundary drift
- Stale README, docs, comments, examples, screenshots, and release notes
- Unused imports, dead helpers, orphaned tests, and leftover debug code
- Test blind spots created by repeated small fixes
- Interactions between generated files, lockfiles, schema files, and runtime code
If the caller gives focus areas, emphasize them without ignoring obvious correctness issues.
4. Prefer high-signal findings
Because this is a final pass, avoid style-only churn unless it hides a real bug or maintainability risk. Prefer issues that would surprise a maintainer or reviewer looking at the whole PR.
5. Output findings and stop
Use the same Review Contract as review. Do not fix findings. Return control to the caller.
Review Contract
This is the Fresh-eyes report shape from artifact-templates.md; keep it terse and evidence-focused.
Severity semantics:
- Critical — must fix before PR handoff. Security, data loss, broken core behavior, or high-confidence production breakage.
- Important — should fix before PR handoff unless the user explicitly accepts the risk.
- Minor — optional improvement, polish, or low-risk test/documentation gap.
Each finding must include:
- Stable ID (
FE1,FE2, ...) - File/line when available
- Confidence (
high,medium,low) - Issue
- Evidence
- Why it matters
- Suggested fix
- Verification suggestion
Output exactly these sections:
### Review Metadata
- Input: local diff / supplied diff / pasted patch
- Base:
- Head:
- Requirements:
- Independent reviewer: yes/no
- Fresh-eyes posture: whole-diff final pass
### Strengths
- ...
### Findings
#### Critical
##### FE1:
- File:
- Confidence: high/medium/low
- Issue: ...
- Evidence: ...
- Why it matters: ...
- Suggested fix: ...
- Verification: ...
#### Important
...
#### Minor
...
### Caller Handoff
- Blocking findings:
- Optional findings:
- Suggested next action: ...
### Verdict
Ready to merge: Yes / With fixes / No
Reason: ...
If a severity bucket has no findings, write None. under that heading.
Composition rules
ready-for-reviewmay runreviewfirst, fix/accept blocking findings, then runfresh-eyesas the final whole-diff gate.rinsemay runfresh-eyesafter iterative review/fix/verify loops converge.pr-patrolmay reuse the fresh-eyes checklist for large or security-sensitive inbound PRs.fresh-eyesitself never owns side effects.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: sandsower
- Source: sandsower/beislid
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet — be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.