bidmaster-cli/CLAUDE.md
sladro 47fc26f3f0 feat: 初始化BidMaster-CLI项目
- 实现三层架构(CLI/Agent/Tools)
- 完成招标文件解析器(支持Excel/CSV/Word)
- 实现AI智能表格识别和分类
- 支持商务/技术评分项智能分离
- 实现RAG知识库管理
- 完成专业目录结构生成
- 修复编码规范违规问题

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-25 13:50:13 +08:00

2.9 KiB
Raw Permalink Blame History

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)

kb init          # 初始化向量数据库
kb add <path>    # 添加文件到知识库
kb list          # 列出已索引文档
kb reset         # 清空数据库 [危险操作]
kb reindex       # 重新索引
kb status        # 显示知识库统计信息

标书项目管理 (project)

project new      # 核心命令解析招标文件生成任务清单和Word框架
project status   # 显示项目任务清单及完成状态

内容生成 (generate)

generate task <id>  # 为特定任务ID生成内容
generate full       # 自动为所有待处理任务生成内容

合规组装 (assemble)

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)。