内容
itpec-sensei
一款用于练习 ITPEC 考试题目的本地优先 CLI 工具(适用于基础信息工程师 / IT 护照)— 在终端中独立学习,或将其交给任何兼容 MCP 的 AI 助手(Claude Code、Codex CLI 或其他)以通过聊天进行练习。

## 功能特点
- 计时练习会话,支持单题或整个会话的时间限制
- 复习模式(重温错误题目)和弱项加权模式
- 进度跟踪:连胜记录、按主题/考试的准确率、活动热图 — 所有数据本地存储
- MCP 服务器,允许 AI 助手与您进行对话式练习
## 安装
### 使用 Nix 运行
nix run github:jim-ww/itpec-sensei
或者将其添加到您的配置文件 / flake 输入中,然后直接运行 `itpec-sensei`:
```nix
{
inputs.itpec-sensei.url = "github:jim-ww/itpec-sensei";
# 然后引用 inputs.itpec-sensei.packages.${system}.default
}
```
### 从源码编译
go install github.com/jim-ww/itpec-sensei@latest
首次运行时,itpec-sensei 会请求您同意从此存储库的 GitHub 版本中下载题库(约 350MB)到您的本地数据目录。随时运行 `itpec-sensei data` 以检查并拉取更新。
## CLI 使用方法
itpec-sensei
显示进度摘要:连胜记录、复习队列计数、按主题/考试的准确率。
itpec-sensei practice
itpec-sensei practice --part am --limit 5 # 练习 5 道前端题目(上午部分)
itpec-sensei practice --exam 2025A_FE-A --order sequential --time-limit 90m # 模拟真实考试,按顺序,在时间限制下
itpec-sensei practice --topic "数据库" --limit 10 # 专项练习一个主题
开始练习会话 — 默认、快速练习或全程计时模拟考试。
itpec-sensei sessions --incomplete
itpec-sensei practice --continue # 恢复最近未完成的会话,从中断处继续
itpec-sensei practice --continue=42 # 特定恢复会话 42
itpec-sensei practice --repeat 42 # 启动一个与会话 42 具有相同考试/主题/模式/限制的新会话
列出未正确结束的会话,然后恢复或重复一个。
itpec-sensei sessions --delete 42
永久删除会话及其尝试(提示确认;传递 `--yes` 跳过)。
itpec-sensei topics
列出所有已知主题(有效的 `--topic` 值)。
itpec-sensei history
itpec-sensei sessions
列出过去的个别答案或过去的练习会话。
运行 `itpec-sensei <command> --help` 以获取任何子命令的完整标志列表。
## MCP 服务器
允许 AI 助手获取问题、提交您的答案并读取您的进度 — 评分始终在本地进行,AI 仅中转您的输入。
### 本地(stdio)
对于 Claude Code:
claude add --transport stdio --scope user itpec-sensei -- itpec-sensei serve
### 远程(通过 ngrok)
对于无法启动本地进程的 AI 客户端(例如基于浏览器的聊天),通过 ngrok 隧道公开服务器:
NGROK_AUTHTOKEN=<您的 ngrok 令牌> NGROK_RESERVED_URL=<您的 ngrok 预留 URL> itpec-sensei serve --ngrok --remote
在 https://dashboard.ngrok.com/get-started/your-authtoken 获取 authtoken。`NGROK_RESERVED_URL` 是可选的,但将隧道固定到固定域,这样客户端配置的 URL 在您重启服务器时不会更改。
## 支持
如果 itpec-sensei 帮助您通过考试,欢迎请咖啡:
**门罗币(XMR)**
```
83YGRqP8uHed6NeegZQeX9ccCxbzoRHHEEi7pTwk4aqdJZEVXXA6NWtetnsEM2v33zFBBt3Rp6DNhU9qhJEGPspU14yN8t7
```
## 许可证
[AGPLv3](LICENSE)。免费使用、研究、分享和修改 — 但前提是您也为他人保留相同的自由。