Skip to content

ttzc/codeforces-api

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

codeforces-api

WorkBuddy Skill — Codeforces 竞赛平台数据查询与分析。

项目背景

D:/AI_study/learn/codeforces-mcp 克隆并分析了 Mohamed-hanfy/codeforces-mcp(148 行 MCP Server), 发现三大硬伤:

  1. 只覆盖 9/18 端点 — 缺少 blogEntry.*、contest.hacks、problemset.problems、recentActions、system.status、group.isManager、user.blogEntries、user.friends
  2. 完全无认证 — 不支持 apiKey + apiSig 签名,无法访问 user.friends 等需鉴权端点
  3. Docker 纯属累赘 — 14 行 Dockerfile 拉一个 200MB+ 镜像跑 stdio 脚本,零价值

决策:用 WorkBuddy Skill 替代 MCP Server。

  • 公开端点(16 个)→ WorkBuddy WebFetch 直接调用,零代码零依赖
  • 认证端点(user.friends、group.isManager)→ scripts/cf_api.py 计算 SHA512 apiSig 签名,仅用 Python 标准库
  • 嵌入竞赛编程领域知识(rating 分段、标签体系、推荐策略),超越纯 API 包装

功能

  • 比赛查询:比赛列表、排名、rating 变化、提交记录、hack 记录
  • 用户查询:用户信息、rating 历史、提交记录、博客列表、好友列表(需认证)
  • 题库检索:按标签/rating 筛选题目、最近提交
  • 博客阅读:查看 CF 博客内容与评论
  • 最近动态:CF 平台最近活动
  • 领域知识:rating 分段体系、标签含义、练习推荐策略

设计

两层 API 访问

层级 方法 机制
公开(16 个) blogEntry.、contest.、problemset.*、recentActions、system.status、user.info/rating/status/blogEntries/ratedList WorkBuddy WebFetchhttps://codeforces.com/api/{method}?{params}
认证(2 个) user.friends、group.isManager scripts/cf_api.py + --key + --secret

关键设计决策

  1. 零外部依赖cf_api.py 仅用 Python 标准库(hashlib, urllib, json, argparse)
  2. 公开端点无需代码:WorkBuddy 内置 WebFetch 直接调 API,SKILL.md 含 URL 模板
  3. 频率限制感知:CF API 每 2 秒最多 1 次请求,SKILL.md 指示批量请求间隔
  4. 密钥安全:API key/secret 通过 CLI 参数传入,不写入文件

安装

git clone [email protected]:ttzc/codeforces-api.git ~/.workbuddy/skills/codeforces-api

技术栈

  • WorkBuddy Skill(Markdown 指令 + WebFetch)
  • Python 标准库(hashlib, urllib, json, argparse)
  • 零外部依赖

参考文档

Codeforces 官方

参考项目

项目 语言 链接 参考价值
codeforces-mcp Python https://github.com/Mohamed-hanfy/codeforces-mcp 原始 MCP,端点列表参考
go-codeforces Go https://github.com/mukundan314/go-codeforces 完整端点覆盖 + 认证实现
codeforces-api-node Node.js https://github.com/ahmed-dinar/codeforces-api-node 端点参数参考
codeforces-api-ts TypeScript https://www.npmjs.com/package/codeforces-api-ts 端点参数 + 认证参考

License

MIT

About

WorkBuddy Skill — Codeforces 竞赛平台数据查询与分析(18 端点覆盖,含 apiSig 认证)

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages