pinchbench-skill

SKILL教育学习
教育学习 未标注权限 许可证不明确
安装这个技能

Take the PinchBench exam to evaluate your capabilities across multiple dimensions (calendar, csv_analysis, email_compose, etc.). The server dispatches questions in batches of 3; each batch is graded immediately and the final score arrives with the last batch.

一句话选型结论

按资料字段整理

pinchbench-skill是教育学习类的 Agent Skill,安装方式未标注,权限级别未标注,许可证不明确,有可直接复制的安装命令。技能本质是给模型读的说明书,效果取决于模型与客户端;装完先用一个小任务验证,再放进正式流程。

分类教育学习 安装方式未标注 权限级别未标注权限 许可证许可证不明确
累计安装 未标注 本周 未标注
GitHub 星标 未标注 仓库 未标注
下载量 未标注 技能市场下载数
权限级别 未标注权限 安装前请确认风险范围
许可证 许可证不明确 未说明

安装

未标注
在支持 Skills 的客户端里执行,装完问一句「你有哪些技能」验证
skillhub install user_f5a335af/pinchbench-skill
  1. 1
    确认客户端支持

    确认你的客户端支持 Skills(Claude、Codex、Cursor 等),并升级到较新的版本。

  2. 2
    拿到技能文件

    执行上面的命令安装;也可以把仓库里的 SKILL.md 手动放进客户端的 skills 目录。

  3. 3
    刷新技能列表

    重新打开客户端,或刷新技能列表,让新放进来的技能被加载。

  4. 4
    验证是否生效

    问一句「你有哪些技能」,确认列表里出现它,再拿一个小任务试跑。

技能档案

教育学习
字段来自技能仓库与公开索引,中文说明由本站标注
作者 / 维护方user_f5a335af仓库 未标注 · 版本 未标注
宿主客户端未标注技能可被这些客户端加载
安装方式未标注安装包 community
权限级别未标注权限安装前请确认风险范围
许可证未说明许可证不明确,商用前请自行确认条款
仓库可用性available技能仓库当前是否可访问
最近核验未标注上游最后核验时间 · 数据更新 1791623670
正文体量11.7 KBSKILL.md 原文大小,越大说明说明书写得越细

典型使用场景

3 类
按分类整理的常见用法,具体以 SKILL.md 为准
讲解知识点

按水平把知识点讲清楚。

出练习题

按章节生成练习与答案。

制定学习计划

按目标和时间排学习节奏。

选择建议

装之前先看这几条
按条目字段给出的判断,不替你决定用不用

值得选的地方

  • 有可直接复制的安装命令,不用自己翻文档找入口。

先想清楚的地方

  • 没有标注权限级别,实际能做什么要装好后确认。
  • 许可证不明确,商用或二次分发前先到仓库确认条款。
  • 没有做站内核验,内容以作者仓库为准。
  • 技能只是说明书,实际效果取决于模型与客户端,装完先用小任务试一遍。

更适合

  • 需要在教育学习场景里给模型补一套做法的人。
  • 愿意先读一遍 SKILL.md、确认它会让模型做什么的人。

不太适合

  • 对许可证要求很严、必须明确可商用的人。
  • 只想装完就自动变强、不打算看说明书的人。

同类对比

6 个同类
同分类里挑最接近的几条,字段以各自详情页为准
技能权限级别安装方式累计安装宿主客户端安装命令
pinchbench-skill当前 未标注权限 未标注 未标注 未标注 有
食谱创建课堂课程 未标注权限 GitHub 仓库 25.5 万 Codex、Claude、Cursor 有
语言学习 联网访问 ClawHub 市场 23.6 万 OpenClaw 有
learning 效率 只读 ClawHub 市场 19.2 万 OpenClaw 有
学习习惯 未标注权限 ClawHub 市场 10.2 万 OpenClaw 有
日语家教 只读 ClawHub 市场 8.2 万 OpenClaw 有

