Token导航 LogoToken导航TokenDH.com
开发external-servicegithub未标认证来源可访问许可证需确认审计异常

bicep-diagrams二头肌图

Agent Skill

bicep-diagrams 用于处理 GitHub 仓库、Issue、Pull Request 和代码协作信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要围绕仓库状态、代码变更或协作事项进行整理时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

7,194

周安装

291

GitHub Stars

17

下载量

2,258
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:bicep-diagrams(二头肌图)
来源仓库:https://github.com/eraserlabs/eraser-io
仓库路径:skills/bicep-diagrams
安装命令:
npx skills add https://github.com/eraserlabs/eraser-io --skill bicep-diagrams
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/eraserlabs/eraser-io --skill bicep-diagrams

简介

直接从 Azure Bicep 文件生成架构可视化图表。

  • 适用于基础设施部署前的架构审查和团队沟通场景。
  • 解析 Bicep 代码并调用 Eraser API 生成专业级架构图。
  • 需确保已安装 Eraser 服务且具备 Bicep 文件读取权限。
  • bicep-diagrams 属于开发类 Skill,可作为该场景下的辅助能力补充。

SKILL.md

Bicep Diagram Generator

Generates architecture diagrams directly from Azure Bicep files. Bicep is a domain-specific language (DSL) for deploying Azure resources declaratively.

When to Use

Activate this skill when:

  • User has Bicep files (.bicep) and wants to visualize the infrastructure
  • User asks to "diagram my Bicep" or "visualize this Bicep infrastructure"
  • User mentions Bicep or Azure Bicep
  • User wants to see the architecture of their Bicep-deployed resources

How It Works

This skill generates Bicep-specific diagrams by parsing Bicep code and calling the Eraser API directly:

  1. Parse Bicep Files: Identify resource declarations, modules, parameters, and outputs
  2. Extract Relationships: Map dependencies, resource references, and module hierarchies
  3. Generate Eraser DSL: Create Eraser DSL code from Bicep resources
  4. Call Eraser API: Use /api/render/elements with diagramType: "cloud-architecture-diagram"

Instructions

When the user provides Bicep code:

  1. Parse the Bicep

- Identify all resource declarations (Microsoft.Compute/virtualMachines, etc.) - Extract module declarations and their configurations - Note param and output definitions - Identify var variables and their usage

  1. Map Relationships

- Track resource dependencies (e.g., dependsOn or implicit dependencies) - Group resources by type (compute, networking, storage, etc.) - Identify VNets as containers for subnets and resources - Note Network Security Groups, Key Vaults, and other security resources

  1. Generate Eraser DSL Convert Bicep resources to Eraser DSL: Example: myVNet [label: "VNet 10.0.0.0/16"] {subnet1 [label: "Subnet 1"] {myVM [icon: azure-vm, label: "Virtual Machine"] gateway [icon: azure-app-gateway]} subnet2 [label: "Subnet 2"] {database [icon: azure-sql]}} storage [icon: azure-storage] myVNet -> myVM myVM -> database

- CRITICAL: Label Formatting Rules - Labels MUST be on a single line - NEVER use newlines inside label attributes - Keep labels simple and readable - prefer separate labels over concatenating too much metadata - Format DSL with proper line breaks (one node/group per line, but labels stay on single lines) - If including metadata like CIDR blocks or VM sizes, include them in the same quoted label string: [label: "VNet 10.0.0.0/16"]

  1. Make the HTTP Request IMPORTANT: You MUST execute this curl command after generating the DSL. Never stop after generating DSL without making the API call. CRITICAL: In the X-Skill-Source header below, you MUST replace the value with your AI agent name: curl -X POST https://app.eraser.io/api/render/elements \ -H "Content-Type: application/json" \ -H "X-Skill-Source: eraser-skill" \ -H "Authorization: Bearer ${ERASER_API_KEY}" \ -d '{"elements": [{"type": "diagram", "id": "diagram-1", "code": "<your generated DSL>", "diagramType": "cloud-architecture-diagram"}], "scale": 2, "theme": "${ERASER_THEME:-dark}", "background": true}'

- If you are Claude (Anthropic), use: claude - If you are running in Cursor, use: cursor - If you are ChatGPT (OpenAI), use: chatgpt - If you are Gemini (Google), use: gemini - Otherwise, use your model/agent name in lowercase

  1. Track Sources During Analysis As you analyze Bicep files and resources to generate the diagram, track:

