[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6FT69NFDT6PHSYGZQMEFASC":3,"skill-same:01M6FT69NFDT6PHSYGZQMEFASC":49},{"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":17,"publishedAt":22,"linkOnly":23,"markdownContent":24,"markdownBody":25,"frontMatter":26,"refName":27,"commitSha":28,"skillDirectory":29,"forksCount":13,"repositoryHtmlUrl":30,"repositoryHomepageUrl":6,"ownerHtmlUrl":31,"ownerBlogUrl":32,"ownerDescription":33,"updatedAt":34,"install":35,"resources":48},"01M6FT69NFDT6PHSYGZQMEFASC","azure-ai-voicelive-dotnet",null,"reikiplanet\u002Fdaoskills","reikiplanet","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F96377599?v=4","01M6CVWCMD740YHQDK7E9QYBW4","Reiki Planet","01M6CVWCS4KXVA2CWFVJ43EAXK",0,"MIT","https:\u002F\u002Fgithub.com\u002Freikiplanet\u002Fdaoskills\u002Fblob\u002Fmaster\u002Fdata\u002Fazure-ai-voicelive-dotnet\u002FSKILL.md",[],[18,19,20,21],"dotnet","azure ai","azure","azure ai voicelive dotnet","2026-11-10 10:12:30",false,"---\nname: azure-ai-voicelive-dotnet\ndescription: \"|\"\n  Azure AI Voice Live SDK for .NET. Build real-time voice AI applications with bidirectional WebSocket communication. Use for voice assistants, conversational AI, real-time speech-to-speech, and voice-enabled chatbots. Triggers: \"voice live\", \"real-time voice\", \"VoiceLiveClient\", \"VoiceLiveSession\", \"voice assistant .NET\", \"bidirectional audio\", \"speech-to-speech\".\npackage: Azure.AI.VoiceLive\nrisk: unknown\nsource: community\n---\n\n# Azure.AI.VoiceLive (.NET)\n\nReal-time voice AI SDK for building bidirectional voice assistants with Azure AI.\n\n## Installation\n\n```bash\ndotnet add package Azure.AI.VoiceLive\ndotnet add package Azure.Identity\ndotnet add package NAudio                    # For audio capture\u002Fplayback\n```\n\n**Current Versions**: Stable v1.0.0, Preview v1.1.0-beta.1\n\n## Environment Variables\n\n```bash\nAZURE_VOICELIVE_ENDPOINT=https:\u002F\u002F\u003Cresource>.services.ai.azure.com\u002F\nAZURE_VOICELIVE_MODEL=gpt-4o-realtime-preview\nAZURE_VOICELIVE_VOICE=en-US-AvaNeural\n# Optional: API key if not using Entra ID\nAZURE_VOICELIVE_API_KEY=\u003Cyour-api-key>\n```\n\n## Authentication\n\n### Microsoft Entra ID (Recommended)\n\n```csharp\nusing Azure.Identity;\nusing Azure.AI.VoiceLive;\n\nUri endpoint = new Uri(\"https:\u002F\u002Fyour-resource.cognitiveservices.azure.com\");\nDefaultAzureCredential credential = new DefaultAzureCredential();\nVoiceLiveClient client = new VoiceLiveClient(endpoint, credential);\n```\n\n**Required Role**: `Cognitive Services User` (assign in Azure Portal → Access control)\n\n### API Key\n\n```csharp\nUri endpoint = new Uri(\"https:\u002F\u002Fyour-resource.cognitiveservices.azure.com\");\nAzureKeyCredential credential = new AzureKeyCredential(\"your-api-key\");\nVoiceLiveClient client = new VoiceLiveClient(endpoint, credential);\n```\n\n## Client Hierarchy\n\n```\nVoiceLiveClient\n└── VoiceLiveSession (WebSocket connection)\n    ├── ConfigureSessionAsync()\n    ├── GetUpdatesAsync() → SessionUpdate events\n    ├── AddItemAsync() → UserMessageItem, FunctionCallOutputItem\n    ├── SendAudioAsync()\n    └── StartResponseAsync()\n```\n\n## Core Workflow\n\n### 1. Start Session and Configure\n\n```csharp\nusing Azure.Identity;\nusing Azure.AI.VoiceLive;\n\nvar endpoint = new Uri(Environment.GetEnvironmentVariable(\"AZURE_VOICELIVE_ENDPOINT\"));\nvar client = new VoiceLiveClient(endpoint, new DefaultAzureCredential());\n\nvar model = \"gpt-4o-mini-realtime-preview\";\n\n\u002F\u002F Start session\nusing VoiceLiveSession session = await client.StartSessionAsync(model);\n\n\u002F\u002F Configure session\nVoiceLiveSessionOptions sessionOptions = new()\n{\n    Model = model,\n    Instructions = \"You are a helpful AI assistant. Respond naturally.\",\n    Voice = new AzureStandardVoice(\"en-US-AvaNeural\"),\n    TurnDetection = new AzureSemanticVadTurnDetection()\n    {\n        Threshold = 0.5f,\n        PrefixPadding = TimeSpan.FromMilliseconds(300),\n        SilenceDuration = TimeSpan.FromMilliseconds(500)\n    },\n    InputAudioFormat = InputAudioFormat.Pcm16,\n    OutputAudioFormat = OutputAudioFormat.Pcm16\n};\n\n\u002F\u002F Set modalities (both text and audio for voice assistants)\nsessionOptions.Modalities.Clear();\nsessionOptions.Modalities.Add(InteractionModality.Text);\nsessionOptions.Modalities.Add(InteractionModality.Audio);\n\nawait session.ConfigureSessionAsync(sessionOptions);\n```\n\n### 2. Process Events\n\n```csharp\nawait foreach (SessionUpdate serverEvent in session.GetUpdatesAsync())\n{\n    switch (serverEvent)\n    {\n        case SessionUpdateResponseAudioDelta audioDelta:\n            byte[] audioData = audioDelta.Delta.ToArray();\n            \u002F\u002F Play audio via NAudio or other audio library\n            break;\n            \n        case SessionUpdateResponseTextDelta textDelta:\n            Console.Write(textDelta.Delta);\n            break;\n            \n        case SessionUpdateResponseFunctionCallArgumentsDone functionCall:\n            \u002F\u002F Handle function call (see Function Calling section)\n            break;\n            \n        case SessionUpdateError error:\n            Console.WriteLine($\"Error: {error.Error.Message}\");\n            break;\n            \n        case SessionUpdateResponseDone:\n            Console.WriteLine(\"\\n--- Response complete ---\");\n            break;\n    }\n}\n```\n\n### 3. Send User Message\n\n```csharp\nawait session.AddItemAsync(new UserMessageItem(\"Hello, can you help me?\"));\nawait session.StartResponseAsync();\n```\n\n### 4. Function Calling\n\n```csharp\n\u002F\u002F Define function\nvar weatherFunction = new VoiceLiveFunctionDefinition(\"get_current_weather\")\n{\n    Description = \"Get the current weather for a given location\",\n    Parameters = BinaryData.FromString(\"\"\"\n        {\n            \"type\": \"object\",\n            \"properties\": {\n                \"location\": {\n                    \"type\": \"string\",\n                    \"description\": \"The city and state or country\"\n                }\n            },\n            \"required\": [\"location\"]\n        }\n        \"\"\")\n};\n\n\u002F\u002F Add to session options\nsessionOptions.Tools.Add(weatherFunction);\n\n\u002F\u002F Handle function call in event loop\nif (serverEvent is SessionUpdateResponseFunctionCallArgumentsDone functionCall)\n{\n    if (functionCall.Name == \"get_current_weather\")\n    {\n        var parameters = JsonSerializer.Deserialize\u003CDictionary\u003Cstring, string>>(functionCall.Arguments);\n        string location = parameters?[\"location\"] ?? \"\";\n        \n        \u002F\u002F Call external service\n        string weatherInfo = $\"The weather in {location} is sunny, 75°F.\";\n        \n        \u002F\u002F Send response\n        await session.AddItemAsync(new FunctionCallOutputItem(functionCall.CallId, weatherInfo));\n        await session.StartResponseAsync();\n    }\n}\n```\n\n## Voice Options\n\n| Voice Type | Class | Example |\n|------------|-------|---------|\n| Azure Standard | `AzureStandardVoice` | `\"en-US-AvaNeural\"` |\n| Azure HD | `AzureStandardVoice` | `\"en-US-Ava:DragonHDLatestNeural\"` |\n| Azure Custom | `AzureCustomVoice` | Custom voice with endpoint ID |\n\n## Supported Models\n\n| Model | Description |\n|-------|-------------|\n| `gpt-4o-realtime-preview` | GPT-4o with real-time audio |\n| `gpt-4o-mini-realtime-preview` | Lightweight, fast interactions |\n| `phi4-mm-realtime` | Cost-effective multimodal |\n\n## Key Types Reference\n\n| Type | Purpose |\n|------|---------|\n| `VoiceLiveClient` | Main client for creating sessions |\n| `VoiceLiveSession` | Active WebSocket session |\n| `VoiceLiveSessionOptions` | Session configuration |\n| `AzureStandardVoice` | Standard Azure voice provider |\n| `AzureSemanticVadTurnDetection` | Voice activity detection |\n| `VoiceLiveFunctionDefinition` | Function tool definition |\n| `UserMessageItem` | User text message |\n| `FunctionCallOutputItem` | Function call response |\n| `SessionUpdateResponseAudioDelta` | Audio chunk event |\n| `SessionUpdateResponseTextDelta` | Text chunk event |\n\n## Best Practices\n\n1. **Always set both modalities** — Include `Text` and `Audio` for voice assistants\n2. **Use `AzureSemanticVadTurnDetection`** — Provides natural conversation flow\n3. **Configure appropriate silence duration** — 500ms typical to avoid premature cutoffs\n4. **Use `using` statement** — Ensures proper session disposal\n5. **Handle all event types** — Check for errors, audio, text, and function calls\n6. **Use DefaultAzureCredential** — Never hardcode API keys\n\n## Error Handling\n\n```csharp\nif (serverEvent is SessionUpdateError error)\n{\n    if (error.Error.Message.Contains(\"Cancellation failed: no active response\"))\n    {\n        \u002F\u002F Benign error, can ignore\n    }\n    else\n    {\n        Console.WriteLine($\"Error: {error.Error.Message}\");\n    }\n}\n```\n\n## Audio Configuration\n\n- **Input Format**: `InputAudioFormat.Pcm16` (16-bit PCM)\n- **Output Format**: `OutputAudioFormat.Pcm16`\n- **Sample Rate**: 24kHz recommended\n- **Channels**: Mono\n\n## Related SDKs\n\n| SDK | Purpose | Install |\n|-----|---------|---------|\n| `Azure.AI.VoiceLive` | Real-time voice (this SDK) | `dotnet add package Azure.AI.VoiceLive` |\n| `Microsoft.CognitiveServices.Speech` | Speech-to-text, text-to-speech | `dotnet add package Microsoft.CognitiveServices.Speech` |\n| `NAudio` | Audio capture\u002Fplayback | `dotnet add package NAudio` |\n\n## Reference Links\n\n| Resource | URL |\n|----------|-----|\n| NuGet Package | https:\u002F\u002Fwww.nuget.org\u002Fpackages\u002FAzure.AI.VoiceLive |\n| API Reference | https:\u002F\u002Flearn.microsoft.com\u002Fdotnet\u002Fapi\u002Fazure.ai.voicelive |\n| GitHub Source | https:\u002F\u002Fgithub.com\u002FAzure\u002Fazure-sdk-for-net\u002Ftree\u002Fmain\u002Fsdk\u002Fai\u002FAzure.AI.VoiceLive |\n| Quickstart | https:\u002F\u002Flearn.microsoft.com\u002Fazure\u002Fai-services\u002Fspeech-service\u002Fvoice-live-quickstart |\n\n## When to Use\nThis skill is applicable to execute the workflow or actions described in the overview.\n","# Azure.AI.VoiceLive (.NET)\n\nReal-time voice AI SDK for building bidirectional voice assistants with Azure AI.\n\n## Installation\n\n```bash\ndotnet add package Azure.AI.VoiceLive\ndotnet add package Azure.Identity\ndotnet add package NAudio                    # For audio capture\u002Fplayback\n```\n\n**Current Versions**: Stable v1.0.0, Preview v1.1.0-beta.1\n\n## Environment Variables\n\n```bash\nAZURE_VOICELIVE_ENDPOINT=https:\u002F\u002F\u003Cresource>.services.ai.azure.com\u002F\nAZURE_VOICELIVE_MODEL=gpt-4o-realtime-preview\nAZURE_VOICELIVE_VOICE=en-US-AvaNeural\n# Optional: API key if not using Entra ID\nAZURE_VOICELIVE_API_KEY=\u003Cyour-api-key>\n```\n\n## Authentication\n\n### Microsoft Entra ID (Recommended)\n\n```csharp\nusing Azure.Identity;\nusing Azure.AI.VoiceLive;\n\nUri endpoint = new Uri(\"https:\u002F\u002Fyour-resource.cognitiveservices.azure.com\");\nDefaultAzureCredential credential = new DefaultAzureCredential();\nVoiceLiveClient client = new VoiceLiveClient(endpoint, credential);\n```\n\n**Required Role**: `Cognitive Services User` (assign in Azure Portal → Access control)\n\n### API Key\n\n```csharp\nUri endpoint = new Uri(\"https:\u002F\u002Fyour-resource.cognitiveservices.azure.com\");\nAzureKeyCredential credential = new AzureKeyCredential(\"your-api-key\");\nVoiceLiveClient client = new VoiceLiveClient(endpoint, credential);\n```\n\n## Client Hierarchy\n\n```\nVoiceLiveClient\n└── VoiceLiveSession (WebSocket connection)\n    ├── ConfigureSessionAsync()\n    ├── GetUpdatesAsync() → SessionUpdate events\n    ├── AddItemAsync() → UserMessageItem, FunctionCallOutputItem\n    ├── SendAudioAsync()\n    └── StartResponseAsync()\n```\n\n## Core Workflow\n\n### 1. Start Session and Configure\n\n```csharp\nusing Azure.Identity;\nusing Azure.AI.VoiceLive;\n\nvar endpoint = new Uri(Environment.GetEnvironmentVariable(\"AZURE_VOICELIVE_ENDPOINT\"));\nvar client = new VoiceLiveClient(endpoint, new DefaultAzureCredential());\n\nvar model = \"gpt-4o-mini-realtime-preview\";\n\n\u002F\u002F Start session\nusing VoiceLiveSession session = await client.StartSessionAsync(model);\n\n\u002F\u002F Configure session\nVoiceLiveSessionOptions sessionOptions = new()\n{\n    Model = model,\n    Instructions = \"You are a helpful AI assistant. Respond naturally.\",\n    Voice = new AzureStandardVoice(\"en-US-AvaNeural\"),\n    TurnDetection = new AzureSemanticVadTurnDetection()\n    {\n        Threshold = 0.5f,\n        PrefixPadding = TimeSpan.FromMilliseconds(300),\n        SilenceDuration = TimeSpan.FromMilliseconds(500)\n    },\n    InputAudioFormat = InputAudioFormat.Pcm16,\n    OutputAudioFormat = OutputAudioFormat.Pcm16\n};\n\n\u002F\u002F Set modalities (both text and audio for voice assistants)\nsessionOptions.Modalities.Clear();\nsessionOptions.Modalities.Add(InteractionModality.Text);\nsessionOptions.Modalities.Add(InteractionModality.Audio);\n\nawait session.ConfigureSessionAsync(sessionOptions);\n```\n\n### 2. Process Events\n\n```csharp\nawait foreach (SessionUpdate serverEvent in session.GetUpdatesAsync())\n{\n    switch (serverEvent)\n    {\n        case SessionUpdateResponseAudioDelta audioDelta:\n            byte[] audioData = audioDelta.Delta.ToArray();\n            \u002F\u002F Play audio via NAudio or other audio library\n            break;\n            \n        case SessionUpdateResponseTextDelta textDelta:\n            Console.Write(textDelta.Delta);\n            break;\n            \n        case SessionUpdateResponseFunctionCallArgumentsDone functionCall:\n            \u002F\u002F Handle function call (see Function Calling section)\n            break;\n            \n        case SessionUpdateError error:\n            Console.WriteLine($\"Error: {error.Error.Message}\");\n            break;\n            \n        case SessionUpdateResponseDone:\n            Console.WriteLine(\"\\n--- Response complete ---\");\n            break;\n    }\n}\n```\n\n### 3. Send User Message\n\n```csharp\nawait session.AddItemAsync(new UserMessageItem(\"Hello, can you help me?\"));\nawait session.StartResponseAsync();\n```\n\n### 4. Function Calling\n\n```csharp\n\u002F\u002F Define function\nvar weatherFunction = new VoiceLiveFunctionDefinition(\"get_current_weather\")\n{\n    Description = \"Get the current weather for a given location\",\n    Parameters = BinaryData.FromString(\"\"\"\n        {\n            \"type\": \"object\",\n            \"properties\": {\n                \"location\": {\n                    \"type\": \"string\",\n                    \"description\": \"The city and state or country\"\n                }\n            },\n            \"required\": [\"location\"]\n        }\n        \"\"\")\n};\n\n\u002F\u002F Add to session options\nsessionOptions.Tools.Add(weatherFunction);\n\n\u002F\u002F Handle function call in event loop\nif (serverEvent is SessionUpdateResponseFunctionCallArgumentsDone functionCall)\n{\n    if (functionCall.Name == \"get_current_weather\")\n    {\n        var parameters = JsonSerializer.Deserialize\u003CDictionary\u003Cstring, string>>(functionCall.Arguments);\n        string location = parameters?[\"location\"] ?? \"\";\n        \n        \u002F\u002F Call external service\n        string weatherInfo = $\"The weather in {location} is sunny, 75°F.\";\n        \n        \u002F\u002F Send response\n        await session.AddItemAsync(new FunctionCallOutputItem(functionCall.CallId, weatherInfo));\n        await session.StartResponseAsync();\n    }\n}\n```\n\n## Voice Options\n\n| Voice Type | Class | Example |\n|------------|-------|---------|\n| Azure Standard | `AzureStandardVoice` | `\"en-US-AvaNeural\"` |\n| Azure HD | `AzureStandardVoice` | `\"en-US-Ava:DragonHDLatestNeural\"` |\n| Azure Custom | `AzureCustomVoice` | Custom voice with endpoint ID |\n\n## Supported Models\n\n| Model | Description |\n|-------|-------------|\n| `gpt-4o-realtime-preview` | GPT-4o with real-time audio |\n| `gpt-4o-mini-realtime-preview` | Lightweight, fast interactions |\n| `phi4-mm-realtime` | Cost-effective multimodal |\n\n## Key Types Reference\n\n| Type | Purpose |\n|------|---------|\n| `VoiceLiveClient` | Main client for creating sessions |\n| `VoiceLiveSession` | Active WebSocket session |\n| `VoiceLiveSessionOptions` | Session configuration |\n| `AzureStandardVoice` | Standard Azure voice provider |\n| `AzureSemanticVadTurnDetection` | Voice activity detection |\n| `VoiceLiveFunctionDefinition` | Function tool definition |\n| `UserMessageItem` | User text message |\n| `FunctionCallOutputItem` | Function call response |\n| `SessionUpdateResponseAudioDelta` | Audio chunk event |\n| `SessionUpdateResponseTextDelta` | Text chunk event |\n\n## Best Practices\n\n1. **Always set both modalities** — Include `Text` and `Audio` for voice assistants\n2. **Use `AzureSemanticVadTurnDetection`** — Provides natural conversation flow\n3. **Configure appropriate silence duration** — 500ms typical to avoid premature cutoffs\n4. **Use `using` statement** — Ensures proper session disposal\n5. **Handle all event types** — Check for errors, audio, text, and function calls\n6. **Use DefaultAzureCredential** — Never hardcode API keys\n\n## Error Handling\n\n```csharp\nif (serverEvent is SessionUpdateError error)\n{\n    if (error.Error.Message.Contains(\"Cancellation failed: no active response\"))\n    {\n        \u002F\u002F Benign error, can ignore\n    }\n    else\n    {\n        Console.WriteLine($\"Error: {error.Error.Message}\");\n    }\n}\n```\n\n## Audio Configuration\n\n- **Input Format**: `InputAudioFormat.Pcm16` (16-bit PCM)\n- **Output Format**: `OutputAudioFormat.Pcm16`\n- **Sample Rate**: 24kHz recommended\n- **Channels**: Mono\n\n## Related SDKs\n\n| SDK | Purpose | Install |\n|-----|---------|---------|\n| `Azure.AI.VoiceLive` | Real-time voice (this SDK) | `dotnet add package Azure.AI.VoiceLive` |\n| `Microsoft.CognitiveServices.Speech` | Speech-to-text, text-to-speech | `dotnet add package Microsoft.CognitiveServices.Speech` |\n| `NAudio` | Audio capture\u002Fplayback | `dotnet add package NAudio` |\n\n## Reference Links\n\n| Resource | URL |\n|----------|-----|\n| NuGet Package | https:\u002F\u002Fwww.nuget.org\u002Fpackages\u002FAzure.AI.VoiceLive |\n| API Reference | https:\u002F\u002Flearn.microsoft.com\u002Fdotnet\u002Fapi\u002Fazure.ai.voicelive |\n| GitHub Source | https:\u002F\u002Fgithub.com\u002FAzure\u002Fazure-sdk-for-net\u002Ftree\u002Fmain\u002Fsdk\u002Fai\u002FAzure.AI.VoiceLive |\n| Quickstart | https:\u002F\u002Flearn.microsoft.com\u002Fazure\u002Fai-services\u002Fspeech-service\u002Fvoice-live-quickstart |\n\n## When to Use\nThis skill is applicable to execute the workflow or actions described in the overview.\n",{},"master","dff58085da947e81e8418c922055644bf0082b1b","data\u002Fazure-ai-voicelive-dotnet","https:\u002F\u002Fgithub.com\u002Freikiplanet\u002Fdaoskills","https:\u002F\u002Fgithub.com\u002Freikiplanet","https:\u002F\u002Fwww.reiki-planet.com","Reiki Planet Game","2026-03-29 06:02:29",{"source":7,"skillName":5,"commands":36,"prompt":46,"zipAvailable":47},[37,40,43],{"tool":38,"command":39},"npx","npx skills add reikiplanet\u002Fdaoskills --skill azure-ai-voicelive-dotnet",{"tool":41,"command":42},"bunx","bunx skills add reikiplanet\u002Fdaoskills --skill azure-ai-voicelive-dotnet",{"tool":44,"command":45},"pnpm","pnpm dlx skills add reikiplanet\u002Fdaoskills --skill azure-ai-voicelive-dotnet","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Freikiplanet\u002Fdaoskills\u002Fblob\u002Fmaster\u002Fdata\u002Fazure-ai-voicelive-dotnet\u002FSKILL.md",true,[],[50,77,89,104,124,147],{"skillNo":51,"name":52,"nameZh":6,"description":53,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":54,"categories":55,"keywords":56,"publishedAt":22},"01M6G614JTEQJHPT8AKK3YQ18S","web-games","Web browser game development principles. Framework selection, WebGPU, optimization, PWA.","https:\u002F\u002Fgithub.com\u002Freikiplanet\u002Fdaoskills\u002Fblob\u002Fmaster\u002Fweb-games\u002FSKILL.md",[],[57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76],"games","web games","web","grep","principles","selection","community","framework selection","edit","write","read","pwa","game","web browser","game development","Optimization","framework","browser","development","webgpu",{"skillNo":78,"name":79,"nameZh":6,"description":80,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":81,"categories":82,"keywords":83,"publishedAt":22},"01M6G611H2YGV0GZFP90D38ZMJ","vr-ar","VR\u002FAR development principles. Comfort, interaction, performance requirements.","https:\u002F\u002Fgithub.com\u002Freikiplanet\u002Fdaoskills\u002Fblob\u002Fmaster\u002Fvr-ar\u002FSKILL.md",[],[84,85,75,86,87,63,65,66,67,60,88,61],"ar","vr ar","interaction","requirements","performance",{"skillNo":90,"name":91,"nameZh":6,"description":92,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":93,"categories":94,"keywords":95,"publishedAt":22},"01M6G60XNMHAMV1SV0EJ1CX0AY","templates","Project scaffolding templates for new applications. Use when creating new projects from scratch. Contains 12 templates for various tech stacks.","https:\u002F\u002Fgithub.com\u002Freikiplanet\u002Fdaoskills\u002Fblob\u002Fmaster\u002Ftemplates\u002FSKILL.md",[],[91,96,97,98,99,100,63,101,67,102,103,60],"project scaffolding","From Scratch","tech","project","scaffolding","use","projects","applications",{"skillNo":105,"name":106,"nameZh":6,"description":107,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":108,"categories":109,"keywords":110,"publishedAt":22},"01M6G60T0GATMK3Q5H8GDC1Z8S","wcag-audit-patterns","Conduct WCAG 2.2 accessibility audits with automated testing, manual verification, and remediation guidance. Use when auditing websites for accessibility, fixing WCAG violations, or implementing ac...","https:\u002F\u002Fgithub.com\u002Freikiplanet\u002Fdaoskills\u002Fblob\u002Fmaster\u002Fskills\u002Fsecurity\u002Fwcag-audit-patterns\u002FSKILL.md",[],[111,112,113,114,115,63,116,117,118,119,101,120,121,122,123],"wcag audit patterns","wcag audit","patterns","WCAG","audit","manual","with","automated testing","guidance","remediation","verification","accessibility","testing",{"skillNo":125,"name":126,"nameZh":6,"description":127,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":128,"categories":129,"keywords":130,"publishedAt":22},"01M6G60PMCHW1FRZ63F931QK3R","vulnerability-scanner","Advanced vulnerability analysis principles. OWASP 2025, Supply Chain Security, attack surface mapping, risk prioritization.","https:\u002F\u002Fgithub.com\u002Freikiplanet\u002Fdaoskills\u002Fblob\u002Fmaster\u002Fskills\u002Fsecurity\u002Fvulnerability-scanner\u002FSKILL.md",[],[131,132,133,134,135,136,137,138,63,67,60,139,61,140,141,142,143,144,145,146],"scanner","vulnerability scanner","vulnerability","prioritization","2025","mapping","chain","supply chain","Bash","analysis","risk","owasp","supply chain security","security","supply","advanced",{"skillNo":148,"name":149,"nameZh":6,"description":150,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":151,"categories":152,"keywords":153,"publishedAt":22},"01M6G60JZBB8DK0W3DSG1WNMZK","threat-modeling-expert","Expert in threat modeling methodologies, security architecture review, and risk assessment. Masters STRIDE, PASTA, attack trees, and security requirement extraction. Use for security architecture r...","https:\u002F\u002Fgithub.com\u002Freikiplanet\u002Fdaoskills\u002Fblob\u002Fmaster\u002Fskills\u002Fsecurity\u002Fthreat-modeling-expert\u002FSKILL.md",[],[154,155,156,157,158,159,160,161,144,101,162,163,164,63,165,166,167,141,168,169],"modeling","threat modeling expert","threat modeling","expert","threat","risk assessment","architecture review","architecture","security architecture review","trees","security architecture","security requirement extraction","assessment","extraction","review","stride"]