SKILL.md 全文

11.7 KB
模型实际读到的说明书原文,来自技能仓库

PinchBench Exam

You are about to take the PinchBench exam — an OpenClaw-style evaluation where the server dispatches questions in fixed-size batches, and you (the client) answer them one batch at a time. The server grades each batch immediately and returns per-question feedback; the final score is returned only once, attached to the last batch response.

How It Works

  • Server only dispatches questions and grades answers. You (the client) are the one being tested.
  • Each exam contains 12 randomly sampled questions from the server's task pool. Different start calls yield different question sets.
  • Each batch is fixed to 3 questions, so there are 4 batches per exam (3 + 3 + 3 + 3 = 12).
  • After every batch-answer call you get:
  • batchFeedback — per-question score + strengths + weaknesses + breakdown (returned immediately).
  • hash — the integrity token for the next batch. Keep it.
  • nextBatch — the next 3 questions, or null if this was the last batch.
  • The overall result (final score + dimension aggregation + all questions summary) is returned only once, together with the response to the last batch. There is no separate GET /result endpoint — save it yourself when you see it.

Base URL

https://res1.m86.qq.com

All paths below are relative to this base.

Step-by-step Instructions

1. Start the exam

No input parameters are required — just POST an empty JSON body.

POST {BASE_URL}/api/exam/start
Content-Type: application/json

{}

Response:

{
  "examId": "<10-char exam session id>",
  "hash": "<verification hash; include in the NEXT request>",
  "totalQuestions": 12,
  "batchSize": 3,
  "totalBatches": 4,
  "batch": [
    { "id": "task_01_calendar_event", "dimension": "calendar",      "prompt": "..." },
    { "id": "task_02_csv_analysis",   "dimension": "csv_analysis",  "prompt": "..." },
    { "id": "task_03_email_compose",  "dimension": "email_compose", "prompt": "..." }
  ]
}

Notes:
- Each question object contains only id, dimension, prompt. Feed the prompt string directly to your own LLM as the user message (attach your own system prompt if needed).
- batch.length == min(3, totalQuestions).

2. Answer each batch

For every question in batch (or nextBatch), run your LLM on the prompt to get a full text reply, then submit all answers for the current batch together:

POST {BASE_URL}/api/exam/batch-answer
Content-Type: application/json

{
  "examId": "<examId from start>",
  "hash":   "<hash from the previous response>",
  "answers": [
    { "questionId": "<batch[0].id>", "answer": "<full text reply to question 1>" },
    { "questionId": "<batch[1].id>", "answer": "<full text reply to question 2>" },
    { "questionId": "<batch[2].id>", "answer": "<full text reply to question 3>" }
  ]
}

Rules for the request body:
- answer MUST be a string (the full assistant reply text). Sending a JSON object / number / null → 400 invalid_answer_type.
- answers.length must exactly equal the current batch size (typically 3; last batch may be shorter).
- Every questionId must belong to the current batch. Order within answers can vary, but no duplicates and no cross-batch ids.

Non-final-batch response:

{
  "examId": "...",
  "hash":   "<NEW hash — use this in the next request>",
  "batchFeedback": [
    {
      "questionId":  "task_01_calendar_event",
      "dimension":   "calendar",
      "score":       0.83,
      "maxScore":    1.0,
      "gradingType": "automated",
      "strengths":   [ { "item": "file_created",        "score": 1.0 } ],
      "weaknesses":  [ { "item": "description_present", "score": 0.0 } ],
      "breakdown":   { "file_created": 1.0, "description_present": 0.0 },
      "notes":       ""
    }
    // ... one feedback per answered question, in the server's dispatch order
  ],
  "nextBatch": [ /* next 3 questions, same shape as start's batch */ ],
  "progress":  { "answered": 3, "total": 12, "currentBatch": 1, "totalBatches": 4 },
  "result":    null
}

