Esper review
Tool-neutral, simple workflow layer for agentic, spec-driven software development. πͺβ¨
npx -y skills add sichengchen/esper --skill esper-reviewAssembled 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
Review the current implementation against the approved increment and specs. Identifies drift, regressions, and missing spec maintenance.
SKILL.md
4.8 KB, ~1.1k tokens by cl100k_base, as published. Nobody here has run it
You are reviewing the current implementation against the approved increment and spec tree.
Step 1: Read context
Run esperkit context get to determine the current state.
If no active increment, tell the user: "No active increment to review. Run esper:atom or esper:batch first." and stop.
Check for an active run (active_run field). If present, this review should also consider run artifacts.
Step 2: Read the increment and specs
Read the active increment file from .esper/increments/active/<filename>.
If the increment references a spec file (spec: field), read it: esperkit spec get <file>
Read .esper/CONSTITUTION.md for project constraints.
If an autonomous run is active or recently completed:
- Run
esperkit run get <run-id>to read the run state - Run
esperkit run list-tasks <run-id>to see task status - Run
esperkit run list-reviews <run-id>to see previous review rounds - The review must evaluate against the frozen spec snapshot recorded in the run, not the current spec files
Step 3: Assess implementation state
Compare the current codebase state against the increment plan:
- Scope coverage: For each item in
## Scope, check if it has been implemented - Files affected: For each file in
## Files Affected, check if the expected changes exist - Verification: Run the commands in
## Verificationand check results - Spec alignment: Compare the implementation against the referenced spec β does the code match what the spec describes?
For autonomous runs, also check: 5. Task completion: Verify all task packets are marked complete 6. Review findings: Check if previous review rounds identified issues that were resolved 7. Repair coverage: Confirm repair tasks from previous rounds were addressed 8. Frozen input consistency: Verify the implementation matches the frozen spec and increment inputs, not drifted versions
Step 4: Identify issues
Check for:
- Drift: Implementation that diverges from the increment plan (extra changes, different approach)
- Regressions: Changes that break existing behavior documented in specs
- Missing spec maintenance: Implementation changes that require spec updates but specs haven't been updated
- Scope creep: Work done beyond what the increment plan describes
- Incomplete items: Scope items not yet implemented
For autonomous runs, also check:
- Role separation: Was the reviewer role distinct from the implementation role?
- Stop condition compliance: Did the run respect configured limits?
- Escalation handling: Were any escalations properly communicated?
Step 5: Write findings
Update the active increment file's ## Progress section with findings:
## Progress
### Review Findings β [date]
- [ok] Scope item 1: implemented as planned
- [ok] Scope item 2: implemented as planned
- [drift] Scope item 3: implementation differs β [explanation]
- [incomplete] Scope item 4: not yet implemented
- [spec] product/behavior.md needs updating: [what changed]
If an autonomous run is active, also persist findings as a review record:
esperkit run add-review <run-id> '<review-json>'
The review JSON should include:
round: the review round numbercandidate_commit: the current commit hash being reviewedfindings: array of finding descriptionsrepair_tasks: array of repair task descriptions (if review fails)result: "passed" or "failed"
Step 6: Recommend next actions
Based on findings:
- If all scope items complete and verification passes: "Ready to finish. Run
esper:goto complete." - If spec updates needed: "Run
esper:syncto update specs before finishing." - If incomplete items remain: "Run
esper:continueto resume implementation." - If drift detected: Present the drift and ask the user how to resolve it.
For autonomous runs with failed review:
- Convert findings into repair tasks
- Ask the user whether to dispatch repair tasks or escalate
- If dispatching: create repair task packets via
esperkit run add-task - If escalating: stop the run via
esperkit run stop <run-id> 'Escalated after review'
Available CLI commands
esperkit context getβ read contextesperkit spec indexβ show spec treeesperkit spec get <file>β read a specesperkit increment listβ list incrementsesperkit run get <id>β read run stateesperkit run list-tasks <id>β list tasks in a runesperkit run list-reviews <id>β list reviews in a runesperkit run add-review <id> '<json>'β persist review findingsesperkit run add-task <id> '<json>'β create repair taskesperkit run stop <id> [reason]β stop/escalate a run
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.