Agent skill

Adu Corrections PDF

by mikeOnBreeze in mikeOnBreeze/cc-crossbeam

Formats a draft corrections letter (markdown) into a professional PDF.

MITAuto-check passedDocuments & Office

Install Adu Corrections PDF

skills CLI
$ npx skills add mikeOnBreeze/cc-crossbeam --skill adu-corrections-pdf -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install mikeOnBreeze/cc-crossbeam adu-corrections-pdf --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/mikeOnBreeze/cc-crossbeam.git skills-src && mkdir -p .claude/skills && cp -r skills-src/server/skills/adu-corrections-pdf .claude/skills/adu-corrections-pdf && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
adu-corrections-pdf
GitHub stars
293
Token cost
~1.5k tokens
SKILL.md length
656 words
Files
2 (incl. references)
Skills in repo
20
Repo updated
First seen
Licence
MIT

At a glance

Formats a draft corrections letter (markdown) into a professional PDF.

  • Works in 3 steps: Read Draft Markdown → Generate PDF → Screenshot for QA
  • Tasks that involve PDF
  • SKILL.md covers Overview, What This Skill Does and Does…, Inputs and Outputs, plus 5 more sections
  • Calls pdftoppm

What it does

Adu Corrections PDF is an agent skill from mikeOnBreeze/cc-crossbeam. Formats a draft corrections letter (markdown) into a professional PDF. Single-purpose formatting sub-agent — no research. Receives markdown from the research agent, generates a styled PDF using the document-skills/pdf primitive, and returns a screenshot for QA. If the main agent finds issues in the screenshot, it will re-invoke this skill with fix instructions.

Its SKILL.md is about 1.5k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including reference files.

It sits in Documents & Office, covering PDF, Subagents and Deep research. It works with pypdf. The repository describes itself as: CrossBeam Permits — AI-assisted building-permit plan review for cities and builders. The licence is MIT.

When your agent uses it

  • Tasks that involve PDF
  • Tasks that involve Subagents
  • Tasks that involve Deep research

Example prompts

  • “Use the adu-corrections-pdf skill to format a draft corrections letter (markdown) into a professional PDF”
  • “/adu-corrections-pdf”

Requirements

  • Python 3

Workflow steps

3 steps, taken from the step headings in SKILL.md.

  1. Read Draft Markdown
  2. Generate PDF
  3. Screenshot for QA

What it can do on your machine

Read from SKILL.md and the folder at commit cc5591e. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • pdftoppm

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Adu Corrections PDF loads about 1.5k tokens when it runs, and up to ~2.4k if it reads all its reference files. Until then it costs about 96 tokens; SKILL.md has 656 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~96
When it runs · the whole SKILL.md, loaded when a task matches
~1.5k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~2.4k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from mikeOnBreeze/cc-crossbeam at commit cc5591e, republished under its MIT licence (© mikeOnBreeze). 656 words, ~1,514 tokens.

Download SKILL.mdSave it as .claude/skills/adu-corrections-pdf/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
adu-corrections-pdf
description
Formats a draft corrections letter (markdown) into a professional PDF. Single-purpose formatting sub-agent — no research. Receives markdown from the research agent, generates a styled PDF using the document-skills/pdf primitive, and returns a screenshot for QA. If the main agent finds issues in the screenshot, it will re-invoke this skill with fix instructions.

ADU Corrections PDF Generator

Overview

Take a draft corrections letter in markdown and produce a professional PDF. This is a formatting-only sub-agent invoked by the research agent at the end of the pipeline.

Depends on: document-skills/pdf — the primitive PDF skill. Load it for the actual PDF generation tools (reportlab for Python, pdf-lib for JavaScript). This skill adds the domain-specific formatting on top.

What This Skill Does and Does NOT Do

DoesDoes NOT
Apply city letterhead stylingResearch codes or review plans
Format sections, tables, confidence badgesModify correction content
Generate paginated PDFMake judgment calls about findings
Return screenshot for QADecide what goes in the letter

