Microsoft Docs
microsoft/ai-agents-for-beginners
Query official Microsoft documentation to find concepts, tutorials, and code examples across Azure, .NET, Agent Framework, Aspire, VS Code, GitHub, and more.
Add a new Azure Functions sample/quickstart to the Template Manifest.
$ npx skills add Azure/azure-functions-templates --skill add-manifest-sample -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install Azure/azure-functions-templates add-manifest-sample --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/Azure/azure-functions-templates.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.github/skills/add-manifest-sample .claude/skills/add-manifest-sample && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "add-manifest-sample" agent skill from https://github.com/Azure/azure-functions-templates/tree/dev/.github/skills/add-manifest-sample into .claude/skills/add-manifest-sample/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "add-manifest-sample", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/Azure/azure-functions-templates/tree/dev/.github/skills/add-manifest-sampleType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add Azure/azure-functions-templates --skill add-manifest-sample -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install Azure/azure-functions-templates add-manifest-sample --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Azure/azure-functions-templates.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.github/skills/add-manifest-sample .agents/skills/add-manifest-sample && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "add-manifest-sample" agent skill from https://github.com/Azure/azure-functions-templates/tree/dev/.github/skills/add-manifest-sample into .agents/skills/add-manifest-sample/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "add-manifest-sample", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add Azure/azure-functions-templates --skill add-manifest-sample -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install Azure/azure-functions-templates add-manifest-sample --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Azure/azure-functions-templates.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.github/skills/add-manifest-sample .cursor/skills/add-manifest-sample && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "add-manifest-sample" agent skill from https://github.com/Azure/azure-functions-templates/tree/dev/.github/skills/add-manifest-sample into .cursor/skills/add-manifest-sample/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "add-manifest-sample", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/Azure/azure-functions-templates.git --path .github/skills/add-manifest-sample--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add Azure/azure-functions-templates --skill add-manifest-sample -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install Azure/azure-functions-templates add-manifest-sample --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Azure/azure-functions-templates.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.github/skills/add-manifest-sample .gemini/skills/add-manifest-sample && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "add-manifest-sample" agent skill from https://github.com/Azure/azure-functions-templates/tree/dev/.github/skills/add-manifest-sample into .gemini/skills/add-manifest-sample/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "add-manifest-sample", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install Azure/azure-functions-templates add-manifest-sampleInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add Azure/azure-functions-templates --skill add-manifest-sample -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/Azure/azure-functions-templates.git skills-src && mkdir -p .github/skills && cp -r skills-src/.github/skills/add-manifest-sample .github/skills/add-manifest-sample && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "add-manifest-sample" agent skill from https://github.com/Azure/azure-functions-templates/tree/dev/.github/skills/add-manifest-sample into .github/skills/add-manifest-sample/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "add-manifest-sample", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add Azure/azure-functions-templates --skill add-manifest-sample -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install Azure/azure-functions-templates add-manifest-sample --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Azure/azure-functions-templates.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.github/skills/add-manifest-sample .opencode/skills/add-manifest-sample && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "add-manifest-sample" agent skill from https://github.com/Azure/azure-functions-templates/tree/dev/.github/skills/add-manifest-sample into .opencode/skills/add-manifest-sample/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "add-manifest-sample", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
add-manifest-sampleAdd a new Azure Functions sample/quickstart to the Template Manifest.
Add Manifest Sample is an agent skill from Azure/azure-functions-templates, published by the product's own GitHub organization. Add a new Azure Functions sample/quickstart to the Template Manifest. Use when asked to "add a sample", "add a template", "register a quickstart", or "add a connector/MCP/trigger sample" to Functions.Templates/Template-Manifest/manifest.json. Covers required fields, the short/long description pattern, category rules, priority assignment, metadata bumps (count/version/generatedAt), and keeping docs/priority-tiers.md in sync.
Its SKILL.md is about 3.8k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It works with Azure Functions, Microsoft Azure, Model Context Protocol and Visual Studio Code. The repository describes itself as: Azure functions templates for the azure portal, CLI, and VS. The licence is MIT.
6 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 4a49cf7. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
pythonghpwshpipFrom the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
github.comFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Add Manifest Sample loads about 3.8k tokens when it runs. Until then it costs about 112 tokens; SKILL.md has 1,689 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from Azure/azure-functions-templates at commit 4a49cf7, republished under its MIT licence (© Azure). 1,689 words, ~3,755 tokens.
.claude/skills/add-manifest-sample/SKILL.md (or your agent's skills folder).This skill explains how to register a new template in the Azure Functions Template Manifest so it appears in the VS Code Azure Functions extension and other consumers.
Changes to manifest.json are surfaced by multiple downstream consumers, so keep
entries accurate and validated:
categories) in the create-project / create-sample experience.| File | Purpose |
|---|---|
Functions.Templates/Template-Manifest/manifest.json | Source of truth. Add the template object + bump metadata. |
Functions.Templates/Template-Manifest/schemas/manifest.schema.json | JSON Schema. Only edit to add a new enum value (e.g. a new resource). Note: categories are not a schema enum — they are free-form kebab-case (pattern-validated), so adding a category needs no schema change. |
Functions.Templates/Template-Manifest/docs/priority-tiers.md | Human-readable priority/coverage doc. Keep in sync with the manifest. |
The manifest file is written as canonical json.dumps(indent=2, ensure_ascii=False)
output with a trailing newline. Preserve that formatting (2-space indent, no
trailing whitespace).
Never guess what a sample does. Inspect the actual repo at the exact tag you will
pin (gitRef) and confirm:
folderPath) and tag (gitRef) exist.BlobOutput while the
TypeScript/Python ports only log the payload).gh api "repos/<owner>/<repo>/contents/<folderPath>?ref=refs/tags/<tag>" --jq '.[] | "\(.type)\t\(.name)"'Insert the template object adjacent to its peer entries (same resource value)
in the templates array, maintaining priority order within that group. If no
peers exist, append to the end of the array. Mirror the existing entry for the
same family/resource so the new one is consistent.
A new template must include all of the following.
Enforced by the schema:
id, displayName, shortDescription, longDescription, language, bindingType, resource,
iac, priority, categories, repositoryUrl, folderPath, gitRef.
Other fields (whatsIncluded, author, isHighlighted) are
optional but recommended where applicable. tags is deprecated — do not add it.
id — kebab-case, unique (matches the schema id pattern). Convention:
<resource-or-feature>-<binding>-<language> (e.g. office365-connector-trigger-python).
Before adding the entry, search templates for a matching id. If a collision
is found, inform the user and suggest an alternative id (for example, append
a version suffix or disambiguating term). Never silently overwrite or duplicate
an id.displayName — "<Friendly Name> (<Lang> + AZD + Bicep)".language — must be one of the schema language enum values.bindingType — must be one of the schema bindingType enum values.resource — must be one of the schema resource enum values. Add a new
enum value to manifest.schema.json only if none fits, and reuse it
consistently.iac — must be one of the schema iac enum values.language, bindingType, and iac:
add a new enum value in manifest.schema.json only when no existing value fits,
then reuse it consistently across related samples. When any enum is extended,
bump manifest version with a minor increment.repositoryUrl — must satisfy the schema pattern (GitHub HTTPS URL).folderPath — path within the repo (. for root).gitRef — mandatory for new samples. Always pin a signed release tag,
e.g. refs/tags/v1.0.0. Never leave it unset and never point a new sample at a
moving branch (refs/heads/main) — that makes the template non-reproducible.
Verify the tag exists before committing. Whenever the sample repo ships a new
release, ask the user to update gitRef to the new tag (and re-verify the
pinned folderPath/contents still match) so the manifest tracks the intended
release.
If the gitRef tag does not exist in the target repository, do not proceed
with adding the template. Inform the user that the tag was not found, provide
the exact gh api command used to verify, and ask them to confirm the tag name
or create the release first.The allowed values, patterns, and limits for every field are defined in
schemas/manifest.schema.json — read them there rather than relying on a copy.
A quick way to print the enums:
cd Functions.Templates\Template-Manifest
@'
import json
p = json.load(open(r"schemas\manifest.schema.json", encoding="utf-8"))["$defs"]["template"]["properties"]
for f in ("language", "bindingType", "resource", "iac"):
print(f, "->", p[f]["enum"])
'@ | python -categories are displayed/filtered in the VS Code extension, so only use
categories that already exist in the manifest unless you have a deliberate reason
to introduce a new one. Derive the current set from the manifest instead of
hardcoding it:
cd Functions.Templates\Template-Manifest
@'
import json
d = json.load(open("manifest.json", encoding="utf-8"))
print(sorted({c for t in d["templates"] for c in t["categories"]}))
'@ | python -Most starter samples include starters plus a domain category
(e.g. ["starters", "connectors", "event-processing"]). Values are kebab-case.
tags are deprecatedDo not add a tags array to new entries. It is deprecated and not used by
consumers. (Older entries may still contain it; leave those as-is unless asked.)
Match the established pattern used across the manifest:
shortDescription (respect the schema's maxLength): a concise capability
summary that ends with deployed via azd for azd-based templates.
Pattern: "<Service> <scope> <mechanism>, deployed via azd".
Example: "Office 365 Outlook email and calendar connector triggers with Blob output, deployed via azd".
If the sample is not azd-based (for example, iac is none or deployment is
manual), omit the deployed via azd suffix. End with the real deployment
mechanism (for example, deployed via ARM template) or with the capability
summary when no deployment mechanism is represented.
longDescription: start with the imperative
Build and deploy …, then explicitly name the trigger(s) and binding(s)
the sample demonstrates — e.g. the specific trigger type(s)
(ConnectorTrigger, McpToolTrigger, CosmosDBTrigger, …) and any input/output
bindings (BlobInput/BlobOutput, etc.). Enumerate (1) … (2) … when there are
multiple functions/tools, naming each one. Only list a binding if the sample's
code actually uses it (verify per language — siblings often differ). Then name
the SDK/extension, give the hosting/auth summary, and end with
Deployed with azd.
For non-azd samples, omit the Deployed with azd. closing and end with the
deployment approach actually used or a neutral capability summary.
whatsIncluded: a short list of concrete artifacts (functions, bindings,
infra, azd config). Keep claims accurate to the real sample.
{
"id": "office365-connector-trigger-python",
"displayName": "Office 365 Outlook Connector Triggers (Python + AZD + Bicep)",
"shortDescription": "Office 365 Outlook email and calendar connector triggers, deployed via azd",
"longDescription": "Build and deploy an Office 365 Outlook connector app on Azure Functions in Python. This app provides five connector trigger functions ... Deployed with azd.",
"language": "Python",
"bindingType": "trigger",
"resource": "connector",
"iac": "bicep",
"priority": 80,
"categories": ["starters", "connectors", "event-processing"],
"author": "Azure Functions Team",
"repositoryUrl": "https://github.com/Azure-Samples/functions-connectors-python",
"folderPath": "office365App",
"gitRef": "refs/tags/v1.0.0",
"whatsIncluded": ["..."]
}isHighlighted: true is optional and only for samples that should be
featured/highlighted in the consuming UI (e.g. VS Code).
priority is the primary sort key (lower = shown first), an integer within the
range defined by the schema's priority bounds. It is organized in blocks (see
docs/priority-tiers.md):
+0 trigger, +1 input, +2 output,
+3 variant, +4 stub.Use this lookup style to avoid inferring block math from memory. Build/update this
table from docs/priority-tiers.md before assigning a new value:
| Resource | Block Start | trigger | input | output | variant |
|---|---|---|---|---|---|
| mcp | 50 | 50 | 51 | 52 | 53 |
| connector | 80 | 80 | 81 | 82 | 83 |
If the target resource/block is unclear or overlaps with existing assignments,
stop and confirm the intended block with the user before setting priority.
Reuse the priority of the matching peer template (e.g. all Office 365 connector samples = P80, all SharePoint = P81). Use the next free slot/block for a brand-new category.
In manifest.json, update the top-level fields:
totalTemplates — must equal the number of objects in templates.version — bump semver (minor bump for new templates / a new resource
enum value; patch for description-only fixes).
Use these exact rules: bump the minor version (for example, 1.2.0 →
1.3.0) if the PR adds one or more new templates or introduces a new enum
value (resource, language, bindingType, or iac). Bump the patch
version (for example, 1.2.0 → 1.2.1) if the PR only fixes descriptions or
metadata without adding/removing templates or extending enums. If both occur in
one PR, use the higher bump (minor).generatedAt — current UTC time in YYYY-MM-DDTHH:MM:SSZ.docs/priority-tiers.mdKeep the doc in sync with the manifest:
*new* in the Was
column), in priority → language order.totalTemplates).*(removed — repos archived)*).Always validate JSON parses and conforms to the schema, and that the counts match
(install the validator first if needed: pip install jsonschema):
cd Functions.Templates\Template-Manifest
@'
import json, jsonschema
d = json.load(open("manifest.json", encoding="utf-8"))
s = json.load(open(r"schemas\manifest.schema.json", encoding="utf-8"))
jsonschema.validate(d, s)
assert d["totalTemplates"] == len(d["templates"]), "totalTemplates mismatch"
print("OK:", len(d["templates"]), "templates, version", d["version"])
'@ | python -Also confirm a full-file round-trip produces no unintended formatting drift before and after large edits:
orig = open("manifest.json", encoding="utf-8").read()
import json
assert orig == json.dumps(json.loads(orig), indent=2, ensure_ascii=False) + "\n"Run the repo's reference validator, which checks that every template's
repositoryUrl, gitRef, and folderPath actually resolve on GitHub (and warns
when a gitRef is a branch instead of a signed tag). Requires an authenticated
gh CLI:
pwsh -NoProfile -File eng\scripts\validate-manifest-refs.ps1The script validates the whole manifest, so pre-existing refs/heads/* branch
entries may already emit warnings. For the sample(s) you added or changed, the
output must show OK with no WARN/ERROR lines — i.e. the repo, tag, and
folder resolve and gitRef is a signed tag (refs/tags/*). Fix any error and
re-run until your entries are clean before committing.
folderPath, and gitRef (tag) exist; claims match real code.gitRef set to a pinned release tag (mandatory; not a moving branch).gitRef); id unique.displayName follows "<Friendly Name> (<Lang> + AZD + Bicep)".categories use only existing values; no tags on new entries.shortDescription follows deployment mode rules: for azd templates it ends with
deployed via azd; for non-azd templates it omits that suffix and uses the
actual deployment mechanism (or a capability-only ending).longDescription starts with Build and deploy …, explicitly names the
trigger(s)/binding(s) demonstrated; for azd templates it ends with
Deployed with azd., and for non-azd templates it omits that closing and
uses the actual deployment approach (or a neutral capability summary).priority matches peers / correct block.totalTemplates, version, generatedAt updated.docs/priority-tiers.md listing, block map, coverage matrix, and totals updated.eng\scripts\validate-manifest-refs.ps1 shows OK (no WARN/ERROR) for
the sample(s) you touched.© Azure, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .github/skills/add-manifest-sample of Azure/azure-functions-templates.
Open the folder on GitHubat commit 4a49cf7
Add Manifest Sample next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Add Manifest Sample this skillAzure/azure-functions-templates | 362 | — | ~3.8k | Automated safety check: Pass | MIT | |
| Microsoft Docsmicrosoft/ai-agents-for-beginners | 77k | 3 repos | ~1.2k | Automated safety check: Pass | MIT | |
| Microsoft Docsmicrosoft/ai-agents-for-beginners | 77k | — | ~1.5k | Automated safety check: Pass | MIT | |
| Microsoft Docsmicrosoft/ai-agents-for-beginners | 77k | — | ~1.5k | Automated safety check: Pass | MIT | |
| Microsoft Docsmicrosoft/ai-agents-for-beginners | 77k | — | ~1.6k | Automated safety check: Pass | MIT | |
| Microsoft Docsmicrosoft/ai-agents-for-beginners | 77k | — | ~1.3k | Automated safety check: Pass | MIT |
microsoft/ai-agents-for-beginners
Query official Microsoft documentation to find concepts, tutorials, and code examples across Azure, .NET, Agent Framework, Aspire, VS Code, GitHub, and more.
microsoft/ai-agents-for-beginners
Küsib ametlikku Microsofti dokumentatsiooni, et leida mõisteid, juhendeid ja koodinäiteid Azure'i, .NET-i, Agent Frameworki, Aspire'i, VS Code'i, GitHubi ja muu kohta.
microsoft/ai-agents-for-beginners
Kysy virallista Microsoftin dokumentaatiota löytääksesi käsitteitä, opetusohjelmia ja koodiesimerkkejä Azureen, .NET:iin, Agent Frameworkiin, Aspireen, VS Codeen, GitHubiin ja muihin liittyen.
microsoft/ai-agents-for-beginners
Interroger la documentation officielle de Microsoft pour trouver des concepts, des tutoriels et des exemples de code couvrant Azure, .NET, Agent Framework, Aspire, VS Code, GitHub, et plus encore.
microsoft/ai-agents-for-beginners
שאילתה בתיעוד הרשמי של Microsoft למציאת מושגים, מדריכים ודוגמאות קוד ב-Azure, .NET, Agent Framework, Aspire, VS Code, GitHub ועוד.
microsoft/ai-agents-for-beginners
आधिकारिक Microsoft दस्तावेज़ों में क्वेरी करें ताकि Azure, .NET, Agent Framework, Aspire, VS Code, GitHub, और अन्य के बारे में अवधारणाएँ, ट्यूटोरियल और कोड उदाहरण मिल सकें। डिफ़ॉल्ट रूप से Microsoft…
Add a new Azure Functions sample/quickstart to the Template Manifest. Add Manifest Sample is an agent skill from Azure/azure-functions-templates, published by the product's own GitHub organization. Add a new Azure Functions sample/quickstart to the Template Manifest.
Add Manifest Sample fits situations like: asked to add a sample; register a quickstart; add a connector/MCP/trigger sample to Functions.Templates/Template-Manifest/manifest.json.
Run `npx skills add Azure/azure-functions-templates --skill add-manifest-sample -a claude-code`. Or copy the skill folder (.github/skills/add-manifest-sample in Azure/azure-functions-templates) into .claude/skills/add-manifest-sample in your project. Claude Code loads it when a task matches its description.
Run `npx skills add Azure/azure-functions-templates --skill add-manifest-sample -a codex`. Or copy the skill folder (.github/skills/add-manifest-sample in Azure/azure-functions-templates) into .agents/skills/add-manifest-sample in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add Azure/azure-functions-templates --skill add-manifest-sample -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/add-manifest-sample, .gemini/skills/add-manifest-sample, .github/skills/add-manifest-sample and .opencode/skills/add-manifest-sample in your project.
Going by SKILL.md and its folder, Add Manifest Sample needs the command-line tools its instructions call (python, gh, pwsh and pip). Our summary lists: Python 3.
SKILL.md names 1 domain. In commands or code: github.com; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Add Manifest Sample is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.8k tokens (SKILL.md is roughly 15k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Add Manifest Sample: Microsoft Docs (microsoft/ai-agents-for-beginners, 77k stars), Microsoft Docs (microsoft/ai-agents-for-beginners, 77k stars), Microsoft Docs (microsoft/ai-agents-for-beginners, 77k stars) and Microsoft Docs (microsoft/ai-agents-for-beginners, 77k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
Azure (a GitHub organization, an official publisher) maintains it in Azure/azure-functions-templates, which has 362 GitHub stars. The repository was last updated on October 6, 2026.
Source: Azure/azure-functions-templates on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.