[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6CTSVTQ2VVXN9V8R4KGG6PC":3,"skill-same:01M6CTSVTQ2VVXN9V8R4KGG6PC":57},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":18,"publishedAt":28,"linkOnly":29,"markdownContent":30,"markdownBody":31,"frontMatter":32,"refName":35,"commitSha":36,"skillDirectory":37,"forksCount":38,"repositoryHtmlUrl":39,"repositoryHomepageUrl":39,"ownerHtmlUrl":40,"ownerBlogUrl":6,"ownerDescription":41,"updatedAt":42,"install":43,"resources":56},"01M6CTSVTQ2VVXN9V8R4KGG6PC","m365-agents-ts",null,"Microsoft 365 Agents SDK for TypeScript\u002FNode.js.","Sam-06060\u002Fjarvis-assistant","Sam-06060","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F208600848?v=4","01M6CRKT7C7FXD21V6HXF293S0","Samson Frank Ganta","01M6CRKTBEKYFD8YX5Z1GT99EE",6,"Apache-2.0","https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fmodules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Fm365-agents-ts\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27],"m365 agents ts","m365","typescript","agents sdk","sdk","microsoft","js","node","community","2026-11-10 10:12:30",false,"---\nname: m365-agents-ts\ndescription: Microsoft 365 Agents SDK for TypeScript\u002FNode.js.\nrisk: unknown\nsource: community\ndate_added: '2026-02-27'\n---\n\n# Microsoft 365 Agents SDK (TypeScript)\n\nBuild enterprise agents for Microsoft 365, Teams, and Copilot Studio using the Microsoft 365 Agents SDK with Express hosting, AgentApplication routing, streaming responses, and Copilot Studio client integrations.\n\n## Before implementation\n- Use the microsoft-docs MCP to verify the latest API signatures for AgentApplication, startServer, and CopilotStudioClient.\n- Confirm package versions on npm before wiring up samples or templates.\n\n## Installation\n\n```bash\nnpm install @microsoft\u002Fagents-hosting @microsoft\u002Fagents-hosting-express @microsoft\u002Fagents-activity\nnpm install @microsoft\u002Fagents-copilotstudio-client\n```\n\n## Environment Variables\n\n```bash\nPORT=3978\nAZURE_RESOURCE_NAME=\u003Cazure-openai-resource>\nAZURE_API_KEY=\u003Cazure-openai-key>\nAZURE_OPENAI_DEPLOYMENT_NAME=gpt-4o-mini\n\nTENANT_ID=\u003Ctenant-id>\nCLIENT_ID=\u003Cclient-id>\nCLIENT_SECRET=\u003Cclient-secret>\n\nCOPILOT_ENVIRONMENT_ID=\u003Cenvironment-id>\nCOPILOT_SCHEMA_NAME=\u003Cschema-name>\nCOPILOT_CLIENT_ID=\u003Ccopilot-app-client-id>\nCOPILOT_BEARER_TOKEN=\u003Ccopilot-jwt>\n```\n\n## Core Workflow: Express-hosted AgentApplication\n\n```typescript\nimport { AgentApplication, TurnContext, TurnState } from \"@microsoft\u002Fagents-hosting\";\nimport { startServer } from \"@microsoft\u002Fagents-hosting-express\";\n\nconst agent = new AgentApplication\u003CTurnState>();\n\nagent.onConversationUpdate(\"membersAdded\", async (context: TurnContext) => {\n  await context.sendActivity(\"Welcome to the agent.\");\n});\n\nagent.onMessage(\"hello\", async (context: TurnContext) => {\n  await context.sendActivity(`Echo: ${context.activity.text}`);\n});\n\nstartServer(agent);\n```\n\n## Streaming responses with Azure OpenAI\n\n```typescript\nimport { azure } from \"@ai-sdk\u002Fazure\";\nimport { AgentApplication, TurnContext, TurnState } from \"@microsoft\u002Fagents-hosting\";\nimport { startServer } from \"@microsoft\u002Fagents-hosting-express\";\nimport { streamText } from \"ai\";\n\nconst agent = new AgentApplication\u003CTurnState>();\n\nagent.onMessage(\"poem\", async (context: TurnContext) => {\n  context.streamingResponse.setFeedbackLoop(true);\n  context.streamingResponse.setGeneratedByAILabel(true);\n  context.streamingResponse.setSensitivityLabel({\n    type: \"https:\u002F\u002Fschema.org\u002FMessage\",\n    \"@type\": \"CreativeWork\",\n    name: \"Internal\",\n  });\n\n  await context.streamingResponse.queueInformativeUpdate(\"starting a poem...\");\n\n  const { fullStream } = streamText({\n    model: azure(process.env.AZURE_OPENAI_DEPLOYMENT_NAME || \"gpt-4o-mini\"),\n    system: \"You are a creative assistant.\",\n    prompt: \"Write a poem about Apollo.\",\n  });\n\n  try {\n    for await (const part of fullStream) {\n      if (part.type === \"text-delta\" && part.text.length > 0) {\n        await context.streamingResponse.queueTextChunk(part.text);\n      }\n      if (part.type === \"error\") {\n        throw new Error(`Streaming error: ${part.error}`);\n      }\n    }\n  } finally {\n    await context.streamingResponse.endStream();\n  }\n});\n\nstartServer(agent);\n```\n\n## Invoke activity handling\n\n```typescript\nimport { Activity, ActivityTypes } from \"@microsoft\u002Fagents-activity\";\nimport { AgentApplication, TurnContext, TurnState } from \"@microsoft\u002Fagents-hosting\";\n\nconst agent = new AgentApplication\u003CTurnState>();\n\nagent.onActivity(\"invoke\", async (context: TurnContext) => {\n  const invokeResponse = Activity.fromObject({\n    type: ActivityTypes.InvokeResponse,\n    value: { status: 200 },\n  });\n\n  await context.sendActivity(invokeResponse);\n  await context.sendActivity(\"Thanks for submitting your feedback.\");\n});\n```\n\n## Copilot Studio client (Direct to Engine)\n\n```typescript\nimport { CopilotStudioClient } from \"@microsoft\u002Fagents-copilotstudio-client\";\n\nconst settings = {\n  environmentId: process.env.COPILOT_ENVIRONMENT_ID!,\n  schemaName: process.env.COPILOT_SCHEMA_NAME!,\n  clientId: process.env.COPILOT_CLIENT_ID!,\n};\n\nconst tokenProvider = async (): Promise\u003Cstring> => {\n  return process.env.COPILOT_BEARER_TOKEN!;\n};\n\nconst client = new CopilotStudioClient(settings, tokenProvider);\n\nconst conversation = await client.startConversationAsync();\nconst reply = await client.askQuestionAsync(\"Hello!\", conversation.id);\nconsole.log(reply);\n```\n\n## Copilot Studio WebChat integration\n\n```typescript\nimport { CopilotStudioWebChat } from \"@microsoft\u002Fagents-copilotstudio-client\";\n\nconst directLine = CopilotStudioWebChat.createConnection(client, {\n  showTyping: true,\n});\n\nwindow.WebChat.renderWebChat({\n  directLine,\n}, document.getElementById(\"webchat\")!);\n```\n\n## Best Practices\n\n1. Use AgentApplication for routing and keep handlers focused on one responsibility.\n2. Prefer streamingResponse for long-running completions and call endStream in finally blocks.\n3. Keep secrets out of source code; load tokens from environment variables or secure stores.\n4. Reuse CopilotStudioClient instances and cache tokens in your token provider.\n5. Validate invoke payloads before logging or persisting feedback.\n\n## Reference Files\n\n| File | Contents |\n| --- | --- |\n| references\u002Facceptance-criteria.md | Import paths, hosting pipeline, streaming, and Copilot Studio patterns |\n\n## Reference Links\n\n| Resource | URL |\n| --- | --- |\n| Microsoft 365 Agents SDK | https:\u002F\u002Flearn.microsoft.com\u002Fen-us\u002Fmicrosoft-365\u002Fagents-sdk\u002F |\n| JavaScript SDK overview | https:\u002F\u002Flearn.microsoft.com\u002Fen-us\u002Fjavascript\u002Fapi\u002Foverview\u002Fagents-overview?view=agents-sdk-js-latest |\n| @microsoft\u002Fagents-hosting-express | https:\u002F\u002Flearn.microsoft.com\u002Fen-us\u002Fjavascript\u002Fapi\u002F%40microsoft\u002Fagents-hosting-express?view=agents-sdk-js-latest |\n| @microsoft\u002Fagents-copilotstudio-client | https:\u002F\u002Flearn.microsoft.com\u002Fen-us\u002Fjavascript\u002Fapi\u002F%40microsoft\u002Fagents-copilotstudio-client?view=agents-sdk-js-latest |\n| Integrate with Copilot Studio | https:\u002F\u002Flearn.microsoft.com\u002Fen-us\u002Fmicrosoft-365\u002Fagents-sdk\u002Fintegrate-with-mcs |\n| GitHub samples | https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002FAgents\u002Ftree\u002Fmain\u002Fsamples\u002Fnodejs |\n\n## When to Use\nThis skill is applicable to execute the workflow or actions described in the overview.\n","# Microsoft 365 Agents SDK (TypeScript)\n\nBuild enterprise agents for Microsoft 365, Teams, and Copilot Studio using the Microsoft 365 Agents SDK with Express hosting, AgentApplication routing, streaming responses, and Copilot Studio client integrations.\n\n## Before implementation\n- Use the microsoft-docs MCP to verify the latest API signatures for AgentApplication, startServer, and CopilotStudioClient.\n- Confirm package versions on npm before wiring up samples or templates.\n\n## Installation\n\n```bash\nnpm install @microsoft\u002Fagents-hosting @microsoft\u002Fagents-hosting-express @microsoft\u002Fagents-activity\nnpm install @microsoft\u002Fagents-copilotstudio-client\n```\n\n## Environment Variables\n\n```bash\nPORT=3978\nAZURE_RESOURCE_NAME=\u003Cazure-openai-resource>\nAZURE_API_KEY=\u003Cazure-openai-key>\nAZURE_OPENAI_DEPLOYMENT_NAME=gpt-4o-mini\n\nTENANT_ID=\u003Ctenant-id>\nCLIENT_ID=\u003Cclient-id>\nCLIENT_SECRET=\u003Cclient-secret>\n\nCOPILOT_ENVIRONMENT_ID=\u003Cenvironment-id>\nCOPILOT_SCHEMA_NAME=\u003Cschema-name>\nCOPILOT_CLIENT_ID=\u003Ccopilot-app-client-id>\nCOPILOT_BEARER_TOKEN=\u003Ccopilot-jwt>\n```\n\n## Core Workflow: Express-hosted AgentApplication\n\n```typescript\nimport { AgentApplication, TurnContext, TurnState } from \"@microsoft\u002Fagents-hosting\";\nimport { startServer } from \"@microsoft\u002Fagents-hosting-express\";\n\nconst agent = new AgentApplication\u003CTurnState>();\n\nagent.onConversationUpdate(\"membersAdded\", async (context: TurnContext) => {\n  await context.sendActivity(\"Welcome to the agent.\");\n});\n\nagent.onMessage(\"hello\", async (context: TurnContext) => {\n  await context.sendActivity(`Echo: ${context.activity.text}`);\n});\n\nstartServer(agent);\n```\n\n## Streaming responses with Azure OpenAI\n\n```typescript\nimport { azure } from \"@ai-sdk\u002Fazure\";\nimport { AgentApplication, TurnContext, TurnState } from \"@microsoft\u002Fagents-hosting\";\nimport { startServer } from \"@microsoft\u002Fagents-hosting-express\";\nimport { streamText } from \"ai\";\n\nconst agent = new AgentApplication\u003CTurnState>();\n\nagent.onMessage(\"poem\", async (context: TurnContext) => {\n  context.streamingResponse.setFeedbackLoop(true);\n  context.streamingResponse.setGeneratedByAILabel(true);\n  context.streamingResponse.setSensitivityLabel({\n    type: \"https:\u002F\u002Fschema.org\u002FMessage\",\n    \"@type\": \"CreativeWork\",\n    name: \"Internal\",\n  });\n\n  await context.streamingResponse.queueInformativeUpdate(\"starting a poem...\");\n\n  const { fullStream } = streamText({\n    model: azure(process.env.AZURE_OPENAI_DEPLOYMENT_NAME || \"gpt-4o-mini\"),\n    system: \"You are a creative assistant.\",\n    prompt: \"Write a poem about Apollo.\",\n  });\n\n  try {\n    for await (const part of fullStream) {\n      if (part.type === \"text-delta\" && part.text.length > 0) {\n        await context.streamingResponse.queueTextChunk(part.text);\n      }\n      if (part.type === \"error\") {\n        throw new Error(`Streaming error: ${part.error}`);\n      }\n    }\n  } finally {\n    await context.streamingResponse.endStream();\n  }\n});\n\nstartServer(agent);\n```\n\n## Invoke activity handling\n\n```typescript\nimport { Activity, ActivityTypes } from \"@microsoft\u002Fagents-activity\";\nimport { AgentApplication, TurnContext, TurnState } from \"@microsoft\u002Fagents-hosting\";\n\nconst agent = new AgentApplication\u003CTurnState>();\n\nagent.onActivity(\"invoke\", async (context: TurnContext) => {\n  const invokeResponse = Activity.fromObject({\n    type: ActivityTypes.InvokeResponse,\n    value: { status: 200 },\n  });\n\n  await context.sendActivity(invokeResponse);\n  await context.sendActivity(\"Thanks for submitting your feedback.\");\n});\n```\n\n## Copilot Studio client (Direct to Engine)\n\n```typescript\nimport { CopilotStudioClient } from \"@microsoft\u002Fagents-copilotstudio-client\";\n\nconst settings = {\n  environmentId: process.env.COPILOT_ENVIRONMENT_ID!,\n  schemaName: process.env.COPILOT_SCHEMA_NAME!,\n  clientId: process.env.COPILOT_CLIENT_ID!,\n};\n\nconst tokenProvider = async (): Promise\u003Cstring> => {\n  return process.env.COPILOT_BEARER_TOKEN!;\n};\n\nconst client = new CopilotStudioClient(settings, tokenProvider);\n\nconst conversation = await client.startConversationAsync();\nconst reply = await client.askQuestionAsync(\"Hello!\", conversation.id);\nconsole.log(reply);\n```\n\n## Copilot Studio WebChat integration\n\n```typescript\nimport { CopilotStudioWebChat } from \"@microsoft\u002Fagents-copilotstudio-client\";\n\nconst directLine = CopilotStudioWebChat.createConnection(client, {\n  showTyping: true,\n});\n\nwindow.WebChat.renderWebChat({\n  directLine,\n}, document.getElementById(\"webchat\")!);\n```\n\n## Best Practices\n\n1. Use AgentApplication for routing and keep handlers focused on one responsibility.\n2. Prefer streamingResponse for long-running completions and call endStream in finally blocks.\n3. Keep secrets out of source code; load tokens from environment variables or secure stores.\n4. Reuse CopilotStudioClient instances and cache tokens in your token provider.\n5. Validate invoke payloads before logging or persisting feedback.\n\n## Reference Files\n\n| File | Contents |\n| --- | --- |\n| references\u002Facceptance-criteria.md | Import paths, hosting pipeline, streaming, and Copilot Studio patterns |\n\n## Reference Links\n\n| Resource | URL |\n| --- | --- |\n| Microsoft 365 Agents SDK | https:\u002F\u002Flearn.microsoft.com\u002Fen-us\u002Fmicrosoft-365\u002Fagents-sdk\u002F |\n| JavaScript SDK overview | https:\u002F\u002Flearn.microsoft.com\u002Fen-us\u002Fjavascript\u002Fapi\u002Foverview\u002Fagents-overview?view=agents-sdk-js-latest |\n| @microsoft\u002Fagents-hosting-express | https:\u002F\u002Flearn.microsoft.com\u002Fen-us\u002Fjavascript\u002Fapi\u002F%40microsoft\u002Fagents-hosting-express?view=agents-sdk-js-latest |\n| @microsoft\u002Fagents-copilotstudio-client | https:\u002F\u002Flearn.microsoft.com\u002Fen-us\u002Fjavascript\u002Fapi\u002F%40microsoft\u002Fagents-copilotstudio-client?view=agents-sdk-js-latest |\n| Integrate with Copilot Studio | https:\u002F\u002Flearn.microsoft.com\u002Fen-us\u002Fmicrosoft-365\u002Fagents-sdk\u002Fintegrate-with-mcs |\n| GitHub samples | https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002FAgents\u002Ftree\u002Fmain\u002Fsamples\u002Fnodejs |\n\n## When to Use\nThis skill is applicable to execute the workflow or actions described in the overview.\n",{"name":5,"risk":33,"source":27,"date_added":34,"description":7},"unknown","2026-02-27","main","a50a3aa6b39fb0e1b7db88bef1bfc9c93606e126","modules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Fm365-agents-ts",0,"https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant","https:\u002F\u002Fgithub.com\u002FSam-06060","Mobile Application Developer | Kotlin | Flutter, KMP, Swfit, Android,Swift UI | Building at Saar It Resources | Creator of Jarvis (AI Assistant)","2026-06-23 05:13:38",{"source":8,"skillName":5,"commands":44,"prompt":54,"zipAvailable":55},[45,48,51],{"tool":46,"command":47},"npx","npx skills add Sam-06060\u002Fjarvis-assistant --skill m365-agents-ts",{"tool":49,"command":50},"bunx","bunx skills add Sam-06060\u002Fjarvis-assistant --skill m365-agents-ts",{"tool":52,"command":53},"pnpm","pnpm dlx skills add Sam-06060\u002Fjarvis-assistant --skill m365-agents-ts","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fmodules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Fm365-agents-ts\u002FSKILL.md",true,[],[58,71,86,113,132,159],{"skillNo":59,"name":60,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":61,"categories":62,"keywords":68,"publishedAt":28},"01M6GDRVS6FXX3ESH0C9DW01C0","test_skill","https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fscratch\u002Ftest_skill\u002FSKILL.md",[63],{"categoryNo":64,"categoryName":65,"taxonomyType":66,"taxonomyTypeDesc":67},"01JBSEEDCAT000000000000008","测试与质量","SCENARIO","使用场景",[69,70],"Test Skill","test",{"skillNo":72,"name":73,"nameZh":6,"description":74,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":75,"categories":76,"keywords":77,"publishedAt":28},"01M6GDRQ40HX22MA6XWC31RHHK","zustand-store-ts","Create Zustand stores following established patterns with proper TypeScript types and middleware.","https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fmodules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Fzustand-store-ts\u002FSKILL.md",[],[78,79,80,81,82,83,84,27,85,21],"zustand store ts","zustand","store","with","types","middleware","patterns","create",{"skillNo":87,"name":88,"nameZh":6,"description":89,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":90,"categories":91,"keywords":95,"publishedAt":28},"01M6GDRKEA0WE670SPFWX5GKCN","zoom-automation","Automate Zoom meeting creation, management, recordings, webinars, and participant tracking via Rube MCP (Composio). Always search tools first for current schemas.","https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fmodules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Fzoom-automation\u002FSKILL.md",[92],{"categoryNo":93,"categoryName":94,"taxonomyType":66,"taxonomyTypeDesc":67},"01JBSEEDCAT000000000000023","Skill与智能体开发",[96,97,98,99,100,101,102,103,104,105,106,107,108,109,27,110,111,112],"automation","zoom automation","zoom","first","Tools","search","MCP","via","meeting","automate","critical","creation","webinars","composio","recordings","management","tracking",{"skillNo":114,"name":115,"nameZh":6,"description":116,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":117,"categories":118,"keywords":120,"publishedAt":28},"01M6GDRFS1452PC71JQ38S24HR","zoho-crm-automation","Automate Zoho CRM tasks via Rube MCP (Composio): create\u002Fupdate records, search contacts, manage leads, and convert leads. Always search tools first for current schemas.","https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fmodules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Fzoho-crm-automation\u002FSKILL.md",[119],{"categoryNo":93,"categoryName":94,"taxonomyType":66,"taxonomyTypeDesc":67},[121,96,122,123,124,125,126,27,101,127,109,128,106,105,100,129,85,130,102,131],"crm automation","zoho crm","crm","zoho crm automation","zoho","leads","contacts","records","update","tasks","manage",{"skillNo":133,"name":134,"nameZh":6,"description":135,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":136,"categories":137,"keywords":141,"publishedAt":28},"01M6GDRCKQBAVTGHX5XBH26KPZ","zod-validation-expert","Expert in Zod — TypeScript-first schema validation. Covers parsing, custom errors, refinements, type inference, and integration with React Hook Form, Next.js, and tRPC.","https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fmodules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Fzod-validation-expert\u002FSKILL.md",[138],{"categoryNo":139,"categoryName":140,"taxonomyType":66,"taxonomyTypeDesc":67},"01JBSEEDCAT000000000000009","前端开发",[142,143,144,145,146,21,147,148,149,150,151,152,81,153,154,155,156,27,157,158],"expert","zod","zod validation expert","validation","react","safe","parsing","errors","schema validation","react hook form","hook","trpc","form","type","next","schema","Next.js",{"skillNo":160,"name":161,"nameZh":6,"description":162,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":163,"categories":164,"keywords":166,"publishedAt":28},"01M6GDR658B08K4MY0RWD4A6EH","zeroize-audit","Detects missing zeroization of sensitive data in source code and identifies zeroization removed by compiler optimizations, with assembly-level analysis, and control-flow verification. Use for auditing C\u002FC++\u002FRust code handling secrets, keys, passwords, or other sensitive data.","https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fmodules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Fzeroize-audit\u002FSKILL.md",[165],{"categoryNo":93,"categoryName":94,"taxonomyType":66,"taxonomyTypeDesc":67},[167,168,169,170,171,172,173,174,27,175,176,177,178,179,180,181,182,183,184,102],"zeroize audit","audit","write","passwords","get","project","c++","activate","assembly","read","Bash","secrets","analysis","data","flow","verification","code","rust"]