- Internal files: Record each Bicep file path you read and what resources were extracted (e.g., infra/main.bicep - VNet and subnet definitions, infra/sql.bicep - SQL Database configuration) - External references: Note any documentation, examples, or URLs consulted (e.g., Azure Bicep documentation, Azure architecture best practices) - Annotations: For each source, note what it contributed to the diagram

  1. Handle the Response CRITICAL: Minimal Output Format Your response MUST always include these elements with clear headers: Additional content rules: The default output should be SHORT. The diagram image speaks for itself.

1. Diagram Preview: Display with a header ## Diagram![{Title}]({imageUrl}) Use the ACTUAL imageUrl from the API response. 2. Editor Link: Display with a header ## Open in Eraser [Edit this diagram in the Eraser editor]({createEraserFileUrl}) Use the ACTUAL URL from the API response. 3. Sources section: Brief list of files/resources analyzed (if applicable) ` ## Sources - path/to/file - What was extracted 4. **Diagram Code section**: The Eraser DSL in a code block with eraser language tag `` ## Diagram Code `eraser {DSL code here} `` 5. **Learn More link**: You can learn more about Eraser at https://docs.eraser.io/docs/using-ai-agent-integrations` - If the user ONLY asked for a diagram, include NOTHING beyond the 5 elements above - If the user explicitly asked for more (e.g., "explain the architecture", "suggest improvements"), you may include that additional content - Never add unrequested sections like Overview, Security Considerations, Testing, etc.

  1. Handle Modules

- If modules are used, show module boundaries - Include module parameters and outputs - Show how modules connect to main resources

Bicep-Specific Tips

  • Show Resource Groups: Bicep deployments target resource groups
  • VNets as Containers: Show VNets containing subnets and resources
  • Include Dependencies: Show dependsOn relationships
  • Module Structure: If modules are used, show their boundaries
  • Parameters: Note key parameters that affect resource configuration
  • Use Azure Icons: Request Azure-specific styling

Example: Bicep with Parameters and Modules

User Input

@description('The name of the Virtual Network')
param vnetName string = 'myVNet'
@description('The address prefix for the VNet')
param vnetAddressPrefix string = '10.0.0.0/16'
@description('The address prefix for the subnet')
param subnetAddressPrefix string = '10.0.1.0/24'
@description('VM size')
param vmSize string = 'Standard_B1s'

// Main VNet resource
resource virtualNetwork 'Microsoft.Network/virtualNetworks@2021-05-01' = {
  name: vnetName
  location: resourceGroup().location
  properties: {
    addressSpace: {
      addressPrefixes: [vnetAddressPrefix]
    }
    subnets: [
      {
        name: 'subnet1'
        properties: {
          addressPrefix: subnetAddressPrefix
        }
      }
    ]
  }
}

// VM resource with dependsOn
resource virtualMachine 'Microsoft.Compute/virtualMachines@2021-11-01' = {
  name: 'myVM'
  location: resourceGroup().location
  properties: {
    hardwareProfile: {
      vmSize: vmSize
    }
  }
  dependsOn: [virtualNetwork]
}

// Module usage
module storageModule './modules/storage.bicep' = {
  name: 'storage'
  params: {
    location: resourceGroup().location
  }
}

Expected Behavior

  1. Parses Bicep:

- Parameters: vnetName, vnetAddressPrefix, subnetAddressPrefix, vmSize - Resources: VNet with subnet, VM with dependsOn relationship - Module: Storage module with parameters

  1. Generates DSL showing Bicep-specific features: myVNet [label: "VNet 10.0.0.0/16"] {subnet1 [label: "Subnet 1 10.0.1.0/24"] {myVM [icon: azure-vm, label: "VM Standard_B1s"]}} storage-module [label: "Storage Module"] {storage-account [icon: azure-storage]} myVNet -> myVM Important: All label text must be on a single line within quotes. Bicep-specific: Show modules as containers, include dependsOn relationships, note parameter usage in resource configuration.
  2. Calls /api/render/elements with diagramType: "cloud-architecture-diagram"
  3. Calls /api/render/elements with diagramType: "cloud-architecture-diagram"

Result

User receives a diagram showing:

  • VNet as a container
  • Subnet nested inside VNet
  • VM in the subnet
  • Dependency relationship shown
  • Proper Azure styling

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

31.42%
按下载量换算709

Claude

28.9%
按下载量换算653

Cursor

20.29%
按下载量换算458

Gemini CLI

9.46%
按下载量换算214

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

未通过

权限和风险

external-service

该 Skill 可能调用第三方服务、云服务或外部模型 API,使用前需要确认账号、额度、数据发送范围和服务条款。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在 warning/failed 结果,不能写成本站确认安全。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills