cursor-agent
开源版 Cursor 编程助手,支持 Claude/GPT-4o/Ollama 本地模型,权限系统保障安全
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
开源版 Cursor 编程助手,支持 Claude/GPT-4o/Ollama 本地模型,权限系统保障安全
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
凌晨两点,你在调试一个棘手的 bug。Cursor AI 正在帮你分析代码,突然它说:「我需要读写你的项目文件来定位问题。」——你按下了确认键。
现在 imagineCHello 告诉你:这套机制,你可以完全本地化运行,甚至不需要云端 API。你可以用自己的 Ollama 模型、自己的硬件,在自己的服务器上,完成同样的事情。
这就是 Cursor Agent Tools——一个用 Python 复刻 Cursor AI 编程助手核心能力的开源项目。
Cursor 的 AI 编程辅助能力一直是闭源专属。CIVAI Technologies 的创始人 Femi Amoo 决定做一件有意义的事:把这种 Agent 工作流开源化,让任何人都能在自己的环境中复现。
项目的核心设计理念是:Model-Agnostic(模型无关)。不绑定任何一家 AI 提供商,而是通过工厂模式(Factory Pattern)自动识别模型名称,路由到对应的 Agent 实现。
支持的模型覆盖三大阵营:
这种灵活性意味着:如果你对成本敏感,可以用 Ollama 在本地跑一个 Llama3;如果你追求效果,可以切到 GPT-4o 或 Claude 3.7 Sonnet——只需改一行代码中的模型名称。
Cursor Agent 最吸引人的能力之一,是它能直接读写你的文件、执行终端命令。但这也意味着安全风险。
cursor-agent 为此设计了一套完整的权限管理框架:
这套机制以 dataclass + enum 的方式实现,代码结构清晰,便于二次开发。
cursor-agent 不只是一个对话界面。它内置了一套可扩展的工具注册体系,让 Agent 真正能够操作系统资源:
| 工具类型 | 包含功能 |
|---|---|
| 文件操作 | read_file、edit_file、delete_file、create_file、list_dir |
| 搜索能力 | codebase_search(语义搜索)、grep_search(正则搜索)、file_search(模糊文件名搜索) |
| 网络搜索 | web_search(Google 搜索)、trend_search(热点趋势) |
| 图片理解 | query_images(多模态图片分析) |
| 系统命令 | run_terminal_cmd(终端命令,需权限) |
工具以 Python 函数形式注册,遵循 OpenAI Function Calling 规范,天然适配 Claude 的 tool_use 格式。开发者可以零门槛添加自己的自定义工具。
项目在工程化层面表现相当成熟:
disallow_untyped_defs = true,强制全类型注解代码架构采用基类 + 具体实现的设计模式:BaseAgent 定义统一接口,ClaudeAgent、OpenAIAgent、OllamaAgent 各自实现。工具系统与 Agent 逻辑完全解耦,通过 register_tools 注册。
安装只需要一行命令:
pip install cursor-agent-tools
使用同样简单:
import asyncio
from cursor_agent_tools import create_agent
async def main():
agent = create_agent(model='claude-3-5-sonnet-latest')
response = await agent.chat("Create a Fibonacci function")
print(response)
asyncio.run(main())
环境变量只需要配置 API Key(Anthropic 或 OpenAI),如果使用 Ollama 则完全本地化。
唯一的门槛是:你需要有一个 API Key,或者一台有足够内存运行 Ollama 的机器。
坦诚地说,这个项目目前存在一些局限:
此外,将 AI Agent 的文件读写权限开放给 LLM 始终存在理论风险——即使有权限系统,也无法完全排除 prompt injection 攻击的可能性。
cursor-agent 的核心价值不在于技术上的突破,而在于民主化。
它证明了:Cursor 的 Agent 工作流并非什么黑科技,用 Python + asyncio + 主流 SDK 完全可以复现。而 Ollama 的深度整合意味着:即使你没有预算付 API 账单,也可以用开源模型体验同样的工作流。
从更大的视角看,这类项目正在将 AI 编程助手从「云端独占」推向「本地可复现」。随着 Ollama 生态的成熟和本地模型能力的提升,这种趋势只会加速。
如果你对 AI 编程助手的工作原理感兴趣,或者想基于此构建自己的 Agent 系统,cursor-agent 是一个值得研究的起点。