⚠️ IMPORTANT — report the batch score to the human immediately.
The exam is long (many batches × several LLM calls each). The human is waiting and gets no feedback until you tell them. After every batch-answer response, before starting the next batch, send a short status message to the human that includes:

  • Which batch just finished and the overall progress (progress.currentBatch / totalBatches, answered / total).
  • Each question's score in this batch: questionId — dimension — score/maxScore.
  • The batch average score.
  • (Optional but encouraged) one-line highlight of notable strengths/weaknesses if any stand out.

Suggested one-liner template:

> ✅ Batch {currentBatch}/{totalBatches} done ({answered}/{total} questions). Scores: q1 calendar 0.83, q2 csv_analysis 0.50, q3 email_compose 1.00. Batch avg 0.78. Moving on to the next batch…

Do not stay silent across multiple batches — surface progress every single batch.

3. Repeat until the last batch

Each subsequent request uses the hash returned by the previous batch-answer response. Continue until nextBatch is null — that is the final batch, and the response will additionally contain a non-null result:

{
  "examId":   "...",
  "hash":     null,
  "batchFeedback": [ /* feedback for the last batch (may have fewer than 3 items) */ ],
  "nextBatch": null,
  "progress":  { "answered": 12, "total": 12, "currentBatch": 4, "totalBatches": 4 },
  "result": {
    "finalScore":     0.74,
    "maxScore":       1.0,
    "totalQuestions": 12,
    "dimensions": {
      "calendar":      { "score": 0.83, "count": 1 },
      "csv_analysis":  { "score": 0.75, "count": 1 }
      // ... one entry per dimension
    },
    "questions": [
      {
        "id":          "task_01_calendar_event",
        "dimension":   "calendar",
        "score":       0.83,
        "maxScore":    1.0,
        "gradingType": "automated",
        "strengths":   [ { "item": "file_created",        "score": 1.0 } ],
        "weaknesses":  [ { "item": "description_present", "score": 0.0 } ],
        "breakdown":   { "file_created": 1.0, "description_present": 0.0 },
        "notes":       ""
      }
      // ... one entry per question, in the server's original order
    ]
  }
}

4. Save the result

The result object is returned only this one time. Save it somewhere persistent (a file, or your long-term memory):

  • finalScore — overall mean across all questions (0.0 to 1.0).
  • dimensions — per-dimension mean + count.
  • questions[] — full breakdown per question, including strengths / weaknesses.

After saving, report finalScore and per-dimension scores back to your human.

Health check (optional)

GET {BASE_URL}/api/exam/healthz
→ 200 { "status": "ok" }

Resume an interrupted exam (optional)

If you still have an examId but lost the latest hash, you can recover the current batch:

GET {BASE_URL}/api/exam/{examId}/status

Possible responses:
- status == "in_progress" — the body also includes the current batch's hash and batch. Use them directly in the next POST /api/exam/batch-answer.
- status == "completed" — the exam is done; result was returned only once when the last batch was submitted, so if the finishing client didn't save it, detailed scores are no longer available.
- status == "expired" — start a new exam (Step 1).
- 404 exam_not_found — unknown examId; start a new exam (Step 1).

Error handling

HTTP error code Meaning
400 invalid_batch Wrong number of answers, unknown questionId, or duplicate id
400 invalid_answer_type answer was not a string
404 exam_not_found examId is unknown
409 invalid_hash hash doesn't match — likely stale; call GET /status to recover
410 exam_completed Exam already finished; no more answers accepted
410 exam_expired Exam expired
500 internal_error Server-side failure

Error body shape: { "error": "<code>", "message": "<human-readable>" }.

Rules

  • Always include the hash from the previous response in the next batch-answer.
  • Answer every question — you cannot skip or reorder batches (the hash enforces batch ordering).
  • There is no timer — take as long as you need per question.
  • One batch-answer call per batch — do not split one batch across multiple calls.
  • Report progress to the human after every batch — include batch index, per-question scores and batch average. Never run silently across multiple batches.
  • Keep examId and the latest hash if you might crash mid-exam; you can resume via GET /api/exam/{examId}/status.

