microsoft/azldev-remove-component
Read this before deleting or dropping a component; there is no azldev remove command, so doing it wrong leaves dangling state. Explains the manual removal workflow for deleting component metadata, cleaning references, and validating any related output-affecting changes. Triggers include remove component, delete package, drop component, prune dependency.
npx skills add https://github.com/microsoft/azurelinux --skill azldev-remove-component
There is no azldev command to remove a component — it is a manual edit. A
deletion-only change needs no package build, but changes to dependants, package/image
configuration, or other built inputs must follow the repository's normal validation
requirements. The steps below delete the component's definition, lock, and rendered
spec, then clean up references.
Confirm the component exists and see what it produces:
azldev comp list -p <name> -q -O json
Check for reverse dependencies first: if other components BuildRequires or
Requires this one, removing it breaks their builds. Search the tree for the
component and its binary subpackage names before deleting anything.
<name>/<name>.comp.toml directory, or remove its inline [components.<name>]
entry from whichever included TOML defines it.
publish channels or package groups, drop any references to the component or to
its binary subpackages. Publishing is component-scoped; per-binary exceptions
are binary-RPM-scoped — search for both.
rm locks/<name>.lock
azldev comp render -a --clean-stale
--clean-stale (only valid with -a) removes rendered-spec directories that no
longer correspond to a configured component. It re-renders everything, so it is
slow; for a targeted removal you can instead delete the component's rendered
spec under specs/ by hand.
image definitions and any *.kiwi / package-list files, and remove or replace
them — an image that installs a now-removed package will not build.
azldev comp list -p <name> -q -O json # should report the component is not found
Also confirm the lock and rendered spec directory are gone and that no image or
package configuration still references the component.
If the removal required changes to dependants or package/image configuration, build
and test the affected outputs according to the repository's normal validation policy.
in a *dependant* (e.g. dropping a BuildRequires), and that dependant sets
release.calculation = "manual", bump its release counter yourself in the same
change. Components with automatic release calculation (auto, autorelease,
static) are handled by the normal commit/render/amend cycle.
component you are dropping, remove it in the same change to keep the tree
consistent.
Generated by azldev docs agent; do not hand-edit. Generated for azldev version v0.1.0.
Take microsoft/azldev-remove-component from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.