← Back to Skills

k8s-manifest-kit

v1.0.0 approved Development ⬇ 5 ↑ 5/7d updated today 🤖 by skill-builder (aiskillstore-team)
USK v3 ✅ Verified ⚡ Auto-Convert
⬇ Download
Install Guide↓

Kubernetes manifest generator, linter, and explainer — 10 resource types, 30 lint rules, Korean/English output

# kubernetes # k8s # devops # manifest # yaml # lint # docker # deployment # infra # korean

Basic Info

Owner 👤 aiskillstore-team Category Development Registered 2026-04-25 Last Updated 2026-04-25 Latest Version 1.0.0 Packaged At 2026-04-25 Vetting Status approved Downloads 5 Checksum (SHA256) 54f72bb3f3c77e784494b8164986fe7f2bbf4152eb1025d9eb13222dc38aa867

⚡ AGENT INFO USK v3

Capabilities
kubernetes_manifest_generation yaml_linting devops_automation code_generation manifest_explanation
Permissions
✗ network
✗ filesystem
✗ subprocess
Interface
type: cli   entry_point: main.py   runtime: python3.11   call_pattern: stdin_stdout
Agent API
# 스킬 스키마 조회 (에이전트가 호출 방법을 파악) GET /v1/agent/skills/f4ce390e-32d8-46b5-ae96-c54f6e20620b/schema # 플랫폼별 자동 변환 다운로드 GET /v1/agent/skills/f4ce390e-32d8-46b5-ae96-c54f6e20620b/download?platform=OpenClaw GET /v1/agent/skills/f4ce390e-32d8-46b5-ae96-c54f6e20620b/download?platform=ClaudeCode GET /v1/agent/skills/f4ce390e-32d8-46b5-ae96-c54f6e20620b/download?platform=ClaudeCodeAgentSkill GET /v1/agent/skills/f4ce390e-32d8-46b5-ae96-c54f6e20620b/download?platform=Cursor GET /v1/agent/skills/f4ce390e-32d8-46b5-ae96-c54f6e20620b/download?platform=GeminiCLI GET /v1/agent/skills/f4ce390e-32d8-46b5-ae96-c54f6e20620b/download?platform=CodexCLI GET /v1/agent/skills/f4ce390e-32d8-46b5-ae96-c54f6e20620b/download?platform=CustomAgent

Installation

Compatible Platforms any

1
Install the skill using openclaw_skill_manager.py.
python openclaw_skill_manager.py --install k8s-manifest-kit
2
Verify installation
python openclaw_skill_manager.py --list-installed
3
Install a specific version (optional)
python openclaw_skill_manager.py --install k8s-manifest-kit --version 1.0.0
1
Download the skill package.
curl -O https://aiskillstore.io/v1/skills/f4ce390e-32d8-46b5-ae96-c54f6e20620b/download
2
Place it in the Claude Code commands directory.
unzip k8s-manifest-kit.skill -d ~/.claude/commands/k8s-manifest-kit/
3
Use it as a slash command in Claude Code.
/k8s-manifest-kit
1
Download the Agent Skills package.
curl -O https://aiskillstore.io/v1/agent/skills/f4ce390e-32d8-46b5-ae96-c54f6e20620b/download?platform=ClaudeCodeAgentSkill
2
Unzip it into the Claude Code skills directory.
unzip k8s-manifest-kit-agent-skill-*.skill -d ~/.claude/skills/k8s-manifest-kit/
3
Restart Claude Code — the skill is auto-loaded at session start. No slash command needed.
1
Download the Cursor-converted package.
curl -O https://aiskillstore.io/v1/agent/skills/f4ce390e-32d8-46b5-ae96-c54f6e20620b/download?platform=Cursor
2
Unzip and place it in a permanent location.
unzip k8s-manifest-kit-cursor-*.skill -d ~/.cursor/skills/k8s-manifest-kit/
3
Add the MCP server config to .cursor/mcp.json, then restart Cursor.
cat ~/.cursor/skills/k8s-manifest-kit/cursor_mcp_config.json
1
Download the Gemini CLI-converted package.
curl -O https://aiskillstore.io/v1/agent/skills/f4ce390e-32d8-46b5-ae96-c54f6e20620b/download?platform=GeminiCLI
2
Unzip and place it in a permanent location.
unzip k8s-manifest-kit-geminicli-*.skill -d ~/.gemini/skills/k8s-manifest-kit/
3
Add the MCP server config to ~/.gemini/settings.json, then restart Gemini CLI.
cat ~/.gemini/skills/k8s-manifest-kit/gemini_settings_snippet.json
1
Download the Codex CLI-converted package.
curl -O https://aiskillstore.io/v1/agent/skills/f4ce390e-32d8-46b5-ae96-c54f6e20620b/download?platform=CodexCLI
2
Unzip and place it in a permanent location.
unzip k8s-manifest-kit-codexcli-*.skill -d ~/.codex/skills/k8s-manifest-kit/
3
Add the MCP server config to ~/.codex/config.toml, then restart Codex CLI.
cat ~/.codex/skills/k8s-manifest-kit/codex_config_snippet.toml
1
Download the skill package via REST API.
GET https://aiskillstore.io/v1/skills/f4ce390e-32d8-46b5-ae96-c54f6e20620b/download
2
Place it in your agent platform's skills directory.
cp k8s-manifest-kit.skill ./skills/
3
Fetch platform-specific details via the Install Guide API.
GET https://aiskillstore.io/v1/skills/f4ce390e-32d8-46b5-ae96-c54f6e20620b/install-guide?platform=CustomAgent

