Recognition
Recognize wrong questions from scanned/photo/PDF papers using model-native vision. Use for source manifests, page order reasoning, teacher-mark interpretation, unmarked-paper grading, and RecognitionResult creation.From its SKILL.md
npx -y skills add szsip239/peter-zhou --skill recognitionAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
- runs commandsInstructs the agent to run 8 commands, including `scripts/source_queue.py prepare` and 7 more.
SKILL.md
6.6 KB, ~1.3k tokens by cl100k_base, as published. Nobody here has run it
Recognition
Use this subskill when a source paper or wrong-question image needs visual understanding.
Core contract:
- Scripts scan files, render PDFs, create source manifests, and persist results.
- Use
scripts/source_queue.py preparefor deterministic source discovery and manifest creation. - For the Dashboard action
检查待入库试卷, runscripts/runtime_config.py refresh --jsonand reportstatus=newas待入库. For处理待入库试卷, pass all returnedmanifest_pathsto onepaper_recognition_batchstart command as repeated--source-manifestarguments. Follow only its currentnext_action; the script advances papers and aggregates review/failure refs. - The default source is a local top-level directory configured during first use. If an advanced installation explicitly needs a remote Windows source,
scripts/ssh_source_sync.py refreshis an optional SSH adapter; credentials stay in the host's SSH configuration or runtime environment and never enter Peter Zhou configuration or output. Use--retry-failedonly when the user or workflow explicitly requests failed-source retry. - For PDFs, source manifests include one stitched
document_image_pathfor whole-paper recognition plus individual page PNGs for close reading and crop references. - Use
scripts/recognize_manifest.py build-promptto prepare the native-vision prompt from an explicit source manifest. - The agent should inspect the whole-paper image first for document-level structure, then use individual page images for close reading and crop-region coordinates.
- Prefer
crop_regions[].image_ref="page"with normalized 0-1000 bbox coordinates; useimage_ref="document"only when the region cannot be located reliably on one page image. - Treat
crop_regions[].bboxas a rough visual anchor, not a pixel-perfect contract. Setcrop_regions[].crop_policy="auto_expand"for normal wrong-question screenshots so scripts expand the crop to nearby printed/handwritten evidence. Usecrop_policy="exact_bbox"only for clean standalone visual assets or deliberately tight review crops. - If a question depends on a visually separate diagram, table, chart, graph, map, circuit, or labeled illustration, include that visual area as an additional crop region for the same wrong question.
- Set
question_kindtotextfor pure text questions andvisualfor questions that need a figure, table, chart, graph, map, circuit, geometry figure, or labeled illustration. - Store required source context in
context_text. For any reading-comprehension item, including Chinese and English, include the original passage or enough passage excerpt to answer the subquestion; do not persist only the subquestion. When the prompt asks to answer with "本文", "文章", "全文", "选文", or a passage, a short summary is not enough. - Also transcribe the needed visual data into clean
student_facing_assets[], because correction papers do not print raw crop screenshots. - For printable visual assets, use this priority: safe true-image crop first, then controlled
diagram_spec/SVG redraw for geometry-style figures. Do not use generated-image replication as a canonical student asset. - When a clean printed visual area has no student answer, handwriting, or teacher mark, add
student_facing_assets[].asset_regions[]for that clean area. The intake script will crop it intostudent-assets/and persist anasset_reffor printable correction papers. - If no clean visual crop exists, leave out
asset_regions. For geometry-style figures, reconstruct the needed relationships through a revieweddiagram_spec/SVG redraw workflow; for other visual data, reconstruct the needed diagram/table/chart information instudent_facing_assets[].contentand lower confidence if review is needed. - Preserve natural math symbols in text, and add
formula_latex[]for formulas, roots, fractions, equations, geometry relations, or units that need stable later rendering. - When
correct_answercomes from teacher correction or from model derivation, state the source insimple_mistake_analysis. If teacher handwriting conflicts with reliable derivation or is hard to read, lowerconfidenceand include a review note such as批改字迹需复核. - The agent reads source manifest images with native vision and returns a structured
RecognitionResult. - The normal multi-file path is
scripts/workflow.py start --kind paper_recognition_batch --source-manifest <manifest-1> --source-manifest <manifest-2> .... Usepaper_recognitiondirectly only for one explicit paper or diagnostics. The batch exposes exactly one child paper's prompt/images at a time, preserves each child review report, continues after a terminal child failure, and reuses completed/interrupted children unless--refreshis explicit. - Every child workflow first permits the Agent to identify a returned Peter Zhou correction paper from visible content rather than the file name; those files are automatically routed to returned-scan extraction and unified answer grading instead of mistake ingestion.
- For returned correction papers, trust printed page numbers over file/render order. Submit only visible answers. Review every unanswered item for a missing, cropped, or contradictory stem/diagram through
unanswered_item_reviews; blank answers must never become attempts. - After returned-scan grading succeeds, the workflow marks the source document and manifest
processedand the correction paperanswered, so source refresh does not queue the same file again. - If native vision fails structurally or technically, use Doubao seed-2.0-pro fallback through runtime configuration.
- Do not write durable JSON directly from prose output.
- Validate
RecognitionResultrecords withscripts/validate_record.py; seereferences/schema.md. - Use
scripts/recognize_manifest.py select-resultso native output stays primary and fallback output cannot create a duplicate mistake set. - Persist selected recognition results with
scripts/intake_recognition.py ingest, then show the returned derived review report to the user. Normal crops should already be auto-expanded; useintake_recognition.py repair-cropsonly when a screenshot is still incomplete, too loose, or needs a deliberately different multi-region stitch. - For normal operation, do not manually repeat
build-prompt,select-result, andingest; resume the workflow using the exact schema named bynext_action.
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.
Gives 0 of the 12 instructions most education skills give in ~1.3k tokens
Counted across 169 of the 171 authors here whose files we hold, read 2026-08-07
- Search for existing resources before creating new onesin 7 of 169, across 3 files
- Check tool responses for errors before proceedingin 7 of 169, across 3 files
- Reduce request frequency on rate limit errorsin 7 of 169, across 3 files
- Confirm connection status is ACTIVE before running workflowsin 7 of 169, across 3 files
- Execute prerequisite steps first in workflowsin 7 of 169, across 3 files
- Handle pagination by fetching until exhaustedin 7 of 169, across 3 files
- Re-authenticate if the connection expiredin 6 of 169, across 2 files
- Always call RUBE_SEARCH_TOOLS first to get schemasin 6 of 169, across 2 files
- Pass strictly schema-compliant tool argumentsin 6 of 169, across 2 files
- Run the skill generator if the shared file is missingin 6 of 169, across 3 files
- Create the coursein 5 of 169, across 3 files
- List enrolled studentsin 5 of 169, across 3 files
Said here and by no other author read
- inspect whole-paper images before individual pages
- prefer page image references over document references
- set crop_policy to auto_expand for normal screenshots
- include passage excerpts in context_text
- transcribe visual data into student_facing_assets
- state answer source in simple_mistake_analysis
Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once. Length counted with cl100k_base; the agent that loads this file may tokenize it differently.