# CLAUDE.md This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository. ## 项目概述 这是一个AI标书撰写助手项目 (BidMaster-CLI),旨在通过智能化标书制作流程来提升投标效率和中标率。 ## 项目架构 采用三阶段Agent驱动的分层架构: ### 架构层级 1. **Interface Layer (CLI)**: 命令行接口,负责命令解析和用户交互 2. **Orchestration Layer (LangGraph)**: 由三个协同Agent构成的核心逻辑层 - Phase 1: Analysis Agent - 解析招标文件,生成投标任务清单和文档框架 - Phase 2: Generation Agent - 基于任务清单执行RAG内容生成 - Phase 3: Assembly Agent - 生成响应表和偏离表 3. **Tooling Layer**: 原子化工具集 - RAG Tool - 检索增强生成 - Bid Parser - 招标文件解析器 - Word Processor - Word文档处理器 - Table Generator - 表格生成器 ### 关键技术栈 - **Word文档处理**: 统一使用 python-docx 库 - **依赖管理**: Poetry 或 PDM - **配置管理**: Pydantic-Settings - **代码质量**: Black, Flake8/Ruff, isort, pre-commit - **测试**: pytest ## 核心CLI命令 ### 知识库管理 (kb) ```bash kb init # 初始化向量数据库 kb add # 添加文件到知识库 kb list # 列出已索引文档 kb reset # 清空数据库 [危险操作] kb reindex # 重新索引 kb status # 显示知识库统计信息 ``` ### 标书项目管理 (project) ```bash project new # 核心命令:解析招标文件,生成任务清单和Word框架 project status # 显示项目任务清单及完成状态 ``` ### 内容生成 (generate) ```bash generate task # 为特定任务ID生成内容 generate full # 自动为所有待处理任务生成内容 ``` ### 合规组装 (assemble) ```bash assemble tables # 根据任务清单在Word文档中生成响应表和偏离表 ``` ## 开发规范 ### 核心原则 - 采用模板驱动的内容填充模式 - AI Agent输出结构化JSON数据 - Tooling Layer负责将JSON填充到Word模板 - 严格的模块分离:cli, agent, tools ### Word文档处理工作流 1. 人工制作带占位符 (如 {{chapter_content}}) 的Word模板 2. Agent生成与占位符对应的JSON内容 3. Word Processor和Table Generator调用python-docx完成填充 ### 版本路线图 - **V1.0 (MVP)**: 核心kb、project new、generate task功能 - **V1.1 (自动化)**: generate full、assemble tables完整闭环 - **V1.2 (增强)**: Agent自我修正、CLI体验优化 ## 性能要求 - 启动新项目(解析+框架生成) < 3分钟 - 生成3000字章节 < 60秒 ## 配置文件 - config.yaml: 支持LLM、Embedding模型、数据库路径等核心参数配置 - 敏感信息通过环境变量管理 ## 功能边界 系统不负责自动更新Word文档中的动态域(目录、页码),用户需在最终审阅时手动刷新(Ctrl+A -> F9)。