Co-creation-projects/YYHDBL-HelloCodeAgentCli/code_agent/README.md
这是一个基于 HelloAgents 组件(HelloAgentsLLM / ContextBuilder / ReActAgent / TerminalTool / NoteTool / MemoryTool)搭建的简易 Code Agent CLI,目标体验类似 Claude Code/Codex:支持多轮对话、按需探索代码库、生成补丁并在确认后落盘。
.env,不要提交):requirements-mvp.txt.env(参考 .env.example),至少包含:
DEEPSEEK_API_KEY=...(或其他 OpenAI 兼容 provider 的 key)LLM_MODEL_ID=deepseek-chat、LLM_BASE_URL=https://api.deepseek.com.):python3 -m code_agent.hello_code_cli --repo .
命令:
:quit 退出:plan <目标> 强制生成计划(平时由模型按需调用 plan[...] 工具)SimpleAgent,保留近期对话历史。ReActAgent(推理 + 工具调用),规划能力作为可选工具 plan[...]。ContextBuilder(GSSC)融合系统指令、对话历史、笔记检索结果、情景记忆(episodic)等,控制上下文预算。TerminalTool(优先 ls/rg/sed/cat 小范围命令)。TerminalTool:用于查看/检索(rg/grep/find/cat/head/tail/sed 等),并强化了安全限制:
allow_dangerous=true + 交互确认)git 默认仅允许 status/diff;git reset --hard 需要显式放行rm/chmod 等高风险命令默认拒绝(需显式确认后放行)NoteTool:在 <repo>/.helloagents/notes/ 下写入结构化笔记(用于记录决策/阻塞/行动)。MemoryTool:仅启用 episodic(SQLite 持久化),默认存储在 <repo>/.helloagents/memory/。*** Begin Patch ... *** End Patch 格式补丁。*** Delete File: 或大规模变更)会二次询问 y/n。code_agent/executors/apply_patch_executor.py:原子写、备份、冲突检测、规模限制。Delete File、git reset --hard、rm/chmod、大规模变更;更细粒度策略后续可扩展。TerminalTool 仍是“字符串命令”入口,但执行为 argv-only,并在工具内拦截 shell 语义;更严格的参数级白名单可继续收紧。<repo>/.helloagents/(notes/memory/sessions/logs),可用环境变量覆盖:
HELLOAGENTS_DIR=.helloagentsCODE_AGENT_MAX_STEPS=8code_agent/hello_code_cli.pycode_agent/agentic/code_agent.pycode_agent/executors/apply_patch_executor.pydocs/第九章 上下文工程.md