Official agent skill

Azldev Comp Toml

by microsoft in microsoft/azurelinux

Read this before authoring, editing, or reviewing a .comp.toml file; do not work from memory.

OfficialMITAuto-check passedProductivity & Automation

Install Azldev Comp Toml

skills CLI
$ npx skills add microsoft/azurelinux --skill azldev-comp-toml -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install microsoft/azurelinux azldev-comp-toml --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/microsoft/azurelinux.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/azldev-comp-toml .claude/skills/azldev-comp-toml && rm -rf skills-src

Use ~/.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/

Facts

Skill name
azldev-comp-toml
GitHub stars
5.3k
Token cost
~1.6k tokens
SKILL.md length
668 words
Files
1
Skills in repo
10
Repo updated
First seen
Licence
MIT

At a glance

Read this before authoring, editing, or reviewing a .comp.toml file; do not work from memory.

  • Include comp.toml
  • SKILL.md covers Structure, Spec source, Build configuration and Release calculation, plus 4 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md
  • Component config

What it does

Azldev Comp Toml is an agent skill from microsoft/azurelinux, published by the product's own GitHub organization. Read this before authoring, editing, or reviewing a .comp.toml file; do not work from memory. Explains the azldev component definition format and review workflow, covering component structure, spec sources, build config, release calculation, render options, file organization, overlay hygiene, stale files, disabled tests, and testing verification. Triggers include comp.toml, component config, review component, component hygiene, spec source, upstream-distro, build defines, release calculation, includes.

Its SKILL.md is about 1.6k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Productivity & Automation, covering File organization. The repository describes itself as: General purpose Linux OS for Azure. The licence is MIT.

When your agent uses it

  • Include comp.toml
  • Component config
  • Review component
  • Component hygiene

Example prompts

  • “/azldev-comp-toml”

What it can do on your machine

Read from SKILL.md and the folder at commit f019108. It shows what the files ask for, not the result of running them.

  • Tool permissions

    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.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are toml and bash).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Azldev Comp Toml loads about 1.6k tokens when it runs. Until then it costs about 131 tokens; SKILL.md has 668 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~131
When it runs · the whole SKILL.md, loaded when a task matches
~1.6k

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.

Safety

Auto-check passed

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.

SKILL.md

The full file from microsoft/azurelinux at commit f019108, republished under its MIT licence (© microsoft). 668 words, ~1,634 tokens.

