From okteto
Okteto development environment agent skill. Provides CLI knowledge, workflow patterns, and debugging strategies for working with Okteto environments. Supports both collaborative (human-in-the-loop) and autonomous (CI/ticket-driven) workflows. Use when a project has an okteto.yaml or the user mentions Okteto.
How this skill is triggered — by the user, by Claude, or both
Slash command
/okteto:oktetoThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
You are an AI agent working with an Okteto-powered development environment. This skill covers two modes of operation:
You are an AI agent working with an Okteto-powered development environment. This skill covers two modes of operation:
Read okteto.yaml in the project root. This is the source of truth for:
Parse this file to understand the project's services, languages, and structure. Do not assume hardcoded service names -- always derive them from okteto.yaml.
Collaborative mode -- a developer is in the loop and will run interactive commands. Use this when:
Autonomous mode -- you are operating independently end-to-end. Use this when:
okteto version and okteto context showokteto deploy --wait to build images and deploy all servicesokteto endpoints to display the public URLsokteto up <service>okteto up ruleokteto up is interactive and MUST be run by the user in their terminal. It opens a shell inside the development container with live file sync. Never run it yourself -- not as a background task, not with &, not at all. Instead, tell the user:
Run this in your terminal: okteto up <service>
Once the user has okteto up <service> running:
okteto exec -- <command> to execute commands in the dev containerokteto logs <service> for container logsokteto test <test-name> for test containers defined in okteto.yamlYou are facilitating their workflow, not trying to observe their terminal session.
| Situation | Action |
|---|---|
| User asks to run tests | okteto exec -- make test or language-appropriate command |
| User pastes an error | Read relevant code, analyze, suggest fix |
| User asks "why is this failing?" | Run diagnostics via okteto exec |
| User makes code changes | Changes auto-sync; help them run next steps |
| User asks to run e2e tests | okteto test <test-name> from okteto.yaml |
When operating without a developer in the loop, you own the full lifecycle: environment setup, code changes, validation, and reporting. Do not use okteto up -- it is interactive and requires a human. Instead, use okteto deploy for full environments and okteto test for validation.
Understand the task: Read the ticket/issue to understand what needs to change and the acceptance criteria.
Deploy an environment:
okteto context show to verify cluster connectionokteto deploy --wait to spin up all servicesokteto endpoints to capture the live URLs for later validationMake code changes: Edit the relevant source files based on the task requirements. Use the Read tool, Grep, and Glob to explore the codebase. Inspect the service directories and okteto.yaml to understand service structure.
Rebuild and redeploy changed services:
okteto build <service> to rebuild only the changed service imageokteto deploy --wait to redeploy with the updated imageokteto build <service> && okteto deploy --waitValidate:
okteto test <test-name> for each test container in okteto.yamlokteto endpoints and use curl or similar to smoke-test the live endpointsokteto logs <service> --since 5m for errors in the changed servicesIterate if tests fail:
Report results: Summarize what was changed, what tests passed, and provide the live environment URL for review. Include any relevant log output or test artifacts.
Clean up (if appropriate): If the environment is ephemeral and no longer needed, note that okteto destroy can tear it down. Do not destroy without explicit authorization or a predefined cleanup policy.
Trigger: Jira ticket "PROJ-123: Add rate limiting to /api/rentals endpoint"
Agent actions:
1. Read ticket for requirements and acceptance criteria
2. okteto deploy --wait -> full environment running
3. Read okteto.yaml, explore api/ directory
4. Edit api/handlers/rentals.go -> implement rate limiting
5. Edit api/handlers/rentals_test.go -> add unit tests
6. okteto build api -> rebuild the api service image
7. okteto deploy --wait -> redeploy with changes
8. okteto test e2e -> run e2e test suite
9. okteto logs api --since 5m -> check for runtime errors
10. curl the live endpoint to verify rate limiting behavior
11. Commit changes, open PR
12. Report back to PROJ-123: changes made, tests passing, PR link, live URL
Look at the dev section of okteto.yaml for each service. The command field tells you how the service starts:
command: bash -- the service needs manual build/start (check for Makefile, package.json, pom.xml in the service directory)command: yarn start or command: mvn spring-boot:run -- the service auto-starts in dev modeMakefile, package.json, pom.xml, or go.mod in the service directory to determine available commands| Command | Collaborative | Autonomous | Purpose |
|---|---|---|---|
okteto deploy --wait | Agent | Agent | Build images and deploy all services |
okteto build <service> | Agent | Agent | Build and push a single service image |
okteto up <service> | User only | Never | Start interactive dev container |
okteto down | Agent/User | N/A | Stop dev mode, restore deployment |
okteto exec -- <cmd> | Agent | N/A | Run command in active dev container |
okteto logs <service> | Agent | Agent | View container logs |
okteto endpoints | Agent | Agent | List public URLs |
okteto test <name> | Agent | Agent | Run a test container from okteto.yaml |
okteto destroy | User | With policy | Tear down all resources |
okteto doctor | Agent | Agent | Generate a diagnostic bundle |
okteto status | Agent | N/A | Check file sync progress |
okteto context show | Agent | Agent | Verify cluster and namespace |
okteto up in autonomous mode: There is no human to interact with the shell. Use okteto deploy + okteto build + okteto test instead.okteto up as the agent in collaborative mode: It is interactive. Always tell the user to run it.okteto deploy before any validation or testing.okteto deploy so Okteto can track resources.okteto build to leverage the Okteto Build Service.okteto.yaml to discover services.okteto destroy unless there is an explicit cleanup policy or instruction.npx claudepluginhub okteto/okteto-claude-plugins --plugin oktetoDefines standardized development environments or onboards developers by generating setup scripts, container configs, CI workflows, toolchain pins, and dev-setup documents.
Creates a local Kubernetes development environment with kind, k3d, or minikube for fast inner-loop development. Includes cluster creation, ingress, local registry, and Skaffold/Tilt integration.
Generates a complete local development setup guide for any service or project, walking a new engineer from zero to passing tests in under 30 minutes.