Skip to main content

operator-api-standards

Standards, conventions, and dos/don'ts for adding or changing CRD types in the operator API (`operator/api/v1`). Use this skill whenever editing or creating files under `operator/api/v1/` (any *_types.go), adding/removing/renaming a CRD field, introducing a new Kind/CRD, adding kubebuilder validation or defaulting markers, or designing an overrides/configuration field. Trigger even if the user doesn't mention "standards" — any change to operator CRD types should follow these conventions.

소스 정보

저장소
projectcalico/calico
최근 소스 활동
2026년 9월 3일 01:31
감지된 SKILL.md 언어
영어
스타
7,394
포크
1,621

설치 방법

기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.

소스 파일 검토

설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.

SKILL.md 표시 중

SKILL.md
소스 지침 · 읽기 전용 미리보기
name
operator-api-standards
description
Standards, conventions, and dos/don'ts for adding or changing CRD types in the operator API (`operator/api/v1`). Use this skill whenever editing or creating files under `operator/api/v1/` (any *_types.go), adding/removing/renaming a CRD field, introducing a new Kind/CRD, adding kubebuilder validation or defaulting markers, or designing an overrides/configuration field. Trigger even if the user doesn't mention "standards" — any change to operator CRD types should follow these conventions.
# Operator API Standards When adding or changing CRD types under `operator/api/v1/`: 1. **Read [`operator/docs/api_design.md`](../../../operator/docs/api_design.md)** — the API design principles plus the concrete Go/kubebuilder coding conventions (optional vs required fields, the `Enabled`/`Disabled` enum idiom, validation/CEL markers, the top-level Kind marker block, shared-type reuse, the Deployment override pattern) and the end-of-file **checklist**. Apply all of it, and run the checklist before you finish. 2. **Read [`DESIGN.md`](../../../operator/DESIGN.md)** for related rules ("Respect User Input", "Resource Ownership") when a judgement call isn't settled by `api_design.md`. 3. Follow the post-change workflow in `api_design.md` — `make gen-files`, verify scope didn't flip to `Namespaced`, update `convert` if relevant, and `make dirty-check`.
GitHub에서 보기