Skip to main content

template-optimizer

Optimize YAML templates for Hyper-Extract. Use when: "optimize template", "fix YAML issues", "improve quality", "lint template" Trigger: After creating templates or during review Skip: Creating new templates (use brainstorm + designer instead)

Informations de source

Dépôt
yifanfeng97/Hyper-Extract
Dernière activité de la source
29 mars 2026 à 06:50
Langue détectée de SKILL.md
anglais
Étoiles
4 156
Forks
475

Options d'installation

Le prompt qui vérifie d'abord la source est sélectionné par défaut. Vous pouvez passer à une commande directe ou télécharger une copie locale.

Vérifiez les fichiers source

Lisez SKILL.md et les fichiers associés affichés par SkillsMP avant de décider de l'installer.

Explorateur de fichiers
6 fichiers

Affichage de SKILL.md

SKILL.md
Instructions source · Aperçu en lecture seule
name
template-optimizer
description
Optimize YAML templates for Hyper-Extract. Use when: "optimize template", "fix YAML issues", "improve quality", "lint template" Trigger: After creating templates or during review Skip: Creating new templates (use brainstorm + designer instead)
# Template Optimizer Automatically analyze and optimize YAML templates by applying best practices and fixing common issues. ## Workflow ``` 1. Parse YAML → 2. Analyze Issues → 3. Apply Fixes → 4. Generate Report ``` ### Step 1: Parse YAML Load the YAML template and validate basic structure. ### Step 2: Analyze Issues Check against these rules: | Rule | What to Check | |------|--------------| | [rules-naming.md](references/rules-naming.md) | Field naming standardization | | [rules-multilingual.md](references/rules-multilingual.md) | Language consistency | | [rules-field-count.md](references/rules-field-count.md) | Information density | | [rules-consistency.md](references/rules-consistency.md) | Schema vs Guideline separation | | [rules-hypergraph-grouping.md](references/rules-hypergraph-grouping.md) | Hypergraph grouping strategy | ### Step 3: Apply Fixes Apply fixes based on optimization level: | Level | Description | Example | |-------|-------------|---------| | **Auto-fix** | Safe changes that always improve | `relation_type` → `type` | | **Suggest** | Changes that may need review | Field count > 5 | | **Review** | Design decisions | Relation type openness | ### Step 4: Generate Report Output changes with explanations for learning. --- ## Detection Rules ### Rule 1: Multi-language Consistency ``` ❌ Pattern: [a-zA-Z]+\([^)]+\) in zh fields ❌ Pattern: Chinese chars in en fields ``` **Fix**: Separate language content, use pure Chinese in zh, pure English in en. ### Rule 2: Field Naming ``` ❌ relation_type → type ❌ event_date → time ❌ entity_type → type ``` **Fix**: Standardize to concise names. ### Rule 3: Field Count ``` ⚠️ entities.fields > 5 → Flag for review ⚠️ relations.fields > 5 → Flag for review ``` **Fix**: Simplify to essential fields, use priority: Essential → Important → Optional. ### Rule 4: Schema-Guideline Separation ``` ❌ Repetition of field definitions in guideline ❌ Schema descriptions in rules ``` **Fix**: Schema defines WHAT, Guideline defines HOW TO DO WELL. ### Rule 5: Hypergraph Grouping ``` ❌ relation_members: participants (string) + role field exists ❌ relation_id contains participant field ``` **Fix**: Use nested grouping `relation_members: [group_a, group_b]` when entities partition by roles. --- ## Design Principles ### Schema vs Guideline | Schema Defines | Guideline Defines | |---------------|-----------------| | Field names | Extraction strategy | | Field types | Quality requirements | | Field descriptions | Creation conditions | | Required/optional | Common mistakes | **❌ Wrong**: Guideline repeats schema definitions **✅ Correct**: Guideline explains how to extract well ### Information Density For **entities** and **relations**: | Field Priority | Examples | |---------------|---------| | Essential | source, target, participants | | Important | type, time, location | | Optional | description, metadata | **Max**: 5 fields per component ### Naming Conventions | For | Use | Example | |-----|------|---------| | Template name | CamelCase | `EarningsSummary` | | Field names | snake_case | `company_name` | | Tags | lowercase | `finance, investor` | --- ## Reference Files | Topic | When to Check | |-------|--------------| | [rules-naming.md](references/rules-naming.md) | Field naming issues | | [rules-multilingual.md](references/rules-multilingual.md) | Language consistency | | [rules-field-count.md](references/rules-field-count.md) | Too many fields | | [rules-consistency.md](references/rules-consistency.md) | Schema-guideline overlap | | [rules-hypergraph-grouping.md](references/rules-hypergraph-grouping.md) | Role field vs nested grouping | --- ## Output Format ```markdown # Optimization Report ## Changes Made | File | Issue | Fix | Level | |------|-------|-----|-------| | template.yaml | `relation_type` | renamed to `type` | Auto-fix | | template.yaml | Mixed language | Fixed zh/en separation | Auto-fix | | template.yaml | 7 relation fields | Suggested simplification | Suggest | ## Summary - Auto-fix: 2 - Suggestions: 1 - Manual review: 0 ``` --- ## Integration ``` Full workflow: brainstorm → designer → optimizer → validator ↓ Apply best practices Auto-fix common issues ``` **When to use**: - After creating new templates - Before validator - During template review - Batch optimization of existing templates
Voir sur GitHub