Agent skill
finish-work
Pre-commit quality checklist covering lint, typecheck, tests, code-spec sync, API changes, database migrations, cross-layer verification, and manual testing. Blocks commit if infra or cross-layer specs lack executable depth. Use when code is written and tested but not yet committed, before submitting changes, or as a final review before git commit.
Install this agent skill to your Project
npx add-skill https://github.com/mindfold-ai/Trellis/tree/main/packages/cli/src/templates/kiro/skills/finish-work
SKILL.md
Finish Work - Pre-Commit Checklist
Before submitting or committing, use this checklist to ensure work completeness.
Timing: After code is written and tested, before commit
Checklist
1. Code Quality
# Must pass
pnpm lint
pnpm type-check
pnpm test
-
pnpm lintpasses with 0 errors? -
pnpm type-checkpasses with no type errors? - Tests pass?
- No
console.logstatements (use logger)? - No non-null assertions (the
x!operator)? - No
anytypes?
2. Code-Spec Sync
Code-Spec Docs:
- Does
.trellis/spec/backend/need updates?- New patterns, new modules, new conventions
- Does
.trellis/spec/frontend/need updates?- New components, new hooks, new patterns
- Does
.trellis/spec/guides/need updates?- New cross-layer flows, lessons from bugs
Key Question:
"If I fixed a bug or discovered something non-obvious, should I document it so future me (or others) won't hit the same issue?"
If YES -> Update the relevant code-spec doc.
2.5. Code-Spec Hard Block (Infra/Cross-Layer)
If this change touches infra or cross-layer contracts, this is a blocking checklist:
- Spec content is executable (real signatures/contracts), not principle-only text
- Includes file path + command/API name + payload field names
- Includes validation and error matrix
- Includes Good/Base/Bad cases
- Includes required tests and assertion points
Block Rule:
If infra/cross-layer changed but the related spec is still abstract, do NOT finish. Run $update-spec manually first.
3. API Changes
If you modified API endpoints:
- Input schema updated?
- Output schema updated?
- API documentation updated?
- Client code updated to match?
4. Database Changes
If you modified database schema:
- Migration file created?
- Schema file updated?
- Related queries updated?
- Seed data updated (if applicable)?
5. Cross-Layer Verification
If the change spans multiple layers:
- Data flows correctly through all layers?
- Error handling works at each boundary?
- Types are consistent across layers?
- Loading states handled?
6. Manual Testing
- Feature works in browser/app?
- Edge cases tested?
- Error states tested?
- Works after page refresh?
Quick Check Flow
# 1. Code checks
pnpm lint && pnpm type-check
# 2. View changes
git status
git diff --name-only
# 3. Based on changed files, check relevant items above
Common Oversights
| Oversight | Consequence | Check |
|---|---|---|
| Code-spec docs not updated | Others don't know the change | Check .trellis/spec/ |
| Spec text is abstract only | Easy regressions in infra/cross-layer changes | Require signature/contract/matrix/cases/tests |
| Migration not created | Schema out of sync | Check db/migrations/ |
| Types not synced | Runtime errors | Check shared types |
| Tests not updated | False confidence | Run full test suite |
| Console.log left in | Noisy production logs | Search for console.log |
Relationship to Other Commands
Development Flow:
Write code -> Test -> $finish-work -> git commit -> $record-session
| |
Ensure completeness Record progress
Debug Flow:
Hit bug -> Fix -> $break-loop -> Knowledge capture
|
Deep analysis
$finish-work- Check work completeness (this skill)$record-session- Record session and commits$break-loop- Deep analysis after debugging
Core Principle
Delivery includes not just code, but also documentation, verification, and knowledge capture.
Complete work = Code + Docs + Tests + Verification
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
create-command
Scaffolds a new skill file with proper naming conventions and structure. Analyzes requirements to determine skill type and generates appropriate content. Use when adding a new developer workflow skill, creating a custom skill, or extending the Trellis skill set.
update-spec
Captures executable contracts and coding knowledge into .trellis/spec/ documents after implementation, debugging, or design decisions. Enforces code-spec depth for infra and cross-layer changes with mandatory sections for signatures, contracts, validation matrices, and test points. Use when a feature is implemented, a bug is fixed, a design decision is made, a new pattern is discovered, or cross-layer contracts change.
check
Validates recently written code against project-specific development guidelines from .trellis/spec/. Identifies changed files via git diff, discovers applicable spec modules, runs lint and typecheck, and reports guideline violations. Use when code is written and needs quality verification, to catch context drift during long sessions, or before committing changes.
check-cross-layer
Post-implementation verification across multiple code dimensions: cross-layer data flow, code reuse analysis, import path validation, and same-layer consistency checks. Identifies missed update sites, type mismatches, and duplicated constants. Use when changes span 3+ architectural layers, after modifying shared constants or configs, after batch file modifications, or when creating new utility functions.
start
Initializes an AI development session by reading workflow guides, developer identity, git status, active tasks, and project guidelines from .trellis/. Classifies incoming tasks and routes to brainstorm, direct edit, or task workflow. Use when beginning a new coding session, resuming work, starting a new task, or re-establishing project context.
integrate-skill
Adapts an external skill into project-specific development guidelines in .trellis/spec/. Creates guideline sections, code example templates with .template suffix, and updates spec indexes. Use when integrating an external skill, adding a new skill's patterns to project conventions, or incorporating third-party skill best practices into .trellis/spec/ documentation.
Didn't find tool you were looking for?