15.2 项目初始化与目录架构

面向经管学生、研究者与从业者的 AI 智能体设计教材

作者

李学恒、林建浩、严翊歆

发布于

2026-05-11

目录架构与数据流

项目从初始化开始。用 /init 命令配合一段提示词,Claude Code 会创建完整的目录结构、.gitignore 和首次提交。

以下是初始化提示词:

▶ Claude Code
初始化一个自动化办公工作区。

## 目录结构

创建以下目录,每个目录下放一个 README.md(含 frontmatter 和空表格):

| 目录 | 用途 |
|------|------|
| inbox/ | 待处理文档投递箱 |
| tasks/ | 任务工作区,每个任务一个 {YYYY-MM-DD}-{名称}/ 子文件夹 |
| reports/ | 日报、周报、月报 |
| daily/ | 每日文件处理记录,每天一个 {YYYY-MM-DD}.md |
| archive/ | 已完成任务的长期归档,按 {YYYY-MM}/ 分月 |
| templates/ | 常用文档模板 |

根目录创建 changelog.md,包含任务日志表头。

## Git

初始化 git 仓库并完成首次提交。

执行后,工作区的目录结构如下:

workspace/
├── .claude/
│   ├── agents/
│   │   └── git-commit.md       # 提交子代理
│   ├── loops/
│   │   ├── inbox-monitor.md    # 每半小时自动扫描新文件
│   │   └── daily-routine.md    # 每天自动生成日报
│   ├── rules/
│   │   ├── inbox-interaction.md  # 用户交互与任务卡片生成
│   │   ├── task-changelog.md     # 任务完成后更新日志
│   │   └── daily-review.md       # 日报复盘规则
│   └── CLAUDE.md               # 项目规则文件
├── inbox/                      # 文件投递箱
├── tasks/                      # 任务工作区
├── reports/                    # 日报、周报
├── daily/                      # 每日文件处理记录
├── archive/                    # 长期归档
├── templates/                  # 文档模板
├── changelog.md                # 任务日志
└── .gitignore                  # 版本控制排除规则

每个目录各司其职。inbox/ 是入口,用户把待处理文件放在这里。tasks/ 是工作区,每个任务拥有独立的子文件夹,源文件和产出物放在一起。reports/ 存放日报和周报。daily/ 按日期记录每天处理了哪些文件。archive/ 按月归档已完成的任务。templates/ 存放常用文档模板。

.gitignore 设计

这个项目的 .gitignore 有一个关键设计决策:所有 Office 文档都不纳入版本控制。

# ── Office 文档 ───────────────────────────────────
*.xlsx
*.xls
*.docx
*.doc
*.pptx
*.ppt
*.pdf
*.csv
*.tsv
为什么 Office 文档不进 Git

Office 文档(.xlsx.docx.pptx)是二进制文件。Git 为纯文本设计,对二进制文件有三个根本限制:

  1. 无法 diffgit diff 只能显示二进制文件已更改,无法显示具体改了什么
  2. 体积膨胀:每次修改都存储完整副本,仓库体积快速增长
  3. 合并冲突无法解决:两人同时修改同一份 Excel,Git 无法合并,只能二选一

版本控制的对象是 .claude/ 下的配置文件、changelog.mddaily/reports/ 中的 Markdown 文件。这些纯文本文件记录了系统的运行规则和任务历史,是真正需要追踪变更的内容。

Office 文档的版本管理交给任务文件夹的命名约定:{YYYY-MM-DD}-{任务名}/ 天然带有时间戳,配合 changelog.md 的记录,可以追溯每份文档的来源和处理过程。