11# Development Cluster Management Skill
22
3- A skill for managing Ambient Code Platform development clusters (kind and minikube ) for testing local changes.
3+ A skill for managing Ambient Code Platform development clusters (kind) for testing local changes.
44
55## Purpose
66
@@ -19,20 +19,14 @@ Invoke this skill when working on the Ambient Code Platform and you need to:
1919- Debug deployment issues
2020- Iterate quickly on component changes
2121
22- ## Cluster Options
22+ ## Cluster: Kind
2323
24- ### Kind (Recommended for Quick Testing)
25- - Fast cluster creation
24+ - Fast cluster creation (~30 seconds)
2625- Uses production Quay.io images by default
26+ - `LOCAL_IMAGES=true` builds and loads from source
2727- Lightweight single-node cluster
2828- Aligns with CI/CD setup
29- - Access: http://localhost:8080
30-
31- ### Minikube (Recommended for Development)
32- - Builds images locally from source
33- - Hot-reload commands for quick iterations
34- - Full feature set for development
35- - Access: http://localhost:3000
29+ - Access via port-forwarding (see `make kind-status` for ports)
3630
3731## Key Features
3832
@@ -56,16 +50,6 @@ The skill will:
56505. Verify deployment
57516. Provide access information
5852
59- ### Development with Hot Reload
60- ```
61- User: "Set up minikube for frontend development"
62- ```
63- The skill will:
64- 1. Create minikube cluster
65- 2. Build all components
66- 3. Configure hot-reload
67- 4. Show how to iterate quickly
68-
6953### Troubleshooting
7054```
7155User: "The backend pod is crash looping"
@@ -79,89 +63,26 @@ The skill will:
7963
8064## Supported Commands
8165
82- The skill knows all relevant Makefile targets:
83-
84- **Kind:**
8566- `make kind-up` - Create cluster
67+ - `make kind-up LOCAL_IMAGES=true` - Create cluster with locally-built images
8668- `make kind-down` - Destroy cluster
87-
88- **Minikube:**
89- - `make local-up` - Create cluster with local builds
90- - `make local-rebuild` - Rebuild all and restart
91- - `make local-reload-backend` - Hot reload backend only
92- - `make local-reload-frontend` - Hot reload frontend only
93- - `make local-reload-operator` - Hot reload operator only
94- - `make local-status` - Check status
95- - `make local-logs-*` - View logs
96- - `make local-clean` - Destroy cluster
97-
98- **Building:**
69+ - `make kind-rebuild` - Rebuild all, reload, restart
70+ - `make kind-port-forward` - Port-forward services
71+ - `make kind-status` - Show cluster status and ports
9972- `make build-all` - Build all images
10073- `make build-backend` - Build backend only
10174- `make build-frontend` - Build frontend only
10275- `make build-operator` - Build operator only
103-
104- ## Platform Components
105-
106- The skill understands all platform components:
107-
108- | Component | Path | Image | Purpose |
109- |-----------|------|-------|---------|
110- | Backend | `components/backend` | `vteam_backend:latest` | API server |
111- | Frontend | `components/frontend` | `vteam_frontend:latest` | Web UI |
112- | Operator | `components/operator` | `vteam_operator:latest` | K8s operator |
113- | Runner | `components/runners/ambient-runner` | `vteam_claude_runner:latest` | Claude Code runner |
114- | State Sync | `components/runners/state-sync` | `vteam_state_sync:latest` | S3 persistence |
115- | Public API | `components/public-api` | `vteam_public_api:latest` | External API |
116-
117- ## Typical Workflow
118-
119- 1. **Make code changes** in one or more components
120- 2. **Invoke the skill** with "test this in kind" or similar
121- 3. **Skill analyzes changes** and builds necessary images
122- 4. **Skill creates/updates cluster** and deploys changes
123- 5. **Skill verifies deployment** and provides access info
124- 6. **Developer tests changes** in the running cluster
125- 7. **Iterate as needed** with hot-reload commands
76+ - `make local-status` - Check pod status
77+ - `make local-logs` - View all logs
12678
12779## Requirements
12880
129- - Access to /workspace/repos/platform repository
130- - kind or minikube installed
81+ - kind installed
13182- kubectl installed
13283- podman or docker installed
13384- Make installed
13485
135- ## Troubleshooting
136-
137- The skill handles common issues:
138-
139- - **ImagePullBackOff**: Ensures images are loaded with correct pull policy
140- - **CrashLoopBackOff**: Analyzes logs and suggests fixes
141- - **Port conflicts**: Helps resolve port forwarding issues
142- - **Stale images**: Forces rebuild and restart
143-
144- ## Integration Points
145-
146- This skill integrates with:
147- - The platform repository Makefile
148- - Git for change detection
149- - kubectl for cluster management
150- - kind/minikube for cluster creation
151- - Container runtime (podman/docker) for image management
152-
153- ## Best Practices
154-
155- 1. Use kind for quick validation
156- 2. Use minikube for iterative development
157- 3. Always check logs after deployment
158- 4. Clean up clusters when done
159- 5. Build only what changed
160- 6. Verify image pull policy for local images
161-
16286## See Also
16387
164- - [Platform Repository README](/workspace/repos/platform/README.md)
165- - [Platform Makefile](/workspace/repos/platform/Makefile)
16688- [Kind Documentation](https://kind.sigs.k8s.io/)
167- - [Minikube Documentation](https://minikube.sigs.k8s.io/)
0 commit comments