Inputs

InputFormatRequired
Draft corrections markdown.md file pathYes
City nameStringYes
Project addressStringYes
Project infoObject: applicant, designer, engineer, scope, datesYes
Output pathFile path for the .pdfYes
Fix instructionsString (only on re-invocation after failed QA)No

Outputs

OutputFormat
Corrections letter PDF.pdf at specified output path
QA screenshot.png of page 1 — returned to calling agent

Workflow

Step 1: Read Draft Markdown

Read the .md file. Validate expected structure: header block, notice, numbered sections, summary tables. Log warnings on unexpected structure but don't fail.

If fix_instructions are provided (re-invocation after failed QA), apply them before generating. Fix instructions might say: "Header is cut off — add more top margin" or "Table overflows page — reduce font size."

Step 2: Generate PDF

Use the document-skills/pdf primitive skill for the actual PDF generation. Two recommended approaches:

Approach A: reportlab (Python — best for structured layouts)

Use reportlab.platypus (SimpleDocTemplate, Paragraph, Table, Spacer, PageBreak) to build the letter programmatically. See document-skills/pdf/SKILL.md for reportlab patterns. This gives the most control over pagination, headers/footers, and table formatting.

Key reportlab elements for this letter:

  • SimpleDocTemplate with letter pagesize and margins
  • Paragraph with custom styles for section headers, item titles, body text, code citations
  • Table + TableStyle for the review summary and sheet manifest tables
  • Custom PageTemplate for the city letterhead header and draft footer on every page

Approach B: markdown → HTML → PDF (faster to implement)

  1. Convert markdown to HTML (use marked npm or Python markdown library)
  2. Inject into HTML template with references/letter-styles.css
  3. Render to PDF using puppeteer, md-to-pdf, or wkhtmltopdf

See document-skills/pdf/reference.md for pypdfium2 rendering and pdf-lib JavaScript options.

Show full SKILL.md (276 more words)Show less
Step 3: Screenshot for QA

Convert page 1 of the generated PDF to a PNG. Use document-skills/pdf tools:

python
# Using pypdfium2 (from document-skills/pdf/reference.md)
import pypdfium2 as pdfium
pdf = pdfium.PdfDocument("corrections_letter.pdf")
bitmap = pdf[0].render(scale=2.0)
img = bitmap.to_pil()
img.save("qa_screenshot.png")

Or command line:

bash
pdftoppm -png -r 200 -f 1 -l 1 corrections_letter.pdf qa_screenshot

Return the screenshot path to the calling agent. The calling agent handles the QA decision — this skill just provides the screenshot.

Letter Format Spec

Page Layout
  • Size: US Letter (8.5" x 11")
  • Margins: 1" top/bottom, 0.75" left/right
  • Font: Arial/Helvetica — 10pt body, 12pt section headers, 14pt city name
  • Line spacing: 1.3
Header (every page)
CITY OF [CITY NAME]
BUILDING AND SAFETY DIVISION
PLAN CHECK CORRECTIONS — AI-ASSISTED DRAFT
AI Notice Banner (page 1 only)

Light yellow box with amber border:

NOTICE: This is an AI-generated DRAFT corrections letter. Items flagged [VERIFY] require closer inspection. Items flagged [REVIEWER] require licensed professional assessment. A human plan checker must review and approve before issuance.

Confidence Badges (inline, color-coded)
  • CONFIRM → green (quick check, HIGH confidence)
  • VERIFY → amber (needs closer look, MEDIUM confidence)
  • REVIEWER → red (requires licensed professional)
  • COMPLETE → gray (human must fill in entirely)
Page [N] of [M]
AI-Assisted Draft — Not For Issuance Without Review
CrossBeam ADU Plan Review | [Timestamp]
Section Order
  1. Planning / Zoning
  2. Building
  3. Site / Civil
  4. Fire / Life Safety
  5. Structural [REVIEWER]
  6. Process Notes (Informational)
  7. Review Summary (tables)