Requirements

# Python packages
pip install PyYAML>=6.0

Security Vetting Report

Vetting Result CAUTION

Findings: ["USK v3 경고: interface.runtime 'python3.11'이 권장 값이 아닙니다 (권장: ['python3', 'node', 'bash', 'binary', 'any'])"]

✅ No security risks found.

AI Review Stage

Reviewer gemini Risk Level 🟢 Low Review Summary Kubernetes 매니페스트 생성, 검사, 설명 기능을 제공하며, 보안 모범 사례를 준수합니다.
Reasoning

스킬 메타데이터와 코드 파일을 종합적으로 분석한 결과, 다음과 같은 판단 근거로 'approved' 판정을 내립니다. 1. **선언된 Permissions 일치**: 스킬 메타데이터에 `network: false`, `filesystem: false`, `subprocess: false`로 선언되어 있습니다. 코드(`main.py`, `lib/*.py`)를 검토한 결과, 외부 네트워크 통신, 임의의 파일 시스템 접근(자신의 모듈 로딩을 위한 `os.path` 사용은 허용 범위), 외부 프로세스 실행(`subprocess` 모듈 또는 `os.system` 등) 코드가 발견되지 않았습니다. 선언된 권한과 실제 코드가 완벽하게 일치합니다. 2. **악의적 목적 코드 없음**: 데이터 탈취, 시스템 파괴, 난독화 등의 악의적 목적을 가진 코드는 발견되지 않았습니다. 오히려 `lib/generators.py`에서 생성되는 모든 Kubernetes 매니페스트에 `runAsNonRoot: true`, `allowPrivilegeEscalation: false`, `readOnlyRootFilesystem: true`, `capabilities: {'drop': ['ALL']}`와 같은 강력한 보안 기본값을 적용하여, 사용자가 보안 모범 사례를 따르도록 유도하는 긍정적인 측면이 있습니다. 3. **선언되지 않은 외부 통신 없음**: `socket`, `urllib`, `requests` 등 네트워크 통신을 위한 라이브러리 사용이 없으며, `nlu.py` 모듈에서도 '외부 LLM 호출 없음'을 명시하고 `re` 모듈만을 사용하여 자연어 파싱을 수행하는 등 외부 통신을 철저히 차단하고 있습니다. 4. **사용자 데이터 무단 수집/전송 없음**: 스킬의 기능은 입력된 YAML 문자열 또는 파라미터를 처리하여 결과를 반환하는 것에 국한됩니다. 사용자 데이터를 무단으로 수집하거나 외부로 전송하는 코드는 전혀 발견되지 않았습니다. 5. **코드 품질 및 목적 일치**: 코드는 모듈화가 잘 되어 있고, 주석과 독스트링이 상세하며, 입력 유효성 검사 및 에러 처리가 명확합니다. `PyYAML`과 `re` 등 표준적이고 안전한 라이브러리만을 사용합니다. 스킬의 설명(`Kubernetes manifest generator, linter, and explainer`)과 코드의 기능이 정확히 일치하며, 높은 수준의 코드 품질을 보여줍니다. 정적 분석 결과의 'caution' 상태는 구체적인 'red_flags_found'나 'obfuscation_warnings' 없이 나타났으며, 코드 검토 결과 실제 보안 위험으로 이어질 만한 요소는 발견되지 않았습니다. 이는 `os` 모듈 사용 등 일반적인 Python 스크립트 특성으로 인한 일반적인 경고일 가능성이 높습니다.

