Files
ECC/skills/visa-doc-translate/SKILL.md
T
d29cf651c7 fix(skills): declare activation triggers in descriptions and normalize version metadata (#2618)
* fix(skills): move version into metadata and normalize to semver

29 skills declared `version` at the top level of their frontmatter. The
schema reads it from `metadata`, so tooling that follows the schema either
misses it or has to special-case the top level.

Three motion skills also declared `version: 1.0`, which is not a valid
semantic version; normalized to `1.0.0`.

No behavioral change — frontmatter metadata only.

* fix(skills): state activation triggers in skill descriptions

148 skills described what they cover but never named the situation that
should trigger them. Since the description is what Claude matches against
to decide whether to load a skill, a description without a trigger makes
activation guesswork — the skill is either missed or loaded at the wrong
time.

Added a "Use when ..." clause to each, derived from the skill's own body
(most already stated the trigger under "## When to Use" or in the opening
line; that intent is now reflected in the frontmatter where it is actually
read from).

Descriptions were only appended to; no existing wording was removed.

* fix(skills): sync activation triggers into the Codex skill mirror

10 of the skills whose descriptions changed are also mirrored under
`.agents/skills/`, where the description was previously a verbatim copy.
Left alone, the two surfaces would disagree about when the skill applies.

Only the description line is synced; the Codex copies keep their reduced
frontmatter, since that validator accepts only name, description,
metadata, license, and allowed-tools.

* fix(skills): correct three activation clauses from review

- autonomous-loops: the clause pulled new loop work into a skill that its
  own body marks as a compatibility shim retained for one release. It now
  points at the canonical continuous-agent-loop instead.
- continuous-learning: the description carried the v1 routing directive
  twice; collapsed to one.
- homelab-pihole-dns: the clause fired on any broken home DNS. Narrowed to
  tasks that actually involve Pi-hole.

* chore: retain current main lockfile

---------

Co-authored-by: Çağrı Solakoğlu <cagri.solakoglu@vtcenerji.com>
Co-authored-by: haelyra <49814733+haelyra@users.noreply.github.com>
2026-08-11 23:58:14 -04:00

3.9 KiB

name, description
name description
visa-doc-translate Translate visa application documents (images) to English and create a bilingual PDF with original and translation. Use when visa application document images must be translated to English as a bilingual PDF.

You are helping translate visa application documents for visa applications.

Instructions

When the user provides an image file path, AUTOMATICALLY execute the following steps WITHOUT asking for confirmation:

  1. Image Conversion: If the file is HEIC, convert it to PNG using sips -s format png <input> --out <output>

  2. Image Rotation:

    • Check EXIF orientation data
    • Automatically rotate the image based on EXIF data
    • If EXIF orientation is 6, rotate 90 degrees counterclockwise
    • Apply additional rotation as needed (test 180 degrees if document appears upside down)
  3. OCR Text Extraction:

    • Try multiple OCR methods automatically:
      • macOS Vision framework (preferred for macOS)
      • EasyOCR (cross-platform, no tesseract required)
      • Tesseract OCR (if available)
    • Extract all text information from the document
    • Identify document type (deposit certificate, employment certificate, retirement certificate, etc.)
  4. Translation:

    • Translate all text content to English professionally
    • Maintain the original document structure and format
    • Use professional terminology appropriate for visa applications
    • Keep proper names in original language with English in parentheses
    • For Chinese names, use pinyin format (e.g., WU Zhengye)
    • Preserve all numbers, dates, and amounts accurately
  5. PDF Generation:

    • Create a Python script using PIL and reportlab libraries
    • Page 1: Display the rotated original image, centered and scaled to fit A4 page
    • Page 2: Display the English translation with proper formatting:
      • Title centered and bold
      • Content left-aligned with appropriate spacing
      • Professional layout suitable for official documents
    • Add a note at the bottom: "This is a certified English translation of the original document"
    • Execute the script to generate the PDF
  6. Output: Create a PDF file named <original_filename>_Translated.pdf in the same directory

Supported Documents

  • Bank deposit certificates (存款证明)
  • Income certificates (收入证明)
  • Employment certificates (在职证明)
  • Retirement certificates (退休证明)
  • Property certificates (房产证明)
  • Business licenses (营业执照)
  • ID cards and passports
  • Other official documents

Technical Implementation

OCR Methods (tried in order)

  1. macOS Vision Framework (macOS only):

    import Vision
    from Foundation import NSURL
    
  2. EasyOCR (cross-platform):

    pip install easyocr
    
  3. Tesseract OCR (if available):

    brew install tesseract tesseract-lang
    pip install pytesseract
    

Required Python Libraries

pip install pillow reportlab

For macOS Vision framework:

pip install pyobjc-framework-Vision pyobjc-framework-Quartz

Important Guidelines

  • DO NOT ask for user confirmation at each step
  • Automatically determine the best rotation angle
  • Try multiple OCR methods if one fails
  • Ensure all numbers, dates, and amounts are accurately translated
  • Use clean, professional formatting
  • Complete the entire process and report the final PDF location

Example Usage

/visa-doc-translate RetirementCertificate.PNG
/visa-doc-translate BankStatement.HEIC
/visa-doc-translate EmploymentLetter.jpg

Output Example

The skill will:

  1. Extract text using available OCR method
  2. Translate to professional English
  3. Generate <filename>_Translated.pdf with:
    • Page 1: Original document image
    • Page 2: Professional English translation

Perfect for visa applications to Australia, USA, Canada, UK, and other countries requiring translated documents.