codeAgent

mcp
Security Audit
Fail
Health Pass
  • License — License: MIT
  • Description — Repository has a description
  • Active repo — Last push 0 days ago
  • Community trust — 220 GitHub stars
Code Fail
  • rm -rf — Recursive force deletion command in agent/bash_ast.py
  • rm -rf — Recursive force deletion command in agent/bash_removal_guard.py
Permissions Pass
  • Permissions — No dangerous permissions requested

No AI report is available for this listing yet.

SUMMARY

CodeAgent is an open-source coding agent that lives in your terminal. It understands your repository, plans multi-step changes, writes and edits files, runs commands and tests, and iterates until the task is done — all with a transparent, extensible tool loop.

README.md

CodeAgent

自学习 AI Agent 命令行工具——交互体验对标 claude code,Windows 优先,开箱即用。

Python 3.11+
License: MIT
Platform

English | 简体中文

CodeAgent 是一个跑在终端里的 AI 编程助手:你用自然语言下指令,它读代码、改文件、跑命令、查资料,把活干完。它有自己的一套「长本事」机制——从对话轨迹里沉淀可复用的技能,越用越顺手。

🧭 这是一份手写的「中文版 claude code」

不是套壳,也不是翻译——是从交互界面到 Agent 主循环一行行手写出来的完整实现,注释全是中文:

  • 📚 想学 Agent 开发?这就是活教材。 工具自注册、上下文分级压缩、权限审批、子代理团队、工作流引擎、记忆系统——一个真实可跑的 Agent 全链路都在这儿,每个模块都是「大白话流程 → 参数 → 返回」的保姆级中文注释,读代码像读教程。
  • 🛠 欢迎上手改。 觉得哪里不顺手?fork 了直接改——代码结构清晰、注释到位,改起来不费劲。欢迎 PR:修 bug、加功能、优化界面都行。
  • 💬 有问题社区问。 卡住了、看不懂了、想讨论设计,直接去 Issues 或 Discussions 发帖,有问必答。

✨ 特性

终端体验(对标 claude code)

  • 流式回答圆角框、思考流暗色框、工具事件行(● Bash(...) + ⎿ 结果)
  • 危险命令 / 白名单外写文件的审批面板:允许一次 / 总是允许 / 拒绝三选,面板答完自擦不污染上下文
  • Ctrl+C 语义分明:回合中一键中断、双击强退;审批面板上 Ctrl+C 一击取消并中断整轮
  • 皮肤系统、页脚状态栏、命令补全、输入历史、粘贴大段文本自动落盘引用

模型与工具

  • 多模型接入:OpenAI 兼容协议(默认 DeepSeek)与 Anthropic 协议均可配;主模型 + 辅助小模型(压缩/检索/记忆提取等杂活走便宜模型)
  • 工具自注册体系:tools/ 下模块 import 即登记,按「套餐」(toolset)控制发给模型的工具集
  • MCP 外部工具:项目级 .mcp.json 声明即接入,首次连接需审批
  • 内置工具覆盖文件读写、终端执行、搜索、代码检索、Web 抓取、后台任务、子代理派发等

安全防线

  • 破坏性命令审批 + 跨会话白名单(按命令 / 按前缀规则记忆)
  • 注入面检测($()、进程替换等「所见非所执行」形态升审批)、删除路径红线、自我保护
  • 秘钥扫描(防 API key 写入文件/记忆)、SSRF 防护、Web 内容注入隔离
  • Linux 下可选 bwrap 沙箱执行

记忆与自学习

  • 长期记忆:MEMORY.md 索引 + JSONL 存储 + 检索结果临时注入(不污染正式历史)
  • 技能系统:用户技能 + 插件市场技能(/plugin 管理),支持按触碰文件路径条件激活
  • 自学习管线:观察对话轨迹 → 沉淀新技能(启发式 / 辅助模型两种观察方式)

协作与自动化

  • 子代理:同步 / 后台派发,worktree 隔离,后台代理无人审批时自动 fail-closed
  • 团队模式:coordinator / worker / 消息总线 / 邮箱
  • 工作流引擎:确定性编排、日志断点续跑、花费封顶
  • 定时任务(cron)、声明式 hooks、任务清单、会话 checkpoint 回溯(/rewind)

上下文工程

  • 分级压缩(L1 轻裁剪 → L4 深度摘要)、批间工具摘要、时间基线旧结果清理
  • 前缀缓存友好:临时消息注入与剥离时机讲究,不破坏缓存前缀

