By jongwony
Automate full task lifecycle in dev workflows: capture chat context as structured, dependency-ordered tasks; execute eligible ones with sync to detect stales, generate handovers; commit to branches, create GitHub PRs, and register extracted checklist items as tasks.
This skill should be used when the user asks to "ship", "ship it", "commit and create PR with tasks", "commit push pr and register tasks", or wants to commit, push, create a pull request, AND register test plan items as tasks. This combines the commit-push-pr workflow with automatic task registration from PR checklists. Use this skill instead of commit-push-pr when the user wants test plan tracking. Usage: /ship
This skill should be used when the user asks to "run tasks", "execute tasks", "work through tasks", "do my tasks", "task-run", "sync tasks", "clean up tasks", "review stale tasks", "check task status", "handover session", "prepare next session", "save handover", "session handover", "hand off tasks", "rearrange dependencies", "reorder tasks", or wants to execute, sync, or handover tasks from the current session's task list. Usage: /task-run [--all] [--sync [--dry-run]] [--handover [query]]
This skill should be used when the user asks to "save current task", "save progress", "create task from context", "task-save", "break down tasks", "decompose work", or wants to capture current work state as structured tasks with dependency ordering. Usage: /task-save [--cwd <path>] [query] --cwd: Cross-project handoff (records target directory in metadata for ClaudePanel.spoon).
Hammerspoon Spoon for viewing Claude Code tasks in a floating window.
git clone https://github.com/jongwony/ClaudePanel.spoon.git
ln -sf $(pwd)/ClaudePanel.spoon ~/.hammerspoon/Spoons/ClaudePanel.spoon
Download and extract to ~/.hammerspoon/Spoons/ClaudePanel.spoon/
Add to your ~/.hammerspoon/init.lua:
hs.loadSpoon("ClaudePanel")
spoon.ClaudePanel:bindHotkeys(spoon.ClaudePanel.defaultHotkeys)
spoon.ClaudePanel:start()
| Hotkey | Action |
|---|---|
opt+. | Toggle task viewer |
cmd+alt+T | Show task status summary |
| Key | Action |
|---|---|
j / k / ↓ / ↑ | Navigate tasks |
Space | View task detail |
Enter | Launch Claude session |
⌘⌫ | Delete selected task |
/ | Search mode |
= | Session input mode |
Escape | Return to navigation |
? | Show shortcuts help |
⌘E | Quick Task dialog |
⌘Enter | Create task |
All keyboard shortcuts can be customized via bindShortcuts().
hs.loadSpoon("ClaudePanel")
spoon.ClaudePanel:configure({
width = 500,
height = 700,
margin = 30,
debugMode = true,
-- Specify paths explicitly if auto-discovery fails
claudePath = "/usr/local/bin/claude",
terminalApp = "/Applications/iTerm.app/Contents/MacOS/iTerm2",
shell = "/bin/bash",
})
spoon.ClaudePanel:bindHotkeys({
toggle = {{"cmd", "shift"}, "t"},
status = {{"cmd", "alt"}, "t"}
})
-- You can customize all in-app keyboard shortcuts
spoon.ClaudePanel:bindShortcuts({
navigateDown = {modifiers = {}, keys = {'j', 'ㅓ', 'ArrowDown'}},
navigateUp = {modifiers = {}, keys = {'k', 'ㅏ', 'ArrowUp'}},
deleteTask = {modifiers = {'cmd'}, keys = {'Backspace'}},
openTask = {modifiers = {}, keys = {' '}},
launchTask = {modifiers = {}, keys = {'Enter'}},
})
spoon.ClaudePanel:start()
obj:init() - Initialize the Spoon (called automatically)obj:start() - Start file watching and load saved stateobj:stop() - Stop file watching and cleanupobj:show() - Show the task viewerobj:hide() - Hide the task viewerobj:toggle() - Toggle visibilityobj:refresh() - Manually refresh the task listobj:setTaskListId(id) - Set the session ID filterobj:createTask(subject) - Create a new task via Claude CLIobj:quickTaskUpdate(prompt) - Run quick TaskUpdate via haiku modelobj:launchClaudeWithTaskList() - Launch Claude in terminal with current sessionobj:launchClaudeWithCwd(sessionId, cwd) - Launch Claude with specific working directoryobj:launchClaudeWithSession(sessionId) - Launch Claude with session env varobj:showTaskDetailWindow(subject, description, metadata) - Show task detail popupobj:deleteTask(taskId, sessionId) - Delete a task by IDobj:status() - Get current status infoobj:configure(options) - Update configurationobj:bindHotkeys(mapping) - Bind hotkeys| Option | Default | Description |
|---|---|---|
width | 420 | Window width |
height | 580 | Window height |
margin | 20 | Screen edge margin |
refreshDebounce | 0.2 | Debounce delay for file changes (seconds) |
debugMode | false | Enable debug logging |
taskListId | $CLAUDE_CODE_TASK_LIST_ID | Session ID filter |
claudePath | nil | Path to claude CLI (auto-discovered if nil) |
terminalApp | nil | Path to terminal app (auto-discovered if nil) |
shell | nil | Shell to use (defaults to $SHELL or /bin/zsh) |
keyBindings | (see below) | Customizable keyboard shortcuts (use bindShortcuts()) |
claude command)MIT License - see LICENSE
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
npx claudepluginhub jongwony/claudepanel.spoon --plugin task-workflowValidate structural mapping between domains — /ground (ἀναλογία: a proportion)
Route upstream epistemic deficits and evaluate execution-time risks — /attend (προσοχή: attention)
Detect application-context mismatch after execution — /contextualize (ἐφαρμογή: an application)
Define epistemic boundaries per decision — /bound (ὁρισμός: a bounding)
Surface potential gaps at decision points — /gap (συνείδησις: knowing-together)
Cotask — task management with TASKS.md kanban dashboard
Installer for TÂCHES' Get-Shit-Done workflow system - meta-prompting, context engineering and spec-driven development
Personal task tracker — invisible kanban that tracks your work automatically
Task orchestration using Claude Code's built-in task tools with slash commands for importing plans and executing tasks individually, sequentially, or with a team
Install and manage TaskYou — a personal task management system with Kanban board, background AI execution, and git worktree isolation.
Commands for automating repetitive tasks and workflows