[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6DRQC2Z9M18JM986TMPBKJ2":3,"skill-same:01M6DRQC2Z9M18JM986TMPBKJ2":65},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":15,"categories":16,"keywords":22,"publishedAt":33,"linkOnly":34,"markdownContent":35,"markdownBody":36,"frontMatter":37,"refName":38,"commitSha":39,"skillDirectory":40,"forksCount":41,"repositoryHtmlUrl":42,"repositoryHomepageUrl":6,"ownerHtmlUrl":43,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":44,"install":45,"resources":58},"01M6DRQC2Z9M18JM986TMPBKJ2","visa-doc-translate",null,"Translate visa application documents (images) to English and create a bilingual PDF with original and translation","AntifragileTech\u002Fantifragile-claude-code","AntifragileTech","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F174357194?v=4","01M6DQCYMK4CDSQQAN0ZC72NTV","01M6DQCYS9YPW1WKMQ5TJMPQ43",9,"MIT","https:\u002F\u002Fgithub.com\u002FAntifragileTech\u002Fantifragile-claude-code\u002Fblob\u002Fmaster\u002Fassets\u002Fskills\u002Fdev\u002Fvisa-doc-translate\u002FSKILL.md",[17],{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000002","文档处理","SCENARIO","使用场景",[23,24,25,26,27,28,29,30,31,32],"translate","doc","visa doc translate","PDF","documents","create","images","translation","application","english","2026-11-10 10:12:30",false,"---\nname: visa-doc-translate\ndescription: Translate visa application documents (images) to English and create a bilingual PDF with original and translation\n---\n\nYou are helping translate visa application documents for visa applications.\n\n## Instructions\n\nWhen the user provides an image file path, AUTOMATICALLY execute the following steps WITHOUT asking for confirmation:\n\n1. **Image Conversion**: If the file is HEIC, convert it to PNG using `sips -s format png \u003Cinput> --out \u003Coutput>`\n\n2. **Image Rotation**:\n   - Check EXIF orientation data\n   - Automatically rotate the image based on EXIF data\n   - If EXIF orientation is 6, rotate 90 degrees counterclockwise\n   - Apply additional rotation as needed (test 180 degrees if document appears upside down)\n\n3. **OCR Text Extraction**:\n   - Try multiple OCR methods automatically:\n     - macOS Vision framework (preferred for macOS)\n     - EasyOCR (cross-platform, no tesseract required)\n     - Tesseract OCR (if available)\n   - Extract all text information from the document\n   - Identify document type (deposit certificate, employment certificate, retirement certificate, etc.)\n\n4. **Translation**:\n   - Translate all text content to English professionally\n   - Maintain the original document structure and format\n   - Use professional terminology appropriate for visa applications\n   - Keep proper names in original language with English in parentheses\n   - For Chinese names, use pinyin format (e.g., WU Zhengye)\n   - Preserve all numbers, dates, and amounts accurately\n\n5. **PDF Generation**:\n   - Create a Python script using PIL and reportlab libraries\n   - Page 1: Display the rotated original image, centered and scaled to fit A4 page\n   - Page 2: Display the English translation with proper formatting:\n     - Title centered and bold\n     - Content left-aligned with appropriate spacing\n     - Professional layout suitable for official documents\n   - Add a note at the bottom: \"This is a certified English translation of the original document\"\n   - Execute the script to generate the PDF\n\n6. **Output**: Create a PDF file named `\u003Coriginal_filename>_Translated.pdf` in the same directory\n\n## Supported Documents\n\n- Bank deposit certificates (存款证明)\n- Income certificates (收入证明)\n- Employment certificates (在职证明)\n- Retirement certificates (退休证明)\n- Property certificates (房产证明)\n- Business licenses (营业执照)\n- ID cards and passports\n- Other official documents\n\n## Technical Implementation\n\n### OCR Methods (tried in order)\n\n1. **macOS Vision Framework** (macOS only):\n   ```python\n   import Vision\n   from Foundation import NSURL\n   ```\n\n2. **EasyOCR** (cross-platform):\n   ```bash\n   pip install easyocr\n   ```\n\n3. **Tesseract OCR** (if available):\n   ```bash\n   brew install tesseract tesseract-lang\n   pip install pytesseract\n   ```\n\n### Required Python Libraries\n\n```bash\npip install pillow reportlab\n```\n\nFor macOS Vision framework:\n```bash\npip install pyobjc-framework-Vision pyobjc-framework-Quartz\n```\n\n## Important Guidelines\n\n- DO NOT ask for user confirmation at each step\n- Automatically determine the best rotation angle\n- Try multiple OCR methods if one fails\n- Ensure all numbers, dates, and amounts are accurately translated\n- Use clean, professional formatting\n- Complete the entire process and report the final PDF location\n\n## Example Usage\n\n```bash\n\u002Fvisa-doc-translate RetirementCertificate.PNG\n\u002Fvisa-doc-translate BankStatement.HEIC\n\u002Fvisa-doc-translate EmploymentLetter.jpg\n```\n\n## Output Example\n\nThe skill will:\n1. Extract text using available OCR method\n2. Translate to professional English\n3. Generate `\u003Cfilename>_Translated.pdf` with:\n   - Page 1: Original document image\n   - Page 2: Professional English translation\n\nPerfect for visa applications to Australia, USA, Canada, UK, and other countries requiring translated documents.\n","You are helping translate visa application documents for visa applications.\n\n## Instructions\n\nWhen the user provides an image file path, AUTOMATICALLY execute the following steps WITHOUT asking for confirmation:\n\n1. **Image Conversion**: If the file is HEIC, convert it to PNG using `sips -s format png \u003Cinput> --out \u003Coutput>`\n\n2. **Image Rotation**:\n   - Check EXIF orientation data\n   - Automatically rotate the image based on EXIF data\n   - If EXIF orientation is 6, rotate 90 degrees counterclockwise\n   - Apply additional rotation as needed (test 180 degrees if document appears upside down)\n\n3. **OCR Text Extraction**:\n   - Try multiple OCR methods automatically:\n     - macOS Vision framework (preferred for macOS)\n     - EasyOCR (cross-platform, no tesseract required)\n     - Tesseract OCR (if available)\n   - Extract all text information from the document\n   - Identify document type (deposit certificate, employment certificate, retirement certificate, etc.)\n\n4. **Translation**:\n   - Translate all text content to English professionally\n   - Maintain the original document structure and format\n   - Use professional terminology appropriate for visa applications\n   - Keep proper names in original language with English in parentheses\n   - For Chinese names, use pinyin format (e.g., WU Zhengye)\n   - Preserve all numbers, dates, and amounts accurately\n\n5. **PDF Generation**:\n   - Create a Python script using PIL and reportlab libraries\n   - Page 1: Display the rotated original image, centered and scaled to fit A4 page\n   - Page 2: Display the English translation with proper formatting:\n     - Title centered and bold\n     - Content left-aligned with appropriate spacing\n     - Professional layout suitable for official documents\n   - Add a note at the bottom: \"This is a certified English translation of the original document\"\n   - Execute the script to generate the PDF\n\n6. **Output**: Create a PDF file named `\u003Coriginal_filename>_Translated.pdf` in the same directory\n\n## Supported Documents\n\n- Bank deposit certificates (存款证明)\n- Income certificates (收入证明)\n- Employment certificates (在职证明)\n- Retirement certificates (退休证明)\n- Property certificates (房产证明)\n- Business licenses (营业执照)\n- ID cards and passports\n- Other official documents\n\n## Technical Implementation\n\n### OCR Methods (tried in order)\n\n1. **macOS Vision Framework** (macOS only):\n   ```python\n   import Vision\n   from Foundation import NSURL\n   ```\n\n2. **EasyOCR** (cross-platform):\n   ```bash\n   pip install easyocr\n   ```\n\n3. **Tesseract OCR** (if available):\n   ```bash\n   brew install tesseract tesseract-lang\n   pip install pytesseract\n   ```\n\n### Required Python Libraries\n\n```bash\npip install pillow reportlab\n```\n\nFor macOS Vision framework:\n```bash\npip install pyobjc-framework-Vision pyobjc-framework-Quartz\n```\n\n## Important Guidelines\n\n- DO NOT ask for user confirmation at each step\n- Automatically determine the best rotation angle\n- Try multiple OCR methods if one fails\n- Ensure all numbers, dates, and amounts are accurately translated\n- Use clean, professional formatting\n- Complete the entire process and report the final PDF location\n\n## Example Usage\n\n```bash\n\u002Fvisa-doc-translate RetirementCertificate.PNG\n\u002Fvisa-doc-translate BankStatement.HEIC\n\u002Fvisa-doc-translate EmploymentLetter.jpg\n```\n\n## Output Example\n\nThe skill will:\n1. Extract text using available OCR method\n2. Translate to professional English\n3. Generate `\u003Cfilename>_Translated.pdf` with:\n   - Page 1: Original document image\n   - Page 2: Professional English translation\n\nPerfect for visa applications to Australia, USA, Canada, UK, and other countries requiring translated documents.\n",{"name":5,"description":7},"master","c73386b305dec167db7654e0e6feacb462d4f9dc","assets\u002Fskills\u002Fdev\u002Fvisa-doc-translate",1,"https:\u002F\u002Fgithub.com\u002FAntifragileTech\u002Fantifragile-claude-code","https:\u002F\u002Fgithub.com\u002FAntifragileTech","2026-10-02 14:22:14",{"source":8,"skillName":5,"commands":46,"prompt":56,"zipAvailable":57},[47,50,53],{"tool":48,"command":49},"npx","npx skills add AntifragileTech\u002Fantifragile-claude-code --skill visa-doc-translate",{"tool":51,"command":52},"bunx","bunx skills add AntifragileTech\u002Fantifragile-claude-code --skill visa-doc-translate",{"tool":54,"command":55},"pnpm","pnpm dlx skills add AntifragileTech\u002Fantifragile-claude-code --skill visa-doc-translate","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FAntifragileTech\u002Fantifragile-claude-code\u002Fblob\u002Fmaster\u002Fassets\u002Fskills\u002Fdev\u002Fvisa-doc-translate\u002FSKILL.md",true,[59],{"path":60,"resourceType":61,"resourceTypeDesc":62,"sizeBytes":63,"sourceHtmlUrl":64},"README.md","REFERENCE","参考文档",1906,"https:\u002F\u002Fgithub.com\u002FAntifragileTech\u002Fantifragile-claude-code\u002Fblob\u002Fmaster\u002Fassets\u002Fskills\u002Fdev\u002Fvisa-doc-translate\u002FREADME.md",[66,90,105,120,133,146],{"skillNo":67,"name":68,"nameZh":6,"description":69,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":70,"categories":71,"keywords":83,"publishedAt":33},"01M6DT9Q6VYA615SCXR757TZZ7","writing-skills","Use when creating new skills, editing existing skills, or verifying skills work before deployment","https:\u002F\u002Fgithub.com\u002FAntifragileTech\u002Fantifragile-claude-code\u002Fblob\u002Fmaster\u002Fassets\u002Fskills\u002Fthinking\u002Fwriting-skills\u002FSKILL.md",[72,75,78],{"categoryNo":73,"categoryName":74,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000008","测试与质量",{"categoryNo":76,"categoryName":77,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000018","写作与文案",{"categoryNo":79,"categoryName":80,"taxonomyType":81,"taxonomyTypeDesc":82},"01JBSEEDCAT000000000000036","内容创作者","PROFESSION","适用职业",[84,85,86,87,88,89],"writing skills","writing","use","editing","work","deployment",{"skillNo":91,"name":92,"nameZh":6,"description":93,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":94,"categories":95,"keywords":98,"publishedAt":33},"01M6DT9GFHDNY90P41WGAE1TV0","writing-plans","Use when you have a spec or requirements for a multi-step task, before touching code","https:\u002F\u002Fgithub.com\u002FAntifragileTech\u002Fantifragile-claude-code\u002Fblob\u002Fmaster\u002Fassets\u002Fskills\u002Fthinking\u002Fwriting-plans\u002FSKILL.md",[96,97],{"categoryNo":76,"categoryName":77,"taxonomyType":20,"taxonomyTypeDesc":21},{"categoryNo":79,"categoryName":80,"taxonomyType":81,"taxonomyTypeDesc":82},[99,100,85,101,102,86,103,104],"plans","writing plans","requirements","task","code","spec",{"skillNo":106,"name":107,"nameZh":6,"description":108,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":109,"categories":110,"keywords":113,"publishedAt":33},"01M6DT9C6PFGD86WS3HY7YE3XG","docs:write-concisely","Apply writing rules to any documentation that humans will read. Makes your writing clearer, stronger, and more professional.","https:\u002F\u002Fgithub.com\u002FAntifragileTech\u002Fantifragile-claude-code\u002Fblob\u002Fmaster\u002Fassets\u002Fskills\u002Fthinking\u002Fwrite-concisely\u002FSKILL.md",[111,112],{"categoryNo":76,"categoryName":77,"taxonomyType":20,"taxonomyTypeDesc":21},{"categoryNo":79,"categoryName":80,"taxonomyType":81,"taxonomyTypeDesc":82},[114,115,116,117,118,119,85],"docs:write concisely","write","docs","read","Rules","documentation",{"skillNo":121,"name":122,"nameZh":6,"description":123,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":124,"categories":125,"keywords":126,"publishedAt":33},"01M6DT98AWQ27P0N1CG97WAG66","kaizen:why","Iterative Five Whys root cause analysis drilling from symptoms to fundamentals","https:\u002F\u002Fgithub.com\u002FAntifragileTech\u002Fantifragile-claude-code\u002Fblob\u002Fmaster\u002Fassets\u002Fskills\u002Fthinking\u002Fwhy\u002FSKILL.md",[],[122,127,128,129,130,131,132],"why","kaizen","issue","five whys","analysis","root cause analysis",{"skillNo":134,"name":135,"nameZh":6,"description":136,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":137,"categories":138,"keywords":139,"publishedAt":33},"01M6DT93EH25NAX19R3WGE1P53","verification-loop","A comprehensive verification system for Claude Code sessions.","https:\u002F\u002Fgithub.com\u002FAntifragileTech\u002Fantifragile-claude-code\u002Fblob\u002Fmaster\u002Fassets\u002Fskills\u002Fthinking\u002Fverification-loop\u002FSKILL.md",[],[140,141,142,143,103,144,145],"verification loop","verification","loop","sessions","claude code sessions","system",{"skillNo":147,"name":148,"nameZh":6,"description":149,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":150,"categories":151,"keywords":152,"publishedAt":33},"01M6DT90GW7Z7VCN98P9DVYSNC","verification-before-completion","Use when about to claim work is complete, fixed, or passing, before committing or creating PRs - requires running verification commands and confirming output before making any success claims; evidence before assertions always","https:\u002F\u002Fgithub.com\u002FAntifragileTech\u002Fantifragile-claude-code\u002Fblob\u002Fmaster\u002Fassets\u002Fskills\u002Fthinking\u002Fverification-before-completion\u002FSKILL.md",[],[153,141,154,88,86,155,156,157],"verification before completion","commands","evidence","claim","complete"]