/install k8s-yaml-connect
Kubernetes YAML Connect Skill
This skill enables connection to Kubernetes clusters using YAML configuration files as input. It provides tools to apply, validate, and manage Kubernetes resources through kubectl commands.
When to Use
Use this skill when:
- You have Kubernetes YAML configuration files that need to be applied to a cluster
- You need to validate YAML syntax before deployment
- You want to create or update kubeconfig from YAML input
- You need to switch between Kubernetes contexts
- You want to check cluster status and resources
Prerequisites
Required
kubectlmust be installed and available in PATH- Kubernetes cluster accessible (local or remote)
- Appropriate permissions for the target cluster
Installing kubectl
If kubectl is not installed, you can install it using:
macOS:
# Using Homebrew
brew install kubectl
# Or download directly
curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/darwin/amd64/kubectl"
chmod +x kubectl
sudo mv kubectl /usr/local/bin/
Linux:
# Using package manager (Ubuntu/Debian)
sudo apt-get update
sudo apt-get install -y kubectl
# Or download directly
curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"
chmod +x kubectl
sudo mv kubectl /usr/local/bin/
Windows:
# Using Chocolatey
choco install kubernetes-cli
# Or download from official release
Verify installation:
kubectl version --client
Core Workflow
1. Validate YAML Syntax
Before applying any YAML, always validate the syntax:
kubectl apply --dry-run=client -f - \x3C\x3C'EOF'
[YAML_CONTENT]
EOF
2. Apply YAML to Cluster
Apply validated YAML to the current context:
kubectl apply -f - \x3C\x3C'EOF'
[YAML_CONTENT]
EOF
3. Create/Update Kubeconfig from YAML
If you have kubeconfig YAML, save it and update context:
# Save kubeconfig
cat > /tmp/kubeconfig.yaml \x3C\x3C'EOF'
[KUBECONFIG_YAML]
EOF
# Set KUBECONFIG environment variable
export KUBECONFIG=/tmp/kubeconfig.yaml
# Verify connection
kubectl cluster-info
4. Context Management
List and switch contexts:
# List available contexts
kubectl config get-contexts
# Switch to specific context
kubectl config use-context [CONTEXT_NAME]
# Get current context
kubectl config current-context
Common Operations
Deploy a Deployment
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-deployment
spec:
replicas: 3
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:1.14.2
ports:
- containerPort: 80
Create a Service
apiVersion: v1
kind: Service
metadata:
name: nginx-service
spec:
selector:
app: nginx
ports:
- protocol: TCP
port: 80
targetPort: 80
type: LoadBalancer
Create a ConfigMap
apiVersion: v1
kind: ConfigMap
metadata:
name: app-config
data:
APP_ENV: "production"
LOG_LEVEL: "info"
Error Handling
Check for Common Issues
# Check if kubectl is installed
command -v kubectl
# Check cluster connectivity
kubectl version --short
# Check if context is set
kubectl config view --minify
Validate YAML Before Applying
Always use dry-run first to catch errors:
kubectl apply --dry-run=client -f [FILE_OR_STDIN]
Security Considerations
- Never commit sensitive data in YAML files (use Secrets or external config)
- Validate YAML from untrusted sources before applying
- Use namespaces to isolate resources
- Apply least privilege RBAC permissions
Examples
Example 1: Apply Simple Deployment
# YAML content as variable
YAML_CONTENT=$(cat \x3C\x3C'EOF'
apiVersion: apps/v1
kind: Deployment
metadata:
name: test-deployment
spec:
replicas: 2
selector:
matchLabels:
app: test
template:
metadata:
labels:
app: test
spec:
containers:
- name: test
image: nginx:alpine
EOF
)
# Apply to cluster
kubectl apply -f - \x3C\x3C\x3C "$YAML_CONTENT"
Example 2: Multi-resource YAML
kubectl apply -f - \x3C\x3C'EOF'
---
apiVersion: v1
kind: ConfigMap
metadata:
name: app-config
data:
key: value
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: app-deployment
spec:
replicas: 2
selector:
matchLabels:
app: myapp
template:
metadata:
labels:
app: myapp
spec:
containers:
- name: app
image: myapp:latest
envFrom:
- configMapRef:
name: app-config
EOF
References
For more detailed information, see:
Troubleshooting
Common Issues
- Connection refused: Check if cluster is running and accessible
- Unauthorized: Verify kubeconfig and permissions
- YAML syntax error: Validate YAML with
kubectl apply --dry-run - Resource already exists: Use
kubectl applyfor updates orkubectl replacefor forced updates
Debug Commands
# Get detailed error information
kubectl describe [RESOURCE_TYPE] [RESOURCE_NAME]
# Check events
kubectl get events --sort-by='.lastTimestamp'
# Check pod logs
kubectl logs [POD_NAME]
Remember: Always test YAML in a non-production environment first when possible.
- 确保已安装 OpenClaw(本地或 Docker 部署)
- 在对话框中输入安装命令:
/install k8s-yaml-connect - 安装完成后,直接呼叫该 Skill 的名称或使用
/k8s-yaml-connect触发 - 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
K8s Yaml Connect 是什么?
Connect to Kubernetes clusters using YAML configuration files. Use when you need to apply, validate, or manage Kubernetes resources via kubectl with YAML inp... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 112 次。
如何安装 K8s Yaml Connect?
在 OpenClaw 或 Claude Code 对话框中运行命令「/install k8s-yaml-connect」即可一键安装,无需额外配置。
K8s Yaml Connect 是免费的吗?
是的,K8s Yaml Connect 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。
K8s Yaml Connect 支持哪些平台?
K8s Yaml Connect 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。
谁开发了 K8s Yaml Connect?
由 JokerZeng(@jokerzeng)开发并维护,当前版本 v1.0.0。