案例 4400人收藏!Kami:让AI生成的文档终于有了值得一看的排版

2026-05-06 07:10:59 +0800 CST views 3

4400人收藏!Kami:让AI生成的文档终于有了值得一看的排版

来源: 微信公众号
GitHub: https://github.com/tw93/Kami
发布平台: 程序员茄子(chenxutan.com)
标签: 文档设计, AI排版, Kami, PDF生成, 设计系统, Claude Skill


引言

大多数人用 Claude 写研究报告,结果出来的东西永远是那副样子——默认的黑色字体、纯白背景、段落之间毫无节奏感,像一份随手打印出来的 Word 文档。

再让它生成一次,风格又完全不一样了。更关键的是,看着这种文档,你根本不想读下去。哪怕内容再有价值,视觉上的挫败感已经把你的阅读欲望消耗殆尽了。

开源作者 tw93 就遇到了这个问题。作为长期用 AI 生成研究报告的用户,他对这种"通用灰色"的输出忍无可忍。

于是他开始自己动手,反复调整字体、配色、间距,一条一条地建立设计规则,直到 AI 生成的报告终于变成了他愿意读的样子。

这个过程中,Kami 就诞生了。


一、Kami 是什么?

Kami(紙,かみ),在日语里就是"纸"的意思——它是你所有交付物最终落地的那个载体。

用官方的话说,Kami 是一套给 AI 写的文档设计系统

一套约束语言,六种文档格式,简单到 AI 可以稳定运行,严格到每份输出都能保持一致且可以直接交付。

这不是一个 UI 框架,而是一个为印刷品设计的约束系统。

设计理念

文档应该读起来像精心编排的页面,而不是仪表盘。

它以 Claude Code Skill 的形式分发,安装之后,你只需要用自然语言告诉 Claude 你要什么文档,它会自动套用这套视觉语言生成 PDF,不需要任何斜杠命令,不需要额外提示。

工作方法论三部曲

Kami 是作者 "工作方法论三部曲" 的最后一环:

项目含义说明
Kaku(書く)你写代码的方式(AI 编程终端)
Waza(技)你练习技能的方式
Kami(紙)你交付文档的方式

二、8条设计铁律

Kami 的核心不是一堆花哨的模板,而是一套跨文档的约束集合,每一条都有明确理由:

1. 页面背景用 #f5f4ed 暖米色,不用纯白

纯白页面在屏幕上太刺眼,打印出来也容易显得廉价。米色是整个设计系统的情感基础,给人一种温暖、专业、值得信赖的感觉。

2. 强调色只有油墨蓝 #1B365D 一种

全文档占比不超过 5%。超过就是堆砌,不是克制。这种单一强调色的策略,让视觉焦点永远清晰,不会被各种花哨的颜色分散注意力。

3. 所有灰色必须暖调,禁止冷蓝灰