Dependencies

SkillWhat It Provides
document-skills/pdfPDF generation primitives — reportlab, pypdf, pdf-lib, pypdfium2, command-line tools

References

FileContents
references/letter-styles.cssCSS stylesheet — only used if taking the HTML→PDF approach

Important Notes

  • Never modify correction content. Format exactly as received. Content issues are the research agent's problem.
  • Every page must say DRAFT. Header, footer, and notice banner. This document cannot be mistaken for an official city issuance.
  • Fail gracefully. If styling breaks, produce a plain-formatted PDF anyway. A plain PDF beats no PDF.
  • Accept fix instructions. When re-invoked after a failed QA, the main agent will provide specific fix instructions. Apply them and regenerate.

© mikeOnBreeze, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file (references) in server/skills/adu-corrections-pdf of mikeOnBreeze/cc-crossbeam.

  • SKILL.md
  • references/letter-styles.css

Open the folder on GitHubat commit cc5591e

Compare with similar skills

Adu Corrections PDF next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Adu Corrections PDF compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Adu Corrections PDF this skillmikeOnBreeze/cc-crossbeam293—~1.5kAutomated safety check: PassMIT
Quant Paper ExtractorCamusGIT/EvoQuant151—~2.4kAutomated safety check: PassApache-2.0
Markdown To PDFstaskh/trading_skills376—~481Automated safety check: PassMIT
File Converteraiskillstore/marketplace4331 repos~895Automated safety check: PassNone
Lov Any2pdflovstudio/any2pdf211—~2.4kAutomated safety check: NotesMIT
Any2pdfcosmicstack-labs/mercury-agent-skills476—~3.3kAutomated safety check: NotesMIT

Similar skills

  • Quant Paper Extractor

    CamusGIT/EvoQuant

    Convert quantitative research report PDFs to markdown, then extract structured knowledge (paperId, title, year, source, keywords, tldr, abstract, strategy, method, experiment, result) into JSONL…

    151 GitHub stars~2.4k tokensUpdated 1 mo ago
    Documents & OfficeAuto-check passed
  • Markdown To PDF

    staskh/trading_skills

    Convert a markdown file to PDF using mistune + reportlab. An agent skill from staskh/trading_skills.

    376 GitHub stars~481 tokensUpdated 12 days ago
    Documents & OfficeAuto-check passed
  • File Converter

    aiskillstore/marketplace

    This skill handles file format conversions across documents (PDF, DOCX, Markdown, HTML, TXT), data files (JSON, CSV, YAML, XML, TOML), and images (PNG, JPG, WebP, SVG, GIF).

    433 GitHub starsUsed in 1 repo~895 tokens
    Documents & OfficeAuto-check passed
  • Lov Any2pdf

    lovstudio/any2pdf

    Convert Markdown documents to professionally typeset PDF files with reportlab.

    211 GitHub stars~2.4k tokensUpdated 2 mo ago
    Documents & OfficeAuto-check: notes
  • Any2pdf

    cosmicstack-labs/mercury-agent-skills

    Convert Markdown to publication-quality PDF with reportlab — CJK/Latin mixed text, themes, cover pages, watermarks, callouts, formulas, and interactive theme selection

    476 GitHub stars~3.3k tokensUpdated 1 mo ago
    Documents & OfficeAuto-check: notes
  • Markitdown

    ImCa0/just-laws

    Convert files and office documents to Markdown. An agent skill from ImCa0/just-laws.

    781 GitHub starsUsed in 14 repos~3.2k tokens
    Documents & OfficeAuto-check: notes

More from mikeOnBreeze/cc-crossbeam

