[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"extension-skill-eraserlabs-azure-diagrams-zh-CN":3,"guides-for-eraserlabs-azure-diagrams":223,"similar-k175e9bkt7tds2cy6m993rwp4h867hfe":224},{"_creationTime":4,"_id":5,"children":6,"community":7,"display":9,"evaluation":21,"identity":190,"isFallback":195,"parentExtension":196,"providers":197,"relations":201,"repo":203,"workflow":220},1778053448782.098,"k175e9bkt7tds2cy6m993rwp4h867hfe",[],{"reviewCount":8},0,{"description":10,"installMethods":11,"name":12,"sourceUrl":13,"tags":14},"Visualizes Azure infrastructure from ARM templates, Azure CLI, or descriptions. Use when user has Azure resources to diagram.",{},"Azure Diagram Generator","https://github.com/eraserlabs/eraser-io/tree/HEAD/skills/azure-diagrams",[15,16,17,18,19,20],"azure","diagram","arm","cli","infrastructure","cloud-architecture-diagram",{"_creationTime":22,"_id":23,"extensionId":5,"locale":24,"result":25,"trustSignals":178,"workflow":188},1778053477002.3174,"kn74cqjx4bvsxmae4re130kfe5866ah6","en",{"checks":26,"evaluatedAt":168,"extensionSummary":169,"promptVersionExtension":170,"promptVersionScoring":171,"rationale":172,"score":173,"summary":174,"tags":175,"targetMarket":176,"tier":177},[27,32,35,38,42,45,49,54,57,60,64,69,72,76,79,82,85,88,92,95,98,102,106,110,114,117,120,123,127,130,133,136,139,142,146,149,152,155,158,161,165],{"category":28,"check":29,"severity":30,"summary":31},"Practical Utility","Problem relevance","pass","The description clearly states the problem of visualizing Azure infrastructure from various sources and identifies the user intent (diagramming Azure resources).",{"category":28,"check":33,"severity":30,"summary":34},"Unique selling proposition","The skill offers value beyond a simple API wrapper by parsing different Azure resource formats (ARM, CLI, descriptions) and mapping Azure relationships to generate a specific DSL for the Eraser API.",{"category":28,"check":36,"severity":30,"summary":37},"Production readiness","The skill is production-ready, covering the complete lifecycle from parsing Azure resources to calling the Eraser API and formatting the output as specified.",{"category":39,"check":40,"severity":30,"summary":41},"Scope","Single responsibility principle","The skill focuses on a single domain: generating diagrams for Azure infrastructure, without extending into unrelated areas.",{"category":39,"check":43,"severity":30,"summary":44},"Description quality","The description accurately reflects the skill's functionality of visualizing Azure infrastructure from ARM templates, Azure CLI, or descriptions.",{"category":46,"check":47,"severity":30,"summary":48},"Invocation","Scoped tools","The skill utilizes a single, well-defined tool (`curl` with specific parameters) for its operation, avoiding generalist execution.",{"category":50,"check":51,"severity":52,"summary":53},"Documentation","Configuration & parameter reference","warning","The `ERASER_API_KEY` and `ERASER_THEME` are mentioned but their origin, default values, and precedence are not explicitly documented.",{"category":39,"check":55,"severity":30,"summary":56},"Tool naming","The only tool used is `curl` which is appropriately named, and the skill's internal instructions are clear.",{"category":39,"check":58,"severity":30,"summary":59},"Minimal I/O surface","The skill's input is derived from user-provided Azure resource information and the output is strictly formatted according to the Eraser API response structure.",{"category":61,"check":62,"severity":30,"summary":63},"License","License usability","The license is MIT, a standard permissive open-source license, clearly stated in the LICENSE file and the SKILL.md frontmatter.",{"category":65,"check":66,"severity":67,"summary":68},"Maintenance","Commit recency","not_applicable","No commit history is available for this specific skill, so recency cannot be evaluated.",{"category":65,"check":70,"severity":67,"summary":71},"Dependency Management","The skill has no third-party dependencies beyond standard network access for the Eraser API.",{"category":73,"check":74,"severity":52,"summary":75},"Security","Secret Management","The `ERASER_API_KEY` is required for the `curl` command but is not clearly documented on how it should be securely provided or managed by the user.",{"category":73,"check":77,"severity":30,"summary":78},"Injection","The skill parses input data and passes it to the Eraser API as structured JSON, with no indication of executing arbitrary code from external sources.",{"category":73,"check":80,"severity":30,"summary":81},"Transitive Supply-Chain Grenades","The skill does not fetch or execute external code at runtime; all logic is contained within the bundled files and API calls.",{"category":73,"check":83,"severity":30,"summary":84},"Sandbox Isolation","The skill only makes an outbound API call and does not modify any files outside its designated scope.",{"category":73,"check":86,"severity":30,"summary":87},"Sandbox escape primitives","No detached-process spawns or deny-retry loops were found in the skill's execution.",{"category":73,"check":89,"severity":90,"summary":91},"Data Exfiltration","info","The skill makes an outbound call to the Eraser API, which is documented. The `X-Skill-Source` header is required to be set by the agent, but the actual sensitive data being sent is the generated DSL, not user credentials.",{"category":73,"check":93,"severity":30,"summary":94},"Hidden Text Tricks","The bundled files do not contain any hidden text tricks, invisible Unicode characters, or other hidden-steering mechanisms.",{"category":73,"check":96,"severity":30,"summary":97},"Opaque code execution","The skill's logic is in plain readable markdown and a single `curl` command, with no obfuscated code or runtime script fetching.",{"category":99,"check":100,"severity":30,"summary":101},"Portability","Structural Assumption","The skill does not make assumptions about the user's project structure; it operates on provided Azure resource data.",{"category":103,"check":104,"severity":67,"summary":105},"Trust","Issues Attention","No issue data is available for this skill.",{"category":107,"check":108,"severity":30,"summary":109},"Versioning","Release Management","A version ('1.0.0') is declared in the SKILL.md frontmatter.",{"category":111,"check":112,"severity":52,"summary":113},"Code Execution","Validation","While the skill parses input and constructs a JSON payload for the Eraser API, there is no explicit mention or evidence of a schema library being used for input validation beyond basic parsing.",{"category":73,"check":115,"severity":67,"summary":116},"Unguarded Destructive Operations","The skill is read-only in nature, focusing on diagram generation and not performing any destructive operations.",{"category":111,"check":118,"severity":52,"summary":119},"Error Handling","The instructions detail how to handle the response but do not explicitly describe error handling mechanisms for API call failures or invalid input beyond the general prompt to 'never stop after generating DSL without making the API call'.",{"category":111,"check":121,"severity":67,"summary":122},"Logging","The skill is read-only and does not perform destructive actions or outbound calls that would necessitate local audit logging.",{"category":124,"check":125,"severity":30,"summary":126},"Compliance","GDPR","The skill processes Azure infrastructure data and generates diagrams; it does not appear to handle personal data directly.",{"category":124,"check":128,"severity":30,"summary":129},"Target market","The skill operates on Azure resources, which are global. No specific regional logic is evident in the instructions, thus the target market is global.",{"category":99,"check":131,"severity":30,"summary":132},"Runtime stability","The skill relies on standard `curl` and network access, with no specific OS or shell assumptions beyond basic POSIX compatibility.",{"category":46,"check":134,"severity":30,"summary":135},"Precise Purpose","The description clearly states what the skill does (visualizes Azure infrastructure) and when to use it (when user has Azure resources to diagram).",{"category":46,"check":137,"severity":30,"summary":138},"Concise Frontmatter","The frontmatter is concise, clearly defining the skill's name, description, license, compatibility, allowed tools, and metadata including version and tags.",{"category":50,"check":140,"severity":30,"summary":141},"Concise Body","The skill body is under 500 lines and appropriately delegates detailed procedures and examples to distinct sections and the API documentation.",{"category":143,"check":144,"severity":30,"summary":145},"Context","Progressive Disclosure","The SKILL.md outlines the flow and links to the Eraser API documentation for more details on rendering and usage, which is appropriate progressive disclosure.",{"category":143,"check":147,"severity":67,"summary":148},"Forked exploration","The skill is a short-form action (generate diagram) and does not involve deep exploration or code review, so 'context: fork' is not applicable.",{"category":28,"check":150,"severity":30,"summary":151},"Usage examples","Sufficient end-to-end examples are provided for both ARM template and Azure CLI input, demonstrating the process and expected output format.",{"category":28,"check":153,"severity":90,"summary":154},"Edge cases","The instructions mention handling different input types (ARM, CLI, description) but do not explicitly document specific failure modes or recovery paths for malformed input or API issues.",{"category":111,"check":156,"severity":67,"summary":157},"Tool Fallback","The skill only relies on standard `curl` and network access, not a specific MCP server, making fallback irrelevant.",{"category":99,"check":159,"severity":30,"summary":160},"Stack assumptions","The skill assumes standard POSIX environment for `curl` and network access, with no specific OS or shell dependencies beyond that.",{"category":162,"check":163,"severity":67,"summary":164},"Safety","Halt on unexpected state","The skill is read-only and does not have preconditions that would necessitate halting on unexpected state.",{"category":99,"check":166,"severity":30,"summary":167},"Cross-skill coupling","The skill is self-contained and does not implicitly rely on other skills. It clearly defines its scope and functionality.",1778053461621,"This skill parses ARM templates, Azure CLI output, or natural language descriptions of Azure resources to generate architecture diagrams. It constructs Eraser DSL code and makes an API call to render the diagram, providing links to view and edit it in the Eraser editor.","2.0.0","3.4.0","This skill is well-documented and production-ready, focusing on a single responsibility and providing clear examples. Areas for minor improvement include explicit documentation of API key management and error handling for API calls.",85,"This skill effectively visualizes Azure infrastructure from various sources into diagrams using the Eraser API.",[15,16,17,18,19,20],"global","verified",{"codeQuality":179,"collectedAt":180,"documentation":181,"maintenance":183,"security":184,"testCoverage":187},{},1778053451059,{"descriptionLength":182,"readmeSize":8},125,{},{"hasNpmPackage":185,"license":186,"smitheryVerified":185},false,"MIT",{"hasCi":185,"hasTests":185},{"updatedAt":189},1778053477002,{"githubOwner":191,"githubRepo":192,"locale":24,"slug":193,"type":194},"eraserlabs","eraser-io","azure-diagrams","skill",true,null,{"extract":198,"llm":200},{"commitSha":199,"license":186},"30d6f3679f597eeae67bacab5ee733c863686177",{"promptVersionExtension":170,"promptVersionScoring":171,"score":173,"targetMarket":176,"tier":177},{"repoId":202},"kd74kz6ynekzcm6mrz0ftcb1jn865nen",{"_creationTime":204,"_id":202,"identity":205,"providers":207,"workflow":217},1777995558409.8843,{"githubOwner":191,"githubRepo":192,"sourceUrl":206},"https://github.com/eraserlabs/eraser-io",{"discover":208,"github":211},{"sources":209},[210],"skills-sh",{"closedIssues90d":8,"forks":8,"license":186,"openIssues90d":212,"pushedAt":213,"readmeSize":214,"stars":215,"topics":216},2,1775582457000,1249,18,[],{"discoverAt":218,"extractAt":219,"githubAt":219,"updatedAt":219},1777995558409,1778053449743,{"anyEnrichmentAt":221,"extractAt":222,"githubAt":221,"llmAt":189,"updatedAt":189},1778053449051,1778053448782,[],[225,246,270,290,305,324],{"_creationTime":226,"_id":227,"community":228,"display":229,"identity":239,"providers":241,"relations":244,"workflow":245},1778053448782.0984,"k177j9wmcz598k4epxvmqx1q7x866kzf",{"reviewCount":8},{"description":230,"installMethods":231,"name":232,"sourceUrl":233,"tags":234},"Generates architecture diagrams from Azure Bicep files. Use when user has .bicep files or asks to visualize Bicep infrastructure.",{},"Bicep Diagram Generator","https://github.com/eraserlabs/eraser-io/tree/HEAD/skills/bicep-diagrams",[235,15,16,19,236,237,238],"bicep","iac","azure-resources","api",{"githubOwner":191,"githubRepo":192,"locale":24,"slug":240,"type":194},"bicep-diagrams",{"extract":242,"llm":243},{"commitSha":199,"license":186},{"promptVersionExtension":170,"promptVersionScoring":171,"score":173,"targetMarket":176,"tier":177},{"repoId":202},{"anyEnrichmentAt":221,"extractAt":222,"githubAt":221,"llmAt":189,"updatedAt":189},{"_creationTime":247,"_id":248,"community":249,"display":250,"identity":261,"providers":263,"relations":268,"workflow":269},1778053448782.0994,"k1709mph3qvc7rwtt6cda69p25866cdx",{"reviewCount":8},{"description":251,"installMethods":252,"name":253,"sourceUrl":254,"tags":255},"Generates architecture diagrams from Terraform code. Use when user has .tf files or asks to visualize Terraform infrastructure.",{},"Terraform Diagram Generator","https://github.com/eraserlabs/eraser-io/tree/HEAD/skills/terraform-diagrams",[256,16,19,257,15,258,236,259,260],"terraform","aws","gcp","hcl","eraser",{"githubOwner":191,"githubRepo":192,"locale":24,"slug":262,"type":194},"terraform-diagrams",{"extract":264,"llm":265},{"commitSha":199,"license":186},{"promptVersionExtension":170,"promptVersionScoring":171,"score":266,"targetMarket":176,"tier":267},75,"evaluated",{"repoId":202},{"anyEnrichmentAt":221,"extractAt":222,"githubAt":221,"llmAt":189,"updatedAt":189},{"_creationTime":271,"_id":272,"community":273,"display":274,"identity":283,"providers":284,"relations":288,"workflow":289},1778053448782.097,"k1739yz9jv2seh7503h4b1ba8s866a3z",{"reviewCount":8},{"description":275,"installMethods":276,"name":277,"sourceUrl":278,"tags":279},"Generates architecture diagrams from code, infrastructure, or descriptions. Use when user asks to visualize, diagram, or document system architecture.",{},"Eraser Diagram Generator","https://github.com/eraserlabs/eraser-io/tree/HEAD/claude-plugins/eraser/skills/diagram",[16,280,281,19,238,282],"architecture","visualization","code-generation",{"githubOwner":191,"githubRepo":192,"locale":24,"slug":16,"type":194},{"extract":285,"llm":286},{"commitSha":199,"license":186},{"promptVersionExtension":170,"promptVersionScoring":171,"score":287,"targetMarket":176,"tier":177},98,{"repoId":202},{"anyEnrichmentAt":221,"extractAt":222,"githubAt":221,"llmAt":189,"updatedAt":189},{"_creationTime":291,"_id":292,"community":293,"display":294,"identity":298,"providers":300,"relations":303,"workflow":304},1778053448782.0989,"k17677ej1bpx98s7dxda4ppjxd8670nw",{"reviewCount":8},{"description":275,"installMethods":295,"name":277,"sourceUrl":296,"tags":297},{},"https://github.com/eraserlabs/eraser-io/tree/HEAD/skills/eraser-diagrams",[16,280,281,19,282,238],{"githubOwner":191,"githubRepo":192,"locale":24,"slug":299,"type":194},"eraser-diagrams",{"extract":301,"llm":302},{"commitSha":199,"license":186},{"promptVersionExtension":170,"promptVersionScoring":171,"score":287,"targetMarket":176,"tier":177},{"repoId":202},{"anyEnrichmentAt":221,"extractAt":222,"githubAt":221,"llmAt":189,"updatedAt":189},{"_creationTime":306,"_id":307,"community":308,"display":309,"identity":316,"providers":318,"relations":322,"workflow":323},1778053448782.0974,"k171678w38bzcf2ky0mq92fpsh866wy7",{"reviewCount":8},{"description":310,"installMethods":311,"name":312,"sourceUrl":313,"tags":314},"Visualizes AWS infrastructure from CLI output, CloudFormation, or descriptions. Use when user has AWS resources to diagram.",{},"AWS Diagram Generator","https://github.com/eraserlabs/eraser-io/tree/HEAD/skills/aws-diagrams",[257,16,315,18,19,238],"cloudformation",{"githubOwner":191,"githubRepo":192,"locale":24,"slug":317,"type":194},"aws-diagrams",{"extract":319,"llm":320},{"commitSha":199,"license":186},{"promptVersionExtension":170,"promptVersionScoring":171,"score":321,"targetMarket":176,"tier":177},92,{"repoId":202},{"anyEnrichmentAt":221,"extractAt":222,"githubAt":221,"llmAt":189,"updatedAt":189},{"_creationTime":325,"_id":326,"community":327,"display":328,"identity":339,"providers":341,"relations":347,"workflow":349},1778054586606.9207,"k17dgzjgvsrbv3nsbp0kz4c1ax8665ww",{"reviewCount":8},{"description":329,"installMethods":330,"name":331,"sourceUrl":332,"tags":333},"Vercel filesystem detectors",{},"Vercel Filesystem Detectors","https://github.com/vercel/vercel/tree/HEAD/packages/fs-detectors",[334,335,336,337,18,338],"vercel","build-system","framework-detection","monorepo","utility",{"githubOwner":334,"githubRepo":334,"locale":24,"slug":340,"type":194},"vercel-fs-detectors",{"extract":342,"llm":345},{"commitSha":343,"license":344},"da93fccb68ef705f866ddb8d4ff596495589442a","Apache-2.0",{"promptVersionExtension":170,"promptVersionScoring":171,"score":346,"targetMarket":176,"tier":177},100,{"repoId":348},"kd70sna36fh1a450f5r7e0f8p986555e",{"anyEnrichmentAt":350,"extractAt":351,"githubAt":350,"llmAt":352,"updatedAt":352},1778054590995,1778054586606,1778054733091]