协作头脑风暴
brainstorming
在实现前澄清需求、探索设计选择,并形成清晰的开发方向。
lov-hanzi-lens【开发与工程】Explain one Chinese character through verified pronunciation, Unicode and glyph structure, historical lexicography, classical usage, semantic relationships, and an evidence-led professional infographic. Use when the user asks "解释这个字", "这个字什么意思", "一图讲清这个汉字", "汉字字源信息图", "explain this Chinese character", or "Chinese character infographic".
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
name: lov-hanzi-lens description: > Explain one Chinese character through verified pronunciation, Unicode and glyph structure, historical lexicography, classical usage, semantic relationships, and an evidence-led professional infographic. Use when the user asks "解释这个字", "这个字什么意思", "一图讲清这个汉字", "汉字字源信息图", "explain this Chinese character", or "Chinese character infographic". license: MIT compatibility: > Portable Agent Skills format. Requires Python 3.8+, fontTools for deterministic glyph-coverage checks, and the lov-professional-infographic dependency. User paths, brand assets, and output settings resolve from CLI flags, environment variables, or the shared Skill Publisher user profile. depends_on:
Turn one Han character into a source-backed visual explanation. The character is the subject: do not infer a person's character, fate, relationships, or identity unless the user explicitly changes the scope.
character
→ Unicode + font coverage
→ source hierarchy
→ fact / commentary / interpretation boundary
→ semantic model
→ professional Exhibit
→ domain + visual release gates
Read these completely before authoring:
references/research-standard.mdreferences/visual-grammar.mdreferences/output-contract.mdRead references/user-config.md when brand or output configuration is
unresolved.
The dependency lov-professional-infographic is mandatory. Read its
SKILL.md and required references before creating or reviewing the Exhibit.
For the standard visual route, deliver:
exhibit/poster.html and high-resolution
exhibit/poster.png;source.md, research.json, brief.md, font-report.json,
exhibit/audit.json, and hanzi-audit.json;Never invent oracle-bone or bronze forms, turn a modern component mnemonic into historical etymology, flatten regional readings into one standard, or use unsupported rarity and auspiciousness scores.
Use conversation context to prefill the character, focus, locale, aspect, and
brand. Before running the first generation command, use AskUserQuestion once
for the smallest unresolved choice. Recommended defaults:
Do not re-ask options the user already fixed. If the runtime does not expose
AskUserQuestion, ask one concise plain-text question.
python3 "$SKILL_DIR/scripts/hanzi_lens.py" inspect "翕"
python3 "$SKILL_DIR/scripts/hanzi_lens.py" scaffold "翕" \
--request "解释「翕」这个汉字" \
--locale both \
--output-dir "<project>"
The scaffold is intentionally incomplete and non-destructive. Never write into a non-empty output directory.
Run before visual authoring:
python3 "$SKILL_DIR/scripts/hanzi_lens.py" font-check "翕" \
--portable \
--output "<project>/font-report.json"
For Extension B and later ideographs, IVS sequences, or a zero-match result, select and test an explicit font file. Do not substitute an image of a different glyph.
Browse and verify the character. Follow references/research-standard.md.
Record exact evidence in source.md and structured evidence in
research.json.
Required distinctions:
| Layer | Meaning |
|---|---|
| Standard / dictionary fact | Current code point, reading, radical, strokes, recorded sense |
| Historical lexicography | What a named historical dictionary says |
| Commentary | What a named commentator infers from that dictionary |
| Interpretation | A modern synthesis supported by the above |
| Visual metaphor | Geometry used to help comprehension, never presented as paleography |
If sources disagree, show the disagreement. Do not silently choose the most poetic version.
Complete research.json and brief.md before visual code.
Choose one governing relationship:
Every visible branch, arrow, coordinate, or contrast must map to a source ID.
Run the domain preflight:
python3 "$SKILL_DIR/scripts/hanzi_lens.py" audit \
--project "<project>"
Warnings about a missing Exhibit are expected at this stage; research errors must be fixed before continuing.
The title must state a supported finding about the character. Avoid topic labels such as “认识某字”.
python3 "$SKILL_DIR/scripts/hanzi_lens.py" exhibit \
--project "<project>" \
--title "<source-supported action title>" \
--template driver-tree \
--aspect 16:9
Template guidance is in references/visual-grammar.md. The generated template
is only a semantic skeleton. Replace every placeholder while preserving the
dependency's auditable data-* contracts.
python3 "$SKILL_DIR/scripts/hanzi_lens.py" render \
--project "<project>" \
--scale 2
Open exhibit/poster.png at original size and at approximately 320 px wide.
Review:
Revise deliberately. A machine pass is not the final judgment.
python3 "$SKILL_DIR/scripts/hanzi_lens.py" audit \
--project "<project>" \
--human-review passed \
--review-note "<full-size and thumbnail evidence>" \
--strict
Release only when both the Hanzi domain audit and the delegated professional infographic audit pass with zero errors and zero warnings.
python3 "$SKILL_DIR/scripts/hanzi_lens.py" --help
python3 "$SKILL_DIR/scripts/hanzi_lens.py" inspect --help
python3 "$SKILL_DIR/scripts/hanzi_lens.py" scaffold --help
python3 "$SKILL_DIR/scripts/hanzi_lens.py" font-check --help
python3 "$SKILL_DIR/scripts/hanzi_lens.py" exhibit --help
python3 "$SKILL_DIR/scripts/hanzi_lens.py" render --help
python3 "$SKILL_DIR/scripts/hanzi_lens.py" audit --help
Resolution order:
SKILL_HANZI_LENS_* environment variables;SKILL_SKILLS_* environment variables;${SKILL_PROFILE_PATH:-$HOME/.skill-publisher/skills/profile.json};$HOME/Documents.Relevant variables:
| Variable | Meaning |
|---|---|
SKILL_HANZI_LENS_OUTPUT_DIR | Hanzi Lens output root |
SKILL_HANZI_LENS_INFOGRAPHIC_SKILL_DIR | Dependency skill directory |
SKILL_OUTPUT_DIR | Shared output root |
SKILL_SKILLS_INSTALL_DIR | Shared skill installation directory |
SKILL_PROFILE_PATH | Shared profile JSON |
SKILL_PROFILE_PATH | Shared brand profile |
Never hard-code a private workspace or brand path into a reusable project.
运行前读取本 Skill 包的 skill.yaml,由宿主提供 skill-runtime/v1 上下文。字段解析顺序为:当前请求、项目上下文、个人 Preferences、品牌 Profile、通用默认值。
required: true 字段缺失时,按 Manifest 的问题配置向用户提出一个聚焦问题;用户明确同意后再保存回答。context_id、字段路径与来源,诊断内容避开秘密、完整私人路径和原始配置。用户在 Skill 驱动任务中提出修改意见时,继续当前产物前必须执行:
task-specific(仅本次)还是 reusable(可跨任务复用)。task-specific 只修改当前任务,不改 Skill。reusable 先确定作用域:领域规则先更新对应 canonical Skill;适用于所有 Skill 的规则先更新共享规范。reusable 修改会使此前的“确认”“继续”“发吧”失效;完成当前产物修改和回读后必须停下,等待用户下一步指示,不自动进入发布、提交或其他外部写入。