{"id":"f2512301-7b59-4225-b865-03d6facb3f7c","shortId":"Z6nwYC","kind":"skill","title":"frontend-forge-fi-operations","tagline":"Operate FrontendIntegration resources and the frontend-forge extension. Use when Codex needs to create a FrontendIntegration from FrontendIntegration YAML, update or patch FI lifecycle state, inspect or troubleshoot FI build output, or create, enable, disable, uninstall, and insp","description":"# Frontend Forge FI Operations\n\nOperate `FrontendIntegration` resources and the `frontend-forge` extension with `kubectl`.\n\n## When to Use\n\n- Create a `FrontendIntegration` from complete `FrontendIntegration` YAML\n- Update, enable, disable, or delete an existing FI\n- Inspect FI status, build jobs, `JSBundle`, ConfigMap, manifest, or source-spec annotations\n- Troubleshoot FI reconciliation or build output\n- Create, enable, disable, uninstall, or inspect the `frontend-forge` extension\n\n## Do Not Use\n\n- Generate new `FrontendIntegration` YAML from natural language\n- Manage extensions other than `frontend-forge`\n- Assume FI operations are valid before checking extension state\n- Use patch as the creation path for a new FI when the user already has YAML\n\n## Preconditions\n\n- `kubectl` must be configured for the target cluster.\n- `frontend-forge` extension installation and enabled state are prerequisites for all FI functionality.\n- `frontend-forge-controller` exists only after the `frontend-forge` extension is installed.\n- `FrontendIntegration` is cluster-scoped. Do not add `-n` when operating on FI resources.\n\n## Read First\n\n- Read [references/extension-management.md](references/extension-management.md) before any FI operation.\n- Read [references/lifecycle.md](references/lifecycle.md) for FI create, update, enable, disable, and delete workflows.\n- Read [references/inspection.md](references/inspection.md) for FI inspection and troubleshooting.\n\n## Preflight\n\nAlways run these checks before any FI create, update, enable, disable, delete, inspect, or troubleshoot flow:\n\n```bash\nkubectl get extension frontend-forge\nkubectl get installplan frontend-forge -o yaml\n```\n\nOnly continue to FI operations when:\n\n- the `frontend-forge` extension exists\n- the `frontend-forge` InstallPlan exists\n- `spec.enabled=true` on the InstallPlan\n\nIf the extension is missing or disabled, switch to the extension management workflow first.\n\n## FI Operations\n\n### Create FI From YAML\n\nOnly create FI from complete `FrontendIntegration` YAML content or a YAML file path.\n\n1. Run the preflight checks.\n2. If the user provides YAML content, write it to a temporary file.\n3. Apply the YAML with `kubectl apply -f`.\n4. Inspect the result.\n\nSee [references/lifecycle.md](references/lifecycle.md) for the exact create and post-apply inspection commands.\n\n### Update Existing FI\n\n- Prefer editing YAML and re-applying it.\n- Use patch only for targeted lifecycle changes when the user explicitly wants patch semantics.\n\nSee [references/lifecycle.md](references/lifecycle.md) for the exact update, enable, disable, and delete commands.\n\n### Disable FI\n\nDisable an existing FI by patching `spec.enabled=false`.\n\nSee [references/lifecycle.md](references/lifecycle.md) for the exact disable command and post-check flow.\n\n### Enable FI\n\nEnable an existing FI by patching `spec.enabled=true`.\n\nSee [references/lifecycle.md](references/lifecycle.md) for the exact enable command and post-check flow.\n\n### Delete FI\n\nDelete the FI resource only after the preflight checks pass.\n\nSee [references/lifecycle.md](references/lifecycle.md) for the exact delete command.\n\n## Extension Management\n\nUse fixed resource names for `frontend-forge`:\n\n- extension: `frontend-forge`\n- InstallPlan: `frontend-forge`\n\n### Create Extension\n\nAsk the user for the `frontend-forge` extension version. If it is not provided, resolve the latest version first.\n\nSee [references/extension-management.md](references/extension-management.md) for the exact version lookup command and InstallPlan YAML.\n\n### Disable Extension\n\nPatch `installplan/frontend-forge` so `spec.enabled=false`.\n\n### Enable Extension\n\nPatch `installplan/frontend-forge` so `spec.enabled=true`.\n\n### Uninstall Extension\n\nDelete `installplan/frontend-forge`.\n\n### Inspect Extension State\n\nInspect `extension/frontend-forge` and `installplan/frontend-forge`.\n\nSee [references/extension-management.md](references/extension-management.md) for the exact create, enable, disable, uninstall, and inspect commands.\n\n## Rules\n\n- Treat extension readiness as the first gate for all FI operations.\n- Create new FI resources only from `FrontendIntegration` YAML.\n- Prefer `kubectl apply -f` for FI creation.\n- Keep FI troubleshooting available after the preflight checks pass.\n- Keep command details in references; keep `SKILL.md` focused on routing and decision logic.\n- Use `extension` and `installplan` resources as the source of truth for extension state.\n- Treat `frontend-forge-controller` existence as a runtime signal, not the primary source of truth.\n- Do not generalize extension commands to any name other than `frontend-forge`.","tags":["frontend","forge","operations","kubesphere","agent-skills","cloud-native","cncf","devops","ebpf","hacktoberfest","kubernetes","llm"],"capabilities":["skill","source-kubesphere","skill-frontend-forge-fi-operations","topic-agent-skills","topic-cloud-native","topic-cncf","topic-devops","topic-ebpf","topic-hacktoberfest","topic-kubernetes","topic-kubesphere","topic-llm","topic-multi-cluster","topic-multi-tenancy","topic-observability"],"categories":["kubesphere"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/kubesphere/kubesphere/frontend-forge-fi-operations","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add kubesphere/kubesphere","source_repo":"https://github.com/kubesphere/kubesphere","install_from":"skills.sh"}},"qualityScore":"0.700","qualityRationale":"deterministic score 0.70 from registry signals: · indexed on github topic:agent-skills · 16920 github stars · SKILL.md body (4,651 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-05-03T00:52:28.786Z","embedding":null,"createdAt":"2026-04-18T21:53:09.052Z","updatedAt":"2026-05-03T00:52:28.786Z","lastSeenAt":"2026-05-03T00:52:28.786Z","tsv":"'1':318 '2':323 '3':336 '4':344 'add':194 'alreadi':147 'alway':231 'annot':90 'appli':337,342,358,370,576 'ask':484 'assum':125 'avail':584 'bash':247 'build':36,81,95 'chang':378 'check':131,234,322,419,442,454,588 'cluster':158,190 'cluster-scop':189 'codex':17 'command':360,397,415,438,463,512,553,591,636 'complet':67,309 'configmap':84 'configur':154 'content':312,329 'continu':263 'control':176,620 'creat':20,39,63,97,215,238,301,306,354,482,547,566 'creation':138,580 'decis':601 'delet':74,220,242,396,444,446,462,532 'detail':592 'disabl':41,72,99,218,241,291,394,398,400,414,516,549 'edit':365 'enabl':40,71,98,165,217,240,393,421,423,437,523,548 'exact':353,391,413,436,461,509,546 'exist':76,177,273,279,362,402,425,621 'explicit':382 'extens':14,57,107,119,132,162,184,250,272,287,295,464,474,483,492,517,524,531,535,556,604,614,635 'extension/frontend-forge':538 'f':343,577 'fals':407,522 'fi':4,29,35,47,77,79,92,126,143,171,199,208,214,226,237,265,299,302,307,363,399,403,422,426,445,448,564,568,579,582 'file':316,335 'first':202,298,503,560 'fix':467 'flow':246,420,443 'focus':597 'forg':3,13,46,56,106,124,161,175,183,253,259,271,277,473,477,481,491,619,644 'frontend':2,12,45,55,105,123,160,174,182,252,258,270,276,472,476,480,490,618,643 'frontend-forg':11,54,104,122,159,181,251,257,269,275,471,475,479,489,642 'frontend-forge-control':173,617 'frontend-forge-fi-oper':1 'frontendintegr':7,22,24,50,65,68,113,187,310,572 'function':172 'gate':561 'general':634 'generat':111 'get':249,255 'insp':44 'inspect':32,78,102,227,243,345,359,534,537,552 'instal':163,186 'installplan':256,278,284,478,514,606 'installplan/frontend-forge':519,526,533,540 'job':82 'jsbundl':83 'keep':581,590,595 'kubectl':59,151,248,254,341,575 'languag':117 'latest':501 'lifecycl':30,377 'logic':602 'lookup':511 'manag':118,296,465 'manifest':85 'miss':289 'must':152 'n':195 'name':469,639 'natur':116 'need':18 'new':112,142,567 'o':260 'oper':5,6,48,49,127,197,209,266,300,565 'output':37,96 'pass':455,589 'patch':28,135,373,384,405,428,518,525 'path':139,317 'post':357,418,441 'post-appli':356 'post-check':417,440 'precondit':150 'prefer':364,574 'preflight':230,321,453,587 'prerequisit':168 'primari':628 'provid':327,498 're':369 're-appli':368 'read':201,203,210,222 'readi':557 'reconcili':93 'refer':594 'references/extension-management.md':204,205,505,506,542,543 'references/inspection.md':223,224 'references/lifecycle.md':211,212,349,350,387,388,409,410,432,433,457,458 'resolv':499 'resourc':8,51,200,449,468,569,607 'result':347 'rout':599 'rule':554 'run':232,319 'runtim':624 'scope':191 'see':348,386,408,431,456,504,541 'semant':385 'signal':625 'skill' 'skill-frontend-forge-fi-operations' 'skill.md':596 'sourc':88,610,629 'source-kubesphere' 'source-spec':87 'spec':89 'spec.enabled':280,406,429,521,528 'state':31,133,166,536,615 'status':80 'switch':292 'target':157,376 'temporari':334 'topic-agent-skills' 'topic-cloud-native' 'topic-cncf' 'topic-devops' 'topic-ebpf' 'topic-hacktoberfest' 'topic-kubernetes' 'topic-kubesphere' 'topic-llm' 'topic-multi-cluster' 'topic-multi-tenancy' 'topic-observability' 'treat':555,616 'troubleshoot':34,91,229,245,583 'true':281,430,529 'truth':612,631 'uninstal':42,100,530,550 'updat':26,70,216,239,361,392 'use':15,62,110,134,372,466,603 'user':146,326,381,486 'valid':129 'version':493,502,510 'want':383 'workflow':221,297 'write':330 'yaml':25,69,114,149,261,304,311,315,328,339,366,515,573","prices":[{"id":"12f57f95-6157-4525-a280-063d07fb5e38","listingId":"f2512301-7b59-4225-b865-03d6facb3f7c","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"kubesphere","category":"kubesphere","install_from":"skills.sh"},"createdAt":"2026-04-18T21:53:09.052Z"}],"sources":[{"listingId":"f2512301-7b59-4225-b865-03d6facb3f7c","source":"github","sourceId":"kubesphere/kubesphere/frontend-forge-fi-operations","sourceUrl":"https://github.com/kubesphere/kubesphere/tree/master/skills/frontend-forge-fi-operations","isPrimary":false,"firstSeenAt":"2026-04-18T21:53:09.052Z","lastSeenAt":"2026-05-03T00:52:28.786Z"}],"details":{"listingId":"f2512301-7b59-4225-b865-03d6facb3f7c","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"kubesphere","slug":"frontend-forge-fi-operations","github":{"repo":"kubesphere/kubesphere","stars":16920,"topics":["agent-skills","ai","cloud-native","cncf","devops","ebpf","hacktoberfest","kubernetes","kubesphere","llm","multi-cluster","multi-tenancy","observability","servicemesh","skills","skills-sh","skillsmp"],"license":"other","html_url":"https://github.com/kubesphere/kubesphere","pushed_at":"2026-04-27T06:10:27Z","description":"The container platform tailored for Kubernetes multi-cloud, datacenter, and edge management ⎈ 🖥 ☁️","skill_md_sha":"36bbf6b85a95406d3ce6404e14aeaa11f4d0cf5a","skill_md_path":"skills/frontend-forge-fi-operations/SKILL.md","default_branch":"master","skill_tree_url":"https://github.com/kubesphere/kubesphere/tree/master/skills/frontend-forge-fi-operations"},"layout":"multi","source":"github","category":"kubesphere","frontmatter":{"name":"frontend-forge-fi-operations","description":"Operate FrontendIntegration resources and the frontend-forge extension. Use when Codex needs to create a FrontendIntegration from FrontendIntegration YAML, update or patch FI lifecycle state, inspect or troubleshoot FI build output, or create, enable, disable, uninstall, and inspect the frontend-forge extension through its InstallPlan and extension resources."},"skills_sh_url":"https://skills.sh/kubesphere/kubesphere/frontend-forge-fi-operations"},"updatedAt":"2026-05-03T00:52:28.786Z"}}