# Kami

> A constraint-based layout design system for AI-generated documents, providing warm parchment aesthetics, serif typography, and eight document templates for agents like Claude and Codex.

Kami (紙, かみ — "paper" in Japanese) is an open-source design system built by independent developer Tw93 to give AI-generated documents a consistent, composed visual identity. It ships as a skill or plugin that installs directly into agents like Claude Code, Codex, and Claude Desktop, running entirely on the user's machine with no hosted service, no API key, and no data leaving the host. The project reached v1.12.0 ("Safer Output") in August 2026 and has accumulated over 10,000 GitHub stars.

## What It Is

Kami is a constraint language for printed matter, not a UI framework or a theme engine. It defines a fixed visual vocabulary — warm parchment canvas (`#f5f4ed`), a single ink-blue accent (`#1B365D`), serif-led typographic hierarchy, and editorial whitespace — and holds that vocabulary across every document type it produces. The output is HTML that exports to PDF, PNG, or editable PPTX. Because the constraints are fixed, the interesting work shifts to content quality and verification rather than layout decisions.

The system is part of a trilogy the author describes: Kaku (書く) writes code, Waza (技) drills habits, and Kami (紙) delivers documents.

## Document Templates and Diagram Library

Kami ships eight document templates covering the most common professional formats:

- **One-Pager** — startup briefs, product intros, white-paper print variants
- **Long Doc** — research reports, extended analyses
- **Letter** — formal correspondence
- **Portfolio** — multi-page project showcases
- **Resume** — founder CVs, two-page layouts
- **Slides** — keynote decks via WeasyPrint HTML-to-PDF, python-pptx for editable PPTX, or a Marp Markdown-first variant
- **Equity Report** — financial analysis with metric cards and timelines
- **Changelog** — release notes

A separate landing-page system applies the same constraint set to deployable multilingual product pages. Eighteen inline SVG diagram types cover architecture boards, flowcharts, bar charts, donut charts, sequence diagrams, class diagrams, ER diagrams, candlestick charts, and Venn diagrams. Mermaid text can author sequence, class, and ER diagrams, which are then re-themed to the Kami palette and made WeasyPrint-safe.

## Design Principles and Typography

The system enforces eight explicit rules: parchment page background (never pure white), ink blue as the sole accent covering no more than 5% of any page, warm yellow-brown undertone on all grays (no cool blue-grays), serif for English headlines and body, three line-height bands (tight 1.1–1.3 / dense 1.4–1.45 / reading 1.5–1.55), solid hex tag backgrounds to avoid a WeasyPrint double-rectangle rendering bug, and ring or whisper shadows only (no hard drop shadows).

Each language uses a dedicated serif font: Charter for English, TsangerJinKai02 for Chinese, YuMincho for Japanese, and Source Han Serif K for Korean. Letter-spacing, line-height, and font sizes are tuned per language for print quality.

## Installation and Agent Integration

Kami installs into agents rather than running as a hosted service:

- **Claude Code (v2.1.142+):** `/plugin marketplace add tw93/kami` then `/plugin install kami@kami`
- **Codex:** `codex plugin marketplace add tw93/kami` then `codex plugin add kami@kami`
- **Generic agents** reading from `~/.agents/`: `npx skills add tw93/kami/plugins/kami -a universal -g -y`
- **Claude Desktop:** download `kami.zip` from GitHub Releases and upload under Customize > Skills

The skill auto-triggers from natural language requests — "build me a resume", "make a one-pager for my startup" — with no slash command needed. An optional `~/.config/kami/brand.md` file persists identity, brand color, language preference, and tone across sessions.

An MCP server (`scripts/mcp_server.py`) exposes five tools over stdio — `kami_templates`, `kami_doctor`, `kami_render`, `kami_check`, and `kami_screenshot` — so any MCP-capable agent can drive Kami as a rendering engine without loading the full skill prompt.

## Verification and Quality Gates

Kami ships nine JSON content schemas (changelog, equity-report, landing-page, letter, long-doc, one-pager, portfolio, resume, slides) and a set of deterministic checks that catch the failures agents actually produce:

- `--check-placeholders` — unfilled template text still in the document
- `--check-markdown` — markdown syntax that leaked into the rendered output
- `--check-orphans` — single lines stranded at a page break
- `--check-density` — pages ending with more than a quarter empty
- `--check-rhythm` — slide sequences repeating the same layout too many times
- `--check-resume-balance` — column and section balance
- `--check-visual` — exports page images against a fixed review checklist for a perceptual pass

A coverage check confirms every field in the content schema actually reached the filled page, catching the most common silent failure in agent-generated layouts.

## Update: V1.12.0 Safer Output

The latest release, V1.12.0 "Safer Output," was published on August 1, 2026. The repository was created in April 2026 and has seen rapid iteration, with the GitHub project showing 10,273 stars and 478 forks as of the latest data. The version badge on the homepage, the plugin manifests, and the skill package are cross-checked in CI to prevent drift. Kami also runs a quiet daily version check and notifies users in chat when a newer version is available, sending no data and skipping the check when offline.

## Features
- Eight document templates: One-Pager, Long Doc, Letter, Portfolio, Resume, Slides, Equity Report, Changelog
- Landing page system with multilingual support (EN, CN, KO)
- Eighteen inline SVG diagram types including architecture, flowchart, bar chart, donut chart, candlestick, Venn
- Mermaid text authoring for sequence, class, and ER diagrams
- Three slide rendering paths: WeasyPrint HTML-to-PDF, python-pptx editable PPTX, Marp Markdown variant
- MCP server with five tools: kami_templates, kami_doctor, kami_render, kami_check, kami_screenshot
- Nine JSON content schemas for structured document validation
- Deterministic quality checks: placeholders, markdown leaks, orphans, density, rhythm, resume balance, visual
- Content coverage check to confirm all schema fields reached the filled page
- Optional brand.md profile for persistent identity and defaults across sessions
- Warm parchment canvas (#f5f4ed) with single ink-blue accent (#1B365D)
- Per-language serif fonts: Charter (EN), TsangerJinKai02 (CN), YuMincho (JA), Source Han Serif K (KO)
- White-paper print variant for home/office printers
- Pygments-based syntax highlighting for code blocks
- Auto-triggers from natural language requests, no slash command needed
- Quiet daily version check with in-chat notification
- Claude Code, Codex, Claude Desktop, and generic agent installation paths

## Integrations
Claude Code, Codex, Claude Desktop, WeasyPrint, python-pptx, Marp, Pygments, PyMuPDF, pypdf, MCP (Model Context Protocol), jsDelivr CDN (font delivery)

## Platforms
MACOS, WEB, API, JETBRAINS_PLUGIN, CLI

## Pricing
Open Source

## Version
1.12.0

## Links
- Website: https://kami.tw93.fun
- Documentation: https://kami.tw93.fun/developers
- Repository: https://github.com/tw93/kami
- EveryDev.ai: https://www.everydev.ai/tools/kami
