[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6F1M4VGA7QCG0BY828WFPD0":3,"skill-same:01M6F1M4VGA7QCG0BY828WFPD0":62},{"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":35,"linkOnly":36,"markdownContent":37,"markdownBody":38,"frontMatter":39,"refName":40,"commitSha":41,"skillDirectory":42,"forksCount":43,"repositoryHtmlUrl":44,"repositoryHomepageUrl":45,"ownerHtmlUrl":46,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":47,"install":48,"resources":61},"01M6F1M4VGA7QCG0BY828WFPD0","blog.check_format",null,"Check the format of a blog file","causify-ai\u002Fhelpers","causify-ai","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F121828442?v=4","01M6BZFTHW2MQR7FWK8CDW0DRA","Causify.AI","01M6F1K6CCKKF8YKTBN4ZV509G",0,"Apache-2.0","https:\u002F\u002Fgithub.com\u002Fcausify-ai\u002Fhelpers\u002Fblob\u002Fmaster\u002F.claude\u002Fskills\u002Fblog.check_format\u002FSKILL.md",[18,23],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000018","写作与文案","SCENARIO","使用场景",{"categoryNo":24,"categoryName":25,"taxonomyType":26,"taxonomyTypeDesc":27},"01JBSEEDCAT000000000000036","内容创作者","PROFESSION","适用职业",[29,30,31,32,33,34],"format","blog","check","blog check format","file","haiku","2026-11-10 10:12:30",false,"---\ndescription: Check the format of a blog file\nmodel: haiku\n---\n\n# Goal\n- Check that all the actual and the draft blogs have the correct format\n\n# Workflow\n\n## Find Files\n- Look for all the markdown files both `SKILL.md` and `\u003CTOPIC>.rules.md`\n  ```bash\n  > find website\u002Fdocs\u002Fblog\u002Fposts -name \"*.md\"\n  ```\n\n## Read Context\n\n- Read context about rules from\n  - `.claude\u002Fskills\u002Fblog.rules.md`\n  - `.claude\u002Fskills\u002Fmarkdown.rules.md`\n  - `.claude\u002Fskills\u002Ftext.rules.md`\n\n## Check Rules\n- For each file apply all the following rules and report violations as described\n  below\n\n### Check Front Matter\n- Make sure to follow the section `# Blog Document Structure` from the file\n  `.claude\u002Fskills\u002Fblog.rules.md`\n\n### Check that Has a TL;DR\n- Make sure to follow the section `# Blog Document Structure` from the file\n  `.claude\u002Fskills\u002Fblog.rules.md`\n\n### Check for Other Violations\n- Use the rules in `.claude\u002Fskills\u002Fblog.rules.md` to look for clear violations\n- Report a violation only when confident about it\n\n## Report Violations\n\n- Report all the violations in a file `cfile` using the format in\n  `.claude\u002Fskills\u002Fcfile.rules.md`\n\n## Ask Users Whether to Fix the Problems\n- Ask for the user which problems should be fixed by printing a list of problem\n  with indices\n\n# Verification\n- [ ] Confirm `cfile` lists concrete file and line references for each\n      violation\n- [ ] Confirm each reported violation maps to a rule in\n      `.claude\u002Fskills\u002Fblog.rules.md`\n","# Goal\n- Check that all the actual and the draft blogs have the correct format\n\n# Workflow\n\n## Find Files\n- Look for all the markdown files both `SKILL.md` and `\u003CTOPIC>.rules.md`\n  ```bash\n  > find website\u002Fdocs\u002Fblog\u002Fposts -name \"*.md\"\n  ```\n\n## Read Context\n\n- Read context about rules from\n  - `.claude\u002Fskills\u002Fblog.rules.md`\n  - `.claude\u002Fskills\u002Fmarkdown.rules.md`\n  - `.claude\u002Fskills\u002Ftext.rules.md`\n\n## Check Rules\n- For each file apply all the following rules and report violations as described\n  below\n\n### Check Front Matter\n- Make sure to follow the section `# Blog Document Structure` from the file\n  `.claude\u002Fskills\u002Fblog.rules.md`\n\n### Check that Has a TL;DR\n- Make sure to follow the section `# Blog Document Structure` from the file\n  `.claude\u002Fskills\u002Fblog.rules.md`\n\n### Check for Other Violations\n- Use the rules in `.claude\u002Fskills\u002Fblog.rules.md` to look for clear violations\n- Report a violation only when confident about it\n\n## Report Violations\n\n- Report all the violations in a file `cfile` using the format in\n  `.claude\u002Fskills\u002Fcfile.rules.md`\n\n## Ask Users Whether to Fix the Problems\n- Ask for the user which problems should be fixed by printing a list of problem\n  with indices\n\n# Verification\n- [ ] Confirm `cfile` lists concrete file and line references for each\n      violation\n- [ ] Confirm each reported violation maps to a rule in\n      `.claude\u002Fskills\u002Fblog.rules.md`\n",{"model":34,"description":7},"master","804ae3e928c04740cec553be0eb28c8d06ff420e",".claude\u002Fskills\u002Fblog.check_format",1,"https:\u002F\u002Fgithub.com\u002Fcausify-ai\u002Fhelpers","https:\u002F\u002Fcausify-ai.github.io\u002Fhelpers\u002F","https:\u002F\u002Fgithub.com\u002Fcausify-ai","2026-11-02 21:54:29",{"source":8,"skillName":5,"commands":49,"prompt":59,"zipAvailable":60},[50,53,56],{"tool":51,"command":52},"npx","npx skills add causify-ai\u002Fhelpers --skill blog.check_format",{"tool":54,"command":55},"bunx","bunx skills add causify-ai\u002Fhelpers --skill blog.check_format",{"tool":57,"command":58},"pnpm","pnpm dlx skills add causify-ai\u002Fhelpers --skill blog.check_format","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fcausify-ai\u002Fhelpers\u002Fblob\u002Fmaster\u002F.claude\u002Fskills\u002Fblog.check_format\u002FSKILL.md",true,[],[63,82,99,110,119,133],{"skillNo":64,"name":65,"nameZh":6,"description":66,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":67,"categories":68,"keywords":72,"publishedAt":35},"01M6F209RASRBEK7GBNG5M00K0","tutorial_in_60_mins.propagate_docker_changes","Sync tutorial and class-project Docker files to match project_template","https:\u002F\u002Fgithub.com\u002Fcausify-ai\u002Fhelpers\u002Fblob\u002Fmaster\u002F.claude\u002Fskills\u002Ftutorial_in_60_mins.propagate_docker_changes\u002FSKILL.md",[69],{"categoryNo":70,"categoryName":71,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000011","运维与部署",[73,74,75,76,77,78,34,79,80,81],"docker","tutorial","tutorial in 60 mins propagate docker changes","propagate","template","sync","files","project","match",{"skillNo":83,"name":84,"nameZh":6,"description":85,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":86,"categories":87,"keywords":91,"publishedAt":35},"01M6F207XZ5YDAJ0KNDRE6EN0R","tutorial_in_60_mins.merge_markdown","Merge the content of a markdown file into a Jupyter notebook","https:\u002F\u002Fgithub.com\u002Fcausify-ai\u002Fhelpers\u002Fblob\u002Fmaster\u002F.claude\u002Fskills\u002Ftutorial_in_60_mins.merge_markdown\u002FSKILL.md",[88],{"categoryNo":89,"categoryName":90,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000002","文档处理",[92,93,74,94,95,96,34,33,97,98],"markdown","merge","tutorial in 60 mins merge markdown","notebook","jupyter","jupyter notebook","content",{"skillNo":100,"name":101,"nameZh":6,"description":102,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":103,"categories":104,"keywords":105,"publishedAt":35},"01M6F2059X95Q1A13HD67E9JRF","tutorial_in_60_mins.format","Format a directory to follow the \"Learn X in 60 Minutes\" tutorial conventions","https:\u002F\u002Fgithub.com\u002Fcausify-ai\u002Fhelpers\u002Fblob\u002Fmaster\u002F.claude\u002Fskills\u002Ftutorial_in_60_mins.format\u002FSKILL.md",[],[106,74,29,107,108,34,109],"tutorial in 60 mins format","directory","learn","conventions",{"skillNo":111,"name":112,"nameZh":6,"description":113,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":114,"categories":115,"keywords":116,"publishedAt":35},"01M6F202MDHMNYD5S1YHG2PKZD","tutorial_in_60_mins.create","Create a tutorial directory for the Learn X in 60 Minutes conventions","https:\u002F\u002Fgithub.com\u002Fcausify-ai\u002Fhelpers\u002Fblob\u002Fmaster\u002F.claude\u002Fskills\u002Ftutorial_in_60_mins.create\u002FSKILL.md",[],[117,74,118,108,107,109],"tutorial in 60 mins create","create",{"skillNo":120,"name":121,"nameZh":6,"description":122,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":123,"categories":124,"keywords":125,"publishedAt":35},"01M6F2004BW13GQ59N3RGSAYVN","todo.reorg_in_progress","Reorganize ai_task_queue.md so in-progress tasks, not-started tasks, and mislabeled topic headers sit under the right H1 stage","https:\u002F\u002Fgithub.com\u002Fcausify-ai\u002Fhelpers\u002Fblob\u002Fmaster\u002F.claude\u002Fskills\u002Ftodo.reorg_in_progress\u002FSKILL.md",[],[126,127,128,129,130,131,132],"progress","todo","todo reorg in progress","tasks","queue","task","stage",{"skillNo":134,"name":135,"nameZh":6,"description":136,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":137,"categories":138,"keywords":139,"publishedAt":35},"01M6F1ZXN0G6HBD08GT8HE5FYA","todo.reorg_headers","Reorganize ai_task_queue.md .md so every H2 topic matches ALL TOPICS and every H3 task sits under the right topic, keeping its H1 stage","https:\u002F\u002Fgithub.com\u002Fcausify-ai\u002Fhelpers\u002Fblob\u002Fmaster\u002F.claude\u002Fskills\u002Ftodo.reorg_headers\u002FSKILL.md",[],[140,127,130,131,132],"todo reorg headers"]