[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M71E8N98JS2TK4EWJ9WMZHH6":3,"skill-same:01M71E8N98JS2TK4EWJ9WMZHH6":74},{"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":46,"linkOnly":47,"markdownContent":48,"markdownBody":49,"frontMatter":50,"refName":51,"commitSha":52,"skillDirectory":53,"forksCount":54,"repositoryHtmlUrl":55,"repositoryHomepageUrl":6,"ownerHtmlUrl":56,"ownerBlogUrl":57,"ownerDescription":58,"updatedAt":59,"install":60,"resources":73},"01M71E8N98JS2TK4EWJ9WMZHH6","chatgpt-report-normalisation",null,"Recover a ChatGPT- or LLM-exported report from markdown, DOCX, and PDF copies into clean repo-quality markdown with real links, stripped artefacts, inline footnotes, and a dated accuracy sweep of unstable claims.","oaknational\u002Foak-python-starter","oaknational","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F63889701?v=4","01M71E8KA6A3R1XEZH7NVDPNYK","Oak National Academy","01M71E8KAY58HENMJWSX4DCBP2",0,"MIT","https:\u002F\u002Fgithub.com\u002Foaknational\u002Foak-python-starter\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fchatgpt-report-normalisation\u002FSKILL.md",[18,23],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000002","文档处理","SCENARIO","使用场景",{"categoryNo":24,"categoryName":25,"taxonomyType":26,"taxonomyTypeDesc":27},"01JBSEEDCAT000000000000034","行政与办公人员","PROFESSION","适用职业",[29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45],"report","chatgpt","chatgpt report normalisation","sweep","passive","clean","accuracy","exported","quality","repo","markdown","PDF","inline","links","claims","docx","with","2026-11-10 10:12:30",false,"---\nname: chatgpt-report-normalisation\nclassification: passive\ndescription: >-\n  Recover a ChatGPT- or LLM-exported report from markdown, DOCX, and PDF copies\n  into clean repo-quality markdown with real links, stripped artefacts, inline\n  footnotes, and a dated accuracy sweep of unstable claims.\n---\n\n# ChatGPT Report Normalisation\n\n## Goal\n\nTurn a report exported from ChatGPT or another LLM into canonical markdown that\nthe repo can keep, review, and trust.\n\n## Use This Skill When\n\n- The user provides paired `.md`, `.docx`, or `.pdf` copies of the same report\n- The markdown contains `cite`, `filecite`, `turn...`, or other internal\n  export markers\n- The DOCX appears to preserve live links that the markdown has lost\n- The document contains time-sensitive claims that need an accuracy sweep\n\n## First Principle\n\nTreat the export as a recovery artefact, not as canonical source material.\n\nRead `.agent\u002Fmemory\u002Factive\u002Fpatterns\u002Fchatgpt-report-normalisation.md` before\nmaking structural decisions or choosing a rebuild strategy.\n\n## Workflow\n\n1. Inventory the available copies.\n   - Prefer the `.docx` for hyperlink recovery.\n   - Prefer the existing markdown if its structure is already better than a\n     fresh conversion.\n   - Use the PDF as a tie-breaker for pagination, formatting, or missing text.\n\n2. Inspect the strong layers with local tools.\n   - `textutil -convert txt -stdout report.docx` for visible text\n   - `unzip -p report.docx word\u002F_rels\u002Fdocument.xml.rels` for hyperlink targets\n   - `pandoc report.docx -t gfm` as a secondary lens for citation placement and\n     footnote hints\n   - `mdls report.pdf` or a text extract if provenance or layout needs checking\n\n3. Choose the canonical editing target.\n   - If the repo already has a readable markdown scaffold, clean and upgrade it\n     in place.\n   - Do not replace a better hand-edited structure with a worse direct\n     conversion.\n\n4. Remove export artefacts explicitly.\n   - Delete internal citation markers such as `cite`, `filecite`, and\n     `turn...`\n   - Strip tracking parameters such as `utm_source=chatgpt.com`\n   - Remove generic export metadata unless it is useful provenance\n\n5. Restore attribution in durable markdown form.\n   - Convert recovered citations into markdown footnotes or short section-level\n     source notes\n   - Prefer local relative links for repo artefacts\n   - Use direct site URLs for external sources, de-noised and stable\n\n6. Sweep unstable claims before calling the document canonical.\n   - Versions, release dates, licences, Python support, API behaviour, pricing,\n     or policy claims\n   - Verify against primary sources first: official docs, official PyPI\n     metadata, and official repositories\n   - Anchor brittle claims to exact dates or rewrite them to age more\n     gracefully\n\n7. Finish with a short editorial pass.\n   - Preserve tables, code fences, Mermaid blocks, and list structure\n   - Match repo conventions such as British spelling when they apply\n   - Add a dated accuracy note when you perform a sweep\n   - Summarise unresolved gaps rather than hiding uncertainty\n\n## Validation\n\nBefore closing the task, confirm:\n\n- No `cite`, `filecite`, or `turn...` markers remain\n- No `utm_source=chatgpt.com` trackers remain\n- Every footnote used in the body is defined\n- The references support the claims they are attached to\n- Time-sensitive claims were either verified or softened\n\n## Guardrails\n\n- Do not trust the markdown copy just because it looks structured.\n- Do not trust the DOCX or PDF provenance without checking for lingering LLM\n  artefacts.\n- Do not leave a detached references dump if inline attribution would make the\n  document clearer.\n- Do not introduce GitHub blob links when a repo-local path is the canonical\n  target.\n\n## Escalate\n\nIf link recovery or citation placement is still ambiguous after comparing the\nmarkdown, DOCX, and PDF, say so explicitly and preserve the uncertainty in the\nfinal document.\n","# ChatGPT Report Normalisation\n\n## Goal\n\nTurn a report exported from ChatGPT or another LLM into canonical markdown that\nthe repo can keep, review, and trust.\n\n## Use This Skill When\n\n- The user provides paired `.md`, `.docx`, or `.pdf` copies of the same report\n- The markdown contains `cite`, `filecite`, `turn...`, or other internal\n  export markers\n- The DOCX appears to preserve live links that the markdown has lost\n- The document contains time-sensitive claims that need an accuracy sweep\n\n## First Principle\n\nTreat the export as a recovery artefact, not as canonical source material.\n\nRead `.agent\u002Fmemory\u002Factive\u002Fpatterns\u002Fchatgpt-report-normalisation.md` before\nmaking structural decisions or choosing a rebuild strategy.\n\n## Workflow\n\n1. Inventory the available copies.\n   - Prefer the `.docx` for hyperlink recovery.\n   - Prefer the existing markdown if its structure is already better than a\n     fresh conversion.\n   - Use the PDF as a tie-breaker for pagination, formatting, or missing text.\n\n2. Inspect the strong layers with local tools.\n   - `textutil -convert txt -stdout report.docx` for visible text\n   - `unzip -p report.docx word\u002F_rels\u002Fdocument.xml.rels` for hyperlink targets\n   - `pandoc report.docx -t gfm` as a secondary lens for citation placement and\n     footnote hints\n   - `mdls report.pdf` or a text extract if provenance or layout needs checking\n\n3. Choose the canonical editing target.\n   - If the repo already has a readable markdown scaffold, clean and upgrade it\n     in place.\n   - Do not replace a better hand-edited structure with a worse direct\n     conversion.\n\n4. Remove export artefacts explicitly.\n   - Delete internal citation markers such as `cite`, `filecite`, and\n     `turn...`\n   - Strip tracking parameters such as `utm_source=chatgpt.com`\n   - Remove generic export metadata unless it is useful provenance\n\n5. Restore attribution in durable markdown form.\n   - Convert recovered citations into markdown footnotes or short section-level\n     source notes\n   - Prefer local relative links for repo artefacts\n   - Use direct site URLs for external sources, de-noised and stable\n\n6. Sweep unstable claims before calling the document canonical.\n   - Versions, release dates, licences, Python support, API behaviour, pricing,\n     or policy claims\n   - Verify against primary sources first: official docs, official PyPI\n     metadata, and official repositories\n   - Anchor brittle claims to exact dates or rewrite them to age more\n     gracefully\n\n7. Finish with a short editorial pass.\n   - Preserve tables, code fences, Mermaid blocks, and list structure\n   - Match repo conventions such as British spelling when they apply\n   - Add a dated accuracy note when you perform a sweep\n   - Summarise unresolved gaps rather than hiding uncertainty\n\n## Validation\n\nBefore closing the task, confirm:\n\n- No `cite`, `filecite`, or `turn...` markers remain\n- No `utm_source=chatgpt.com` trackers remain\n- Every footnote used in the body is defined\n- The references support the claims they are attached to\n- Time-sensitive claims were either verified or softened\n\n## Guardrails\n\n- Do not trust the markdown copy just because it looks structured.\n- Do not trust the DOCX or PDF provenance without checking for lingering LLM\n  artefacts.\n- Do not leave a detached references dump if inline attribution would make the\n  document clearer.\n- Do not introduce GitHub blob links when a repo-local path is the canonical\n  target.\n\n## Escalate\n\nIf link recovery or citation placement is still ambiguous after comparing the\nmarkdown, DOCX, and PDF, say so explicitly and preserve the uncertainty in the\nfinal document.\n",{"name":5,"description":7,"classification":33},"main","11113a35c0c5be3f9a3b55397693c6de248e5ed4",".agent\u002Fskills\u002Fchatgpt-report-normalisation",4,"https:\u002F\u002Fgithub.com\u002Foaknational\u002Foak-python-starter","https:\u002F\u002Fgithub.com\u002Foaknational","https:\u002F\u002Fwww.thenational.academy\u002F","Creating an openly licensed, fully resourced and AI-enabled curriculum for teachers and pupils as a not for profit and independent Arm's Length Body of UK Gov","2026-11-11 12:55:56",{"source":8,"skillName":5,"commands":61,"prompt":71,"zipAvailable":72},[62,65,68],{"tool":63,"command":64},"npx","npx skills add oaknational\u002Foak-python-starter --skill chatgpt-report-normalisation",{"tool":66,"command":67},"bunx","bunx skills add oaknational\u002Foak-python-starter --skill chatgpt-report-normalisation",{"tool":69,"command":70},"pnpm","pnpm dlx skills add oaknational\u002Foak-python-starter --skill chatgpt-report-normalisation","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Foaknational\u002Foak-python-starter\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fchatgpt-report-normalisation\u002FSKILL.md",true,[],[75,91,112,128,144,171],{"skillNo":76,"name":77,"nameZh":6,"description":78,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":79,"categories":80,"keywords":81,"publishedAt":46},"01M71ED66Y22QDHFYWJ169WBKZ","tsdoc","Write code-adjacent API documentation and the matching durable doc updates.","https:\u002F\u002Fgithub.com\u002Foaknational\u002Foak-python-starter\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Ftsdoc\u002FSKILL.md",[],[77,82,83,84,85,86,87,88,89,90],"write","api","matching","doc updates","code","updates","api documentation","doc","documentation",{"skillNo":92,"name":93,"nameZh":6,"description":94,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":95,"categories":96,"keywords":97,"publishedAt":46},"01M71ED419RDDAJWP8DQ14B1N8","systematic-debugging","Structured debugging workflow. Use when encountering bugs, test failures, or unexpected behaviour. Reproduce, isolate, hypothesise, verify, fix, regression test.","https:\u002F\u002Fgithub.com\u002Foaknational\u002Foak-python-starter\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fsystematic-debugging\u002FSKILL.md",[],[98,99,100,101,102,103,104,105,106,107,108,109,110,111],"debugging","systematic","systematic debugging","structured","test","regression test","workflow","when","reproduce","use","fix","regression","bugs","verify",{"skillNo":113,"name":114,"nameZh":6,"description":115,"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":46},"01M71ED2EK492PVYBJVVQXRM2G","start-right-thorough","Thorough grounding — full directive read, metacognition, and execution outline.","https:\u002F\u002Fgithub.com\u002Foaknational\u002Foak-python-starter\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fstart-right-thorough\u002FSKILL.md",[],[119,120,121,122,123,124,125,126,127],"start","start right thorough","directive","metacognition","grounding","read","full","outline","execution",{"skillNo":129,"name":130,"nameZh":6,"description":131,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":132,"categories":133,"keywords":134,"publishedAt":46},"01M71ED16X1DFMVSWG984P871Y","start-right-quick","Quick grounding at session start — read directives, memory, and check practice box.","https:\u002F\u002Fgithub.com\u002Foaknational\u002Foak-python-starter\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fstart-right-quick\u002FSKILL.md",[],[135,136,119,124,137,123,138,139,140,141,142,143],"start right quick","quick","check","directives","at","memory","session start","box","session",{"skillNo":145,"name":146,"nameZh":6,"description":147,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":148,"categories":149,"keywords":156,"publishedAt":46},"01M71ECZMS30EF11X7Z781GWHR","receiving-code-review","How to process code review feedback effectively. Understand before acting, verify suggestions technically, ask for clarification when needed. Complements the reviewer sub-agents.","https:\u002F\u002Fgithub.com\u002Foaknational\u002Foak-python-starter\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Freceiving-code-review\u002FSKILL.md",[150,153],{"categoryNo":151,"categoryName":152,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000007","代码审查",{"categoryNo":154,"categoryName":155,"taxonomyType":26,"taxonomyTypeDesc":27},"01JBSEEDCAT000000000000030","开发工程师",[157,158,86,159,160,161,162,105,163,164,165,166,167,168,111,169,170],"review","receiving code review","code review","review feedback","reviewer","ask","understand","how to","process","for","how","process code review","code review feedback","feedback",{"skillNo":172,"name":173,"nameZh":6,"description":174,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":175,"categories":176,"keywords":177,"publishedAt":46},"01M71ECWYY53597KW7PN8QXDWM","napkin","Maintain a per-repo napkin file at .agent\u002Fmemory\u002Fnapkin.md that tracks mistakes, corrections, and what works. Always active, every session, unconditionally. Read distilled.md and napkin.md before doing anything. Write to the napkin continuously as you work. Log your own mistakes, not just user corrections.","https:\u002F\u002Fgithub.com\u002Foaknational\u002Foak-python-starter\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fnapkin\u002FSKILL.md",[],[173,139,178,179,180,181,82,182,124,143,183,38,184,185,140,186,187,188,189],"user","file","you","maintain","distilled","log","just","active","tracks","mistakes","work","as"]