docs/skills/task-completion/SKILL.md
Guidelines for summarizing completed work with proper format, context, and follow-up items. Use when finishing tasks to ensure clear handoff.
npx skillsauth add megalithic/dotfiles task-completionInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Defines the format and requirements for task completion summaries in AI agent sessions.
Load this skill when completing any non-trivial task that involved:
Brief confirmation that the task is complete:
Done, my liege! [Brief description of what was accomplished].
Provide 2-3 educational insights specific to the implementation:
`★ Insight ─────────────────────────────────────`
**[Pattern/Concept Name]**: [Explanation of why this approach was used, what problem it solves, or what makes it interesting]
**[Another Pattern]**: [Another insight specific to this codebase or implementation]
`─────────────────────────────────────────────────`
Focus on:
Avoid:
Structured summary of changes:
## Summary
**Created:**
- `path/to/file.ext` (~N lines) - Brief description
**Modified:**
- `path/to/file.ext` - What was changed
**Features/Fixes:**
- ✅ Feature or fix 1
- ✅ Feature or fix 2
**Usage:** (if applicable)
```bash
command-example arg1 arg2
### 4. Preview Diff (REQUIRED)
**CRITICAL**: At the end of every task completion, invoke `preview-ai diff` to show the changes in a split pane:
```bash
preview-ai diff
This ensures:
.beads/** noiseDone, my liege! The authentication middleware is now implemented with JWT validation.
`★ Insight ─────────────────────────────────────`
**Middleware Ordering**: The auth middleware is registered early in the pipeline
(before route handlers) but after CORS and body parsing. This ensures credentials
are validated before any business logic runs while still allowing preflight requests.
**Token Refresh Pattern**: Using a sliding window refresh (refresh if <5min remaining)
rather than fixed expiry. This prevents the jarring UX of tokens expiring mid-session
while the user is actively working.
`─────────────────────────────────────────────────`
## Summary
**Created:**
- `lib/middleware/auth.ex` (~85 lines) - JWT validation middleware
- `lib/auth/token.ex` (~45 lines) - Token generation/validation helpers
**Modified:**
- `lib/router.ex` - Added auth middleware to protected routes
**Features:**
- ✅ JWT token validation with RS256
- ✅ Sliding window token refresh
- ✅ Proper error responses for expired/invalid tokens
**Usage:**
```elixir
# In router.ex
pipeline :authenticated do
plug MyApp.Middleware.Auth
end
[Executes: preview-ai diff]
## Integration with Finish Command
When running `/finish`, `/end`, or `/done`:
1. Complete all pending work
2. Generate summary using this format
3. Run `preview-ai diff` to show changes
4. Proceed with beads sync and push workflow
## Pane Positioning
`preview-ai` ensures the diff preview opens:
- **RIGHT next to** the AI agent's pane (horizontal split)
- In the **same window** as the agent
- **Session-scoped** (won't affect other tmux sessions)
- Focus returns to the agent pane after opening
This works correctly even with multiple panes in the window.
testing
Apply Strunk's timeless writing rules to ANY prose humans will read - documentation, commit messages, error messages, explanations, reports, or UI text. Makes your writing clearer, stronger, and more professional.
tools
Web search using DuckDuckGo (free, unlimited). Falls back to pi-web-access extension for content extraction.
tools
Interact with web pages using agent-browser CLI. MUST run 'browser connect 9222' FIRST to use existing browser with authenticated sessions.
tools
Remote control tmux sessions for interactive CLIs (python, gdb, etc.) by sending keystrokes and scraping pane output.