[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6F7ACMCBEA6CXV79W2Q0CDP":3,"skill-same:01M6F7ACMCBEA6CXV79W2Q0CDP":83},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":28,"publishedAt":49,"linkOnly":50,"markdownContent":51,"markdownBody":52,"frontMatter":53,"refName":60,"commitSha":61,"skillDirectory":62,"forksCount":63,"repositoryHtmlUrl":64,"repositoryHomepageUrl":65,"ownerHtmlUrl":66,"ownerBlogUrl":6,"ownerDescription":67,"updatedAt":68,"install":69,"resources":82},"01M6F7ACMCBEA6CXV79W2Q0CDP","apple-notes-data-handling",null,"Handle Apple Notes data formats: HTML body, attachments, and rich content.\nTrigger: \"apple notes data handling\".","ComeOnOliver\u002Fskillshub","ComeOnOliver","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F43215937?v=4","01M6E5JNFECJAAVFE0W7SMWWD2","Haoran Shu","01M6E5JNNDQS7AJZDYFQ8TPZCK",67,"MIT","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fjeremylongshore\u002Fclaude-code-plugins-plus-skills\u002Fapple-notes-data-handling\u002FSKILL.md",[18,23],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",{"categoryNo":24,"categoryName":25,"taxonomyType":26,"taxonomyTypeDesc":27},"01JBSEEDCAT000000000000033","数据分析师","PROFESSION","适用职业",[29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48],"apple notes data handling","notes","data","apple","apple notes","read","apple-notes","osascript","trigger","io","claude-code","edit","write","grep","Bash","saas","attachments","content","code","automation","2026-11-10 10:12:30",false,"---\nname: apple-notes-data-handling\ndescription: |\n  Handle Apple Notes data formats: HTML body, attachments, and rich content.\n  Trigger: \"apple notes data handling\".\nallowed-tools: Read, Write, Edit, Bash(osascript:*), Grep\nversion: 1.0.0\nlicense: MIT\nauthor: Jeremy Longshore \u003Cjeremy@intentsolutions.io>\ntags: [saas, macos, apple-notes, automation]\ncompatible-with: claude-code\n---\n\n# Apple Notes Data Handling\n\n## Overview\nApple Notes stores content as HTML internally. Understanding the data format is essential for import\u002Fexport operations.\n\n## Note Body HTML Format\n```html\n\u003C!-- Apple Notes uses a subset of HTML -->\n\u003Cdiv>\u003Ch1>Title\u003C\u002Fh1>\u003C\u002Fdiv>\n\u003Cdiv>\u003Cbr>\u003C\u002Fdiv>\n\u003Cdiv>Paragraph text here.\u003C\u002Fdiv>\n\u003Cdiv>\u003Cbr>\u003C\u002Fdiv>\n\u003Cdiv>\u003Cb>Bold text\u003C\u002Fb> and \u003Ci>italic text\u003C\u002Fi>\u003C\u002Fdiv>\n\u003Cdiv>\u003Cbr>\u003C\u002Fdiv>\n\u003Cdiv>\u003Cul>\u003Cli>List item 1\u003C\u002Fli>\u003Cli>List item 2\u003C\u002Fli>\u003C\u002Ful>\u003C\u002Fdiv>\n\n\u003C!-- Checklists use a custom attribute -->\n\u003Cdiv>\u003Cul class=\"com-apple-note-checklist\">\n  \u003Cli class=\"done\">Completed item\u003C\u002Fli>\n  \u003Cli>Incomplete item\u003C\u002Fli>\n\u003C\u002Ful>\u003C\u002Fdiv>\n```\n\n## HTML to Markdown Converter\n```typescript\n\u002F\u002F src\u002Fdata\u002Fhtml-to-markdown.ts\nfunction notesHtmlToMarkdown(html: string): string {\n  return html\n    .replace(\u002F\u003Ch1>(.*?)\u003C\\\u002Fh1>\u002Fg, \"# $1\")\n    .replace(\u002F\u003Ch2>(.*?)\u003C\\\u002Fh2>\u002Fg, \"## $1\")\n    .replace(\u002F\u003Ch3>(.*?)\u003C\\\u002Fh3>\u002Fg, \"### $1\")\n    .replace(\u002F\u003Cb>(.*?)\u003C\\\u002Fb>\u002Fg, \"**$1**\")\n    .replace(\u002F\u003Cstrong>(.*?)\u003C\\\u002Fstrong>\u002Fg, \"**$1**\")\n    .replace(\u002F\u003Ci>(.*?)\u003C\\\u002Fi>\u002Fg, \"*$1*\")\n    .replace(\u002F\u003Cem>(.*?)\u003C\\\u002Fem>\u002Fg, \"*$1*\")\n    .replace(\u002F\u003Cli class=\"done\">(.*?)\u003C\\\u002Fli>\u002Fg, \"- [x] $1\")\n    .replace(\u002F\u003Cli>(.*?)\u003C\\\u002Fli>\u002Fg, \"- $1\")\n    .replace(\u002F\u003Cbr\\s*\\\u002F?>\u002Fg, \"\\n\")\n    .replace(\u002F\u003Cdiv>\u002Fg, \"\").replace(\u002F\u003C\\\u002Fdiv>\u002Fg, \"\\n\")\n    .replace(\u002F\u003C[^>]*>\u002Fg, \"\")\n    .replace(\u002F\\n{3,}\u002Fg, \"\\n\\n\")\n    .trim();\n}\n\nfunction markdownToNotesHtml(md: string): string {\n  return md\n    .replace(\u002F^# (.+)$\u002Fgm, \"\u003Ch1>$1\u003C\u002Fh1>\")\n    .replace(\u002F^## (.+)$\u002Fgm, \"\u003Ch2>$1\u003C\u002Fh2>\")\n    .replace(\u002F\\*\\*(.+?)\\*\\*\u002Fg, \"\u003Cb>$1\u003C\u002Fb>\")\n    .replace(\u002F\\*(.+?)\\*\u002Fg, \"\u003Ci>$1\u003C\u002Fi>\")\n    .replace(\u002F^- \\[x\\] (.+)$\u002Fgm, \"\u003Cli class=\\\"done\\\">$1\u003C\u002Fli>\")\n    .replace(\u002F^- (.+)$\u002Fgm, \"\u003Cli>$1\u003C\u002Fli>\")\n    .replace(\u002F\\n\u002Fg, \"\u003Cbr>\");\n}\n```\n\n## Attachment Handling\n```bash\n# List notes with attachments\nosascript -l JavaScript -e \"\n  const Notes = Application(\\\"Notes\\\");\n  Notes.defaultAccount.notes()\n    .filter(n => n.attachments().length > 0)\n    .map(n => \\`\\${n.name()}: \\${n.attachments().length} attachments\\`)\n    .join(\\\"\\\\n\\\");\n\"\n```\n\n## Resources\n\n- [Mac Automation Scripting Guide](https:\u002F\u002Fdeveloper.apple.com\u002Flibrary\u002Farchive\u002Fdocumentation\u002FLanguagesUtilities\u002FConceptual\u002FMacAutomationScriptingGuide\u002F)\n- [JXA Examples](https:\u002F\u002Fjxa-examples.akjems.com\u002F)\n\n","# Apple Notes Data Handling\n\n## Overview\nApple Notes stores content as HTML internally. Understanding the data format is essential for import\u002Fexport operations.\n\n## Note Body HTML Format\n```html\n\u003C!-- Apple Notes uses a subset of HTML -->\n\u003Cdiv>\u003Ch1>Title\u003C\u002Fh1>\u003C\u002Fdiv>\n\u003Cdiv>\u003Cbr>\u003C\u002Fdiv>\n\u003Cdiv>Paragraph text here.\u003C\u002Fdiv>\n\u003Cdiv>\u003Cbr>\u003C\u002Fdiv>\n\u003Cdiv>\u003Cb>Bold text\u003C\u002Fb> and \u003Ci>italic text\u003C\u002Fi>\u003C\u002Fdiv>\n\u003Cdiv>\u003Cbr>\u003C\u002Fdiv>\n\u003Cdiv>\u003Cul>\u003Cli>List item 1\u003C\u002Fli>\u003Cli>List item 2\u003C\u002Fli>\u003C\u002Ful>\u003C\u002Fdiv>\n\n\u003C!-- Checklists use a custom attribute -->\n\u003Cdiv>\u003Cul class=\"com-apple-note-checklist\">\n  \u003Cli class=\"done\">Completed item\u003C\u002Fli>\n  \u003Cli>Incomplete item\u003C\u002Fli>\n\u003C\u002Ful>\u003C\u002Fdiv>\n```\n\n## HTML to Markdown Converter\n```typescript\n\u002F\u002F src\u002Fdata\u002Fhtml-to-markdown.ts\nfunction notesHtmlToMarkdown(html: string): string {\n  return html\n    .replace(\u002F\u003Ch1>(.*?)\u003C\\\u002Fh1>\u002Fg, \"# $1\")\n    .replace(\u002F\u003Ch2>(.*?)\u003C\\\u002Fh2>\u002Fg, \"## $1\")\n    .replace(\u002F\u003Ch3>(.*?)\u003C\\\u002Fh3>\u002Fg, \"### $1\")\n    .replace(\u002F\u003Cb>(.*?)\u003C\\\u002Fb>\u002Fg, \"**$1**\")\n    .replace(\u002F\u003Cstrong>(.*?)\u003C\\\u002Fstrong>\u002Fg, \"**$1**\")\n    .replace(\u002F\u003Ci>(.*?)\u003C\\\u002Fi>\u002Fg, \"*$1*\")\n    .replace(\u002F\u003Cem>(.*?)\u003C\\\u002Fem>\u002Fg, \"*$1*\")\n    .replace(\u002F\u003Cli class=\"done\">(.*?)\u003C\\\u002Fli>\u002Fg, \"- [x] $1\")\n    .replace(\u002F\u003Cli>(.*?)\u003C\\\u002Fli>\u002Fg, \"- $1\")\n    .replace(\u002F\u003Cbr\\s*\\\u002F?>\u002Fg, \"\\n\")\n    .replace(\u002F\u003Cdiv>\u002Fg, \"\").replace(\u002F\u003C\\\u002Fdiv>\u002Fg, \"\\n\")\n    .replace(\u002F\u003C[^>]*>\u002Fg, \"\")\n    .replace(\u002F\\n{3,}\u002Fg, \"\\n\\n\")\n    .trim();\n}\n\nfunction markdownToNotesHtml(md: string): string {\n  return md\n    .replace(\u002F^# (.+)$\u002Fgm, \"\u003Ch1>$1\u003C\u002Fh1>\")\n    .replace(\u002F^## (.+)$\u002Fgm, \"\u003Ch2>$1\u003C\u002Fh2>\")\n    .replace(\u002F\\*\\*(.+?)\\*\\*\u002Fg, \"\u003Cb>$1\u003C\u002Fb>\")\n    .replace(\u002F\\*(.+?)\\*\u002Fg, \"\u003Ci>$1\u003C\u002Fi>\")\n    .replace(\u002F^- \\[x\\] (.+)$\u002Fgm, \"\u003Cli class=\\\"done\\\">$1\u003C\u002Fli>\")\n    .replace(\u002F^- (.+)$\u002Fgm, \"\u003Cli>$1\u003C\u002Fli>\")\n    .replace(\u002F\\n\u002Fg, \"\u003Cbr>\");\n}\n```\n\n## Attachment Handling\n```bash\n# List notes with attachments\nosascript -l JavaScript -e \"\n  const Notes = Application(\\\"Notes\\\");\n  Notes.defaultAccount.notes()\n    .filter(n => n.attachments().length > 0)\n    .map(n => \\`\\${n.name()}: \\${n.attachments().length} attachments\\`)\n    .join(\\\"\\\\n\\\");\n\"\n```\n\n## Resources\n\n- [Mac Automation Scripting Guide](https:\u002F\u002Fdeveloper.apple.com\u002Flibrary\u002Farchive\u002Fdocumentation\u002FLanguagesUtilities\u002FConceptual\u002FMacAutomationScriptingGuide\u002F)\n- [JXA Examples](https:\u002F\u002Fjxa-examples.akjems.com\u002F)\n\n",{"name":5,"tags":54,"author":56,"license":15,"version":57,"description":58,"allowed-tools":59,"compatible-with":39},[44,55,35,48],"macos","Jeremy Longshore \u003Cjeremy@intentsolutions.io>","1.0.0","Handle Apple Notes data formats: HTML body, attachments, and rich content.\nTrigger: \"apple notes data handling\".\n","Read, Write, Edit, Bash(osascript:*), Grep","main","def8531e65114c0fca8fb8551c1871ee0eed705c","skills\u002Fjeremylongshore\u002Fclaude-code-plugins-plus-skills\u002Fapple-notes-data-handling",24,"https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub","https:\u002F\u002Fskillshub.wtf","https:\u002F\u002Fgithub.com\u002FComeOnOliver","AI & Blockchain Engineer\r\n","2026-06-24 22:07:19",{"source":8,"skillName":5,"commands":70,"prompt":80,"zipAvailable":81},[71,74,77],{"tool":72,"command":73},"npx","npx skills add ComeOnOliver\u002Fskillshub --skill apple-notes-data-handling",{"tool":75,"command":76},"bunx","bunx skills add ComeOnOliver\u002Fskillshub --skill apple-notes-data-handling",{"tool":78,"command":79},"pnpm","pnpm dlx skills add ComeOnOliver\u002Fskillshub --skill apple-notes-data-handling","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fjeremylongshore\u002Fclaude-code-plugins-plus-skills\u002Fapple-notes-data-handling\u002FSKILL.md",true,[],[84,94,104,113,119,126],{"skillNo":85,"name":86,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":87,"categories":88,"keywords":90,"publishedAt":49},"01M6FKJN13GMG4KY57J3QD8GY5","model-hierarchy-skill","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzscole\u002Fmodel-hierarchy-skill\u002Fmodel-hierarchy-skill\u002FSKILL.md",[89],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[91,92,93],"model","model hierarchy","model hierarchy skill",{"skillNo":95,"name":96,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":97,"categories":98,"keywords":100,"publishedAt":49},"01M6FKJJJ6GCAMR4PPPRD12M5X","zoom-mcp","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fzoom-mcp\u002FSKILL.md",[99],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[101,102,103],"MCP","zoom","zoom mcp",{"skillNo":105,"name":106,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":107,"categories":108,"keywords":109,"publishedAt":49},"01M6FKJE3KYT3KPEZMEEHYKA6K","zoom-apps-sdk","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fzoom-apps-sdk\u002FSKILL.md",[],[110,111,112,102],"sdk","zoom apps sdk","apps",{"skillNo":114,"name":115,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":116,"categories":117,"keywords":118,"publishedAt":49},"01M6FKJ9EDH9Q5VWDF8HAJRSP0","windows","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fwindows\u002FSKILL.md",[],[115],{"skillNo":120,"name":121,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":122,"categories":123,"keywords":125,"publishedAt":49},"01M6FKJ666BEEFC3AE9GJ72Q93","whiteboard","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fwhiteboard\u002FSKILL.md",[124],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[121],{"skillNo":127,"name":128,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":129,"categories":130,"keywords":131,"publishedAt":49},"01M6FKJ21WFCDGTJQ2Q91T9DVW","websockets","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fwebsockets\u002FSKILL.md",[],[128]]