Download SKILL.mdSave it as .claude/skills/azldev-comp-toml/SKILL.md (or your agent's skills folder).
name
azldev-comp-toml
description
Read this before authoring, editing, or reviewing a *.comp.toml file; do not work from memory. Explains the azldev component definition format and review workflow, covering component structure, spec sources, build config, release calculation, render options, file organization, overlay hygiene, stale files, disabled tests, and testing verification. Triggers include comp.toml, component config, review component, component hygiene, spec source, upstream-distro, build defines, release calculation, includes.

Component definition files (*.comp.toml)

A component definition tells azldev where a package's spec comes from and how to customize it for your distro. Every component lives under [components.<name>].

Get the authoritative, always-current field list from the schema:

sh
azldev config generate-schema

Structure

A bare entry inherits everything from your distro's defaults — most upstream packages need nothing more:

toml
[components.curl]

Add sub-tables only for what you change. The fields you will reach for most:

FieldPurpose
specwhere the spec comes from (see below)
overlays / overlay-filestargeted spec/source edits (see the azldev-overlays skill)
build.defines / build.with / build.withoutRPM macro and bcond build tweaks
release.calculationhow the Release tag is managed
render.skip-file-filterrendering edge-case escape hatch

Spec source

The spec field selects where the spec is fetched from. When omitted, the component inherits the distro default (normally an upstream import).

toml
# Upstream import (the usual case) — inherits the distro's upstream version
[components.curl]

# Upstream, but pinned to a specific upstream distro/version
[components.curl]
spec = { type = "upstream", upstream-distro = { name = "fedora", version = "rawhide" } }

# Upstream package whose name differs from the component name
[components.mydistro-rpm-config]
spec = { type = "upstream", upstream-name = "redhat-rpm-config" }

# Local spec that lives in your repo (not imported from an upstream distro)
[components.mydistro-release]
spec = { type = "local", path = "mydistro-release.spec" }

Build configuration

toml
[components.mypackage.build]
defines = { rhel = "11" }      # override RPM macros
with = ["feature_x"]            # enable %bcond_with conditionals
without = ["plugin_rhsm"]       # disable %bcond_with conditionals

Release calculation

release.calculation controls the Release: tag. There are four modes:

  • auto (default) — auto-detect whether the spec uses %autorelease or a static release and handle it accordingly. Correct for most packages.
  • autorelease — force %autorelease handling (use when auto-detection misreads a spec that wraps %autorelease in a conditional).
  • static — force static-integer handling and bump the integer on render (the inverse of autorelease).
  • manual — you own the Release: value. Use this only when render fails with a "non-standard Release tag" error. A manual component is not bumped by the render/commit/amend cycle, so increment its release yourself in the same change (see the azldev-update-component skill).
toml
[components.mypackage.release]
calculation = "manual"

Render configuration

render.skip-file-filter = true keeps all source and patch files during render. azldev normally prunes files not referenced by the rendered spec; set this only for the rare spec whose Source/Patch filenames use macros the filter cannot expand.

File organization

  • Inline — put simple, customization-free components directly in a shared config file (e.g. [components.jq]).
  • Dedicated — give a component its own <name>/<name>.comp.toml once it needs overlays, build config, or a local spec. Rule of thumb: anything more than [components.<name>] earns a dedicated file.
  • A parent config picks up dedicated files through an includes glob, for example includes = ["**/*.comp.toml"].
Show full SKILL.md (337 more words)Show less

Review checklist

Start with azldev comp list -p <name> -q -O json, then use azldev comp query -p <name> -q -O json when the review needs parsed spec details. For a change review, focus on the diff while checking enough surrounding context to ensure it fits the component and repository conventions.

  • Organization: The component follows the repository's inline-versus-dedicated-file convention; its name matches upstream or sets spec.upstream-name; no stale or orphaned component files remain.
  • Spec source: The default upstream source is preferred. Pins explain why they are needed, and local specs are used only when overlays cannot express the change.
  • Overlays: Every overlay explains why it exists. Prefer structured overlay types over regex; scope unavoidable spec-search-replace expressions by section and, when applicable, package, and use TOML literal strings. spec-search-replace cannot span lines. Remove overlays that upstream has made unnecessary. See the azldev-overlays skill.
  • Build config: Defines and bcond overrides are necessary and correspond to the spec. If build.check.skip = true, require a specific build.check.skip_reason and verify that fixing the tests is impractical; skipped %check is a last resort.
  • Release mode: auto is the default. Force autorelease or static only when auto-detection is wrong. Use manual only for a non-standard release tag, and verify the component increments its release itself.
  • Generated state: The lock matches the final component inputs, and rendered output contains the intended changes without unrelated drift.
  • Testing: Changes that can affect RPM output were built and smoke-tested in a mock chroot. Organization, comment, or documentation-only metadata edits do not require a rebuild when the resolved component inputs are unchanged.

Report findings by severity: errors for correctness or required-policy violations, warnings for maintainability risks, and info for optional improvements. Prefer small, actionable fixes over unrelated cleanup.

Documenting changes

Add a TOML comment explaining why a non-obvious field is set (a version pin, a workaround), and link the upstream commit or bug when the change is based on one. For overlays, use the overlay metadata table instead (see the azldev-overlays skill).

Generated by azldev docs agent; do not hand-edit.

© microsoft, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .agents/skills/azldev-comp-toml of microsoft/azurelinux.

Open the folder on GitHubat commit f019108

Compare with similar skills

Azldev Comp Toml 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.

Azldev Comp Toml compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Azldev Comp Toml this skillmicrosoft/azurelinux5.3k—~1.6kAutomated safety check: PassMIT
Answer Me With HTMLQingYunA/answer-me-with-html2.1k—~4kAutomated safety check: PassMIT
Abp App Nolayersabpframework/abp14k—~575Automated safety check: PassLGPL-3.0
Feishu Driveraucvr/Group-Goki1123 repos~587Automated safety check: PassMIT
PikpakBengerthelorf/pikpaktui120—~1.2kAutomated safety check: PassApache-2.0
Advanced File ManagementMassLab-SII/open-agent-skills133—~1.6kAutomated safety check: PassApache-2.0

Similar skills

  • Answer Me With HTML

    QingYunA/answer-me-with-html

    Turns an answer into a one-page visual HTML explainer: the model writes a short Markdown draft and the bundled CLI builds one page.

    2.1k GitHub stars~4k tokensUpdated today
    Productivity & AutomationAuto-check passed
  • Abp App Nolayers

    abpframework/abp

    ABP Single-Layer (No-Layers / nolayers) application template - single project structure, feature-based file organization, no separate Domain/Application.Contracts projects.

    14k GitHub stars~575 tokensUpdated today
    Productivity & AutomationAuto-check passed
  • Feishu Drive

    raucvr/Group-Goki

    Feishu cloud storage file management. An agent skill from raucvr/Group-Goki.

    112 GitHub starsUsed in 3 repos~587 tokens
    Productivity & AutomationAuto-check passed
  • Pikpak

    Bengerthelorf/pikpaktui

    Manage PikPak cloud storage — browse, upload, download, stream, share, and organize files via CLI.

    120 GitHub stars~1.2k tokensUpdated 2 mo ago
    Productivity & AutomationAuto-check passed
  • Advanced File Management

    MassLab-SII/open-agent-skills

    Advanced file management tools. An agent skill from MassLab-SII/open-agent-skills.

    133 GitHub stars~1.6k tokensUpdated 9 mo ago
    Productivity & AutomationAuto-check passed
  • File Organizer

    alibaba/skill-up

    Triggered when the user needs to organize project files, analyze directory structure, or generate a project report.

    1.1k GitHub stars~374 tokensUpdated today
    Productivity & AutomationAuto-check passed

More from microsoft/azurelinux

All 10 skills in this repo
  • Azldev Add Component

    microsoft/azurelinux

    Official

    Read this before adding or importing a component; follow the workflow instead of guessing.

    5.3k GitHub stars~987 tokensUpdated today
    Auto-check passed
  • Azldev Build Component

    microsoft/azurelinux

    Official

    Read this before building a component or diagnosing a build failure; do not guess build flags or the inner loop.

    5.3k GitHub stars~808 tokensUpdated today
    Auto-check passed
  • Azldev Image

    microsoft/azurelinux

    Official

    Read this before building, booting, or configuring an azldev image.

    5.3k GitHub stars~758 tokensUpdated today
    Auto-check passed
  • Azldev Mock

    microsoft/azurelinux

    Official

    Read this before testing or inspecting a built RPM; do not drive mock by hand from memory.

    5.3k GitHub stars~1k tokensUpdated today
    Auto-check passed
  • Azldev Overlay Metadata

    microsoft/azurelinux

    Official

    Read this before adding or reviewing an overlay metadata table; do not guess the category or upstream status from memory.

    5.3k GitHub stars~2.6k tokensUpdated today
    Auto-check passed
  • Azldev Overlays

    microsoft/azurelinux

    Official

    Read this before adding, changing, or diagnosing any overlay; never edit a spec or rendered file from memory.

    5.3k GitHub stars~2.3k tokensUpdated today
    Auto-check passed

Questions about Azldev Comp Toml

What does Azldev Comp Toml do?

Read this before authoring, editing, or reviewing a .comp.toml file; do not work from memory. Azldev Comp Toml is an agent skill from microsoft/azurelinux, published by the product's own GitHub organization.toml file; do not work from memory.

When should I use Azldev Comp Toml?

Azldev Comp Toml fits situations like: include comp.toml; component config; review component; component hygiene.

How do I install Azldev Comp Toml in Claude Code?

Run `npx skills add microsoft/azurelinux --skill azldev-comp-toml -a claude-code`. Or copy the skill folder (.agents/skills/azldev-comp-toml in microsoft/azurelinux) into .claude/skills/azldev-comp-toml in your project. Claude Code loads it when a task matches its description.

How do I install Azldev Comp Toml in Codex?

Run `npx skills add microsoft/azurelinux --skill azldev-comp-toml -a codex`. Or copy the skill folder (.agents/skills/azldev-comp-toml in microsoft/azurelinux) into .agents/skills/azldev-comp-toml in your project. Codex loads it when a task matches its description.

Can I use Azldev Comp Toml in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add microsoft/azurelinux --skill azldev-comp-toml -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/azldev-comp-toml, .gemini/skills/azldev-comp-toml, .github/skills/azldev-comp-toml and .opencode/skills/azldev-comp-toml in your project.

What does Azldev Comp Toml need to run?

SKILL.md names no scripts, command-line tools or credentials: Azldev Comp Toml is instructions for the agent only.

Does Azldev Comp Toml access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Azldev Comp Toml safe to install?

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.

What licence does Azldev Comp Toml use?

Azldev Comp Toml is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Azldev Comp Toml use?

About 1.6k tokens (SKILL.md is roughly 6.5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Azldev Comp Toml?

Skills that share tags, products or a category with Azldev Comp Toml: Answer Me With HTML (QingYunA/answer-me-with-html, 2.1k stars), Abp App Nolayers (abpframework/abp, 14k stars), Feishu Drive (raucvr/Group-Goki, 112 stars) and Pikpak (Bengerthelorf/pikpaktui, 120 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Azldev Comp Toml?

microsoft (a GitHub organization, an official publisher) maintains it in microsoft/azurelinux, which has 5,348 GitHub stars. The repository holds 10 skills in this directory. The repository was last updated on October 8, 2026.

Source: microsoft/azurelinux on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.