Kubesphere frontend-integration-yaml
Generate canonical FrontendIntegration YAML from a simplified single-menu authoring model for frontend-forge.
install
source · Clone the upstream repo
git clone https://github.com/kubesphere/kubesphere
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/kubesphere/kubesphere "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/frontend-integration-yaml" ~/.claude/skills/kubesphere-kubesphere-frontend-integration-yaml && rm -rf "$T"
manifest:
skills/frontend-integration-yaml/SKILL.mdsource content
Frontend Integration YAML
Generate submit-ready
FrontendIntegration YAML from a simplified authoring model with one menu and one or more pages.
When to Use
- generate FrontendIntegration YAML
- create a quick integration YAML from a CRD
- create an iframe based FrontendIntegration YAML
- convert simplified single-menu config into canonical YAML
Do Not Use
- troubleshooting existing FrontendIntegration resources
- managing enable/disable/delete lifecycle
- inspecting JSBundle, Job, controller, or status flows
- editing manifest generation rules
- handling multi-menu authoring models
Required Inputs
Ask the user instead of guessing when any of these are missing:
metadata.namemenu.displayNamemenu.placements[]- at least one page in
pages[] - for
:crdTable
,group
,version
,scopenames.plural - for
:iframe
andkeyiframe.src
Authoring Model
Use the simplified single-menu model as input to the generator:
- top-level
metadata - top-level
for optional passthrough fieldsspec - top-level
menu - top-level
pages
Do not author canonical
spec.menus[] by hand.
Workflow
- Extract the simplified authoring model.
- Fill only safe defaults.
- Keep the model in single-menu form.
- Run
.scripts/generate_frontend_integration.py - Return the generated canonical YAML.
Rules
- Treat the generator script as the source of truth.
- Do not manually reconstruct canonical YAML when the generator is available.
- Always output canonical
.kind: FrontendIntegration - Always expand
intomenu.placements[]
.spec.menus[] - Always derive
fromchildren
.pages[] - If any placement is
, force allworkspace
values tocrdTable.scope
.Namespaced - Default
tomenu.icon
when it is omitted.GridDuotone - Do not add runtime-managed metadata unless explicitly requested.
Output
- Return the generated YAML first, unless explanation is requested.
- Prefer a single
code block.yaml - After the YAML, always output this exact guidance line:
FrontendIntegration YAML has been generated. Reply 'apply' to deploy it directly.