🖥 界面一览

运行中的 CodeAgent

🚀 快速开始

前提:Python 3.11+ 和 uv(Python 包管理器)。

# 1) 安装 uv(已有可跳过)
#    Windows (PowerShell):  powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
#    macOS / Linux:         curl -LsSf https://astral.sh/uv/install.sh | sh

# 2) 拉代码 + 装依赖
git clone https://github.com/Harvil1/codeAgent.git
cd codeAgent
uv sync

# 3) 配置 API key(二选一)
#    a) 环境变量——按所用厂商设置其一即可,程序会自动识别:
#       DEEPSEEK_API_KEY / OPENAI_API_KEY / ANTHROPIC_API_KEY /
#       OPENROUTER_API_KEY / ZHIPUAI_API_KEY(BIGMODEL_API_KEY 亦可)
#    b) 写入 ~/.codeAgent/settings.json 的 models.<名字>.api_key
#       (首次运行会自动生成默认配置文件,默认模型为 DeepSeek)

# 4) 跑起来
uv run python main.py              # 交互模式
uv run python main.py -c           # 自动恢复最近一次会话

提示:换模型 / 换厂商在会话里输 /model 按引导配置,或直接编辑 ~/.codeAgent/settings.json。

⌨️ 常用操作

会话内 40+ 个 slash 命令,常用如下:

命令 作用
/help 命令帮助
/model 切换 / 配置模型(按引导填厂商、key、端点)
/new /resume /sessions 新会话 / 恢复 / 会话列表
/rewind 回溯到某个 checkpoint 重来
/skills /plugin 管理技能 / 插件市场
/memory 查看维护长期记忆
/permission /sandbox /approved 权限模式 / 沙箱开关 / 已批准命令白名单
/doctor 自诊断(配置、网络、组件健康检查)
/plan 计划模式:先出方案批准再动手
/stats /usage /trace 花费统计 / 用量 / 调用链追踪

⚙️ 配置与数据

运行时数据统一放在 ~/.codeAgent/(环境变量 CODEAGENT_HOME 可覆盖,测试 / 多配置隔离用):

路径 内容
settings.json 全部配置(默认值单一源头在代码里,落盘深合并,手改安全)
sessions.db/ 会话持久化(JSONL)
MEMORY.md + 记忆库 长期记忆索引与正文
skills/ 用户技能
plugins/ 插件(含官方市场 claude-plugins-official)
logs/ 运行日志(滚动,5MB × 3)

🏗 架构一览

调用链一句话:main.py(点火:控制台编码、终端自举)→ cli.main → run_interactive(REPL + slash 命令 + RuntimeContext 装配)→ AIAgent.run_conversation(主循环心脏)。

主循环每轮:组装消息(注入后台 / 定时 / 团队 / 计划等临时消息)→ 上下文压缩 → 刷新工具集 → 调 LLM → 分发工具调用,模型不再要工具即收尾。

子系统 模块
LLM llm_client.py(OpenAI 兼容 / Anthropic 协议)、aux_llm.py(辅助小模型路由)
记忆 memory_store.py、memory_retriever.py
上下文 context_compressor.py(分级压缩)、context_pipeline.py
子代理 / 团队 tools/delegate_tool.py、agent/team/
工作流 workflow_engine.py + workflow_journal.py
技能 ~/.codeAgent/skills/ + agent/skill_learning/(自学习)
安全 bash_injection.py、ssrf_guard.py、secret_scanner.py、sandbox_runner.py、permission.py
持久化 session_store.py、task_store.py、hooks.py

🧪 开发

uv run python scripts/verify.py   # 60+ 项回归检查(改完代码先跑这个)
uv run ruff check .               # lint

❓ FAQ

  • 支持哪些终端? cmd / Windows Terminal / PowerShell 直接可用;git-bash(mintty)下会自动用 winpty 重新拉起,无需手动处理。
  • 支持 Linux / macOS 吗? Windows 优先开发与验证;Linux 可运行(含 bwrap 沙箱支持),macOS 理论可用、未充分验证。
  • 模型必须用 DeepSeek 吗? 不。任何 OpenAI 兼容端点或 Anthropic 协议端点都可以,/model 或改 settings.json 即可,key 支持环境变量与配置文件两种方式。
  • 会话数据在哪? 全部在 ~/.codeAgent/,删掉目录即完全重置。

📄 许可证

MIT © 2026 Harvil1

Reviews (0)

No results found