Cursor系列(1):Cursor安装、虚拟环境与 TaoToken 配置骨架 1. 为什么第一次用 Cursor 写 Python 总卡在环境上很多人装完 Cursor 的第一反应是这不就是个换了皮的 VS Code 吗界面确实像但真正拉开差距的地方在于它内置的 AI 补全、对话和 Agent 能力。问题也随之而来——你兴冲冲打开一个.py文件让 AI 帮你补全代码结果它引用的包你根本没装或者装到了系统全局 Python 里跑起来一堆ModuleNotFoundError。这不是 Cursor 的问题是虚拟环境没配好。这篇面向的是第一次上手 Cursor 的 Python 开发者。核心就三件事装好 Cursor、用venv建一个干净的虚拟环境、把插件和 TaoToken 的统一 Key/API 通道接进去。做完之后你在 Cursor 里写的每一段 AI 生成代码都能在隔离环境里直接跑通而不是在全局环境里越装越乱。我自己的习惯是每开一个新项目先建 venv再让 Cursor 的解释器指向它最后才动 AI 补全。顺序反了后面排查依赖问题会非常痛苦。下面按这个顺序来。2. TaoToken 前置先把统一 Key 和 API 通道准备好Cursor 本身可以直连各家模型但如果你同时用多个模型比如补全用快的、复杂推理用强的逐个配 Key 很麻烦。TaoToken 的作用是提供一个统一的 API 通道一个 Key 走多个模型Cursor 里只需要配一次。你需要先拿到两样东西一个 API Key在控制台的 API Keys 页面创建格式类似sk-xxxx。一个 Base URLhttps://taotoken.net/api注意这个地址不带任何查询参数直接填进配置里。创建 Key 的入口在这里https://taotoken.net/console/api-keys?utm_sourcetaotoken_aicg_blog_endutm_contentapi_keysutm_campaignrewrite拿到 Key 之后先别急着关页面后面配置settings.json要用。如果你还不确定该用哪个模型可以先去模型对话页面试一下手感https://taotoken.net/model-chat?utm_sourcetaotoken_aicg_blog_endutm_contentmodel_chatutm_campaignrewrite注意Key 只显示一次创建后立刻复制保存。丢了只能重新建一个。3. 安装 Cursor 与 Python 插件3.1 安装 Cursor 本体去 Cursor 官网下载对应系统的安装包Windows 是.exemacOS 是.dmgLinux 有 AppImage。安装过程一路下一步即可没有坑。装完第一次启动会让你选主题、导入 VS Code 配置——如果你之前用 VS Code可以直接导入插件和快捷键都能带过来省事。3.2 装中文汉化插件打开 Cursor左侧栏点扩展图标四个方块那个搜索Chinese找到Chinese (Simplified) Language Pack点安装。装完右下角会弹提示让你重启重启后界面变中文。3.3 装 Python 插件同样在扩展里搜Python认准 Microsoft 发布的那个安装。这个插件提供语法高亮、调试、解释器选择、Jupyter 支持等。装完不用重启但建议重启一次让语言服务完全加载。到这里Cursor 的基础环境就绪。接下来是重点虚拟环境。4. 用 venv 建虚拟环境并让 Cursor 识别4.1 创建虚拟环境在 Cursor 里打开你的项目文件夹文件 打开文件夹然后按Ctrl打开终端。执行python -m venv venv这条命令会在当前目录下创建一个名为venv的文件夹里面是独立的 Python 解释器和 pip。Windows 下如果python不识别试py -m venv venv。创建完成后目录结构大概是这样myproject/ ├── venv/ │ ├── Scripts/ (Windows) │ └── bin/ (macOS/Linux) └── main.py4.2 激活虚拟环境Windows PowerShell.\venv\Scripts\Activate.ps1如果报执行策略错误先跑一次Set-ExecutionPolicy -Scope CurrentUser RemoteSignedmacOS / Linuxsource venv/bin/activate激活成功后终端提示符前面会出现(venv)。这时候你pip install的任何包都只装在这个环境里不会污染全局。4.3 让 Cursor 使用这个解释器按CtrlShiftP打开命令面板输入Python: Select Interpreter选择路径里带venv的那个。选完之后Cursor 右下角状态栏会显示当前解释器。这一步很关键——不选的话AI 补全的代码可能引用的是全局环境的包运行时报错你还得回头查。4.4 装几个常用包验证pip install requests numpy装完在项目里建个main.pyimport requests import numpy as np resp requests.get(https://httpbin.org/get, timeout5) print(resp.status_code) print(np.array([1, 2, 3]).mean())运行输出200和2.0就说明环境通了。5. settings.json 接入 TaoToken 的可复制配置骨架Cursor 的模型配置放在settings.json里。打开方式CtrlShiftP→ 输入Preferences: Open User Settings (JSON)。下面是一份可复制的骨架把sk-你的Key换成你在控制台创建的那个{ cursor.general.enableAutoComplete: true, cursor.cpp.disabledLanguages: [], models: { custom: [ { name: taotoken-default, provider: openai, baseUrl: https://taotoken.net/api, apiKey: sk-你的Key, model: gpt-4o-mini } ] }, cursor.ai.model: taotoken-default }几个参数说明字段作用建议值provider协议类型openai兼容 OpenAI 格式baseUrlAPI 入口https://taotoken.net/apiapiKey你的统一 Key控制台创建的那串model默认模型名按你实际要用的填注意baseUrl后面不要加/v1或斜杠直接就是https://taotoken.net/api。加了反而可能 404。保存后重启 Cursor让配置生效。6. 验证请求与常见报错排查6.1 验证配置是否生效在 Cursor 里按CtrlL打开 AI 对话面板问一句「用 Python 写一个读取 JSON 文件的函数」。如果它能正常返回代码说明通道通了。更直接的验证是用终端发一个请求curl https://taotoken.net/api/chat/completions \ -H Authorization: Bearer sk-你的Key \ -H Content-Type: application/json \ -d { model: gpt-4o-mini, messages: [{role: user, content: ping}] }返回里带choices字段就说明 Key 和通道都正常。6.2 常见报错对照报错一ModuleNotFoundError: No module named xxx九成是解释器没选对。检查右下角状态栏是不是指向venv不是的话重新Python: Select Interpreter。报错二401 UnauthorizedKey 错了或者没带Bearer前缀。检查settings.json里apiKey字段确认没有多余空格。报错三404 Not FoundbaseUrl写错了。确认是https://taotoken.net/api不要加/v1。报错四PowerShell 激活脚本被拒绝执行策略问题跑一次Set-ExecutionPolicy -Scope CurrentUser RemoteSigned即可。报错五AI 补全不触发检查cursor.general.enableAutoComplete是否为true以及当前文件语言是否在disabledLanguages里。6.3 长期编码场景的建议如果你打算把 Cursor 当作日常主力编辑器频繁用 Agent 模式跑多文件修改建议了解一下 Coding Plan它在长会话和批量任务上的额度更划算https://taotoken.net/coding-plan?utm_sourcetaotoken_aicg_blog_endutm_contentcoding_planutm_campaignrewrite接入文档里有更完整的参数说明和不同客户端的配置示例遇到本文没覆盖的情况可以去翻https://taotoken.net/doc?utm_sourcetaotoken_aicg_blog_endutm_contentdocutm_campaignrewrite如果你用的是 Claude Code 这类命令行工具配置方式略有不同参考https://taotoken.net/claude-code-anthropic?utm_sourcetaotoken_aicg_blog_endutm_contentclaude_codeutm_campaignrewrite整套流程走下来最花时间的其实是虚拟环境那一步——不是命令难是容易忘。我的做法是在项目根目录放一个setup.md把python -m venv venv和激活命令写进去换电脑或者重装时直接照着跑比回忆快得多。