mckinsey / ark-controller-development
Install for your project team
Run this command in your project directory to install the skill for your entire team:
mkdir -p .claude/skills/ark-controller-development && curl -L -o skill.zip "https://fastmcp.me/Skills/Download/2551" && unzip -o skill.zip -d .claude/skills/ark-controller-development && rm skill.zip
Project Skills
This skill will be saved in .claude/skills/ark-controller-development/ and checked into git. All team members will have access to it automatically.
Important: Please verify the skill by reviewing its instructions before using it.
Guidance for developing the Ark Kubernetes operator. Use when modifying Go types, CRDs, controllers, or webhooks. Helps with CRD generation and Helm chart sync issues.
0 views
0 installs
Skill Content
---
name: ark-controller-development
description: Guidance for developing the Ark Kubernetes operator. Use when modifying Go types, CRDs, controllers, or webhooks. Helps with CRD generation and Helm chart sync issues.
---
# Ark Controller Development
Guidance for developing the Ark Kubernetes operator in `ark/`.
## When to use this skill
- Modifying Go type definitions (`api/v1alpha1/*_types.go`)
- Fixing CRD/Helm chart sync errors
- Adding new CRD fields or resources
## CRD Generation Flow
```
api/v1alpha1/*_types.go # Go types with markers
↓
make manifests # Generates CRDs and syncs to Helm chart
↓
config/crd/bases/*.yaml # Source CRDs (auto-generated)
dist/chart/templates/crd/ # Helm chart CRDs (auto-synced)
```
`make manifests` automatically syncs source CRDs to the Helm chart while preserving templated headers.
## Fixing "CRDs out of sync" Errors
When `make build` fails with CRD validation errors:
```bash
cd ark
make manifests
make build
```
## Key Directories
| Directory | Purpose |
|-----------|---------|
| `api/v1alpha1/` | Go type definitions |
| `config/crd/bases/` | Auto-generated source CRDs |
| `dist/chart/templates/crd/` | Helm chart CRDs (auto-synced) |
| `internal/controller/` | Reconciliation logic |
| `internal/webhook/` | Admission webhooks |
| `internal/genai/` | AI/ML execution logic |
## Common Tasks
### After Modifying Types or Comments
Go type comments become CRD field descriptions:
```bash
cd ark
make manifests
make build
```
### After Any Go Code Change
```bash
make lint-fix # Format and fix linting
make build # Build and validate
```