Example Flow

→ POST /api/exam/start  {}
← { examId: "a1b2c3d4e5", hash: "H0",
    totalQuestions: 12, batchSize: 3, totalBatches: 4,
    batch: [ { id: "Q1", dimension: "...", prompt: "..." },
             { id: "Q2", dimension: "...", prompt: "..." },
             { id: "Q3", dimension: "...", prompt: "..." } ] }

# For each batch[i]: run your LLM on batch[i].prompt → collect reply text A1/A2/A3

→ POST /api/exam/batch-answer {
    examId: "a1b2c3d4e5",
    hash:   "H0",
    answers: [ { questionId: "Q1", answer: A1 },
               { questionId: "Q2", answer: A2 },
               { questionId: "Q3", answer: A3 } ]
  }
← { examId: "a1b2c3d4e5",
    hash:   "H1",
    batchFeedback: [ /* 3 items with score, strengths, weaknesses */ ],
    nextBatch:     [ /* next 3 questions */ ],
    progress: { answered: 3, total: 12, currentBatch: 1, totalBatches: 4 },
    result:   null }

# → Report to human (every batch, before moving on):
#   "✅ Batch 1/4 done (3/12). Scores: Q1 calendar 0.83, Q2 csv_analysis 0.50, Q3 email_compose 1.00. Batch avg 0.78. Moving on…"

... repeat for 4 total batches (3 + 3 + 3 + 3 = 12), reporting after EACH batch ...

→ POST /api/exam/batch-answer {
    examId: "a1b2c3d4e5",
    hash:   "H3",
    answers: [ { questionId: "Q10", answer: A10 },
               { questionId: "Q11", answer: A11 },
               { questionId: "Q12", answer: A12 } ]
  }
← { examId:    "a1b2c3d4e5",
    hash:       null,
    batchFeedback: [ /* 3 items for the last batch */ ],
    nextBatch:  null,
    progress:   { answered: 12, total: 12, currentBatch: 4, totalBatches: 4 },
    result:     { finalScore: 0.74, dimensions: {...}, questions: [...12 items...] } }

[Save `result` somewhere persistent — it will not be returned again.]
[Report finalScore + top dimensions back to the human.]

Resume Example

→ GET /api/exam/a1b2c3d4e5/status
← { examId:   "a1b2c3d4e5",
    status:   "in_progress",
    progress: { answered: 6, total: 12, currentBatch: 2, totalBatches: 4 },
    createdAt: 1713628800,
    hash:     "H2",
    batch:    [ { id: "Q7", dimension: "...", prompt: "..." },
                { id: "Q8", dimension: "...", prompt: "..." },
                { id: "Q9", dimension: "...", prompt: "..." } ] }

# Use status.hash + status.batch directly in the next batch-answer call.

Good luck! 🦞

常见问题

5 问
答案由本站依据条目字段整理
pinchbench-skill怎么安装?

在支持 Skills 的客户端里执行:skillhub install user_f5a335af/pinchbench-skill。安装方式为未标注。装完刷新技能列表或重开客户端。

pinchbench-skill支持哪些客户端?

资料没有标注宿主客户端,但只要客户端支持 Skills(Claude、Codex、Cursor 等),一般都能加载。

pinchbench-skill权限高吗,安全吗?

权限级别为未标注权限。安装前先看它会读取或写入哪些内容。

pinchbench-skill收费吗?

本站不代收费用,也没有标注具体价格。是否收费取决于技能本身和所用的模型或客户端,正式使用前按作者说明确认。

pinchbench-skill用什么许可证?

许可证标注为 未说明(许可证不明确)。商用或二次分发前请到仓库确认条款原文。

热门专题

按场景挑技能
全部专题 →

技能内容以作者仓库为准;分类、权限级别与许可证状态的中文说明为中文整理,最近核验 未标注。