📈 学习进度
所有数据只保存在你自己的浏览器里(localStorage),不上传任何服务器;清理浏览器数据或换设备会丢失,可随时导出备份。
📉 批改分数趋势
每次在【代码批改】提交都会记录一个点,满分 100。
📐 按语言统计
📋 批改历史 0 条
⚙️ AI 服务配置
选择服务商并填入你自己的 API Key。所有 AI 功能都通过你部署的 Cloudflare Worker 代理转发,浏览器不直连大模型官方接口(可避免 CORS 拦截)。
AI 服务商
模型名称
可直接输入任意兼容 OpenAI 协议的模型名;不确定就用默认值。
API Key(仅保存在浏览器内存,绝不写入 localStorage / Cookie / 服务器)
代理地址(三选一,遇到网络问题优先用前两种)
① 同源
② 自定义域名,如
③
④ 本机
/api/chat(最稳,推荐):把 functions/api/chat.js 放进 Pages 项目,用 wrangler pages deploy 或 Git 集成部署 ——
与网站同域,没有 CORS,也不依赖 workers.dev,不怕被墙。② 自定义域名,如
https://api.你的域名.com:给 Worker 绑定自定义域,绕开 *.workers.dev 的 DNS 污染与 SNI 阻断。③
https://xxx.workers.dev:默认方式,但国内网络经常连不上(解析被污染 / TLS 握手被重置)。④ 本机
http://127.0.0.1:8787:运行 local-proxy.mjs,仅自己用、无需任何云服务(浏览器允许 https 页面访问 localhost)。
测试分两步:① 代理自检——GET 一次代理地址,确认它返回
{"ok":true,"service":"codelearn-proxy"}
(对不上就说明该地址上跑的不是本项目的 Worker,与你的 Key 无关);② 模型连通性——真实调用一次大模型。
🔒 安全说明与免责声明
请务必阅读,使用本网站即表示你已知悉并接受以下内容:
- 密钥零存储:API Key 只存在于当前页面的 JavaScript 内存中,不会写入 localStorage、sessionStorage、Cookie、IndexedDB,也不会上传到本站的任何服务器。刷新或关闭页面后密钥立即消失,需要重新粘贴。
- 密钥会随请求转发:每次 AI 调用时,Key 会作为请求头经你配置的 Cloudflare Worker 转发给对应服务商。请不要使用他人提供的代理地址——代理方理论上可以看到该 Key。不知道来源的 Worker 地址一律不要填。
- 建议使用独立/限额 Key:请在服务商控制台设置消费限额、并在用完后及时销毁或轮换密钥;不要使用主账号的高权限密钥。
- 生成内容需自行核对:AI 输出可能存在错误、过时的语法或与题目要求不一致的解法,请以编译器运行结果和教材/考试大纲为准,切勿直接照搬用于正式考试提交。
- 隐私:你粘贴的代码与题目会发送给 AI 服务商,请勿提交含个人隐私、商业机密或涉及保密的代码。
- 历史对话与学习进度:这部分数据(聊天记录、批改分数、使用次数)保存在你自己浏览器的 localStorage(键名前缀
codetutor.),不会上传到任何服务器;清理浏览器数据或更换设备/浏览器会丢失,可在【学习进度】页导出 JSON 备份。API Key 依然只在内存中,两者分开存放。 - 费用与可用性:AI 接口调用产生的费用由你的账号承担;本网站为纯静态教学演示项目,不提供任何形式的可用性、准确性担保,因使用本网站造成的任何损失(包括但不限于 API 费用、成绩影响)由使用者自行承担。
Python
🔧 代码助手 Python
上传或粘贴代码,让 AI 帮你查 Bug、讲原理、给出修复后的完整代码,并指出考试/练习中的常见扣分陷阱。
支持 .py / .c / .cpp,也可直接把文件拖到编辑区
选择要 AI 做的事
补充问题(可选):针对这段代码你还想问什么?
🤖 AI 分析结果
选择上方按钮或直接提问,结果会显示在这里。
输出中的代码块右上角可一键复制。
输出中的代码块右上角可一键复制。
Python
✨ 出题
四档难度各自按对应的考试 / 竞赛规范出题。生成时只给题面,不给答案;答完提交才出现评分与解析。
难度
题型
题目数量
知识点 / 范围(可选)
额外要求(可选)