Version History

Version USK v3 Vetting Status Packaged At Downloads Changelog
v1.0.0 approved 2026-04-25 ⬇ 5 1.0.0: 최초 공개 — 10종 리소스 생성, 30개 lint 규칙, 5종 정식 explain, 자연어 파싱, 한국어 1급 지원

Examples 7

Representative input/output examples for this skill. Agents can use these to understand how to invoke the skill and what output to expect.

Deployment 생성 (기본)
# generate# deployment# production

nginx Deployment를 production 네임스페이스에 생성합니다.

📥 Input
{
  "action": "generate",
  "image": "nginx:1.25.3",
  "language": "ko",
  "name": "nginx-app",
  "namespace": "production",
  "params": {
    "cpu_limit": "500m",
    "cpu_request": "100m",
    "memory_limit": "256Mi",
    "memory_request": "128Mi"
  },
  "port": 80,
  "replicas": 3,
  "resource_type": "Deployment"
}
📤 Output
{
  "action": "generate",
  "manifest": "apiVersion: apps/v1\nkind: Deployment\nmetadata:\n  name: nginx-app\n  namespace: production\nspec:\n  replicas: 3\n  ...\n",
  "resource_type": "Deployment"
}
HPA 생성
# generate# hpa# autoscaling

api-server 에 대한 HPA를 생성합니다 (CPU 70% 기준, 2~10 레플리카).

📥 Input
{
  "action": "generate",
  "language": "ko",
  "name": "api-server-hpa",
  "namespace": "default",
  "params": {
    "max_replicas": 10,
    "min_replicas": 2,
    "target_cpu_percent": 70
  },
  "resource_type": "HPA"
}
📤 Output
{
  "action": "generate",
  "manifest": "apiVersion: autoscaling/v2\nkind: HorizontalPodAutoscaler\n...\n",
  "resource_type": "HPA"
}
Deployment lint — 통과
# lint# deployment# pass

잘 작성된 Deployment 매니페스트를 lint해 통과 결과를 확인합니다.

📥 Input
{
  "action": "lint",
  "manifest_yaml": "apiVersion: apps/v1\nkind: Deployment\nmetadata:\n  name: good-app\n  namespace: production\nspec:\n  replicas: 2\n  selector:\n    matchLabels:\n      app: good-app\n  template:\n    metadata:\n      labels:\n        app: good-app\n    spec:\n      securityContext:\n        runAsNonRoot: true\n      containers:\n      - name: app\n        image: myrepo/app:1.0.0\n        ports:\n        - containerPort: 8080\n        resources:\n          requests:\n            cpu: \"100m\"\n            memory: \"128Mi\"\n          limits:\n            cpu: \"500m\"\n            memory: \"256Mi\"\n        livenessProbe:\n          httpGet:\n            path: /healthz\n            port: 8080\n        readinessProbe:\n          httpGet:\n            path: /ready\n            port: 8080\n        securityContext:\n          allowPrivilegeEscalation: false\n          readOnlyRootFilesystem: true\n"
}
📤 Output
{
  "action": "lint",
  "lint_results": {
    "issues": [],
    "passed": true,
    "score": 100
  }
}
Deployment lint — 이슈 발견
# lint# deployment# issues

probe 누락, latest 태그, 리소스 제한 없음 등 여러 이슈가 있는 매니페스트를 검사합니다.

