Aryan1718/Archify
GitHub: Aryan1718/Archify
Archify 通过分析代码仓库构建知识库,为 AI 助手提供扎实的上下文以生成基于真实代码证据的架构文档。
Stars: 0 | Forks: 0
_ _ _ __
/ \ _ __ ___| |__ (_)/ _|_ _
/ _ \ | '__/ __| '_ \| | |_| | | |
/ ___ \| | | (__| | | | | _| |_| |
/_/ \_\_| \___|_| |_|_|_| \__, |
|___/
npx archify-cli init
`archify-cli` 会分析你的代码仓库,并为 AI 助手提供编写架构文档所需的扎实上下文。
## 它的功能
Archify 专为这样的代码仓库而生:你希望基于实际代码和文档来输出架构,而不是凭空猜测。
它可以:
- 扫描代码仓库并在 `.archify/` 目录中构建扎实的知识库
- 检测现有分析是否依然有效并复用它们
- 仅在代码仓库发生变更时重新生成分析
- 为助手驱动的文档编写生成特定于文档的数据包和指南
- 为受支持的文档类型编写最终的根级文档
## 适用人群
如果你想实现以下目标,请使用 Archify:
- 更快地了解陌生的代码库
- 根据真实的代码仓库证据生成架构文档
- 在让 Codex 或 Claude Code 编写文档前,为其提供扎实的上下文包
- 随着代码库的演进,保持架构输出的可刷新性
## 环境要求
- `Node.js >= 20`
- `Python >= 3.11`
- 使用 Codex 或 Claude Code 的 AI 助手工作流
之所以需要 Python,是因为包内置的分析引擎是使用 Python 实现的。
## 快速开始
在代码仓库根目录下执行:
```
npx archify-cli init
```
然后告诉你的助手:
```
Use Archify on this repo
```
典型流程:
1. 运行一次 `npx archify-cli init`。
2. 要求你的助手在代码仓库中使用 Archify。
3. Archify 会检查状态,并决定是进行分析、生成、编写,还是复用现有的产物。
## 安装选项
使用 `npx` 直接运行:
```
npx archify-cli init
```
或者将其安装到项目中:
```
npm i -D archify-cli
```
然后运行:
```
npx archify-cli status
```
## 命令
| 命令 | 用途 |
| --- | --- |
| `npx archify-cli init` | 在当前代码仓库中配置 Archify |
| `npx archify-cli status [--doc-type
]` | 显示配置状态、产物有效性以及推荐的下一步操作 |
| `npx archify-cli analyze .` | 在 `.archify/` 中构建或刷新扎实的代码仓库知识 |
| `npx archify-cli generate . [--doc-type ]` | 为选定的文档类型构建综合数据包和指南 |
| `npx archify-cli write . [--doc-type ]` | 根据生成的综合产物编写选定的根级文档 |
| `npx archify-cli clean` | 从 `.archify/` 中移除生成的产物 |
## 生成的内容
Archify 会添加:
- 用于项目配置的 `archify.config.json`
- 用于扫描排除规则的 `.archifyignore`
- 用于安装 Codex 或 Claude Code 的项目技能文件
- 用于存放分析、综合和指南产物的 `.archify/` 目录
核心产物包括:
| 文件 | 用途 |
| --- | --- |
| `archify.config.json` | 项目级的 Archify 配置 |
| `.archifyignore` | 代码仓库扫描的忽略规则 |
| `.archify/manifest.json` | 分析状态和有效性元数据 |
| `.archify/graph.json` | 代码仓库图谱输出 |
| `.archify/architecture-context.json` | 扎实的架构上下文 |
| `.archify/docs//packet.json` | 用于编写选定根文档的、特定于文档的综合数据包 |
| `.archify/docs//guide.json` | 用于生成选定根文档的分章节指南 |
| `.archify/docs//brief.md` | 人类可读的综合摘要 |
| `.archify/docs//guide.md` | 人类可读的指南摘要 |
## 可用文档
Archify 支持以下文档类型:
| `--doc-type` 值 | 输出文件 |
| --- | --- |
| `archify` | `archify.md` |
| `tech_stack` | `TECH_STACK.md` |
| `api_design` | `API_DESIGN.md` |
| `data_model` | `DATA_MODEL.md` |
| `conventions` | `CONVENTIONS.md` |
| `glossary` | `GLOSSARY.md` |
| `flows` | `FLOWS.md` |
| `test_cases` | `TEST_CASES.md` |
如果省略 `--doc-type`,Archify 将默认使用 `archify` 并生成 `archify.md`。
示例:
```
npx archify-cli status --doc-type tech_stack
npx archify-cli generate . --doc-type api_design
npx archify-cli write . --doc-type flows
```
## 分析工作原理
Archify 会分析代码仓库的结构和相关文档,包括:
- 源代码文件
- 路由和入口文件
- 依赖项
- 数据库和迁移文件
- README 和相关架构文档
该工作流是指南驱动的:
- `analyze` 生成扎实的 `.archify` 产物
- `generate` 生成特定于文档的综合数据包和指南
- `write` 根据这些产物生成选定的根文档
- 已安装的助手技能在起草最终文档前,会读取选定的数据包和指南
扎实的 `.archify/` 产物仍然是已确认事实的主要来源。
## 备注
- `init` 是主要的设置命令。
- `status` 是主要的检查命令。
- `analyze`、`generate` 和 `write` 可用于手动工作流,但已安装的技能旨在根据需要自动运行它们。标签:AI辅助编程, MITM代理, SOC Prime, 代码分析, 凭证管理, 开发工具, 文档生成, 暗色界面, 架构文档, 逆向工具