冷灰色(比如 #6b7280)是 SaaS 产品的典型配色,放进文档里会显得廉价和模板化。Kami 要求所有灰色都必须有黄棕底色,保持整体色调的温暖统一。

4. 每种语言只用一种 serif 字体

语言字体
英文Charter(serif,系统自带)
中文仓耳今楷 02(serif,个人免费)
日文YuMincho(serif,系统自带)

不混合多种字体,保持视觉的纯净感。serif 字体天然带有一种权威感和印刷质感,非常适合专业文档。

5. 字重固定,不用 bold

单一字重是这套系统的签名——需要更强存在感,用字号或左侧竖线,不加粗。这种约束反而让设计更有格调,不会出现随意加粗的廉价感。

6. 行距三档,禁止 1.6+

类型行距
紧凑标题1.1–1.3
密排正文1.4–1.45
阅读正文1.5–1.55

网页习惯用的 1.6 行距放进印刷品里会显得松散,Kami 用更紧凑的行距营造出专业印刷品的感觉

7. Tag 背景必须实色 hex,禁止 rgba()

这条是个技术细节:WeasyPrint 渲染 PDF 时,rgba() 会导致 padding 区和字形区透明度叠加,出现双层矩形 bug

8. 阴影只用 ring shadow 或 whisper shadow

  • 0 0 0 1pt 的描边阴影(ring shadow)
  • rgba(0,0,0,0.05) 的极轻浮起(whisper shadow)

硬 drop shadow 是 SaaS 界面的习惯,放进文档里很突兀。


三、功能特性

六种核心文档类型

类型适用场景
One-Pager一页纸报告、公司简介、产品介绍
Long Doc白皮书、长篇分析、研究报告
Letter推荐信、正式信函、商务函件
Portfolio项目作品集、个人展示
Resume简历、个人履历
Slides演讲稿、演示幻灯片

每种都有专门的中英日模板。

十二种内嵌 SVG 图表

Kami 内置了十二种内嵌 SVG 图表类型:

图表类型用途
架构图系统架构展示
流程图业务流程说明
甘特图项目进度管理
时序图交互时序展示
饼图数据占比分析
柱状图数据对比
折线图趋势展示
雷达图多维度评估
思维导图知识结构
组织架构图团队结构
ER图数据库设计
状态机图状态流转

AI 可以直接注入到文档中,不需要依赖外部图片,保证了文档的完整性和可移植性。

语言支持

语言支持级别
中文一等公民
英文一等公民
日文尽力而为(CJK路径,需视觉QA)

四、字体系统

语言字体说明
中文仓耳今楷 02serif,个人使用免费,商业需授权
英文Charterserif,系统自带
日文YuMinchoserif,系统自带

五、快速上手

Claude Code 用户

npx skills add tw93/kami -a claude-code -g -y

Codex 用户

npx skills add tw93/kami -a codex -g -y

通用智能体(OpenCode等)

npx skills add tw93/kami -a '*' -g -y

Claude Desktop 用户

  1. 下载 kami.zip
  2. 打开 Claude Desktop 的 Customize > Skills > "+" > Create skill
  3. 直接上传 ZIP 文件(不需要解压)

ZIP 文件非常轻量:中文字体优先从本地加载,然后通过 jsDelivr CDN 加载。如果渲染有问题,Claude 会在下一次运行时下载它们。

更新方法

下载同样的 URL,点击技能卡片上的 "...",选择 Replace,上传即可。

使用方式

安装后,直接用自然语言描述你要什么,Skill 会自动触发,无需任何额外指令


六、使用示例

示例1:生成研究报告

用户:帮我生成一份关于 AI Agent 发展趋势的研究报告

Claude:[自动套用 Kami Long Doc 模板]
       [生成专业排版的研究报告 PDF]

示例2:生成简历

用户:根据我的经历生成一份简历

Claude:[自动套用 Kami Resume 模板]
       [生成专业排版的简历 PDF]

示例3:生成产品介绍

用户:为我们的产品生成一份一页纸介绍

Claude:[自动套用 Kami One-Pager 模板]
       [生成专业排版的产品介绍 PDF]

七、与其他工具对比

维度默认 AI 输出Word 模板Kami
排版质量❌ 差⚠️ 中✅ 专业
一致性❌ 不稳定⚠️ 依赖手动✅ 自动一致
AI 友好✅ 无需配置❌ 难以自动化✅ 自动触发
印刷质感❌ 无⚠️ 一般✅ 专业印刷感
图表支持❌ 无⚠️ 需手动✅ 12种内置

八、设计哲学

Kami 的 slogan

"Good content deserves good paper."
(好内容,值得好纸面)

这句话道出了这个项目的核心价值——我们花了那么多时间让 AI 生成高质量的内容,为什么不能让这些内容以一种同样高质量的方式呈现出来呢?

设计原则

原则说明
克制单一强调色,固定字重
温暖暖米色背景,暖调灰色
专业Serif 字体,紧凑行距
一致8条铁律,自动套用
印刷为印刷品设计,非仪表盘

九、总结

如果你经常让 AI 生成文档,但又受不了默认的排版,Kami 绝对值得一试

核心价值

价值说明
一分钟安装npx 一行命令
自动触发无需额外指令
专业排版8条设计铁律
多种格式6种文档类型
内置图表12种 SVG 图表
多语言中英日支持

体验提升

  • 你的报告会看起来更专业
  • 你的简历会更有竞争力
  • 你的幻灯片会更有格调

本文首发于「程序员茄子」博客,原文链接:https://chenxutan.com

推荐文章

总结出30个代码前端代码规范
2024-11-19 07:59:43 +0800 CST
CentOS 镜像源配置
2024-11-18 11:28:06 +0800 CST
Nginx 防盗链配置
2024-11-19 07:52:58 +0800 CST
js一键生成随机颜色:randomColor
2024-11-18 10:13:44 +0800 CST
Gin 框架的中间件 代码压缩
2024-11-19 08:23:48 +0800 CST
H5保险购买与投诉意见
2024-11-19 03:48:35 +0800 CST
php客服服务管理系统
2024-11-19 06:48:35 +0800 CST
PHP 唯一卡号生成
2024-11-18 21:24:12 +0800 CST
linux设置开机自启动
2024-11-17 05:09:12 +0800 CST
2025年,小程序开发到底多少钱?
2025-01-20 10:59:05 +0800 CST
Vue3中的Scoped Slots有什么改变?
2024-11-17 13:50:01 +0800 CST
如何配置获取微信支付参数
2024-11-19 08:10:41 +0800 CST
避免 Go 语言中的接口污染
2024-11-19 05:20:53 +0800 CST
浅谈CSRF攻击
2024-11-18 09:45:14 +0800 CST
程序员茄子在线接单