forked from EduCraft/curriculum-project-hub
54837717fd
Register pbank as an ADR-0027 external capability with org-scoped username/password envelopes, readiness via /login, and in-process cph_hub MCP tools (search/get/get_many) that materialize sources under the run workspace. Extend the capability secret payload for docmind vs pbank kinds, admin capabilities UI, role tool umbrella `pbank`, and the pbank-problem-report skill. Credentials never reach the Agent process.
61 lines
3.6 KiB
Markdown
61 lines
3.6 KiB
Markdown
---
|
|
name: pbank-problem-report
|
|
description: >
|
|
Use when a teacher wants Paradigm PBank (题库) problems as lesson examples,
|
|
asks to search PBank by outline, map candidates to outline parts, inspect
|
|
downloaded PBank source zips including images, or produce a Markdown
|
|
selection/adaptation report.
|
|
---
|
|
|
|
# PBank Problem Report
|
|
|
|
Use the `cph_hub` MCP tools `pbank_search_problems`, `pbank_get_problem`, and
|
|
`pbank_get_many_problems` to support problem selection from Paradigm PBank.
|
|
The normal output is a Markdown report for the teacher to review before any
|
|
lesson source is changed.
|
|
|
|
## Workflow
|
|
|
|
1. Understand the current lesson before searching.
|
|
- Read the lesson outline, plan, or main source files in the current workspace.
|
|
- Identify the teaching parts, target concepts, required difficulty, and what kind of examples are needed.
|
|
|
|
2. Search PBank with narrow queries.
|
|
- Use `pbank_search_problems` with Chinese keywords from the outline.
|
|
- Prefer several focused searches over one broad search.
|
|
- Keep the initial result set small, then fetch only plausible candidates.
|
|
|
|
3. Fetch source projects for candidates.
|
|
- Use `pbank_get_problem` or `pbank_get_many_problems`.
|
|
- Keep `includeProjects: true`, `materializeProjects: true`, and `includeAssetImages: true` unless the user explicitly asks otherwise.
|
|
- Read the returned `rights` object first. Treat it as the authoritative rights signal for all content returned by these tools.
|
|
- Read returned `files`, `assets`, `zipPath`, and `extractDir`. Images usually live under `fig/` in the extracted source tree.
|
|
- When image or PDF assets matter, cite their workspace-relative paths under `.pbank-sources/...`.
|
|
|
|
4. Produce a Markdown report instead of editing the lesson by default.
|
|
- Save it in the current project workspace as `pbank-candidate-report.md` unless the user gives another path.
|
|
- Do not copy problems into the lesson, rewrite the lesson, or write back to PBank unless the user explicitly asks.
|
|
|
|
5. When the teacher explicitly asks for adaptation, follow the rights signal.
|
|
- If `rights.derivativeUseAllowed` is `true`, you may quote, rewrite, adapt, and reorganize the returned PBank content into the current teaching-material project.
|
|
- Do not refuse on generic copyright grounds when the tools say derivative use is allowed.
|
|
- If `rights.derivativeUseAllowed` is `false`, stay read-only and ask the teacher/admin to confirm rights first.
|
|
|
|
## Report Shape
|
|
|
|
Use concise Chinese. Include:
|
|
|
|
- Lesson outline parts and the example need for each part.
|
|
- A candidate table with PBank title/id/link, matched outline part, fit score, directly usable material, required modifications, assets, and recommendation.
|
|
- Per-problem notes explaining the mathematical/physical idea, why it matches, and what needs to be changed for this lesson.
|
|
- A short final recommendation: which problems to use directly, which to adapt, and which to discard.
|
|
|
|
## Rules
|
|
|
|
- Do not invent problem statements, diagrams, or answers. Base every claim on PBank metadata or extracted source files.
|
|
- Treat `.pbank-sources/` as a local read cache. It is safe to read from and reference in reports.
|
|
- Keep PBank itself read-only. The teacher's workflow is selection and adaptation inside the current lesson project, not modifying the bank.
|
|
- Treat rights metadata as authoritative. Do not override `rights.derivativeUseAllowed: true` with a generic copyright refusal.
|
|
- If tools fail because no ACTIVE `pbank` capability connection exists, tell the user an org admin must configure 题库 credentials under 外部能力.
|
|
- If no candidate fits, say that directly and record the searches tried.
|