You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

2.5 KiB

00 产品定义

一句话

G-CODE 是跑在 Windows 上的个人 Coding Agent:用户在终端里下任务,模型按 ReAct 循环读文件、改文件、跑命令、必要时开浏览器;过程画在自研 TUI 上。经典 CMD 无法承载 TUI 中文输入时,自动回退 REPL,保证还能干活。

它不是什么

  • 不是 QozeCode 换皮
  • 不是 IDE 插件,也不是 Web 对话页
  • 不是「十家模型 + 语音 + 菜单栏」的功能全集

两条路径

路径 作用
参考 D:\ideaProject\QozeCode-main
实现 D:\ideaProject\gcode
方案 本目录

已拍板

决策 选择
主界面 自研 Textual TUI。模块:消息列表、思考区、工具状态、底部输入。观感可与 Qoze 大差不差,品牌 / CSS / 文案自己写
Windows 输入 方案 C:能跑 TUI 的终端开 TUI;conhost / 经典 cmd 拒绝 TUI,提示改用 Windows Terminal,并自动进入 REPL
cmd 里 TUI 打中文 不作为验收项(业界基本做不到)
多模型 yaml 注册表;一期只实现 openai_compatible(DeepSeek / 千问 / 智谱 / Kimi / Azure 兼容 / LiteLLM / Agicto)
浏览器 只做 Microsoft @playwright/mcp。无 Node 则提示不可用,不做 Python Playwright 备选
人在回路 写文件展示 diff 后 y/N;跑命令展示命令后 y/N。拒绝则写回 ToolMessage,模型改方案
配置根 单一 home:Windows 用 %APPDATA%\gcode,项目级用 <cwd>/.gcode

一期做

  • LangGraph 两节点 ReAct:llm_call ⇄ tool_node
  • 工具:读文件、列目录、精确替换、执行命令(含 Windows 编码与超时杀进程)
  • HITL、SQLite 会话、短静态 prompt + 动态上下文
  • 终端探测 + TUI + REPL 回退 + /edit
  • 模型注册表与启动选模型
  • 薄 MCP 客户端,默认只接 Playwright MCP

一期不做

  • Skills、Subagent、Plan 模式(Qoze README 有、代码无,G-CODE 不宣传未实现功能)
  • Island 菜单栏、语音 / PyAudio、飞书
  • 进程内 Playwright、chrome-devtools-mcp(附着已开 Chrome,不是 Playwright)
  • Vertex / Anthropic / Bedrock 原生协议
  • 全局单例 llm / agent;工具反向 import 图模块

验收原则

  1. 以代码为准,文档不写没做的功能
  2. 核心图不依赖 TUI:REPL 与 TUI 都只消费 astream
  3. 能 15 分钟讲完:输入从哪进、图怎么转、工具如何确认、会话存在哪
  4. 密钥只放用户目录或环境变量,不进 git