From kanban
Manage a Markdown-based Kanban board using card files in a kanban/ directory (including kanban/archived/ for completed cards). Use when the user asks to create, move, view, list, or manage tasks or cards on a kanban board, or when tracking work items across statuses like backlog, todo, doing, done, or archive.
npx claudepluginhub mattjoyce/claude-plugins --plugin kanbanThis skill uses the workspace's default tool permissions.
Manage a Kanban board as Markdown files in the `kanban/` directory. Each file is a card. The board state is derived by reading all card files and grouping by `status`.
Conducts multi-round deep research on GitHub repos via API and web searches, generating markdown reports with executive summaries, timelines, metrics, and Mermaid diagrams.
Dynamically discovers and combines enabled skills into cohesive, unexpected delightful experiences like interactive HTML or themed artifacts. Activates on 'surprise me', inspiration, or boredom cues.
Generates images from structured JSON prompts via Python script execution. Supports reference images and aspect ratios for characters, scenes, products, visuals.
Manage a Kanban board as Markdown files in the kanban/ directory. Each file is a card. The board state is derived by reading all card files and grouping by status.
Treat cards as durable source material for future review. Do not rewrite or delete prior narrative content unless explicitly asked. When updating a card, append a brief narrative note to a ## Narrative section at the end of the file. Focus on reasons, discoveries, insights, and decisions. Avoid transactional status-change logs unless they matter to the story. Use ISO dates.
Narrative entry format:
## Narrative
- 2026-02-05: Discovered the auth flow must support device-based MFA; shifted approach to use WebAuthn. (by @assistant)
If the card has no ## Narrative section, add it. If a change is minor (e.g., typo), skip the narrative note unless it carries meaningful insight.
When a card is moved to done, add enough narrative detail that a future reader can understand the card’s story and outcome. Keep it coherent and complete without being verbose.
Each card's frontmatter supports the following fields:
id — Unique numeric identifier. Scan existing cards in kanban/ (including kanban/archived/), take max + 1. Start at 1 if empty. Reference cards by this number.status — Column: backlog, todo, doing, done, or archive.priority — High or Normal. Defaults to Normal if omitted.blocked_by — List of card IDs that must be done before this card moves to doing. Example: [3, 7]. Omit or set to [] if unblocked.assignee — (optional) Owner of the card.due_date — (optional) Target date.tags — (optional) List of labels.Create a new .md file in kanban/. Filename should be kebab-case.
If possible, include a Job Story using the structure “When [situation], I want to [motivation], so I can [expected outcome].” Do not force it; only add when it fits. If you add one, share it with the requester to confirm.
---
id: 1
status: todo
priority: Normal
blocked_by: []
assignee: "@claude"
due_date: 2026-02-28
tags: [auth, backend]
---
# Implement User Authentication
Set up user authentication using JWTs.
## Acceptance Criteria
- Users can register for a new account.
- Users can log in with their credentials.
- Authenticated users receive a JWT.
Update the status field in frontmatter.
Before moving to doing, verify all IDs in blocked_by have status done. If any are not done, the card stays put.
Cards with status: done may be moved into kanban/archived/ to keep the main board tidy. This is a file-location move only; the card should remain a normal card with status: done unless explicitly changed.
If kanban/archived/ does not exist, create it under the active cards folder (kanban/) before moving the card.
Helper scripts are bundled in the scripts/ directory alongside this skill file. To locate them, find this skill's directory within the installed plugin (e.g., using glob for **/kanban-ai/scripts/view_board.sh).
Run the board view script:
bash <SCRIPTS_DIR>/view_board.sh kanban/
Outputs cards grouped by status column, with priority and blocked_by flags inline.
bash <SCRIPTS_DIR>/search_by_tag.sh kanban/ <tag>
Output: Cards with that tag (ID, status, title)
bash <SCRIPTS_DIR>/search_content.sh kanban/ "<search term>"
Output: Cards matching the search term with context lines
bash <SCRIPTS_DIR>/show_blocked.sh kanban/
Output: Cards with non-empty blocked_by field and what's blocking them
bash <SCRIPTS_DIR>/list_tags.sh kanban/
Output: All tags sorted by usage count (most used first)
bash <SCRIPTS_DIR>/list_all_cards.sh kanban/
Output: All cards in pipe-delimited format (id|status|blocked_by|title), sorted by ID. Useful for parsing, debugging dependencies, or exporting board state.
Note: <SCRIPTS_DIR> refers to the scripts/ directory next to this SKILL.md file. All scripts take the kanban directory as the first argument. If omitted, they default to the current directory.