All 20 skills in this repo
  • Adu PDF Extraction

    mikeOnBreeze/cc-crossbeam

    This skill extracts construction PDF plan binders into agent-consumable formats.

    293 GitHub stars~5k tokensUpdated 7 mo ago
    Auto-check passed
  • Adu Targeted Page Viewer

    mikeOnBreeze/cc-crossbeam

    Extracts construction plan PDFs into page PNGs, reads the sheet index to build a sheet-to-page manifest, and enables targeted viewing of specific sheets.

    293 GitHub stars~1.8k tokensUpdated 7 mo ago
    Auto-check passed
  • Fal AI

    mikeOnBreeze/cc-crossbeam

    This skill enables AI video generation from images AND text-to-speech voiceover generation using Fal.ai's API.

    293 GitHub stars~1.9k tokensUpdated 7 mo ago
    Auto-check: notes
  • Nano Banana

    mikeOnBreeze/cc-crossbeam

    This skill enables image generation and editing using Google's Gemini Nano Banana models.

    293 GitHub stars~944 tokensUpdated 7 mo ago
    Auto-check: notes
  • Adu City Research

    mikeOnBreeze/cc-crossbeam

    Researches city-level ADU regulations, municipal codes, and standard details for any California city.

    293 GitHub stars~3.9k tokensUpdated 7 mo ago
    Auto-check passed
  • Adu Plan Review

    mikeOnBreeze/cc-crossbeam

    City-side ADU plan review — the flip side of adu-corrections-flow.

    293 GitHub stars~3.7k tokensUpdated 7 mo ago
    Auto-check passed

Works with

Questions about Adu Corrections PDF

What does Adu Corrections PDF do?

Formats a draft corrections letter (markdown) into a professional PDF. Adu Corrections PDF is an agent skill from mikeOnBreeze/cc-crossbeam. Formats a draft corrections letter (markdown) into a professional PDF.

When should I use Adu Corrections PDF?

Adu Corrections PDF fits situations like: tasks that involve PDF; tasks that involve Subagents; tasks that involve Deep research.

How do I install Adu Corrections PDF in Claude Code?

Run `npx skills add mikeOnBreeze/cc-crossbeam --skill adu-corrections-pdf -a claude-code`. Or copy the skill folder (server/skills/adu-corrections-pdf in mikeOnBreeze/cc-crossbeam) into .claude/skills/adu-corrections-pdf in your project. Claude Code loads it when a task matches its description.

How do I install Adu Corrections PDF in Codex?

Run `npx skills add mikeOnBreeze/cc-crossbeam --skill adu-corrections-pdf -a codex`. Or copy the skill folder (server/skills/adu-corrections-pdf in mikeOnBreeze/cc-crossbeam) into .agents/skills/adu-corrections-pdf in your project. Codex loads it when a task matches its description.

Can I use Adu Corrections PDF in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add mikeOnBreeze/cc-crossbeam --skill adu-corrections-pdf -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/adu-corrections-pdf, .gemini/skills/adu-corrections-pdf, .github/skills/adu-corrections-pdf and .opencode/skills/adu-corrections-pdf in your project.

What does Adu Corrections PDF need to run?

Going by SKILL.md and its folder, Adu Corrections PDF needs the command-line tools its instructions call (pdftoppm). Our summary lists: Python 3.

Does Adu Corrections PDF access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Adu Corrections PDF safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Adu Corrections PDF use?

Adu Corrections PDF is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Adu Corrections PDF use?

About 1.5k tokens (SKILL.md is roughly 6.1k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 926 tokens, read only when the agent opens those files.

What are the alternatives to Adu Corrections PDF?

Skills that share tags, products or a category with Adu Corrections PDF: Quant Paper Extractor (CamusGIT/EvoQuant, 151 stars), Markdown To PDF (staskh/trading_skills, 376 stars), File Converter (aiskillstore/marketplace, 433 stars) and Lov Any2pdf (lovstudio/any2pdf, 211 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Adu Corrections PDF?

mikeOnBreeze (a GitHub user) maintains it in mikeOnBreeze/cc-crossbeam, which has 293 GitHub stars. The repository holds 20 skills in this directory. The repository was last updated on March 2, 2026.

Source: mikeOnBreeze/cc-crossbeam on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.