kyma-project/cli/kyma-module-lifecycle
Claude Code and agent skill by kyma-project/cli
- community
- ext:[{"type":"config","description":"Configuration overrides"}]
Checking that the SKILL.md file is still in the repository.
Manage an open-source Kyma module through its full lifecycle with the Kyma CLI (v3) - discover, enable, configure, verify, change managed state, and remove. Use when the user wants to enable, install, add, configure, or remove a Kyma module (e.g. Serverless, Istio, API Gateway), pick a module channel, or manage/unmanage a module. Trigger keywords - enable kyma module, install serverless, add kyma module, module channel, managed unmanaged, remove kyma module, kyma module catalog.
Install
npx vskill@latest install kyma-project/cli/kyma-module-lifecycleSemi-extensibleMentions customization, but needs skill-specific knowledge. Read the extensible skills standard
SKILL.md
Skill: kyma-module-lifecycle
Take an open-source Kyma module through its full lifecycle with the Kyma CLI (v3): discover what's available, enable it on the right channel, verify it becomes Ready, adjust its managed state, and remove it cleanly.
Kyma CLI v3 is a Go-based, Apache-2.0 tool from the open-source Kyma project (github.com/kyma-project/cli). It is a full rewrite of v2 — do not assume v2 syntax.
Scope and guardrails
This skill covers only the open-source Kyma project. When using it:
- ✅ Use open-source Kyma (
kyma-project/*), open-source modules, the Kyma CLI,
and standard kubectl.
- ❌ Do not encode SAP-managed (SKR) specifics, BTP cockpit flows, internal
endpoints or URLs, SKR configuration, or any SAP-internal knowledge.
ℹ️ Cluster prerequisite (Kyma Lifecycle Manager):add,list,delete,manage, andunmanagerequire a cluster managed by Kyma Lifecycle Manager(KLM). Error messages differ by subcommand on a bare cluster:-add/list:unknown module name or channel / failed to list module catalog from the target Kyma environment-manage/unmanage/delete:This cluster is not managed by Kyma Lifecycle Manager (KLM).Onlycatalogandpullwork without KLM.
Prerequisites
- The
kymaCLI installed and onPATH(v3). Confirm withkyma version. kubectlinstalled and its current context pointing at the target cluster.- For the mutating stages (enable/verify/manage/remove): a KLM-managed cluster.
Before running a command whose exact flags you are unsure of, inspect help output rather than guessing — the installed version is the source of truth:
Instructions
Modules live under the non-alpha kyma module group (7 subcommands: catalog, list, add, delete, manage, unmanage, pull).
⚠️ Important:kyma alpha moduleonly exposescatalogandpull. Theadd,delete,list,manage, andunmanagesubcommands exist onlyunder the non-alphakyma modulegroup — never prefix them withalpha.
1. Discover
ℹ️ Catalog is cluster-dependent: available module names and channels dependon the catalog the target cluster exposes. Always runkyma module catalogfirst — a given name (e.g.istio) may not appear on every cluster.
ℹ️ Catalog output format: columns areNAME | AVAILABLE VERSIONS | ORIGIN. Channelinformation is encoded inside theAVAILABLE VERSIONScell as<version>(<channel>)tuples — e.g.3.11.0(regular), 3.12.0(fast). Not all modules publish to everychannel; check the AVAILABLE VERSIONS cell before specifying-c <channel>.
ℹ️ `kyma module list` output: columns areNAME | VERSION | CR POLICY | MANAGED | MODULE STATUS | INSTALLATION STATUS. A module is fully installed only whenMODULE STATUSisReady. Other observed states:Processing,Error,Warning. Supports-o table|json|yaml. The--show-errorsflag is accepted but may not add visible detail in table view; usekyma alpha diagnose clusterto see full error conditions for modules inErrororWarningstate.
2. Enable a module
-c/--channel— pick the release channel from the catalog. Confirm the channel
exists for that module in step 1.
--default-config-cr— install with the module's default configuration CR.--config-cr-path <path>— install with a custom configuration CR from a file.- Choose default-CR for a standard install; use config-cr-path when the
user needs non-default configuration.
ℹ️ Channel semantics: channel names are defined by the Kyma release processand visible inkyma module catalogoutput. Typical values are:-regular— stable, less-frequently-updated; recommended for production.-fast— newer module versions released sooner; suitable for testing or when aspecific new feature is needed before it reachesregular.Not all modules publish to every channel. Always confirm available channelsfrom the catalog before runningmodule add.
3. Community modules
Community modules must be pulled from their remote repository before they can be added. The module name must appear in kyma module catalog output before pull will succeed — pull does not fetch from an arbitrary upstream independently of the local catalog.
--force— automatically approves the installation of KLM dependencies when
prompted. Use this flag when pulling a community module onto a cluster where KLM dependency installation requires approval. Note: --force only handles the approval prompt; pull will still fail with a CRD-discovery error (failed to discover API resource) on a fully bare cluster that has no KLM operator installed at all — in that case, install KLM first.
Community modules trigger an SLA/approval prompt on add. Only pass --auto-approve non-interactively after the user has authorized the exact module.
4. Verify it becomes Ready
Wait for MODULE STATUS to show Ready in kyma module list before treating the module as installed. If it sticks in Processing or Error, hand off to the kyma-troubleshoot skill.
5. Adjust managed state
manage— Kyma actively reconciles the module (default policy
CreateAndDelete).
unmanage— Kyma stops reconciling but leaves the module's resources running.
6. Remove a module
Follow the Safety rules before deleting.
To inspect the underlying ModuleTemplate custom resource directly with kubectl (not a kyma command):
Safety: destructive operations
- Always confirm before deleting. Run
kyma module listfirst, show the user
the exact module(s) that would be affected, and get explicit confirmation.
- There is no bulk "delete all modules" command — deletion is per-module. If a
user says "delete everything, don't ask," do not loop delete blindly: list the modules and confirm the specific set to remove, one by one.
- `--auto-approve` bypasses the CLI's built-in approval prompt (and the
community-module SLA prompt). Use it only non-interactively (e.g. CI) after the user has explicitly authorized the exact operation.
- `kyma module unmanage` stops reconciliation but leaves resources running;
make sure the user understands the module will no longer be reconciled.
Related skills
- `kyma-troubleshoot` — if a module won't reach Ready.
- `kyma-app-deploy` — deploy apps that depend on modules (e.g. api-gateway,
Istio).
- `kyma-cli` — general Kyma CLI reference.
Notes
- Commands under
kyma alphause unstable APIs and may change between releases. - If a flag is rejected, check
kyma <command> --helpon the installed version —
a tagged release can lag the latest development build.
Security
- Security scanPassed, 90 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/kyma-module-lifecycle/SKILL.md
Popularity
- Repository stars
- 125
- Repository forks
- 126
- 7-day trend score
- 0
Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.
Extension points
configConfiguration overrides
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/kyma-project/cli/kyma-module-lifecycle)