[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6BZS5Z0QE03WRS1TM3XJEY9":3,"skill-same:01M6BZS5Z0QE03WRS1TM3XJEY9":86},{"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":18,"publishedAt":21,"linkOnly":22,"markdownContent":23,"markdownBody":24,"frontMatter":25,"refName":26,"commitSha":27,"skillDirectory":28,"forksCount":29,"repositoryHtmlUrl":30,"repositoryHomepageUrl":31,"ownerHtmlUrl":32,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":33,"install":34,"resources":47},"01M6BZS5Z0QE03WRS1TM3XJEY9","todo.reorg_in_progress",null,"Reorganize ai_task_queue.md so in-progress tasks, not-started tasks, and mislabeled topic headers sit under the right H1 stage","causify-ai\u002Fhelpers","causify-ai","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F121828442?v=4","01M6BZFTHW2MQR7FWK8CDW0DRA","Causify.AI","01M6BZFTPJ193AB5N089Z82HQG",155,"Apache-2.0","https:\u002F\u002Fgithub.com\u002Fcausify-ai\u002Fhelpers\u002Fblob\u002Fmaster\u002F.claude\u002Fskills\u002Ftodo.reorg_in_progress\u002FSKILL.md",[],[19,20],"todo reorg in progress","tasks","2026-11-10 10:12:30",false,"---\ndescription: Reorganize ai_task_queue.md so in-progress tasks, not-started tasks, and mislabeled topic headers sit under the right H1 stage\n---\n\n# Goal\n\n- Move every `### [.] \u003CTitle>` task (in progress) into the `# IN PROGRESS` section,\n  under its topic's `(IN PROGRESS)` H2\n- Move every `### [ ] \u003CTitle>` task (not started) that sits under `# IN PROGRESS` into\n  `# BACKLOG`, under its topic's `(BACKLOG)` H2\n- Move any H2 topic header whose `(\u003CStage>)` suffix doesn't match its enclosing H1\n  stage to the H1 stage the suffix names, together with all its tasks\n- Leave `### [x] ...` tasks and nested checklist items (`- [ ]`, `- [x]`, `- [.]`)\n  untouched\n\n# References\n\n- `.claude\u002Fskills\u002Ftodo.rules.md`: defines the H1 stage \u002F H2 topic \u002F H3 task\n  organization and the `## \u003CTopic> (\u003CStage>)` header convention\n\n# Workflow\n\n## Load the Conventions\n\n- Read `.claude\u002Fskills\u002Ftodo.rules.md`\n- Identify the H1 stage headers present in `ai_task_queue.md` (e.g. `# IN PROGRESS`,\n  `# BACKLOG - HIGH PRIORITY`, `# BACKLOG`, `# ICEBOX`, `# ALL TOPICS`)\n- Never touch the `# ALL TOPICS` section in this skill\n\n## Phase 1: Refile Mislabeled H2 Topics\n\n- Do this phase first: fixing a misfiled topic before the task-marker rules run keeps\n  the topic's tasks together instead of letting Phase 2\u002F3 split them across stages\n- For every H2 header `## \u003CTopic> (\u003CStage>)` found outside `# ALL TOPICS`:\n  - Compare `\u003CStage>` to the name of its enclosing H1\n  - Mismatch -> cut the entire H2 block (the header line through everything up to the\n    next H2 or H1) and move it under the H1 that matches `\u003CStage>`\n    - If an H2 with the same bare `\u003CTopic>` already exists under that H1, append the\n      moved block's task content there and drop the duplicate header line, instead of\n      creating a second header for the same topic\n    - Otherwise, insert the moved H2 block at the end of that H1's section (right\n      before the next H1 header)\n    - If `\u003CStage>` names an H1 that does not exist anywhere in the file, do not create\n      it silently: list the header and ask the user whether to create that stage or\n      use a different one\n  - Keep the moved block's content (task titles, markers, bodies) byte-for-byte\n    unchanged aside from its position\n  - Example: `## Noesis (BACKLOG - HIGH PRIORITY)` sitting under `# IN PROGRESS` is cut\n    and moved, with all its `### ...` tasks, under `# BACKLOG - HIGH PRIORITY`\n\n## Phase 2: Consolidate In-Progress Tasks\n\n- For every `### [.] \u003CTitle>` task anywhere in the file that is not already under\n  `# IN PROGRESS` (including one exposed by a Phase 1 move):\n  - Find its enclosing H2's bare topic name\n  - Move the task block (the header line through the next H2, H3, or H1) under\n    `## \u003CTopic> (IN PROGRESS)` in the `# IN PROGRESS` section\n    - If that H2 doesn't exist yet under `# IN PROGRESS`, create it at the end of the\n      section\n  - If the task's original H2 is left with no task content, remove the now-empty H2\n    header\n\n## Phase 3: Demote Not-Started Tasks Out of In Progress\n\n- For every `### [ ] \u003CTitle>` task that sits under `# IN PROGRESS` after Phase 1 and 2\n  have run:\n  - Find its enclosing H2's bare topic name\n  - Move the task block under `## \u003CTopic> (BACKLOG)` in the `# BACKLOG` section\n    - If that H2 doesn't exist yet under `# BACKLOG`, create it at the end of the\n      section\n  - If the task's original H2 under `# IN PROGRESS` is left with no task content,\n    remove the now-empty H2 header\n\n## Leave Untouched\n\n- `### [x] ...` tasks (handled by `todo.move_done`, not this skill)\n- Nested checklist items (`- [ ]`, `- [x]`, `- [.]`) inside a task body: these are\n  subtask progress, not task headers\n- Any H3 header with no `[ ]`, `[x]`, or `[.]` marker: flag it to the user instead of\n  guessing a marker for it\n- The `# ALL TOPICS` section\n\n## Ask User\n\n- Any H2 whose `(\u003CStage>)` suffix names a stage with no matching H1 in the file\n- Any H3 task header carrying a marker other than `[ ]`, `[x]`, or `[.]`\n- Any case where a task's bare topic name doesn't clearly match an existing H2 and it's\n  unclear whether to create a new topic H2 or reuse a close match\n- Do not guess: list the ambiguous item and ask before moving it\n\n## Report\n\n- List every H2 topic block moved as `\u003CTopic>: \u003Cold H1> -> \u003Cnew H1>`\n- List every `[.]` task moved into IN PROGRESS as\n  `\u003CTitle> (\u003Cold H2>) -> IN PROGRESS \u002F \u003CTopic>`\n- List every `[ ]` task demoted out of IN PROGRESS as `\u003CTitle> -> BACKLOG \u002F \u003CTopic>`\n- List every empty H2 header removed as a result of these moves\n\n# Verification\n\n- [ ] No `### [.] ...` task remains outside the `# IN PROGRESS` section\n- [ ] No `### [ ] ...` task remains under the `# IN PROGRESS` section\n- [ ] No H2 header outside `# ALL TOPICS` has a `(\u003CStage>)` suffix that mismatches its\n      enclosing H1\n- [ ] No H2 header is left empty (zero task content) after the moves\n- [ ] `### [x] ...` tasks and nested checklist items are unchanged and in their\n      original location\n- [ ] Task content (title, body) is unchanged aside from its position\n- [ ] `# ALL TOPICS` section is unchanged\n","# Goal\n\n- Move every `### [.] \u003CTitle>` task (in progress) into the `# IN PROGRESS` section,\n  under its topic's `(IN PROGRESS)` H2\n- Move every `### [ ] \u003CTitle>` task (not started) that sits under `# IN PROGRESS` into\n  `# BACKLOG`, under its topic's `(BACKLOG)` H2\n- Move any H2 topic header whose `(\u003CStage>)` suffix doesn't match its enclosing H1\n  stage to the H1 stage the suffix names, together with all its tasks\n- Leave `### [x] ...` tasks and nested checklist items (`- [ ]`, `- [x]`, `- [.]`)\n  untouched\n\n# References\n\n- `.claude\u002Fskills\u002Ftodo.rules.md`: defines the H1 stage \u002F H2 topic \u002F H3 task\n  organization and the `## \u003CTopic> (\u003CStage>)` header convention\n\n# Workflow\n\n## Load the Conventions\n\n- Read `.claude\u002Fskills\u002Ftodo.rules.md`\n- Identify the H1 stage headers present in `ai_task_queue.md` (e.g. `# IN PROGRESS`,\n  `# BACKLOG - HIGH PRIORITY`, `# BACKLOG`, `# ICEBOX`, `# ALL TOPICS`)\n- Never touch the `# ALL TOPICS` section in this skill\n\n## Phase 1: Refile Mislabeled H2 Topics\n\n- Do this phase first: fixing a misfiled topic before the task-marker rules run keeps\n  the topic's tasks together instead of letting Phase 2\u002F3 split them across stages\n- For every H2 header `## \u003CTopic> (\u003CStage>)` found outside `# ALL TOPICS`:\n  - Compare `\u003CStage>` to the name of its enclosing H1\n  - Mismatch -> cut the entire H2 block (the header line through everything up to the\n    next H2 or H1) and move it under the H1 that matches `\u003CStage>`\n    - If an H2 with the same bare `\u003CTopic>` already exists under that H1, append the\n      moved block's task content there and drop the duplicate header line, instead of\n      creating a second header for the same topic\n    - Otherwise, insert the moved H2 block at the end of that H1's section (right\n      before the next H1 header)\n    - If `\u003CStage>` names an H1 that does not exist anywhere in the file, do not create\n      it silently: list the header and ask the user whether to create that stage or\n      use a different one\n  - Keep the moved block's content (task titles, markers, bodies) byte-for-byte\n    unchanged aside from its position\n  - Example: `## Noesis (BACKLOG - HIGH PRIORITY)` sitting under `# IN PROGRESS` is cut\n    and moved, with all its `### ...` tasks, under `# BACKLOG - HIGH PRIORITY`\n\n## Phase 2: Consolidate In-Progress Tasks\n\n- For every `### [.] \u003CTitle>` task anywhere in the file that is not already under\n  `# IN PROGRESS` (including one exposed by a Phase 1 move):\n  - Find its enclosing H2's bare topic name\n  - Move the task block (the header line through the next H2, H3, or H1) under\n    `## \u003CTopic> (IN PROGRESS)` in the `# IN PROGRESS` section\n    - If that H2 doesn't exist yet under `# IN PROGRESS`, create it at the end of the\n      section\n  - If the task's original H2 is left with no task content, remove the now-empty H2\n    header\n\n## Phase 3: Demote Not-Started Tasks Out of In Progress\n\n- For every `### [ ] \u003CTitle>` task that sits under `# IN PROGRESS` after Phase 1 and 2\n  have run:\n  - Find its enclosing H2's bare topic name\n  - Move the task block under `## \u003CTopic> (BACKLOG)` in the `# BACKLOG` section\n    - If that H2 doesn't exist yet under `# BACKLOG`, create it at the end of the\n      section\n  - If the task's original H2 under `# IN PROGRESS` is left with no task content,\n    remove the now-empty H2 header\n\n## Leave Untouched\n\n- `### [x] ...` tasks (handled by `todo.move_done`, not this skill)\n- Nested checklist items (`- [ ]`, `- [x]`, `- [.]`) inside a task body: these are\n  subtask progress, not task headers\n- Any H3 header with no `[ ]`, `[x]`, or `[.]` marker: flag it to the user instead of\n  guessing a marker for it\n- The `# ALL TOPICS` section\n\n## Ask User\n\n- Any H2 whose `(\u003CStage>)` suffix names a stage with no matching H1 in the file\n- Any H3 task header carrying a marker other than `[ ]`, `[x]`, or `[.]`\n- Any case where a task's bare topic name doesn't clearly match an existing H2 and it's\n  unclear whether to create a new topic H2 or reuse a close match\n- Do not guess: list the ambiguous item and ask before moving it\n\n## Report\n\n- List every H2 topic block moved as `\u003CTopic>: \u003Cold H1> -> \u003Cnew H1>`\n- List every `[.]` task moved into IN PROGRESS as\n  `\u003CTitle> (\u003Cold H2>) -> IN PROGRESS \u002F \u003CTopic>`\n- List every `[ ]` task demoted out of IN PROGRESS as `\u003CTitle> -> BACKLOG \u002F \u003CTopic>`\n- List every empty H2 header removed as a result of these moves\n\n# Verification\n\n- [ ] No `### [.] ...` task remains outside the `# IN PROGRESS` section\n- [ ] No `### [ ] ...` task remains under the `# IN PROGRESS` section\n- [ ] No H2 header outside `# ALL TOPICS` has a `(\u003CStage>)` suffix that mismatches its\n      enclosing H1\n- [ ] No H2 header is left empty (zero task content) after the moves\n- [ ] `### [x] ...` tasks and nested checklist items are unchanged and in their\n      original location\n- [ ] Task content (title, body) is unchanged aside from its position\n- [ ] `# ALL TOPICS` section is unchanged\n",{"description":7},"master","39143a859859181eff7e774457997b5278fd9e99",".claude\u002Fskills\u002Ftodo.reorg_in_progress",170,"https:\u002F\u002Fgithub.com\u002Fcausify-ai\u002Fhelpers","https:\u002F\u002Fcausify.ai","https:\u002F\u002Fgithub.com\u002Fcausify-ai","2026-11-02 02:09:15",{"source":8,"skillName":5,"commands":35,"prompt":45,"zipAvailable":46},[36,39,42],{"tool":37,"command":38},"npx","npx skills add causify-ai\u002Fhelpers --skill todo.reorg_in_progress",{"tool":40,"command":41},"bunx","bunx skills add causify-ai\u002Fhelpers --skill todo.reorg_in_progress",{"tool":43,"command":44},"pnpm","pnpm dlx skills add causify-ai\u002Fhelpers --skill todo.reorg_in_progress","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fcausify-ai\u002Fhelpers\u002Fblob\u002Fmaster\u002F.claude\u002Fskills\u002Ftodo.reorg_in_progress\u002FSKILL.md",true,[48,54,58,62,66,70,74,78,82],{"path":49,"resourceType":50,"resourceTypeDesc":51,"sizeBytes":52,"sourceHtmlUrl":53},"evals\u002Fevals.json","REFERENCE","参考文档",7867,"https:\u002F\u002Fgithub.com\u002FBigdrops\u002Fbigdrops-app\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fsocial\u002Fevals\u002Fevals.json",{"path":55,"resourceType":50,"resourceTypeDesc":51,"sizeBytes":56,"sourceHtmlUrl":57},"references\u002Fcarousel-frameworks.md",11174,"https:\u002F\u002Fgithub.com\u002FBigdrops\u002Fbigdrops-app\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fsocial\u002Freferences\u002Fcarousel-frameworks.md",{"path":59,"resourceType":50,"resourceTypeDesc":51,"sizeBytes":60,"sourceHtmlUrl":61},"references\u002Flistening-sources-template.md",3479,"https:\u002F\u002Fgithub.com\u002FBigdrops\u002Fbigdrops-app\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fsocial\u002Freferences\u002Flistening-sources-template.md",{"path":63,"resourceType":50,"resourceTypeDesc":51,"sizeBytes":64,"sourceHtmlUrl":65},"references\u002Flistening.md",12064,"https:\u002F\u002Fgithub.com\u002FBigdrops\u002Fbigdrops-app\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fsocial\u002Freferences\u002Flistening.md",{"path":67,"resourceType":50,"resourceTypeDesc":51,"sizeBytes":68,"sourceHtmlUrl":69},"references\u002Fplatform-limits.md",2830,"https:\u002F\u002Fgithub.com\u002FBigdrops\u002Fbigdrops-app\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fsocial\u002Freferences\u002Fplatform-limits.md",{"path":71,"resourceType":50,"resourceTypeDesc":51,"sizeBytes":72,"sourceHtmlUrl":73},"references\u002Fplatforms.md",4420,"https:\u002F\u002Fgithub.com\u002FBigdrops\u002Fbigdrops-app\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fsocial\u002Freferences\u002Fplatforms.md",{"path":75,"resourceType":50,"resourceTypeDesc":51,"sizeBytes":76,"sourceHtmlUrl":77},"references\u002Fpost-templates.md",3951,"https:\u002F\u002Fgithub.com\u002FBigdrops\u002Fbigdrops-app\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fsocial\u002Freferences\u002Fpost-templates.md",{"path":79,"resourceType":50,"resourceTypeDesc":51,"sizeBytes":80,"sourceHtmlUrl":81},"references\u002Freverse-engineering.md",5551,"https:\u002F\u002Fgithub.com\u002FBigdrops\u002Fbigdrops-app\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fsocial\u002Freferences\u002Freverse-engineering.md",{"path":83,"resourceType":50,"resourceTypeDesc":51,"sizeBytes":84,"sourceHtmlUrl":85},"references\u002Fshort-form-video.md",6500,"https:\u002F\u002Fgithub.com\u002FBigdrops\u002Fbigdrops-app\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fsocial\u002Freferences\u002Fshort-form-video.md",[87,106,123,134,143,151],{"skillNo":88,"name":89,"nameZh":6,"description":90,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":91,"categories":92,"keywords":98,"publishedAt":21},"01M6C9ZMM0XSXCHHABMJ9XB1JB","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",[93],{"categoryNo":94,"categoryName":95,"taxonomyType":96,"taxonomyTypeDesc":97},"01JBSEEDCAT000000000000011","运维与部署","SCENARIO","使用场景",[99,100,101,102,103,104,105],"tutorial in 60 mins propagate docker changes","tutorial","docker","files","haiku","template","sync",{"skillNo":107,"name":108,"nameZh":6,"description":109,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":110,"categories":111,"keywords":115,"publishedAt":21},"01M6C9ZJK8QJ9FNCY39WVF3GMG","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",[112],{"categoryNo":113,"categoryName":114,"taxonomyType":96,"taxonomyTypeDesc":97},"01JBSEEDCAT000000000000002","文档处理",[116,117,100,118,119,103,120,121,122],"merge","tutorial in 60 mins merge markdown","markdown","jupyter","file","content","jupyter notebook",{"skillNo":124,"name":125,"nameZh":6,"description":126,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":127,"categories":128,"keywords":129,"publishedAt":21},"01M6C9ZFYK13ZCT1E8BEEC4NG4","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",[],[130,100,131,132,133,103],"tutorial in 60 mins format","format","learn","directory",{"skillNo":135,"name":136,"nameZh":6,"description":137,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":138,"categories":139,"keywords":140,"publishedAt":21},"01M6C9ZDKXSBKNKX7M3X4W38G5","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",[],[141,100,142,133,132],"tutorial in 60 mins create","create",{"skillNo":144,"name":145,"nameZh":6,"description":146,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":147,"categories":148,"keywords":149,"publishedAt":21},"01M6BZS4CQZ6KK2KQ26SVB7QCS","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",[],[150],"todo reorg headers",{"skillNo":152,"name":153,"nameZh":6,"description":154,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":155,"categories":156,"keywords":157,"publishedAt":21},"01M6BZS2JG504QE169TXVA17KV","todo.move_to_reorg","Move tasks out of ai_task_queue.md's TO REORG section into the right H1 stage and H2 topic, using an optional Priority tag, after user confirmation","https:\u002F\u002Fgithub.com\u002Fcausify-ai\u002Fhelpers\u002Fblob\u002Fmaster\u002F.claude\u002Fskills\u002Ftodo.move_to_reorg\u002FSKILL.md",[],[158,20],"todo move to reorg"]