board-closeout
Drain stuck kanban doing cards — merged PRs/CRs to done, true zombies to todo — via the zero-LLM last-stack-board-closeout-sweep.
Skill by EdgeVector
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/edgevector-board-closeout
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: ml, productivity
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/board-closeout
What's inside
- Skill name
board-closeout- Description
- Drain stuck kanban doing cards — merged PRs/CRs to done, true zombies to todo — via the zero-LLM last-stack-board-closeout-sweep. Use when doing piles up, cards sit multi-hour after merge, low-credit paused watch, or Tom says board is stuck.
- License
- MIT
- Instructions
- 57 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# Board closeout
## When to use
- Factory / board shows **doing** cards for many hours after work shipped
- `kanban-watch` is **paused** (common under `routines-profile apply low-credit`)
- Pickup heartbeats show `in-flight-budget-handoff` / `in-flight-ci-pending` and
cards never reach `done`
- Soft 1h reclaim is **not** enough: it skips any card with a `pr_url`
## Do this (deterministic)
```bash
last_stack="${LAST_STACK_ROOT:-$HOME/.last-stack}"
# Preview
"$last_stack/bin/last-stack-board-closeout-sweep" --dry-run
# Apply
"$last_stack/bin/last-stack-board-closeout-sweep"
# Ensure always-on (every 15m, zero API credits)
"$last_stack/bin/last-stack-board-closeout-install" install
"$last_stack/bin/last-stack-board-closeout-install" status
```
Heartbeat line shape:
```text
board-closeout <ISO> ok|noop closed=N closed_slugs=… rolled_back=N demoted=N skipped=N flagged=…
```
## What it will not do
- Kill live agent processes
- Reclaim cards with an **open** PR/CR (field **or** body `PR:` / `CR:` /
`lastgit://…` — empty structured `pr_url` is healed from the body when found)
- Leave **open** in-flight PR/CR cards in `doing`.
- **Demote deploy-parked** cards out of WIP: `Requires-Deploy:` body header,
tags `awaiting-deploy` / `live-proof` / `deploy-gate` / `needs-safe-upgrade`
/ `awaiting-validation`, or live-proof wait notes. Those go to `backlog`
with `block_status=deferred` (not todo). A later validate/safe-upgrade pass
closes them to `done` when the deploy gate is terminal.
- Open PRs for you — WIP-with-commits-but-no-`pr_url` after grace is rolled
back to **`todo`** (flag `wip-no-pr:<slug>`; worktree kept) so pickup can
resume. That state is a pickup contract violation (`handoff` requires a URL).
## Related
- Routine: `last-stack/routines/board-closeout.md`
- Soft 1h zombies: a `doing` card past 60m with no PR, no live worker and no
branch commits moves back to `todo` — never to `done`, and never by killing
a live worker.
- Always-on policy: the sweep is standing-authorized; run it without asking.
- Per-card helper: `last-stack-card-closeout <slug>` (moves to `done`, then
reclaims `~/.fkanban/worktrees/*<slug>*` via `last-stack-worktree-reclaim`)
- Worktree reclaim helper: `last-stack-worktree-reclaim --slug <slug>` or
`--sweep-stale --max-age-hours 48` (disk-reclaim / worktree-cleanup backstop)From EdgeVector/last-stack, MIT.
More from EdgeVector/last-stack
- 0.565score
kanban
EdgeVector
Manage the kanban board — a kanban over LastDB.
SkillAFreshness: AClaude Code +9 - 0.565score
kanban-metrics-dashboard
EdgeVector
Build or refresh an ad-hoc metrics/benchmark view over kanban or LastDB ops data — velocity, throughput, write-timeout benchmarks, board-column funnels…
SkillAFreshness: AClaude Code +9 - 0.565score
factory-health
EdgeVector
Hourly Kanban Factory health check — ship rate, todo depth, doing age vs baselines; ra notify Tom when out of band.
SkillAFreshness: AClaude Code +9 - 0.560score
diagram
EdgeVector
Draw a diagram in Tom's preferred style — technical black-and-white line drawings (thin uniform geometric strokes, hatch for solid/stored things, dimension…
SkillAFreshness: AClaude Code +9 - 0.560score
app-identity-dogfood
EdgeVector
Run the App Identity app-creation flow end-to-end against the DEV environment, autonomously.
SkillAFreshness: AClaude Code +9 - 0.560score
brain-doctor
EdgeVector
Read-only triage of the LastDB brain (Tom's primary brain/kanban daily-driver node — the desktop fold-app process or Mini daemon, reached over the Unix socket…
SkillAFreshness: AClaude Code +9 - 0.560score
fix-it
EdgeVector
Find and land the permanent fix for a defect, papercut, failing signal, or leftover temporary repair.
SkillAFreshness: AClaude Code +9 - 0.551score
close-out
EdgeVector
Run the full close-out loop after finishing a substantive change — worktree PR + auto-merge, file session papercuts, write a full brain report of what was…
SkillAFreshness: AClaude Code +9 - 0.551score
kanban-agent
EdgeVector
Drive a single kanban card all the way to a MERGED PR — a card only reaches `done` when its code is actually in the repo and its outcome is proven.
SkillAFreshness: AClaude Code +9 - 0.524score
last-stack-machine-leak-scan
EdgeVector
Scan Last Stack for host-machine identity leaks (usernames, home paths, emails, private IPs) that must not ship in the public installable product.
SkillBFreshness: BClaude Code +9 - 0.524score
kanban-grooming
EdgeVector
Use when auditing or grooming Kanban board health: dependency-stub reconciliation, stale generated blockers, malformed Repo/Base/Kind headers, stale…
SkillBFreshness: BClaude Code +9 - 0.524score
app-safe-upgrade
EdgeVector
REQUIRED path for upgrading any installed EdgeVector app (kanban, brain, situations, last-stack, search, …).
SkillBFreshness: BClaude Code +9
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Oct 4, 2026 (24 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/EdgeVector/last-stack
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from EdgeVector
- 0.565score
kanban-metrics-dashboard
EdgeVector
Build or refresh an ad-hoc metrics/benchmark view over kanban or LastDB ops data — velocity, throughput, write-timeout benchmarks, board-column funnels…
SkillAFreshness: AClaude Code +9 - 0.565score
factory-health
EdgeVector
Hourly Kanban Factory health check — ship rate, todo depth, doing age vs baselines; ra notify Tom when out of band.
SkillAFreshness: AClaude Code +9 - 0.565score
kanban
EdgeVector
Manage the kanban board — a kanban over LastDB.
SkillAFreshness: AClaude Code +9 - 0.560score
fix-it
EdgeVector
Find and land the permanent fix for a defect, papercut, failing signal, or leftover temporary repair.
SkillAFreshness: AClaude Code +9 - 0.560score
app-identity-dogfood
EdgeVector
Run the App Identity app-creation flow end-to-end against the DEV environment, autonomously.
SkillAFreshness: AClaude Code +9 - 0.560score
brain-doctor
EdgeVector
Read-only triage of the LastDB brain (Tom's primary brain/kanban daily-driver node — the desktop fold-app process or Mini daemon, reached over the Unix socket…
SkillAFreshness: AClaude Code +9
Cite this page
board-closeout skill. Agent Mart. https://agentmart.dev/skills/edgevector-board-closeout (last updated 2026-10-24)