[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6FE18N150NMQT88PYJAVZPX":3,"skill-same:01M6FE18N150NMQT88PYJAVZPX":58},{"skillNo":4,"name":5,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":15,"categories":16,"keywords":27,"publishedAt":31,"linkOnly":32,"markdownContent":33,"markdownBody":33,"frontMatter":34,"refName":35,"commitSha":36,"skillDirectory":37,"forksCount":38,"repositoryHtmlUrl":39,"repositoryHomepageUrl":40,"ownerHtmlUrl":41,"ownerBlogUrl":6,"ownerDescription":42,"updatedAt":43,"install":44,"resources":57},"01M6FE18N150NMQT88PYJAVZPX","pr-report",null,"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\u002Fpaperclipai\u002Fpaperclip\u002Fpr-report\u002FSKILL.md",[17,22],{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",{"categoryNo":23,"categoryName":24,"taxonomyType":25,"taxonomyTypeDesc":26},"01JBSEEDCAT000000000000034","行政与办公人员","PROFESSION","适用职业",[28,29,30],"pr","report","pr report","2026-11-10 10:12:30",false,"# PR Report Skill\n\nProduce a maintainer-grade review of a PR, branch, or large contribution.\n\nDefault posture:\n\n- understand the change before judging it\n- explain the system as built, not just the diff\n- separate architectural problems from product-scope objections\n- make a concrete recommendation, not a vague impression\n\n## When to Use\n\nUse this skill when the user asks for things like:\n\n- \"review this PR deeply\"\n- \"explain this contribution to me\"\n- \"make me a report or webpage for this PR\"\n- \"compare this design to similar systems\"\n- \"should I merge this?\"\n\n## Outputs\n\nCommon outputs:\n\n- standalone HTML report in `tmp\u002Freports\u002F...`\n- Markdown report in `report\u002F` or another requested folder\n- short maintainer summary in chat\n\nIf the user asks for a webpage, build a polished standalone HTML artifact with\nclear sections and readable visual hierarchy.\n\nResources bundled with this skill:\n\n- `references\u002Fstyle-guide.md` for visual direction and report presentation rules\n- `assets\u002Fhtml-report-starter.html` for a reusable standalone HTML\u002FCSS starter\n\n## Workflow\n\n### 1. Acquire and frame the target\n\nWork from local code when possible, not just the GitHub PR page.\n\nGather:\n\n- target branch or worktree\n- diff size and changed subsystems\n- relevant repo docs, specs, and invariants\n- contributor intent if it is documented in PR text or design docs\n\nStart by answering: what is this change *trying* to become?\n\n### 2. Build a mental model of the system\n\nDo not stop at file-by-file notes. Reconstruct the design:\n\n- what new runtime or contract exists\n- which layers changed: db, shared types, server, UI, CLI, docs\n- lifecycle: install, startup, execution, UI, failure, disablement\n- trust boundary: what code runs where, under what authority\n\nFor large contributions, include a tutorial-style section that teaches the\nsystem from first principles.\n\n### 3. Review like a maintainer\n\nFindings come first. Order by severity.\n\nPrioritize:\n\n- behavioral regressions\n- trust or security gaps\n- misleading abstractions\n- lifecycle and operational risks\n- coupling that will be hard to unwind\n- missing tests or unverifiable claims\n\nAlways cite concrete file references when possible.\n\n### 4. Distinguish the objection type\n\nBe explicit about whether a concern is:\n\n- product direction\n- architecture\n- implementation quality\n- rollout strategy\n- documentation honesty\n\nDo not hide an architectural objection inside a scope objection.\n\n### 5. Compare to external precedents when needed\n\nIf the contribution introduces a framework or platform concept, compare it to\nsimilar open-source systems.\n\nWhen comparing:\n\n- prefer official docs or source\n- focus on extension boundaries, context passing, trust model, and UI ownership\n- extract lessons, not just similarities\n\nGood comparison questions:\n\n- Who owns lifecycle?\n- Who owns UI composition?\n- Is context explicit or ambient?\n- Are plugins trusted code or sandboxed code?\n- Are extension points named and typed?\n\n### 6. Make the recommendation actionable\n\nDo not stop at \"merge\" or \"do not merge.\"\n\nChoose one:\n\n- merge as-is\n- merge after specific redesign\n- salvage specific pieces\n- keep as design research\n\nIf rejecting or narrowing, say what should be kept.\n\nUseful recommendation buckets:\n\n- keep the protocol\u002Ftype model\n- redesign the UI boundary\n- narrow the initial surface area\n- defer third-party execution\n- ship a host-owned extension-point model first\n\n### 7. Build the artifact\n\nSuggested report structure:\n\n1. Executive summary\n2. What the PR actually adds\n3. Tutorial: how the system works\n4. Strengths\n5. Main findings\n6. Comparisons\n7. Recommendation\n\nFor HTML reports:\n\n- use intentional typography and color\n- make navigation easy for long reports\n- favor strong section headings and small reference labels\n- avoid generic dashboard styling\n\nBefore building from scratch, read `references\u002Fstyle-guide.md`.\nIf a fast polished starter is helpful, begin from `assets\u002Fhtml-report-starter.html`\nand replace the placeholder content with the actual report.\n\n### 8. Verify before handoff\n\nCheck:\n\n- artifact path exists\n- findings still match the actual code\n- any requested forbidden strings are absent from generated output\n- if tests were not run, say so explicitly\n\n## Review Heuristics\n\n### Plugin and platform work\n\nWatch closely for:\n\n- docs claiming sandboxing while runtime executes trusted host processes\n- module-global state used to smuggle React context\n- hidden dependence on render order\n- plugins reaching into host internals instead of using explicit APIs\n- \"capabilities\" that are really policy labels on top of fully trusted code\n\n### Good signs\n\n- typed contracts shared across layers\n- explicit extension points\n- host-owned lifecycle\n- honest trust model\n- narrow first rollout with room to grow\n\n## Final Response\n\nIn chat, summarize:\n\n- where the report is\n- your overall call\n- the top one or two reasons\n- whether verification or tests were skipped\n\nKeep the chat summary shorter than the report itself.\n",{},"main","def8531e65114c0fca8fb8551c1871ee0eed705c","skills\u002Fpaperclipai\u002Fpaperclip\u002Fpr-report",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":7,"skillName":5,"commands":45,"prompt":55,"zipAvailable":56},[46,49,52],{"tool":47,"command":48},"npx","npx skills add ComeOnOliver\u002Fskillshub --skill pr-report",{"tool":50,"command":51},"bunx","bunx skills add ComeOnOliver\u002Fskillshub --skill pr-report",{"tool":53,"command":54},"pnpm","pnpm dlx skills add ComeOnOliver\u002Fskillshub --skill pr-report","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fpaperclipai\u002Fpaperclip\u002Fpr-report\u002FSKILL.md",true,[],[59,69,79,88,94,101],{"skillNo":60,"name":61,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":62,"categories":63,"keywords":65,"publishedAt":31},"01M6FKJN13GMG4KY57J3QD8GY5","model-hierarchy-skill","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzscole\u002Fmodel-hierarchy-skill\u002Fmodel-hierarchy-skill\u002FSKILL.md",[64],{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},[66,67,68],"model","model hierarchy","model hierarchy skill",{"skillNo":70,"name":71,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":72,"categories":73,"keywords":75,"publishedAt":31},"01M6FKJJJ6GCAMR4PPPRD12M5X","zoom-mcp","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fzoom-mcp\u002FSKILL.md",[74],{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},[76,77,78],"MCP","zoom","zoom mcp",{"skillNo":80,"name":81,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":82,"categories":83,"keywords":84,"publishedAt":31},"01M6FKJE3KYT3KPEZMEEHYKA6K","zoom-apps-sdk","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fzoom-apps-sdk\u002FSKILL.md",[],[85,86,87,77],"sdk","zoom apps sdk","apps",{"skillNo":89,"name":90,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":91,"categories":92,"keywords":93,"publishedAt":31},"01M6FKJ9EDH9Q5VWDF8HAJRSP0","windows","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fwindows\u002FSKILL.md",[],[90],{"skillNo":95,"name":96,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":97,"categories":98,"keywords":100,"publishedAt":31},"01M6FKJ666BEEFC3AE9GJ72Q93","whiteboard","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fwhiteboard\u002FSKILL.md",[99],{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},[96],{"skillNo":102,"name":103,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":104,"categories":105,"keywords":106,"publishedAt":31},"01M6FKJ21WFCDGTJQ2Q91T9DVW","websockets","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fwebsockets\u002FSKILL.md",[],[103]]