Skip to content

dalepike-VT/board-capture

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

BoardCapture

Whiteboard-to-structured-content pipeline using Claude Vision. Takes a photo of a physical whiteboard and produces a multi-format output package: raw transcription, structured summary, recreated diagrams (Mermaid + Excalidraw), and follow-up actions.

Quick Start

# From this repo
bun scripts/board-capture.ts whiteboard.jpg

# Or after installing as a skill
bun ~/.claude/skills/board-capture/scripts/board-capture.ts whiteboard.jpg

Prerequisites

Optional

  • ImageMagick - Image enhancement and downscaling for large files (--enhance flag)
  • sips - HEIC to JPEG conversion (macOS native, pre-installed)

Install as a Skill

See INSTALL.md. The repo layout mirrors the skill directory, so installation is just copying SKILL.md and scripts/ to the appropriate skill location:

  • Claude Code: ~/.claude/skills/board-capture/
  • OpenCode: ~/.config/opencode/skills/board-capture/

Usage

# Full 3-pass pipeline (most detailed output)
bun scripts/board-capture.ts <image-path>

# Specify output directory
bun scripts/board-capture.ts photo.jpg --output ./meeting-notes/

# Enhance image before processing (auto-orient, contrast, glare reduction)
bun scripts/board-capture.ts photo.jpg --enhance

# Quick single-pass mode for simple boards
bun scripts/board-capture.ts photo.jpg --quick

Options

Flag Description
--output <dir> Output directory (default: ./boardcapture-<timestamp>/)
--enhance Preprocess image with ImageMagick
--quick Single-pass mode, faster but less detailed
--help Show help

Supported Formats

JPEG, PNG, HEIC, WEBP. HEIC auto-converts via sips (macOS).

Output

Each run creates a timestamped directory with:

File Contents
raw-extraction.md Verbatim transcription preserving spatial context
structured-summary.md Reorganized with hierarchy, tables, action items
diagrams/*.mmd Mermaid files for structured diagrams
diagrams/*.excalidraw Excalidraw JSON for freeform layouts
follow-up.md Priority actions, open questions, next steps

Pipeline

The full pipeline runs three Claude Vision passes:

  1. Pass 1 - Faithful Extraction (smart): Exhaustive literal capture of all text, shapes, arrows, and spatial relationships
  2. Pass 2 - Structural Analysis (smart): Identifies hierarchy, classifies content (action items, decisions, questions), determines diagram types
  3. Pass 3 - Package Generation (smart): Produces the complete multi-format output package

Quick mode (--quick) collapses this into a single pass.

Partial Recovery

If Pass 2 or 3 fails, the pipeline saves whatever it completed. You'll always get at least the raw extraction from Pass 1.

Repo Structure

board-capture/
├── README.md          # This file
├── INSTALL.md         # Installation guide (Claude Code + OpenCode)
├── VERIFY.md          # Post-install verification checklist
├── SKILL.md           # Skill definition (copied during install)
├── package.json
├── tsconfig.json
├── scripts/           # Copied to skill directory during install
│   ├── board-capture.ts
│   ├── inference.ts
│   └── prompts/
│       ├── pass1-extraction.md
│       ├── pass2-analysis.md
│       ├── pass3-generation.md
│       └── quick-mode.md
└── examples/
    ├── full-pipeline/
    └── quick-mode/

Examples

See the examples/ directory for real output from test runs:

  • examples/full-pipeline/ - Complete 3-pass output with Mermaid and Excalidraw diagrams
  • examples/quick-mode/ - Single-pass quick mode output

Dependencies

Zero npm dependencies. Uses only:

  • Node built-ins (node:fs, node:path, node:child_process)
  • Bundled inference.ts wrapper (auto-detects claude or opencode CLI)

License

MIT

About

PAI skill for extracting structured content from whiteboard photos using multi-pass Claude Vision

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors