Install
openclaw skills install @thcjp/k8s-devops-tool-freeopenclaw skills install @thcjp/k8s-devops-tool-free本工具为个人开发者提供K8s YAML清单生成能力。支持常用K8s资源的清单生成、模板化创建和基础校验,帮助开发者快速编写规范的K8s配置文件。
| 资源类型 | 生成 | 校验 | 模板 |
|---|---|---|---|
| Deployment | 支持 | 支持 | Web应用/任务 |
| Service | 支持 | 支持 | ClusterIP/NodePort |
| ConfigMap | 支持 | 支持 | 配置文件 |
| Secret | 支持 | 支持 | 密码/证书 |
| Ingress | 支持 | 支持 | 基础路由 |
| Job/CronJob | 支持 | 支持 | 定时任务 |
| PVC | 支持 | 支持 | 存储卷 |
| Namespace | 支持 | 支持 | 命名空间 |
| Helm Chart | 不支持 | 不支持 | - |
| Kustomize | 不支持 | 不支持 | - |
输入: 用户提供清单生成功能所需的指令和必要参数。 处理: 解析清单生成功能的输入参数,完成核心逻辑,返回结构化响应。 输出: 返回清单生成功能的响应数据,包含状态码、结果和日志。
用input_params参数进行配置。
输入: 用户提供核心功能执行所需的指令和必要参数。 处理: 解析核心功能执行的输入参数,完成核心逻辑,返回结构化响应。 输出: 返回核心功能执行的响应数据,包含状态码、结果和日志。
input_params参数,支持创建/查询/导出操作用config_options参数进行配置。
输入: 用户提供参数配置与调用所需的指令和必要参数。 处理: 解析参数配置与调用的输入参数,完成核心逻辑,返回结构化响应。 输出: 返回参数配置与调用的响应数据,包含状态码、结果和日志。
config_options参数,支持修改/重置/导入操作
能力覆盖范围:本skill的核心能力覆盖以下场景关键词:Kubernetes、YAML、清单生成工具、支持常用资源模板、与基础校验、面向个人开发者的、等常用资源的清单、生成与基础校验、Use、when、需要代码生成、编程辅助、调试测试、开发部署时使用、不适用于无明确技、术栈的模糊需求、适用于独立开发者、企业团队和自动化、工作流场景等。这些关键词对应description中声明的使用场景,均已在上述能力点中提供对应的操作支持。用户输入:"帮我生成一个Web应用的Deployment清单"
# 生成Deployment清单
python3 (请参考skill目录中的脚本文件) deployment \
--name web-app \
--image nginx:1.25 \
--replicas 3 \
--port 80 \
--output deployment.yaml
# ...
# 输出文件内容
cat deployment.yaml
用户输入:"生成Web+数据库的完整K8s清单"
# 生成应用栈
python3 (请参考skill目录中的脚本文件) stack \
--template "web_db" \
--app-name my-app \
--app-image my-app:v1 \
--db-image postgres:15 \
--output-dir ./manifests/
# ...
# 输出:
# ./manifests/deployment.yaml
# ./manifests/service.yaml
# ./manifests/configmap.yaml
# ./manifests/secret.yaml
# ./manifests/pvc.yaml
用户输入:"检查我的YAML清单有没有问题"
# 校验清单
python3 (请参考skill目录中的脚本文件) validate \
--file deployment.yaml \
--dry-run
# ...
# 输出:
# [OK] 语法正确
# [OK] 必填字段完整
# 已知限制
# [建议] 添加livenessProbe
# 依赖说明
pip install pyyaml jsonschema
# ...
# 生成清单
python3 (请参考skill目录中的脚本文件) deployment --name my-app --image nginx:1.25
# 生成单个资源
python3 (请参考skill目录中的脚本文件) deployment --name my-app --image my-image:v1 --replicas 3
python3 (请参考skill目录中的脚本文件) service --name my-service --port 80 --type ClusterIP
python3 (请参考skill目录中的脚本文件) configmap --name my-config --from-file ./config.yaml
# ...
# 生成应用栈
python3 (请参考skill目录中的脚本文件) stack --template "web_db" --app-name my-app
# ...
# 校验清单
python3 (请参考skill目录中的脚本文件) validate --file deployment.yaml --dry-run
# ...
# 查看模板列表
python3 (请参考skill目录中的脚本文件) templates list
响应解析: 完成完成后,查看输出响应确认任务状态。成功时输出包含解析摘要和响应数据;失败时根据错误信息排查问题,查阅错误解析章节获取恢复步骤。
generate_config:
defaults:
api_version: "apps/v1"
namespace: "default"
replicas: 2
image_pull_policy: "IfNotPresent"
# ...
resources:
requests:
cpu: "100m"
memory: "128Mi"
limits:
cpu: "500m"
memory: "512Mi"
# ...
templates:
- name: "web_app"
resources: ["deployment", "service", "configmap", "ingress"]
- name: "web_db"
resources: ["deployment", "service", "configmap", "secret", "pvc"]
- name: "cron_job"
resources: ["cronjob", "configmap"]
# ...
validation:
schema_check: true
dry_run: true # kubectl dry-run验证
best_practices: true # 最佳实践检查
| 实践要点 | 说明 |
|---|---|
| 资源限制 | 生成的清单包含resources默认值 |
| 健康检查 | 模板中预置探针配置 |
| 镜像版本 | 使用具体版本号,避免latest |
| 命名规范 | 资源名使用小写和中划线 |
免费版不包含Helm Chart生成。如需Helm支持,建议升级PRO版。
可以。生成后通过 kubectl apply -f 直接应用。建议先用 --dry-run 校验。
免费版不包含Kustomize支持。如需Kustomize覆盖层管理,建议升级PRO版。
免费版提供预置模板,不支持自定义模板。如需自定义模板系统,建议升级PRO版。
| 依赖项 | 类型 | 是否必需 | 获取方式 |
|---|---|---|---|
| LLM API | API | 必需 | 由Agent内置LLM提供 |
| Python | 运行时 | 必需 | 系统安装或conda环境 |
| PyYAML | Python库 | 必需 | pip install pyyaml |
| jsonschema | Python库 | 可选 | pip install jsonschema(校验) |
| 错误场景 | 原因 | 处理方式 |
|---|---|---|
| 配置错误 | 参数缺失或格式错误 | 检查依赖说明中的配置要求 |
| 运行时错误 | 运行环境不满足 | 确认运行环境符合依赖说明 |
| 网络错误 | 连接超时或不可达 | 执行ping命令测试网络连通性,检查防火墙和代理设置连接后执行ping命令测试网络连通性,检查防火墙和代理设置连接后重新执行命令,参考国内替代方案 |