{ "project_name": "llm-codegen", "version": "1.0.0", "description": "一个基于大语言模型的智能代码生成与维护工具,支持自动生成、增量添加功能和自动修复Bug。", "files": [ { "path": "pyproject.toml", "summary": "项目元数据、依赖配置和脚本入口", "dependencies": [], "functions": [], "classes": [] }, { "path": "src/llm_codegen/__init__.py", "summary": "包初始化文件", "dependencies": [], "functions": [], "classes": [] }, { "path": "src/llm_codegen/cli.py", "summary": "命令行接口,使用typer定义命令", "dependencies": ["src/llm_codegen/core.py", "src/llm_codegen/models.py"], "functions": [ { "name": "", "summary": "", "inputs": [], "outputs": [] } ], "classes": [] }, { "path": "src/llm_codegen/core.py", "summary": "核心生成逻辑,包含CodeGenerator类", "dependencies": ["src/llm_codegen/utils.py", "src/llm_codegen/diff_applier.py", "src/llm_codegen/models.py"], "functions": [ { "name": "_call_llm", "summary": "调用LLM并返回解析后的JSON", "inputs": ["system_prompt", "user_prompt", "temperature", "expect_json"], "outputs": ["result"] }, { "name": "parse_readme", "summary": "读取README文件内容", "inputs": ["readme_path"], "outputs": ["content"] }, { "name": "get_project_structure", "summary": "根据README内容生成文件列表和依赖关系", "inputs": [], "outputs": ["files", "dependencies"] }, { "name": "generate_file", "summary": "生成单个文件,返回代码、描述和命令列表", "inputs": ["file_path", "prompt_instruction", "dependency_files"], "outputs": ["code", "description", "commands"] }, { "name": "execute_command", "summary": "执行单个命令,检查风险", "inputs": ["cmd", "cwd"], "outputs": [] }, { "name": "run", "summary": "主执行流程,控制整个生成过程", "inputs": ["readme_path"], "outputs": [] } ], "classes": [ { "name": "CodeGenerator", "summary": "代码生成器,封装所有逻辑", "methods": ["__init__", "_call_llm", "parse_readme", "get_project_structure", "generate_file", "execute_command", "run"] } ] }, { "path": "src/llm_codegen/checker.py", "summary": "并行检查与修复模块,运行检查工具并收集错误", "dependencies": ["src/llm_codegen/core.py", "src/llm_codegen/models.py"], "functions": [], "classes": [] }, { "path": "src/llm_codegen/utils.py", "summary": "工具函数,如危险命令判断和文件操作", "dependencies": ["src/llm_codegen/models.py"], "functions": [ { "name": "is_dangerous_command", "summary": "判断命令是否危险", "inputs": ["cmd"], "outputs": ["is_dangerous", "reason"] } ], "classes": [] }, { "path": "src/llm_codegen/diff_applier.py", "summary": "", "dependencies": ["src/llm_codegen/models.py"], "functions": [ { "name": "", "summary": "", "inputs": [], "outputs": [] } ], "classes": [] }, { "path": "src/llm_codegen/models.py", "summary": "数据模型,使用Pydantic定义数据结构", "dependencies": [], "functions": [], "classes": [] }, { "path": "tests/__init__.py", "summary": "测试包初始化", "dependencies": [], "functions": [], "classes": [] }, { "path": "tests/test_cli.py", "summary": "测试命令行接口", "dependencies": ["src/llm_codegen/cli.py"], "functions": [], "classes": [] }, { "path": "tests/test_core.py", "summary": "测试核心生成逻辑", "dependencies": ["src/llm_codegen/core.py"], "functions": [], "classes": [] }, { "path": "tests/test_checker.py", "summary": "测试检查模块", "dependencies": ["src/llm_codegen/checker.py"], "functions": [], "classes": [] } ], "commands": [ "pip install -e .", "pytest tests/" ], "check_tools": ["pytest", "pylint", "mypy", "black"] }