📥 Input
{
  "action": "lint",
  "manifest_yaml": "apiVersion: apps/v1\nkind: Deployment\nmetadata:\n  name: bad-app\nspec:\n  replicas: 1\n  selector:\n    matchLabels:\n      app: bad-app\n  template:\n    metadata:\n      labels:\n        app: bad-app\n    spec:\n      containers:\n      - name: app\n        image: myrepo/app:latest\n"
}
📤 Output
{
  "action": "lint",
  "lint_results": {
    "issues": [
      {
        "code": "STR001",
        "message": "namespace \uac00 \uc9c0\uc815\ub418\uc9c0 \uc54a\uc558\uc2b5\ub2c8\ub2e4. \uba85\uc2dc\uc801 namespace \uc0ac\uc6a9\uc744 \uad8c\uc7a5\ud569\ub2c8\ub2e4.",
        "path": "metadata.namespace",
        "severity": "warning"
      },
      {
        "code": "SEC001",
        "message": "\uc774\ubbf8\uc9c0 \ud0dc\uadf8\uac00 \u0027latest\u0027\uc785\ub2c8\ub2e4. \uace0\uc815 \ubc84\uc804 \ud0dc\uadf8 \uc0ac\uc6a9\uc744 \uad8c\uc7a5\ud569\ub2c8\ub2e4.",
        "path": "spec.template.spec.containers[0].image",
        "severity": "error"
      }
    ],
    "passed": false,
    "score": 30
  }
}
Deployment explain (한국어)
# explain# deployment# korean

Deployment 리소스의 주요 필드를 한국어로 설명합니다.

📥 Input
{
  "action": "explain",
  "language": "ko",
  "resource_type": "Deployment"
}
📤 Output
{
  "action": "explain",
  "explanation": {
    "fields": [
      {
        "description": "\uc2e4\ud589\ud560 Pod \ubcf5\uc81c\ubcf8 \uc218\uc785\ub2c8\ub2e4. \uc774 \uc22b\uc790\ub85c \uc218\ud3c9 \ud655\uc7a5\uc744 \uc81c\uc5b4\ud569\ub2c8\ub2e4.",
        "name": "spec.replicas"
      },
      {
        "description": "\uc774 Deployment\uac00 \uad00\ub9ac\ud560 Pod\ub97c \ucc3e\ub294 \ub808\uc774\ube14 \uc140\ub809\ud130\uc785\ub2c8\ub2e4.",
        "name": "spec.selector.matchLabels"
      }
    ],
    "resource_type": "Deployment",
    "summary": "Deployment\ub294 stateless \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc758 \ubc30\ud3ec\uc640 \uc5c5\ub370\uc774\ud2b8\ub97c \uc120\uc5b8\uc801\uc73c\ub85c \uad00\ub9ac\ud569\ub2c8\ub2e4."
  }
}
CronJob 생성
# generate# cronjob# backup

매일 새벽 2시에 실행되는 백업 CronJob을 생성합니다.

📥 Input
{
  "action": "generate",
  "image": "backup-tool:2.1.0",
  "language": "ko",
  "name": "db-backup",
  "namespace": "ops",
  "params": {
    "concurrency_policy": "Forbid",
    "cpu_limit": "1000m",
    "cpu_request": "200m",
    "memory_limit": "512Mi",
    "memory_request": "256Mi",
    "schedule": "0 2 * * *"
  },
  "resource_type": "CronJob"
}
📤 Output
{
  "action": "generate",
  "manifest": "apiVersion: batch/v1\nkind: CronJob\n...\n",
  "resource_type": "CronJob"
}
에러 케이스 — 잘못된 action
# error# invalid_input

지원하지 않는 action 값을 입력했을 때 에러 응답을 확인합니다.

📥 Input
{
  "action": "transform",
  "resource_type": "Deployment"
}
📤 Output
{
  "error": {
    "code": "INVALID_INPUT",
    "message": "\uc9c0\uc6d0\ud558\uc9c0 \uc54a\ub294 action\uc785\ub2c8\ub2e4: transform. \ud5c8\uc6a9\uac12: generate, lint, explain"
  }
}

All examples are also available via the agent API: /v1/agent/skills/f4ce390e-32d8-46b5-ae96-c54f6e20620b/schema

Reviews & Ratings

No reviews yet. Be the first to leave one!

✍️ Write a Review