[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"extension-skill-lijigang-ljg-card-bn":3,"guides-for-lijigang-ljg-card":269,"similar-k1754z96gh1v44fkdnp24pgvrh866fxx":270},{"_creationTime":4,"_id":5,"children":6,"community":7,"display":9,"evaluation":21,"identity":188,"isFallback":193,"parentExtension":194,"providers":245,"relations":249,"repo":250,"workflow":268},1778053348890.7803,"k1754z96gh1v44fkdnp24pgvrh866fxx",[],{"reviewCount":8},0,{"description":10,"installMethods":11,"name":12,"sourceUrl":13,"tags":14},"Content caster (铸). Transforms content into PNG visuals. Seven molds: -l (default) long reading card, -i infograph, -m multi-card reading cards (1080x1440), -v editorial sketchnote (problem→failure→pivot→insight→naming, magazine + archive layout), -c comic (manga-style B&W), -w whiteboard (marker-style board layout), -b big-fonts attachment card (1080x1440, weathered 碑刻 style for 小红书). Output to ~/Downloads/. Use when user says '铸', 'cast', '做成图', '做成卡片', '做成信息图', '做成海报', '视觉笔记', 'sketchnote', '杂志', 'editorial', '漫画', 'comic', 'manga', '白板', 'whiteboard', '大字', '附件图', 'big fonts', '小红书卡片'. Replaces ljg-cards and ljg-infograph.",{},"Content Caster (铸)","https://github.com/lijigang/ljg-skills/tree/HEAD/skills/ljg-card",[15,16,17,18,19,20],"image-generation","visuals","content-creation","png","templating","nodejs",{"_creationTime":22,"_id":23,"extensionId":5,"locale":24,"result":25,"trustSignals":177,"workflow":186},1778053415028.5525,"kn707mre5zvx47ggtzd6sq4359866kjh","en",{"checks":26,"evaluatedAt":167,"extensionSummary":168,"promptVersionExtension":169,"promptVersionScoring":170,"rationale":171,"score":172,"summary":173,"tags":174,"targetMarket":175,"tier":176},[27,32,35,38,42,45,49,53,56,59,64,69,72,76,79,82,85,88,91,94,97,101,105,109,113,116,119,122,126,129,132,135,138,141,145,148,151,154,157,160,164],{"category":28,"check":29,"severity":30,"summary":31},"Practical Utility","Problem relevance","pass","The description clearly names the user problem of transforming content into visual PNGs and lists specific use cases and trigger phrases.",{"category":28,"check":33,"severity":30,"summary":34},"Unique selling proposition","The extension offers a distinct set of seven visual molds and styling rules that go beyond basic text-to-image generation, providing significant value over a simple prompt.",{"category":28,"check":36,"severity":30,"summary":37},"Production readiness","The extension appears to be fully implemented with multiple modes, supporting content fetching, processing, and outputting to a specified directory, covering a complete lifecycle for visual asset creation.",{"category":39,"check":40,"severity":30,"summary":41},"Scope","Single responsibility principle","The extension focuses on one core responsibility: transforming content into various visual formats (PNGs), without extending into unrelated domains like code execution or general text manipulation.",{"category":39,"check":43,"severity":30,"summary":44},"Description quality","The description is concise, readable, and accurately reflects the extension's capabilities and seven different visual molds.",{"category":46,"check":47,"severity":30,"summary":48},"Invocation","Scoped tools","The extension uses specific modes (e.g., -l, -i, -m) rather than a single generalist tool, making its invocation precise.",{"category":50,"check":51,"severity":30,"summary":52},"Documentation","Configuration & parameter reference","All parameters (molds) and their descriptions are clearly documented within the SKILL.md file.",{"category":39,"check":54,"severity":30,"summary":55},"Tool naming","The tool names ('ljg-card') and the internal mold identifiers (-l, -i, etc.) are descriptive and easily understandable within the context of visual content generation.",{"category":39,"check":57,"severity":30,"summary":58},"Minimal I/O surface","Inputs are either fetched content (URL, text, file path) or specific mode flags, and the output is a PNG file in a designated directory, adhering to a minimal I/O surface.",{"category":60,"check":61,"severity":62,"summary":63},"License","License usability","not_applicable","No license information was found in the repository files. The license field is omitted as per instructions.",{"category":65,"check":66,"severity":67,"summary":68},"Maintenance","Commit recency","warning","There are no commits on the default branch in the last 90 days, suggesting the project may be unmaintained.",{"category":65,"check":70,"severity":67,"summary":71},"Dependency Management","The package.json lists a dependency on 'playwright' but there are no explicit measures like Dependabot or other automated checks for vulnerability or updates mentioned.",{"category":73,"check":74,"severity":62,"summary":75},"Security","Secret Management","The extension does not appear to handle any secrets.",{"category":73,"check":77,"severity":30,"summary":78},"Injection","The extension relies on internal templates and processing, with no indication of loading untrusted third-party data or remote code execution.",{"category":73,"check":80,"severity":30,"summary":81},"Transitive Supply-Chain Grenades","All necessary files (HTML templates, scripts, node_modules) are bundled within the repository, and there are no runtime downloads or remote code fetches.",{"category":73,"check":83,"severity":30,"summary":84},"Sandbox Isolation","The script operates on provided HTML content and outputs to a specified directory, with no indication of attempts to access or modify files outside its intended scope.",{"category":73,"check":86,"severity":30,"summary":87},"Sandbox escape primitives","No detached process spawns or retry loops around denied tool calls were detected in the provided scripts.",{"category":73,"check":89,"severity":30,"summary":90},"Data Exfiltration","The extension's functionality is limited to local file processing and image generation; there are no outbound network calls that could exfiltrate data.",{"category":73,"check":92,"severity":30,"summary":93},"Hidden Text Tricks","The bundled HTML and script files do not contain any hidden steering tricks, invisible characters, or obfuscated content.",{"category":73,"check":95,"severity":30,"summary":96},"Opaque code execution","The included JavaScript file (capture.js) is readable and not obfuscated; there are no eval() statements or base64-encoded payloads.",{"category":98,"check":99,"severity":30,"summary":100},"Portability","Structural Assumption","The extension uses relative paths for its internal assets and templates, and the capture script has clear usage instructions, avoiding assumptions about user-specific project structures.",{"category":102,"check":103,"severity":62,"summary":104},"Trust","Issues Attention","No issues were found on the GitHub repository.",{"category":106,"check":107,"severity":30,"summary":108},"Versioning","Release Management","A version ('2.3.0') is clearly declared in the SKILL.md frontmatter.",{"category":110,"check":111,"severity":67,"summary":112},"Code Execution","Validation","The capture.js script validates basic argument presence but lacks detailed schema validation for paths, dimensions, or fullpage parameter values.",{"category":73,"check":114,"severity":62,"summary":115},"Unguarded Destructive Operations","The extension is not performing any destructive operations.",{"category":110,"check":117,"severity":30,"summary":118},"Error Handling","The capture.js script includes basic error handling with informative messages and exits non-zero on failure.",{"category":110,"check":120,"severity":62,"summary":121},"Logging","The extension is not performing destructive actions or outbound calls that would require local audit logging.",{"category":123,"check":124,"severity":62,"summary":125},"Compliance","GDPR","The extension does not operate on any data that could include personal information.",{"category":123,"check":127,"severity":30,"summary":128},"Target market","The extension's functionality is general-purpose and does not contain any regional or jurisdictional logic; targetMarket is set to 'global'.",{"category":98,"check":130,"severity":67,"summary":131},"Runtime stability","The capture.js script relies on Node.js and Playwright, with a specific requirement for 'chromium', which might not be universally available in all execution environments.",{"category":46,"check":133,"severity":30,"summary":134},"Precise Purpose","The description clearly states what the extension does (transforms content into PNG visuals) and provides specific trigger phrases and use cases.",{"category":46,"check":136,"severity":30,"summary":137},"Concise Frontmatter","The frontmatter is concise and effectively summarizes the core capability and trigger phrases.",{"category":50,"check":139,"severity":30,"summary":140},"Concise Body","The SKILL.md file is well-structured and adheres to the approximate line limit, delegating detailed steps to reference files.",{"category":142,"check":143,"severity":30,"summary":144},"Context","Progressive Disclosure","Detailed procedures for each mold are located in separate 'references/*.md' files, linked via relative paths, demonstrating progressive disclosure.",{"category":142,"check":146,"severity":62,"summary":147},"Forked exploration","This skill is not designed for deep exploration or code review, so the 'context: fork' setting is not applicable.",{"category":28,"check":149,"severity":67,"summary":150},"Usage examples","While the SKILL.md describes how to use the molds, there are no concrete, end-to-end ready-to-use examples provided that show input, invocation, and expected output.",{"category":28,"check":152,"severity":67,"summary":153},"Edge cases","The 'references/mode-big.md' file lists some limitations for input length and font size, but other modes lack documentation on failure modes, recovery paths, or specific limitations.",{"category":110,"check":155,"severity":62,"summary":156},"Tool Fallback","The skill does not appear to rely on external tools like MCP with no fallback; it uses its own bundled Node.js script.",{"category":98,"check":158,"severity":67,"summary":159},"Stack assumptions","The capture.js script assumes a Node.js environment with npm installed and Playwright (specifically Chromium) available, but this is not explicitly declared in the frontmatter.",{"category":161,"check":162,"severity":30,"summary":163},"Safety","Halt on unexpected state","The capture.js script includes error handling that exits non-zero on failure, halting the workflow as expected.",{"category":98,"check":165,"severity":30,"summary":166},"Cross-skill coupling","The skill is self-contained and does not implicitly rely on other skills; no cross-skill coordination is declared or implied.",1778053365195,"This extension provides several modes for creating visual cards from text content, including long-form reading cards, infographics, multi-card sequences, comic styles, whiteboards, and large font attachments. It utilizes a bundled Node.js script with Playwright for image generation.","2.0.0","3.4.0","The extension is functional with clear documentation for its various modes and adheres to good design principles. However, it lacks concrete usage examples, detailed edge case handling for most modes, and explicit declaration of its runtime stack assumptions. The dependency on Playwright without clear installation instructions for the runtime environment is also a concern.",65,"This skill transforms content into various PNG visual formats using multiple molds, offering extensive customization for different use cases.",[15,16,17,18,19,20],"global","evaluated",{"codeQuality":178,"collectedAt":179,"documentation":180,"maintenance":182,"security":183,"testCoverage":185},{},1778053351844,{"descriptionLength":181,"readmeSize":8},634,{},{"hasNpmPackage":184,"smitheryVerified":184},false,{"hasCi":184,"hasTests":184},{"updatedAt":187},1778053415028,{"githubOwner":189,"githubRepo":190,"locale":24,"slug":191,"type":192},"lijigang","ljg-skills","ljg-card","skill",true,{"_creationTime":195,"_id":196,"community":197,"display":198,"identity":211,"parentExtension":213,"providers":238,"relations":243,"workflow":244},1778053348890.7798,"k1704g81mbxzdxt81951f8s6g1866ry3",{"reviewCount":8},{"description":199,"installMethods":200,"name":201,"sourceUrl":202,"tags":203},"LJG's personal Claude Code skills collection",{},"LJG Skills Collection","https://github.com/lijigang/ljg-skills",[204,17,205,206,207,208,209,210],"skills","writing","research","documentation","visualization","productivity","academic",{"githubOwner":189,"githubRepo":190,"locale":24,"slug":190,"type":212},"plugin",{"_creationTime":214,"_id":215,"community":216,"display":217,"identity":221,"providers":223,"relations":233,"workflow":235},1778053348890.7793,"k17axkces4ykqysd5mgcmajr89867sm1",{"reviewCount":8},{"description":218,"installMethods":219,"name":201,"sourceUrl":202,"tags":220},"Personal Claude Code skills collection for paper reading, content casting, and writing workflows",{},[204,17,206,205,209],{"githubOwner":189,"githubRepo":190,"locale":24,"slug":190,"type":222},"marketplace",{"extract":224,"llm":230},{"commitSha":225,"license":226,"marketplace":227},"d2d6a0313baaeee789d00aa5c3841d4622147f23","MIT",{"name":190,"pluginCount":228,"version":229},1,"1.17.15",{"promptVersionExtension":169,"promptVersionScoring":170,"score":231,"targetMarket":175,"tier":232},88,"flagged",{"repoId":234},"kd71hhp7w2dcgt37rznesw08cx864k8w",{"anyEnrichmentAt":236,"extractAt":237,"githubAt":236,"llmAt":187,"updatedAt":187},1778053349620,1778053348890,{"extract":239,"llm":240},{"commitSha":225,"license":226},{"promptVersionExtension":169,"promptVersionScoring":170,"score":241,"targetMarket":175,"tier":242},90,"verified",{"parentExtensionId":215,"repoId":234},{"anyEnrichmentAt":236,"extractAt":237,"githubAt":236,"llmAt":187,"updatedAt":187},{"extract":246,"llm":248},{"commitSha":225,"license":247},"n/a",{"promptVersionExtension":169,"promptVersionScoring":170,"score":172,"targetMarket":175,"tier":176},{"parentExtensionId":196,"repoId":234},{"_creationTime":251,"_id":234,"identity":252,"providers":253,"workflow":265},1777995558409.893,{"githubOwner":189,"githubRepo":190,"sourceUrl":202},{"discover":254,"github":257},{"sources":255},[256],"skills-sh",{"closedIssues90d":258,"forks":259,"openIssues90d":260,"pushedAt":261,"readmeSize":262,"stars":263,"topics":264},5,458,2,1777870782000,4594,3935,[],{"discoverAt":266,"extractAt":267,"githubAt":267,"updatedAt":267},1777995558409,1778053350730,{"anyEnrichmentAt":236,"extractAt":237,"githubAt":236,"llmAt":187,"updatedAt":187},[],[271,299,329,351,380,407],{"_creationTime":272,"_id":273,"community":274,"display":275,"identity":286,"providers":288,"relations":293,"workflow":295},1778053148350.4475,"k171c93xj4bgdjdrmjt3mdb4f18668n1",{"reviewCount":8},{"description":276,"installMethods":277,"name":278,"sourceUrl":279,"tags":280},"Create effective AI image generation prompts for DALL-E, Midjourney, and Stable Diffusion. Generate prompts for various styles and use cases.",{},"Image Generation","https://github.com/claude-office-skills/skills/tree/HEAD/image-generation",[15,281,282,283,284,285,207],"prompt-engineering","ai-art","dall-e","midjourney","stable-diffusion",{"githubOwner":287,"githubRepo":204,"locale":24,"slug":15,"type":192},"claude-office-skills",{"extract":289,"llm":291},{"commitSha":290,"license":226},"9c4c7d5cd2813a8936bf2c9fdb174ea883b85a11",{"promptVersionExtension":169,"promptVersionScoring":170,"score":292,"targetMarket":175,"tier":242},98,{"repoId":294},"kd7fw7xbj58qc2z8whrrjptbed8659db",{"anyEnrichmentAt":296,"extractAt":297,"githubAt":296,"llmAt":298,"updatedAt":298},1778053151766,1778053148350,1778053561145,{"_creationTime":300,"_id":301,"community":302,"display":303,"identity":314,"providers":318,"relations":322,"workflow":325},1778053197391.383,"k176c18bj1xnz11za3vwckfwn1866eqw",{"reviewCount":8},{"description":304,"installMethods":305,"name":306,"sourceUrl":307,"tags":308},"ByteDance Jimeng (Dreamina) image and video generation via the official `dreamina` CLI. Use this skill whenever the user mentions 即梦, Dreamina, Jimeng, or asks to generate images or videos specifically through ByteDance's Jimeng service. Covers text2image, image2image, text2video, image2video, plus async task query and task-history browsing via list_task. Trigger this skill instead of happy-image-gen or happy-video-gen whenever the user explicitly names 即梦 or dreamina — it uses browser-based login (`dreamina login`) rather than API keys and has access to Jimeng-exclusive models. Common phrases include \"用即梦画张...\", \"Jimeng generate a video of...\", \"Dreamina 文生视频\", \"用 dreamina CLI 做图\", \"查下我即梦的历史任务\".",{},"Happy Dreamina","https://github.com/iamzhihuix/happy-claude-skills/tree/HEAD/skills/happy-dreamina",[15,309,310,311,312,313],"video-generation","cli","bytedance","jimeng","dreamina",{"githubOwner":315,"githubRepo":316,"locale":24,"slug":317,"type":192},"iamzhihuix","happy-claude-skills","happy-dreamina",{"extract":319,"llm":321},{"commitSha":320,"license":226},"f49e7782a551759c9f9e0a4d4417ff053f0a86fd",{"promptVersionExtension":169,"promptVersionScoring":170,"score":292,"targetMarket":175,"tier":242},{"parentExtensionId":323,"repoId":324},"k178jh6rrdj83v5adkc8trggrx8671n6","kd7dbbtdq95nkcs3k7fg9w6fdn864j0b",{"anyEnrichmentAt":326,"extractAt":327,"githubAt":326,"llmAt":328,"updatedAt":328},1778053199195,1778053197391,1778053284450,{"_creationTime":330,"_id":331,"community":332,"display":333,"identity":343,"providers":345,"relations":348,"workflow":350},1778053197391.3743,"k17a4ph0ehyn4g8ybejphj94rn866wbw",{"reviewCount":8},{"description":334,"installMethods":335,"name":336,"sourceUrl":337,"tags":338},"Extract formatting from existing Word documents and generate new documents with the same format but different content. Use this skill when users need to create multiple documents with consistent formatting, replicate document templates, or maintain corporate document standards across different content.",{},"DOCX Format Replicator","https://github.com/iamzhihuix/happy-claude-skills/tree/HEAD/skills/docx-format-replicator",[339,340,341,19,342],"document-generation","word-processing","python","automation",{"githubOwner":315,"githubRepo":316,"locale":24,"slug":344,"type":192},"docx-format-replicator",{"extract":346,"llm":347},{"commitSha":320,"license":226},{"promptVersionExtension":169,"promptVersionScoring":170,"score":292,"targetMarket":175,"tier":242},{"parentExtensionId":349,"repoId":324},"k173wvsxrd2c9bh352g3y6ya2h8667s7",{"anyEnrichmentAt":326,"extractAt":327,"githubAt":326,"llmAt":328,"updatedAt":328},{"_creationTime":352,"_id":353,"community":354,"display":355,"identity":367,"providers":370,"relations":374,"workflow":376},1778054711476.0596,"k17ed9jy1nygmcqva51bkzyyyd866r6h",{"reviewCount":8},{"description":356,"installMethods":357,"name":358,"sourceUrl":359,"tags":360},"Guides development of Fastify Node.js backend servers and REST APIs using TypeScript or JavaScript. Use when building, configuring, or debugging a Fastify application — including defining routes, implementing plugins, setting up JSON Schema validation, handling errors, optimising performance, managing authentication, configuring CORS and security headers, integrating databases, working with WebSockets, and deploying to production. Covers the full Fastify request lifecycle (hooks, serialization, logging with Pino) and TypeScript integration via strip types. Trigger terms: Fastify, Node.js server, REST API, API routes, backend framework, fastify.config, server.ts, app.ts.",{},"Fastify Best Practices","https://github.com/mcollina/skills/tree/HEAD/skills/fastify",[361,20,362,363,364,365,366],"fastify","typescript","backend","api","server","http",{"githubOwner":368,"githubRepo":204,"locale":24,"slug":369,"type":192},"mcollina","fastify-best-practices",{"extract":371,"llm":373},{"commitSha":372,"license":226},"5b2a81354b6d10325da0db9decc9ce5ecc714138",{"promptVersionExtension":169,"promptVersionScoring":170,"score":292,"targetMarket":175,"tier":242},{"repoId":375},"kd7a9jywzfe3c5g5r1a62htmrn865rt1",{"anyEnrichmentAt":377,"extractAt":378,"githubAt":377,"llmAt":379,"updatedAt":379},1778054711844,1778054711476,1778054745098,{"_creationTime":381,"_id":382,"community":383,"display":384,"identity":394,"providers":397,"relations":401,"workflow":403},1778054052548.222,"k17fard3a1kf7n7ybxjexq5k2h866rf5",{"reviewCount":8},{"description":385,"installMethods":386,"name":387,"sourceUrl":388,"tags":389},"Discord adapter for chat",{},"Discord Adapter","https://github.com/vercel/chat/tree/HEAD/packages/adapter-discord",[390,391,392,393,362,20],"discord","adapter","chat","sdk",{"githubOwner":395,"githubRepo":392,"locale":24,"slug":396,"type":192},"vercel","chat-adapter-discord",{"extract":398,"llm":400},{"commitSha":399,"license":226},"3e4764db4d5c826cd0938cdcd0130d14eb8ed992",{"promptVersionExtension":169,"promptVersionScoring":170,"score":292,"targetMarket":175,"tier":242},{"repoId":402},"kd7ds766kaxjjf3s3hr8y7z2t9865yn3",{"anyEnrichmentAt":404,"extractAt":405,"githubAt":404,"llmAt":406,"updatedAt":406},1778054054404,1778054052548,1778054107364,{"_creationTime":408,"_id":409,"community":410,"display":411,"identity":423,"providers":424,"relations":428,"workflow":429},1778054711476.0635,"k17cczvzzxxmtssf3cxsfxwxts86648z",{"reviewCount":8},{"description":412,"installMethods":413,"name":414,"sourceUrl":415,"tags":416},"Configures and uses snipgrapher to generate polished code snippet images, including syntax-highlighted PNGs, SVGs, and WebP exports with custom themes, profiles, and styling options. Use when the user wants to create code screenshots, turn code into shareable images, generate pretty code snippets for docs or social posts, produce syntax-highlighted images from source files, or explicitly mentions snipgrapher. Supports single-file renders, batch jobs, watch mode, and reusable named profiles via the snipgrapher CLI or npx.",{},"Snipgrapher","https://github.com/mcollina/skills/tree/HEAD/skills/snipgrapher",[417,418,419,420,18,421,310,422],"snipgrapher","snippets","images","svg","webp","code-screenshots",{"githubOwner":368,"githubRepo":204,"locale":24,"slug":417,"type":192},{"extract":425,"llm":426},{"commitSha":372,"license":226},{"promptVersionExtension":169,"promptVersionScoring":170,"score":427,"targetMarket":175,"tier":242},97,{"repoId":375},{"anyEnrichmentAt":377,"extractAt":378,"githubAt":377,"llmAt":379,"updatedAt":379}]