{"_id":"@azure/functions-skills","_rev":"6-8a86e187a7fff84a34b2a1b7ab8e68f3","name":"@azure/functions-skills","dist-tags":{"latest":"0.0.6-preview"},"versions":{"0.0.1-preview":{"name":"@azure/functions-skills","version":"0.0.1-preview","keywords":["azure-functions","serverless","copilot","claude","codex","ai-skills","coding-agent"],"license":"MIT","_id":"@azure/functions-skills@0.0.1-preview","maintainers":[{"name":"azure-sdk","email":"azure-sdk-npmjs@microsoft.com"},{"name":"microsoft1es","email":"npmjs@microsoft.com"},{"name":"microsoft-oss-releases","email":"microsoft-oss-publishing@microsoft.com"}],"bin":{"azure-functions-skills":"bin/azure-functions-skills.js"},"tag":"latest","dist":{"shasum":"5887a1c3a0bdb95d7310f82e4ab8db60b9adbb12","tarball":"https://registry.npmjs.org/@azure/functions-skills/-/functions-skills-0.0.1-preview.tgz","fileCount":130,"integrity":"sha512-Xg1zNQubNdZfq5u8x/w8BNQa2mA4RVBGyxzagvhqChO9aRaJLSHVh4ob0fEhd2Wmch7SRE1UG17a3X5YbqDtxw==","signatures":[{"sig":"MEUCIQD5Hmxu92hmmkfp58pwK4MH3Ugo/6BKdLKYjZ56Q2Y2EwIgFtpVpfjWt8UcZQWAsOM+NowiZVw+Kty3XKFkAyU9KjM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":435616},"type":"module","_from":"file:M:\\SvcFab\\_App\\MS.Ess.PackageManager.Publisher_App1\\temp\\02747282-4755-483f-8de1-c5fab7db443d\\azure-functions-skills-0.0.1-preview.tgz","types":"./lib/setup/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./lib/setup/index.d.ts","default":"./lib/setup/index.js"},"./chat":{"types":"./lib/chat/index.d.ts","default":"./lib/chat/index.js"},"./setup":{"types":"./lib/setup/index.d.ts","default":"./lib/setup/index.js"}},"scripts":{"ci":"npm run check","lint":"eslint .","test":"vitest run","build":"npm run compile && node lib/build/build.js","check":"npm run lint && npm run typecheck && npm run validate:skills && npm run verify:plugin-payload && npm test && npm run build","setup":"node bin/azure-functions-skills.js setup","compile":"tsc","prepack":"npm run compile && node scripts/strip-sourcemaps.mjs","new:skill":"npm run compile && node lib/build/new-skill.js","typecheck":"tsc --noEmit -p tsconfig.typecheck.json","test:watch":"vitest","release:local":"node scripts/release-local.mjs","validate:skills":"npm run compile && node lib/build/validate-skills.js","build:plugin-payload":"npm run compile && node lib/build/build.js --plugin-only --repo-plugin-dir .github/plugins/azure-functions-skills --marketplace-root .","verify:plugin-payload":"npm run compile && node lib/build/verify-plugin-payload.js"},"_npmUser":{"name":"microsoft1es","email":"npmjs@microsoft.com"},"_resolved":"M:\\SvcFab\\_App\\MS.Ess.PackageManager.Publisher_App1\\temp\\02747282-4755-483f-8de1-c5fab7db443d\\azure-functions-skills-0.0.1-preview.tgz","_integrity":"sha512-Xg1zNQubNdZfq5u8x/w8BNQa2mA4RVBGyxzagvhqChO9aRaJLSHVh4ob0fEhd2Wmch7SRE1UG17a3X5YbqDtxw==","description":"AI assistant plugins for Azure Functions — one-command setup for GitHub Copilot, Claude Code, and Codex","directories":{},"_nodeVersion":"18.5.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.3.0","vitest":"^3.1.1","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^25.6.0","typescript-eslint":"^8.59.1"},"_npmOperationalInternal":{"tmp":"tmp/functions-skills_0.0.1-preview_1779872997824_0.6822405378454457","host":"s3://npm-registry-packages-npm-production"}},"0.0.2-preview":{"name":"@azure/functions-skills","version":"0.0.2-preview","keywords":["azure-functions","serverless","copilot","claude","codex","ai-skills","coding-agent"],"license":"MIT","_id":"@azure/functions-skills@0.0.2-preview","maintainers":[{"name":"azure-sdk","email":"azure-sdk-npmjs@microsoft.com"},{"name":"microsoft1es","email":"npmjs@microsoft.com"},{"name":"microsoft-oss-releases","email":"microsoft-oss-publishing@microsoft.com"}],"bin":{"azure-functions-skills":"bin/azure-functions-skills.js"},"tag":"latest","dist":{"shasum":"a6c386881ac5e64d6bf4b7522455a4e663b8ecdb","tarball":"https://registry.npmjs.org/@azure/functions-skills/-/functions-skills-0.0.2-preview.tgz","fileCount":130,"integrity":"sha512-DS/NRWuV8jXh7NQqSW3DCQtGAcjgVhzLCXHxI6WhL291d2bFcPYU2TdTobXVdIkg3ZPRssvk3gJvVxUa7Y8hVg==","signatures":[{"sig":"MEQCICPgPlaeP3GmtMLpU1scgwYvz5eS8yEUMG4L0x4VN0iOAiBj4mC+eemzuhBBWVrOCA+w6FiDKlJZjIl1JX4vgJUbWQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":440494},"type":"module","_from":"file:M:\\SvcFab\\_App\\MS.Ess.PackageManager.Publisher_App1\\temp\\e7b8a27a-07ef-4928-be42-79f13c8f6dfc\\azure-functions-skills-0.0.2-preview.tgz","types":"./lib/setup/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./lib/setup/index.d.ts","default":"./lib/setup/index.js"},"./chat":{"types":"./lib/chat/index.d.ts","default":"./lib/chat/index.js"},"./setup":{"types":"./lib/setup/index.d.ts","default":"./lib/setup/index.js"}},"scripts":{"ci":"npm run check","lint":"eslint .","test":"vitest run","build":"npm run compile && node lib/build/build.js","check":"npm run lint && npm run typecheck && npm run validate:skills && npm run verify:plugin-payload && npm test && npm run build","setup":"node bin/azure-functions-skills.js setup","compile":"tsc","prepack":"npm run compile && node scripts/strip-sourcemaps.mjs","new:skill":"npm run compile && node lib/build/new-skill.js","typecheck":"tsc --noEmit -p tsconfig.typecheck.json","test:watch":"vitest","release:local":"node scripts/release-local.mjs","validate:skills":"npm run compile && node lib/build/validate-skills.js","build:plugin-payload":"npm run compile && node lib/build/build.js --plugin-only --repo-plugin-dir .github/plugins/azure-functions-skills --marketplace-root .","verify:plugin-payload":"npm run compile && node lib/build/verify-plugin-payload.js"},"_npmUser":{"name":"microsoft1es","email":"npmjs@microsoft.com"},"_resolved":"M:\\SvcFab\\_App\\MS.Ess.PackageManager.Publisher_App1\\temp\\e7b8a27a-07ef-4928-be42-79f13c8f6dfc\\azure-functions-skills-0.0.2-preview.tgz","_integrity":"sha512-DS/NRWuV8jXh7NQqSW3DCQtGAcjgVhzLCXHxI6WhL291d2bFcPYU2TdTobXVdIkg3ZPRssvk3gJvVxUa7Y8hVg==","description":"AI assistant plugins for Azure Functions — one-command setup for GitHub Copilot, Claude Code, and Codex","directories":{},"_nodeVersion":"18.5.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.3.0","vitest":"^3.1.1","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^25.6.0","typescript-eslint":"^8.59.1"},"_npmOperationalInternal":{"tmp":"tmp/functions-skills_0.0.2-preview_1779877430811_0.4081375942320624","host":"s3://npm-registry-packages-npm-production"}},"0.0.3-preview":{"name":"@azure/functions-skills","version":"0.0.3-preview","keywords":["azure-functions","serverless","copilot","claude","codex","ai-skills","coding-agent"],"license":"MIT","_id":"@azure/functions-skills@0.0.3-preview","maintainers":[{"name":"azure-sdk","email":"azure-sdk-npmjs@microsoft.com"},{"name":"microsoft1es","email":"npmjs@microsoft.com"},{"name":"microsoft-oss-releases","email":"microsoft-oss-publishing@microsoft.com"}],"bin":{"azure-functions-skills":"bin/azure-functions-skills.js"},"tag":"latest","dist":{"shasum":"fd07abff8888e9b3900c73758538d6bd8f51becb","tarball":"https://registry.npmjs.org/@azure/functions-skills/-/functions-skills-0.0.3-preview.tgz","fileCount":131,"integrity":"sha512-VaG10bPmK+Hjaq4v4X7s9+L1k6idGnHRq1RUmCM/cd8XDMVF0VAJgI4CtYX8oFQfbKQkuZQSoL42EF7zMhrEdw==","signatures":[{"sig":"MEUCIAzdRmSdFnkZJGH+JUwHsVlVzCBTXUtS8JVwILU9PK1xAiEAnIjnTgF2CxEWSZGFEfEr253Zhn2q0goQJZ9zoPrSFDM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":468788},"type":"module","_from":"file:M:\\SvcFab\\_App\\MS.Ess.PackageManager.Publisher_App1\\temp\\b8a7a99c-0b6a-48a3-94ee-f786f17ade6b\\azure-functions-skills-0.0.3-preview.tgz","types":"./lib/setup/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./lib/setup/index.d.ts","default":"./lib/setup/index.js"},"./chat":{"types":"./lib/chat/index.d.ts","default":"./lib/chat/index.js"},"./setup":{"types":"./lib/setup/index.d.ts","default":"./lib/setup/index.js"}},"scripts":{"ci":"npm run check","lint":"eslint .","test":"vitest run","build":"npm run compile && node lib/build/build.js","check":"npm run lint && npm run typecheck && npm run lint:security && npm run validate:skills && npm run verify:plugin-payload && npm test && npm run build","setup":"node bin/azure-functions-skills.js setup","compile":"tsc","prepack":"npm run compile && node scripts/strip-sourcemaps.mjs","new:skill":"npm run compile && node lib/build/new-skill.js","typecheck":"tsc --noEmit -p tsconfig.typecheck.json","test:watch":"vitest","lint:security":"node scripts/lint-package-scripts.mjs && node scripts/lint-skill-content.mjs && node scripts/audit-npm-token.mjs","release:local":"node scripts/release-local.mjs","validate:skills":"npm run compile && node lib/build/validate-skills.js","build:plugin-payload":"npm run compile && node lib/build/build.js --plugin-only --repo-plugin-dir .github/plugins/azure-functions-skills --marketplace-root .","verify:plugin-payload":"npm run compile && node lib/build/verify-plugin-payload.js"},"_npmUser":{"name":"microsoft1es","email":"npmjs@microsoft.com"},"_resolved":"M:\\SvcFab\\_App\\MS.Ess.PackageManager.Publisher_App1\\temp\\b8a7a99c-0b6a-48a3-94ee-f786f17ade6b\\azure-functions-skills-0.0.3-preview.tgz","_integrity":"sha512-VaG10bPmK+Hjaq4v4X7s9+L1k6idGnHRq1RUmCM/cd8XDMVF0VAJgI4CtYX8oFQfbKQkuZQSoL42EF7zMhrEdw==","description":"AI assistant plugins for Azure Functions — one-command setup for GitHub Copilot, Claude Code, and Codex","directories":{},"_nodeVersion":"18.5.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.3.0","vitest":"^3.1.1","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^25.6.0","typescript-eslint":"^8.59.1"},"_npmOperationalInternal":{"tmp":"tmp/functions-skills_0.0.3-preview_1779917775355_0.5495115288931642","host":"s3://npm-registry-packages-npm-production"}},"0.0.4-preview":{"name":"@azure/functions-skills","version":"0.0.4-preview","keywords":["azure-functions","serverless","copilot","claude","codex","ai-skills","coding-agent"],"license":"MIT","_id":"@azure/functions-skills@0.0.4-preview","maintainers":[{"name":"azure-sdk","email":"azure-sdk-npmjs@microsoft.com"},{"name":"microsoft1es","email":"npmjs@microsoft.com"},{"name":"microsoft-oss-releases","email":"microsoft-oss-publishing@microsoft.com"}],"bin":{"azure-functions-skills":"bin/azure-functions-skills.js"},"tag":"latest","dist":{"shasum":"061968ca63a98b7d4b3c9b7f83f2a5a53d4e7353","tarball":"https://registry.npmjs.org/@azure/functions-skills/-/functions-skills-0.0.4-preview.tgz","fileCount":174,"integrity":"sha512-wub66hF1IgiwwK+sB/Vn1Q4U1BiUjaUeEdTm9a5KPeRWQc8gLm04FJP8Td8T7WmKo/K4BmbuH/cO/wWlPzg5/g==","signatures":[{"sig":"MEUCICuV4ivV+uNLkPiuCnUaTThn+Tf7+WGkUWmIr7O58eQ5AiEAvJrUGAKeA19uhDAcUdtZA8Ctc05Fga8l+o51Lu1ppcE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":705800},"type":"module","_from":"file:M:\\SvcFab\\_App\\MS.Ess.PackageManager.Publisher_App1\\temp\\1023e30e-c5f2-4863-b14f-b8ce9ac4a701\\azure-functions-skills-0.0.4-preview.tgz","types":"./lib/setup/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./lib/setup/index.d.ts","default":"./lib/setup/index.js"},"./chat":{"types":"./lib/chat/index.d.ts","default":"./lib/chat/index.js"},"./setup":{"types":"./lib/setup/index.d.ts","default":"./lib/setup/index.js"}},"scripts":{"ci":"npm run check","eval":"vally eval","lint":"eslint .","test":"vitest run","build":"npm run compile && node lib/build/build.js","check":"npm run lint && npm run typecheck && npm run lint:security && npm run validate:skills && npm run verify:plugin-payload && npm test && npm run build","setup":"node bin/azure-functions-skills.js setup","compile":"tsc","prepack":"npm run compile && node scripts/strip-sourcemaps.mjs","eval:full":"vally eval --suite full","eval:lint":"vally lint","new:skill":"npm run compile && node lib/build/new-skill.js","typecheck":"tsc --noEmit -p tsconfig.typecheck.json","eval:smoke":"vally eval --suite smoke","test:watch":"vitest","lint:security":"node scripts/lint-package-scripts.mjs && node scripts/lint-skill-content.mjs && node scripts/audit-npm-token.mjs","release:local":"node scripts/release-local.mjs","validate:skills":"npm run compile && node lib/build/validate-skills.js","build:plugin-payload":"npm run compile && node lib/build/build.js --plugin-only --repo-plugin-dir .github/plugins/azure-functions-skills --marketplace-root .","verify:plugin-payload":"npm run compile && node lib/build/verify-plugin-payload.js"},"_npmUser":{"name":"microsoft1es","email":"npmjs@microsoft.com"},"_resolved":"M:\\SvcFab\\_App\\MS.Ess.PackageManager.Publisher_App1\\temp\\1023e30e-c5f2-4863-b14f-b8ce9ac4a701\\azure-functions-skills-0.0.4-preview.tgz","_integrity":"sha512-wub66hF1IgiwwK+sB/Vn1Q4U1BiUjaUeEdTm9a5KPeRWQc8gLm04FJP8Td8T7WmKo/K4BmbuH/cO/wWlPzg5/g==","description":"AI assistant plugins for Azure Functions — one-command setup for GitHub Copilot, Claude Code, and Codex","directories":{},"_nodeVersion":"18.5.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.3.0","vitest":"^4.1.7","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^25.6.0","typescript-eslint":"^8.59.1","@microsoft/vally-cli":"^0.5.0"},"_npmOperationalInternal":{"tmp":"tmp/functions-skills_0.0.4-preview_1780337957758_0.4254424006583204","host":"s3://npm-registry-packages-npm-production"}},"0.0.5-preview":{"name":"@azure/functions-skills","version":"0.0.5-preview","keywords":["azure-functions","serverless","copilot","claude","codex","ai-skills","coding-agent"],"license":"MIT","_id":"@azure/functions-skills@0.0.5-preview","maintainers":[{"name":"azure-sdk","email":"azure-sdk-npmjs@microsoft.com"},{"name":"microsoft1es","email":"npmjs@microsoft.com"},{"name":"microsoft-oss-releases","email":"microsoft-oss-publishing@microsoft.com"}],"bin":{"azure-functions-skills":"bin/azure-functions-skills.js"},"tag":"latest","dist":{"shasum":"fc13fca988868ec700db42a5dc075a7caa7dffd0","tarball":"https://registry.npmjs.org/@azure/functions-skills/-/functions-skills-0.0.5-preview.tgz","fileCount":184,"integrity":"sha512-08wABa/7A5bzGnFMg7YaYjK3gvmz0tZ9GKDDFQnf6fiJDrIrwaQvdL6kU7K9NjljTbhQZiodo1tmqlWJ937HUA==","signatures":[{"sig":"MEQCIHxA4S27PbpBTiX3zFc4eNP6FRYoooOjEjcpyD7E9xvtAiAO/ZT1jNqM0Pf4RS6DyRb4uBNO3+LfYTY97llknE3RiA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":729260},"type":"module","_from":"file:M:\\SvcFab\\_App\\MS.Ess.PackageManager.Publisher_App1\\temp\\fbd98080-5e26-496a-818e-4028292b6980\\azure-functions-skills-0.0.5-preview.tgz","types":"./lib/setup/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./lib/setup/index.d.ts","default":"./lib/setup/index.js"},"./chat":{"types":"./lib/chat/index.d.ts","default":"./lib/chat/index.js"},"./setup":{"types":"./lib/setup/index.d.ts","default":"./lib/setup/index.js"}},"scripts":{"ci":"npm run check","eval":"vally eval","lint":"eslint .","test":"vitest run","build":"npm run compile && node lib/build/build.js","check":"npm run lint && npm run typecheck && npm run lint:security && npm run validate:skills && npm run verify:plugin-payload && npm test && npm run build","setup":"node bin/azure-functions-skills.js setup","compile":"tsc","prepack":"npm run compile && node scripts/strip-sourcemaps.mjs","eval:full":"vally eval --suite full","eval:lint":"vally lint","new:skill":"npm run compile && node lib/build/new-skill.js","typecheck":"tsc --noEmit -p tsconfig.typecheck.json","eval:smoke":"vally eval --suite smoke","test:watch":"vitest","lint:security":"node scripts/lint-package-scripts.mjs && node scripts/lint-skill-content.mjs && node scripts/audit-npm-token.mjs","release:local":"node scripts/release-local.mjs","validate:skills":"npm run compile && node lib/build/validate-skills.js","build:plugin-payload":"npm run compile && node lib/build/build.js --plugin-only --repo-plugin-dir .github/plugins/azure-functions-skills --marketplace-root .","verify:plugin-payload":"npm run compile && node lib/build/verify-plugin-payload.js"},"_npmUser":{"name":"microsoft1es","email":"npmjs@microsoft.com"},"_resolved":"M:\\SvcFab\\_App\\MS.Ess.PackageManager.Publisher_App1\\temp\\fbd98080-5e26-496a-818e-4028292b6980\\azure-functions-skills-0.0.5-preview.tgz","_integrity":"sha512-08wABa/7A5bzGnFMg7YaYjK3gvmz0tZ9GKDDFQnf6fiJDrIrwaQvdL6kU7K9NjljTbhQZiodo1tmqlWJ937HUA==","description":"AI assistant plugins for Azure Functions — one-command setup for GitHub Copilot, Claude Code, and Codex","directories":{},"_nodeVersion":"18.5.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.3.0","vitest":"^4.1.7","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^25.6.0","typescript-eslint":"^8.59.1","@microsoft/vally-cli":"^0.5.0"},"_npmOperationalInternal":{"tmp":"tmp/functions-skills_0.0.5-preview_1780515941506_0.5131334475244032","host":"s3://npm-registry-packages-npm-production"}},"0.0.6-preview":{"name":"@azure/functions-skills","version":"0.0.6-preview","description":"Azure Functions skills, MCP, and telemetry hooks for coding agents","type":"module","bin":{"azure-functions-skills":"bin/azure-functions-skills.js"},"types":"./lib/setup/index.d.ts","exports":{".":{"types":"./lib/setup/index.d.ts","default":"./lib/setup/index.js"},"./setup":{"types":"./lib/setup/index.d.ts","default":"./lib/setup/index.js"},"./templates":{"types":"./lib/templates/index.d.ts","default":"./lib/templates/index.js"},"./telemetry":{"types":"./lib/telemetry/index.d.ts","default":"./lib/telemetry/index.js"}},"publishConfig":{"access":"public"},"scripts":{"build":"npm run compile && node lib/build/build.js","build:plugin-payload":"npm run compile && node lib/build/build.js --plugin-only --repo-plugin-dir .github/plugins/azure-functions-skills --marketplace-root .","check":"npm run lint && npm run typecheck && npm run lint:security && npm run validate:skills && npm run verify:plugin-payload && npm test && npm run build","ci":"npm run check","compile":"tsc","lint":"eslint .","lint:security":"node scripts/lint-package-scripts.mjs && node scripts/lint-skill-content.mjs && node scripts/audit-npm-token.mjs","new:skill":"npm run compile && node lib/build/new-skill.js","prepack":"npm run compile && node scripts/strip-sourcemaps.mjs","test":"vitest run","test:watch":"vitest","typecheck":"tsc --noEmit -p tsconfig.typecheck.json","validate:skills":"npm run compile && node lib/build/validate-skills.js","verify:plugin-payload":"npm run compile && node lib/build/verify-plugin-payload.js","release:local":"node scripts/release-local.mjs","eval:lint":"vally lint","eval:smoke":"vally eval --suite smoke","eval:full":"vally eval --suite full","eval":"vally eval"},"engines":{"node":">=18"},"devDependencies":{"@eslint/js":"^10.0.1","@microsoft/vally-cli":"^0.7.0","@types/node":"^26.1.0","eslint":"^10.3.0","typescript":"^6.0.3","typescript-eslint":"^8.59.1","vitest":"^4.1.7"},"keywords":["azure-functions","serverless","copilot","claude","codex","ai-skills","coding-agent"],"license":"MIT","dependencies":{"applicationinsights":"1.8.10"},"_id":"@azure/functions-skills@0.0.6-preview","_integrity":"sha512-X7bAXcwORTCVZMRQVfyE6Pygz1e+ryvbdjqJhVvQmdc85O8Wdrb95bVv1UTLJ4XKPO0ZyXP4dliZOPxAv3DyZg==","_resolved":"M:\\SvcFab\\_App\\MS.Ess.PackageManager.Publisher_App1\\temp\\23a1feba-0d73-407e-b996-f65448c89b8a\\azure-functions-skills-0.0.6-preview.tgz","_from":"file:M:\\SvcFab\\_App\\MS.Ess.PackageManager.Publisher_App1\\temp\\23a1feba-0d73-407e-b996-f65448c89b8a\\azure-functions-skills-0.0.6-preview.tgz","tag":"latest","_nodeVersion":"18.5.0","dist":{"integrity":"sha512-X7bAXcwORTCVZMRQVfyE6Pygz1e+ryvbdjqJhVvQmdc85O8Wdrb95bVv1UTLJ4XKPO0ZyXP4dliZOPxAv3DyZg==","shasum":"cf755495ceaddf78921f192e319cb218ddc6945d","tarball":"https://registry.npmjs.org/@azure/functions-skills/-/functions-skills-0.0.6-preview.tgz","fileCount":276,"unpackedSize":1270309,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIHBsWQ83cmSbKF2cp9Z/evYjnpVkCdV5ivmZkEN9ZoI7AiBAiQZcTyaoi4AHx5EHqb1qpivwxQg4D/W9JQWM453Oog=="}]},"_npmUser":{"name":"microsoft1es","email":"npmjs@microsoft.com"},"directories":{},"maintainers":[{"name":"azure-sdk","email":"azure-sdk-npmjs@microsoft.com"},{"name":"microsoft1es","email":"npmjs@microsoft.com"},{"name":"microsoft-oss-releases","email":"microsoft-oss-publishing@microsoft.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/functions-skills_0.0.6-preview_1786483557189_0.45526547503222137"},"_hasShrinkwrap":false}},"time":{"created":"2026-05-27T09:09:57.715Z","modified":"2026-08-11T21:25:57.802Z","0.0.1-preview":"2026-05-27T09:09:57.980Z","0.0.2-preview":"2026-05-27T10:23:50.949Z","0.0.3-preview":"2026-05-27T21:36:15.543Z","0.0.4-preview":"2026-06-01T18:19:17.954Z","0.0.5-preview":"2026-06-03T19:45:41.713Z","0.0.6-preview":"2026-08-11T21:25:57.600Z"},"license":"MIT","keywords":["azure-functions","serverless","copilot","claude","codex","ai-skills","coding-agent"],"description":"Azure Functions skills, MCP, and telemetry hooks for coding agents","maintainers":[{"name":"azure-sdk","email":"azure-sdk-npmjs@microsoft.com"},{"name":"microsoft1es","email":"npmjs@microsoft.com"},{"name":"microsoft-oss-releases","email":"microsoft-oss-publishing@microsoft.com"}],"readme":"# Azure Functions Skills\r\n\r\n[![npm](https://img.shields.io/npm/v/@azure/functions-skills)](https://www.npmjs.com/package/@azure/functions-skills)\r\n[![E2E report](https://github.com/Azure/azure-functions-skills/actions/workflows/publish-e2e-report.yml/badge.svg)](https://azure.github.io/azure-functions-skills/)\r\n\r\n**Azure Functions context for your coding agent.** The plugin provides skills, Azure MCP configuration, and telemetry hooks for GitHub Copilot, Claude Code, and Codex. The `doctor` command catches configuration and code issues *before* you deploy.\r\n\r\nLatest E2E status: [HTML report](https://azure.github.io/azure-functions-skills/)\r\n\r\n## What & why\r\n\r\nAzure Functions Skills equips your coding agent with Functions-specific knowledge — trigger/binding patterns, language anti-patterns, runtime versions, deployment best practices — so the agent gives accurate guidance instead of generic advice.\r\n\r\nIt is **focused on Azure Functions**. For deployment of *any* Azure resource (Functions or otherwise), it delegates to [Azure Skills](https://github.com/microsoft/azure-skills) via the `azure-functions-deploy` skill. The two packages complement each other — see [docs/skills-vs-azure-skills.md](docs/skills-vs-azure-skills.md) for the role split.\r\n\r\n## Prerequisites\r\n\r\n**Node.js 20+** is the only thing you need to install yourself for the Azure Functions Skills CLI.\r\nUse **Node.js 24+** when installing or testing GitHub Copilot CLI (`--agent ghcp`) because the\r\nCopilot CLI runtime requires Node 24 or later. Claude Code and Codex do not currently require Node\r\n24. Everything else (Azure CLI, Core Tools, language runtimes) is checked and guided by the\r\n`azure-functions-setup` skill when environment verification is needed.\r\n\r\n## Quick Start\r\n\r\n### 1. Install the plugin with your coding agent\r\n\r\nChoose your coding agent and follow its install steps:\r\n\r\n#### GitHub Copilot CLI\r\n\r\nStart an interactive Copilot session with `copilot`, then run:\r\n\r\n```text\r\n/plugin marketplace add Azure/azure-functions-skills\r\n/plugin install azure-functions-skills@azure-functions-skills\r\n```\r\n\r\n#### GitHub Copilot app\r\n\r\n1. Open **Settings** (the gear icon), then select **Plugins**.\r\n2. Select **Install** to open the plugin installer, then add `Azure/azure-functions-skills` as a marketplace.\r\n3. Select **azure-functions-skills**, review its contents, and confirm the installation.\r\n\r\n#### GitHub Copilot in VS Code (Preview)\r\n\r\n1. Enable the `chat.plugins.enabled` setting. Your organization may manage this setting.\r\n2. Add this marketplace to your user `settings.json`:\r\n\r\n   ```json\r\n   {\r\n     \"chat.plugins.marketplaces\": [\r\n       \"Azure/azure-functions-skills\"\r\n     ]\r\n   }\r\n   ```\r\n\r\n3. Open the Extensions view (`Ctrl+Shift+X` or `Cmd+Shift+X`), search for `@agentPlugins`, and install **azure-functions-skills**.\r\n\r\nVS Code also discovers plugins installed by GitHub Copilot CLI. See [Agent plugins in VS Code](https://code.visualstudio.com/docs/agent-customization/agent-plugins) for more options.\r\n\r\n#### Claude Code\r\n\r\nStart an interactive Claude Code session with `claude`, then run:\r\n\r\n```text\r\n/plugin marketplace add Azure/azure-functions-skills\r\n/plugin install azure-functions-skills@azure-functions-skills\r\n```\r\n\r\n#### Codex CLI\r\n\r\nAdd this repository as a plugin marketplace from your terminal:\r\n\r\n```bash\r\ncodex plugin marketplace add Azure/azure-functions-skills\r\n```\r\n\r\nThen start Codex, run `/plugins`, select **azure-functions-skills**, and choose **Install plugin**.\r\n\r\n> The [`@azure/functions-skills`](https://www.npmjs.com/package/@azure/functions-skills) npm package provides the companion CLI and workspace-local install flow. Installing it does not install or launch a coding-agent plugin.\r\n\r\n### 2. Verify your prerequisites\r\n\r\nAsk your coding agent to run the `azure-functions-setup` skill. It checks the required Azure Functions tools and language runtimes, then guides you through installing or configuring anything that is missing.\r\n\r\n### 3. Ask for Azure Functions help\r\n\r\nAsk which Azure Functions workflow to use. `azure-functions-help` discovers the installed `azure-functions-*` skills and routes to the best match.\r\n\r\n> **More options?** See [CLI Reference](docs/cli-reference.md) for every command, flag, and headless example.\r\n\r\n## Local installs and VS Code extension integration\r\n\r\n`install --local` copies skill bodies, MCP settings, and telemetry hooks from the installed `@azure/functions-skills` npm package. It does not copy agent definitions, instruction files, routing files, or prompts.\r\n\r\n```bash\r\nnpx @azure/functions-skills install --local --agent ghcp --dir ./my-app\r\nnpx @azure/functions-skills update --local --agent ghcp --dir ./my-app\r\nnpx @azure/functions-skills install --local --agent ghcp --dir ./my-app --no-telemetry\r\n```\r\n\r\nVS Code extensions can call the same local install flow from TypeScript:\r\n\r\n```ts\r\nimport { installLocalSkills } from '@azure/functions-skills/setup';\r\n\r\nconst result = await installLocalSkills({\r\n  targetDir: workspaceFolder.uri.fsPath,\r\n  agents: ['ghcp'],\r\n});\r\n```\r\n\r\nCommon options:\r\n\r\n| Option | Description |\r\n| --- | --- |\r\n| `targetDir` | Required workspace root where local skills should be installed. |\r\n| `agents` | Optional agents: `ghcp`, `claude`, `codex`. Defaults to GHCP-compatible setup when omitted. |\r\n| `dryRun` | Return planned local files without writing. |\r\n| `checkForUpdates` | Set `false` to skip npm package freshness guidance. |\r\n| `runner` | Optional command runner for tests or extension-host controlled npm checks. |\r\n\r\nThe result includes installed agents, files written, planned files, dry-run status, and `packageUpdate` guidance that extensions can surface in their own UI.\r\n\r\n## Telemetry\r\n\r\nAzure Functions Skills collects usage telemetry to understand which bundled skills and Azure Functions MCP tools are used. Events include allowlisted skill/tool names, relative allowlisted Azure Functions skill-file paths, client name, session id, and timestamp. Telemetry does **not** include file contents, prompts, raw tool arguments, credentials, or absolute paths. Events are sent by the `@azure/functions-skills` package directly to the Azure Functions team's Application Insights resource; the package does not use Azure MCP as a telemetry destination or transport.\r\n\r\nFor host-managed plugin installs, opt out by setting either\r\n`AZURE_FUNCTIONS_SKILLS_COLLECT_TELEMETRY=false` or `AZURE_MCP_COLLECT_TELEMETRY=false`\r\nin the environment. Workspace-local installs can also use `--no-telemetry`; that preference\r\nis stored in the installed `telemetry.config.json` and preserved by local updates.\r\n\r\n## Skills\r\n\r\nFor contributor guidance on the product boundary between Azure Skills and Azure Functions Skills, see [Azure Skills and Azure Functions Skills Boundary](docs/azure-skills-boundary.md).\r\n\r\n| Skill | Purpose |\r\n| --- | --- |\r\n| [`azure-functions-help`](templates/skills/azure-functions-help/SKILL.md) | Discover and route to the best Azure Functions skill |\r\n| [`azure-functions-setup`](templates/skills/azure-functions-setup/SKILL.md) | Verify local prerequisites (Azure CLI, Core Tools, runtimes, Azure Skills) |\r\n| [`azure-functions-create`](templates/skills/azure-functions-create/SKILL.md) | Create new Functions projects or add functions via Azure MCP templates |\r\n| [`azure-functions-agents`](templates/skills/azure-functions-agents/SKILL.md) | Build Azure Functions hosted AI agent apps, scheduled agents, connector-triggered agents, and chat/API agents |\r\n| [`azure-functions-deploy`](templates/skills/azure-functions-deploy/SKILL.md) | Prepare, validate, and deploy via Azure Skills with Functions-specific guidance |\r\n| [`azure-functions-best-practices`](templates/skills/azure-functions-best-practices/SKILL.md) | Production-readiness review (config, security, reliability) |\r\n| [`azure-functions-diagnostics`](templates/skills/azure-functions-diagnostics/SKILL.md) | Investigate deployment, runtime, trigger, binding, logging issues |\r\n| [`azure-functions-health-status`](templates/skills/azure-functions-health-status/SKILL.md) | Collect current health, metrics, logs, Resource Health, Activity Log |\r\n| [`azure-functions-inventory`](templates/skills/azure-functions-inventory/SKILL.md) | Collect app specification and configuration inventory |\r\n| [`azure-functions-doctor`](templates/skills/azure-functions-doctor/SKILL.md) | Pre-deployment validation (used by the `doctor` CLI command) |\r\n| [`azure-functions-common`](templates/skills/azure-functions-common/SKILL.md) | Shared language, trigger, binding, extension, routing references |\r\n| [`azure-functions-feedback`](templates/skills/azure-functions-feedback/SKILL.md) | Turn session findings into previewed issues or pull requests |\r\n\r\nThe `azure-functions-help` skill provides the discovery and routing entry point.\r\n\r\n## Doctor — pre-deployment validation\r\n\r\nCatch configuration mistakes, deprecated settings, **and semantic code issues** (missing error handling, blocking I/O, hardcoded secrets, durable-orchestrator non-determinism) *before* you deploy. The LLM semantic analysis is the value — `doctor` ships it as both a local CLI command and a GitHub Actions step.\r\n\r\n### Local — LLM analysis + visual HTML report\r\n\r\n```bash\r\nnpx @azure/functions-skills doctor --dir . \\\r\n  --deep --accept-deep-risk \\\r\n  --agent github-copilot \\\r\n  --format html --output doctor-report.html\r\n```\r\n\r\n`--accept-deep-risk` acknowledges that the agent runs with elevated permissions (file write, shell execution) — only use on trusted workspaces. Skip the LLM with `--no-deep` for fast deterministic checks only.\r\n\r\nOpen `doctor-report.html` in a browser:\r\n\r\n![Doctor HTML report](docs/images/doctor-report.png)\r\n\r\n### GitHub Actions — pre-deploy gate with deep analysis\r\n\r\nTrigger on `push: main` (post-merge), not on pull requests — `--deep` refuses to run on pull-request workspaces because PR code is untrusted (it can prompt-inject the agent). See [docs/doctor-guide.md#security-model](docs/doctor-guide.md#security-model).\r\n\r\n```yaml\r\non:\r\n  push:\r\n    branches: [main]\r\n\r\njobs:\r\n  deep-doctor:\r\n    runs-on: ubuntu-latest\r\n    environment: trusted-deep-analysis  # GitHub Environment for approval + scoped secret\r\n    steps:\r\n      - uses: actions/checkout@v4\r\n      - uses: actions/setup-node@v4\r\n        with:\r\n          node-version: '22'\r\n      - name: Install GitHub Copilot CLI\r\n        run: npm install -g @github/copilot\r\n      - name: Run Azure Functions doctor\r\n        env:\r\n          GITHUB_TOKEN: ${{ secrets.COPILOT_TOKEN }}\r\n        run: |\r\n          npx @azure/functions-skills doctor \\\r\n            --deep --accept-deep-risk \\\r\n            --agent github-copilot \\\r\n            --format markdown --output doctor.md \\\r\n            --severity high\r\n      - name: Publish summary\r\n        if: always()\r\n        run: cat doctor.md >> $GITHUB_STEP_SUMMARY\r\n```\r\n\r\nExit code is `1` if any finding is at or above `--severity` (default `high`), gating downstream deploy steps. For PR validation, use the same command with `--no-deep` (Tier 1 only) on `pull_request` events.\r\n\r\n> **Doctor walkthrough?** See [docs/doctor-guide.md](docs/doctor-guide.md) for Tier 1 vs Tier 2 details, output formats, deep mode security, and bad-app fixtures.\r\n\r\nDoctor also includes **supply-chain security checks** (lifecycle scripts, unpinned production dependencies, missing lockfile, tracked `.env` files, install-script deps, plus Tier 2 semantic checks for import-time side effects, fetch-then-execute, and credential exfiltration patterns) — informed by recent npm and PyPI compromises. See [SECURITY.md](SECURITY.md) for the threat model.\r\n\r\n## Contributing\r\n\r\nWe welcome contributions. The canonical source for skills, telemetry hooks, and MCP definitions lives under [`templates/`](templates/) — edit there, then `npm run build:plugin-payload` to regenerate the published plugin payload.\r\n\r\nRead [CONTRIBUTING.md](CONTRIBUTING.md) for the full guide.\r\n\r\n## Security\r\n\r\nReport vulnerabilities to [secure@microsoft.com](mailto:secure@microsoft.com). See [SECURITY.md](SECURITY.md) for the threat model and our defense layers.\r\n\r\n## License\r\n\r\n[MIT](LICENSE)\r\n","readmeFilename":"README.md"}