
openwiki
为代码库自动写文档,让 AI 智能体更懂你的项目
OpenWiki 是一个基于 TypeScript 开发的命令行工具,专门为代码库自动生成并维护面向 AI 智能体(agent)的文档。它解决的核心问题是:当开发者使用 Claude Code、Cursor 等编码智能体时,智能体往往缺乏对项目结构、模块职责和关键约定的准确理解,导致生成的代码不符合项目规范。OpenWiki 通过扫描代码库,自动提取目录结构、依赖关系、公共 API 和重要配置文件,生成结构化的 Markdown 文档,并能在代码变更后持续更新,让智能体始终获得最新上下文。其核心能力包括:一键初始化文档、增量更新、支持多语言项目、可自定义模板与忽略规则,以及将文档输出为智能体易于解析的格式。对于团队协作和长期维护的项目,它显著降低了为 AI 准备上下文的重复劳动。
项目数据
使用教程
环境要求
- Node.js 22 或更新版本
- 已安装 npm(或 pnpm)等 Node.js 包管理器
- Windows 用户请使用 npm/pnpm 安装,不要用 bun
- 准备一个模型提供商的 API Key(首次运行会引导选择)
安装与启动步骤
-
1确认 Node 版本
OpenWiki 要求 Node.js 22 或更高版本,先确认本机版本再安装,版本过低需先升级 Node。
node -v -
2全局安装 CLI
通过 npm 全局安装 openwiki 命令行工具。Windows 上建议改用 pnpm,避免 bun 触发原生依赖编译。
npm install -g openwiki -
3初始化生成 wiki
在当前代码仓库目录执行,首次运行会引导你选择模型提供商、填写 Key 和模型,并把文档写入 openwiki/ 目录。
openwiki --init -
4增量更新文档
代码变更后执行,根据上次成功运行以来的仓库变化和过期 Claims 更新已有 wiki,适合日常或 CI 中调用。
openwiki --update -
5配置定时 CI 更新
把仓库 examples 下对应的流水线示例文件放到 CI 配置路径:GitHub Actions、GitLab CI 或 Bitbucket Pipelines,并按需配置密钥。
关键配置
| 配置项 | 必填 | 说明 | 示例 |
|---|---|---|---|
openwiki/INSTRUCTIONS.md | 否 | 用户自行编写的说明文件,重新初始化时会被保留 | openwiki/INSTRUCTIONS.md |
openwiki/.run.json | 否 | 持久化检出中记录进行中的仓库生成进度,用于中断续跑 | openwiki/.run.json |
OPENWIKI_PR_TOKEN | 否 | 自动合并示例中用于创建 PR 的 GitHub Actions Secret | ghp_xxxxxxxxxxxxxxxx |
如何确认成功
执行 openwiki --init 完成后,当前仓库下出现 openwiki/ 目录及生成的 Markdown wiki 页面即表示成功。
常见问题
Q:初始化中途被中断了怎么办?
A:在持久化检出中 OpenWiki 会把进行中的生成记录在 openwiki/.run.json,重新执行同一命令即可续跑;CI 临时 runner 失败后则从头开始,除非工作区被保留。
Q:再次执行 openwiki --init 会覆盖已有内容吗?
A:会。它用全新一次生成替换已生成的仓库 wiki 和 Claims,但会保留用户自己写的 openwiki/INSTRUCTIONS.md 说明文件。
Q:Windows 上安装失败怎么办?
A:请用 npm install -g openwiki 或 pnpm add -g openwiki 安装;用 bun 可能回退去编译 better-sqlite3 原生依赖,需要 Visual Studio Build Tools 的 C++ 桌面开发组件。
Q:如何让文档自动保持最新?
A:添加定时 CI 任务:GitHub Actions 复制 openwiki-update.yml 到 .github/workflows/openwiki-update.yml;GitLab 用对应 gitlab-ci 示例;Bitbucket 用 pipelines 示例并调度 openwiki-update 流水线。
注意事项
- --init 会替换已有生成内容,但有用户编写的 INSTRUCTIONS.md 会被保留
- CI 中途失败会恢复旧 wiki,但临时 runner 上无法续跑
- 自动合并属于仓库基础设施,需开启 Allow auto-merge 并配置分支保护
- 自动合并示例必须使用专用 Token(如 OPENWIKI_PR_TOKEN),默认 GITHUB_TOKEN 创建的 PR 不会触发大多数 pull_request 工作流
核心亮点
- 自动扫描代码结构并生成结构化文档,省去手动编写 AI 上下文的重复劳动
- 支持增量更新,代码变更后能同步刷新文档,保持智能体上下文最新
- CLI 设计轻量,可集成到现有开发流程,兼容多种编码智能体工具
不足之处
- 对复杂业务逻辑和隐式约定的理解有限,生成的文档可能停留在结构层面
- 文档质量依赖项目本身的代码可读性与注释,缺乏深度语义分析
适用场景
- 团队使用 Cursor/Claude Code 开发时,为智能体提供项目结构说明
- 开源项目维护者希望降低新贡献者(含 AI)的上手成本
- 多模块大型项目需要持续维护一份面向 AI 的架构概览文档
替代项目
repomix、code2prompt
项目介绍
上一篇:cometchat-skills
下一篇:rekal-cli
同类项目推荐
bolt.new
开源
想到啥说啥,网页应用当场生成直接能用
Prompt, run, edit, and deploy full-stack web applications. -- bolt.new -- Help Cente···
fuzz4all
开源
用大模型自动生成测试输入,发现各种软件漏洞
️Fuzz4All: Universal Fuzzing with Large Language Models
superpowers-zh
开源
全套 AI 编程神技汉化好了,照着用就行。
AI 编程超能力 · 中文增强版 — superpowers(250k+ ⭐)完整汉化 + 4 个中国原创 skills···
Gitea 代码托管
开源
轻量 Git 代码托管平台
Git with a cup of tea! Painless self-hosted all-in-one software development service,···