2025-01-17 04:28:06 +08:00
2025-01-15 23:45:52 +08:00
2024-12-23 15:29:57 +08:00
2024-12-30 23:41:04 +08:00
2025-01-17 04:28:06 +08:00
2025-01-17 04:28:06 +08:00
2025-01-17 04:28:06 +08:00
2025-01-17 04:28:06 +08:00
2024-12-30 23:41:04 +08:00
2025-01-06 22:27:30 +08:00
2025-01-15 23:45:52 +08:00
2025-01-17 04:28:06 +08:00
2025-01-17 04:28:06 +08:00
2024-12-25 09:08:37 +08:00
2025-01-15 23:45:52 +08:00
2024-12-31 23:20:09 +08:00

cursor-api

获取key

  1. 访问 www.cursor.com 并完成注册登录
  2. 在浏览器中打开开发者工具F12
  3. 在 Application-Cookies 中查找名为 WorkosCursorSessionToken 的条目,并复制其第三个字段。请注意,%3A%3A 是 :: 的 URL 编码形式cookie 的值使用冒号 (:) 进行分隔。

接口说明

基础对话(请求格式和响应格式参考 openai

  • 接口地址:/v1/chat/completions
  • 请求方法POST
  • 认证方式Bearer Token
    1. 使用环境变量 AUTH_TOKEN 进行认证
    2. 使用 .token 文件中的令牌列表进行轮询认证

Token管理接口

简易Token信息管理页面

  • 接口地址:/tokeninfo
  • 请求方法GET
  • 响应格式HTML页面
  • 功能:获取 .token 和 .token-list 文件内容,并允许用户方便地使用 API 修改文件内容

更新Token信息

  • 接口地址:/update-tokeninfo
  • 请求方法GET
  • 认证方式:不需要
  • 功能:请求内容不包括文件内容,直接修改文件,调用重载函数

更新Token信息

  • 接口地址:/update-tokeninfo
  • 请求方法POST
  • 认证方式Bearer Token
  • 功能:请求内容包括文件内容,间接修改文件,调用重载函数

获取Token信息

  • 接口地址:/get-tokeninfo
  • 请求方法POST
  • 认证方式Bearer Token

其他接口

获取模型列表

  • 接口地址:/v1/models
  • 请求方法GET

获取随机x-cursor-checksum

  • 接口地址:/checksum
  • 请求方法GET

健康检查接口

  • 接口地址:/
  • 请求方法GET

获取日志接口

  • 接口地址:/logs
  • 请求方法GET

配置说明

环境变量

  • PORT: 服务器端口号默认3000
  • AUTH_TOKEN: 认证令牌必须用于API认证
  • ROUTE_PREFIX: 路由前缀(可选)
  • TOKEN_FILE: token文件路径默认.token
  • TOKEN_LIST_FILE: token列表文件路径默认.token-list

Token文件格式

  1. .token 文件每行一个token支持以下格式

    # 这是注释
    token1
    # alias与标签的作用差不多
    alias::token2
    

    alias 可以是任意值,用于区分不同的 token更方便管理WorkosCursorSessionToken 是相同格式 该文件将自动向.token-list文件中追加token同时自动生成checksum

  2. .token-list 文件每行为token和checksum的对应关系

    # 这里的#表示这行在下次读取要删除
    token1,checksum1
    # 支持像.token一样的alias冲突时以.token为准
    alias::token2,checksum2
    

    该文件可以被自动管理,但用户仅可在确认自己拥有修改能力时修改,一般仅有以下情况需要手动修改:

    • 需要删除某个 token
    • 需要使用已有 checksum 来对应某一个 token

模型列表

写死了,后续也不会会支持自定义模型列表

claude-3.5-sonnet
gpt-4
gpt-4o
claude-3-opus
cursor-fast
cursor-small
gpt-3.5-turbo
gpt-4-turbo-2024-04-09
gpt-4o-128k
gemini-1.5-flash-500k
claude-3-haiku-200k
claude-3-5-sonnet-200k
claude-3-5-sonnet-20241022
gpt-4o-mini
o1-mini
o1-preview
o1
claude-3.5-haiku
gemini-exp-1206
gemini-2.0-flash-thinking-exp
gemini-2.0-flash-exp

部署

Docker 部署

Docker 运行示例

docker run -d -e PORT=3000 -e AUTH_TOKEN=your_token -p 3000:3000 wisdgod/cursor-api:latest

huggingface部署

前提一个huggingface账号

  1. 创建一个Space并创建一个Dockerfile文件内容如下

    FROM wisdgod/cursor-api:latest
    
    # 可能你要覆盖原镜像的环境变量但都可以在下面的第2步中配置
    ENV PORT=7860
    
  2. 配置环境变量

    在你的 Space 中,点击 Settings找到 Variables and secrets,添加 Variables

    # 可选,用于配置服务器端口
    PORT=3000
    # 必选,用于配置路由前缀,比如/api,/hf,/proxy等等
    ROUTE_PREFIX=
    # 必选用于API认证
    AUTH_TOKEN=
    # 可选用于配置token文件路径
    TOKEN_FILE=.token
    # 可选用于配置token列表文件路径
    TOKEN_LIST_FILE=.token-list
    

    更多变量示例可访问 /env-example

  3. 重新部署

    点击Factory rebuild,等待部署完成

  4. 接口地址(Embed this Space中查看):

    https://{username}-{space-name}.hf.space/v1/models
    

注意事项

  1. 请妥善保管您的任何 Token不要泄露给他人。若发现泄露请及时更改
  2. 请遵守本项目许可证,你仅拥有使用本项目的权利,不得用于商业用途
  3. 本项目仅供学习研究使用,请遵守 Cursor 的使用条款

开发

跨平台编译

自行配置cross编译环境

支持的平台:

  • linux x86_64
  • windows x86_64
  • macos x86_64
  • freebsd x86_64
  • docker (only for linux x86_64)

获取token

  • 使用 get-token 获取读取当前设备token仅支持windows与macos

鸣谢

许可证

版权所有 (c) 2024

本软件仅供学习和研究使用。未经授权,不得用于商业用途。 保留所有权利。

Description
No description provided
Readme 58 MiB
Languages
Rust 93%
HTML 6.2%
JavaScript 0.4%
Shell 0.2%
CSS 0.2%