Kiro Setup
본 문서는 Kiro 하네스에서 oh-my-aidlcops(OMA)를 설치·구성하는 방법을 설명합니다. OMA는 Claude Code와 Kiro를 동일한 스킬·상태 기반으로 지원하며, 두 하네스는 프로젝트 루트의 .omao/ 디렉터리를 공유합니다.
Kiro 하네스란
Kiro는 Claude Code와 다른 skills-first 에이전트 하네스입니다. 주요 차이점은 다음과 같습니다.
| 측면 | Claude Code | Kiro |
|---|---|---|
| 플러그인 단위 | plugin/ 디렉터리 | 스킬 단위 flat 배포 |
| 스킬 위치 | ~/.claude/plugins/<plugin>/skills/<skill>/ | ~/.kiro/skills/<plugin>/<skill>/ |
| 커맨드 시스템 | /slash-command | 스킬 직접 호출 |
| Steering | Claude Code가 자동 주입 | .kiro/steering/ 디렉터리 기반 |
| 트리거 힌트 | settings.json 훅 | kiro.meta.yaml 사이드카 |
OMA는 이 차이를 install/kiro.sh에서 흡수하며, 동일한 plugins/<plugin>/skills/<skill>/SKILL.md 소스를 두 하네스에 공유 노출합니다.
사전 요구사항
| 도구 | 버전 | 설치 |
|---|---|---|
| Kiro 런타임 | 최신 stable | Kiro 공식 가이드 |
| bash | 4+ | brew install bash (macOS) |
| jq | 1.6+ | brew install jq / apt install jq |
| git | 2.30+ | 시스템 기본값 |
| uv / uvx | latest | pipx install uv (MCP 서버용) |
설치
Kiro는 네이티브 마켓플레이스 경로를 제공하지 않으므로 수동 설치만 지원합니다.
git clone https://github.com/aws-samples/sample-oh-my-aidlcops
cd oh-my-aidlcops
bash scripts/install/kiro.sh
스크립트 실행 후 기대되는 출력은 다음과 같습니다.
[install-kiro] OMA repo : /.../oh-my-aidlcops
[install-kiro] KIRO_HOME: /home/user/.kiro
[install-kiro] OMA_OWNER: aws-samples
[install-kiro] skill linked: ai-infra/vllm-serving-setup
[install-kiro] skill linked: agenticops/self-improving-loop
...
[install-kiro] steering linked: /home/user/.kiro/steering
Installation complete.
skills linked : 23
kiro.meta.yaml found : 7
심링크 구조
설치가 끝나면 Kiro 홈 디렉터리에 다음 구조가 생성됩니다.
~/.kiro/
├── skills/
│ ├── ai-infra/
│ │ ├── agentic-eks-bootstrap -> <repo>/plugins/ai-infra/skills/agentic-eks-bootstrap
│ │ ├── vllm-serving-setup -> <repo>/plugins/ai-infra/skills/vllm-serving-setup
│ │ ├── inference-gateway-routing -> ...
│ │ └── ...
│ ├── agenticops/
│ │ ├── self-improving-loop -> ...
│ │ ├── autopilot-deploy -> ...
│ │ ├── incident-response -> ...
│ │ ├── continuous-eval -> ...
│ │ └── cost-governance -> ...
│ ├── aidlc/
│ └── aidlc/
├── steering -> <repo>/steering
├── guides/ # NEW: 단계별 가이드 (플러그인별 디렉터리)
│ └── ai-infra/ -> <repo>/plugins/ai-infra/guides
├── agents/ # NEW: Kiro 에이전트 설정
│ └── ai-infra.agent.json -> <repo>/plugins/ai-infra/kiro-agents/ai-infra.agent.json
└── settings/ # NEW: CLI 설정
└── cli.json # 기본 템플릿 (사용자 편집 가능)
각 심링크는 OMA 리포지터리의 원본 디렉터리를 가리킵니다. 따라서 git pull로 리포지터리를 업데이트하면 Kiro가 즉시 최신 스킬을 사용합니다.
idempotency
install/kiro.sh는 idempotent입니다. 재실행 시 기존 심링크의 타겟이 올바르면 유지하고, 오염된 링크만 새로 생성합니다. 실제 파일이 심링크 자리에 있으면 덮어쓰지 않고 경고만 출력합니다.
[install-kiro][warn] refusing to replace non-symlink: /home/user/.kiro/skills/my-skill
kiro.meta.yaml 사이드카
Claude Code의 SKILL.md frontmatter는 Kiro가 그대로 해석하지 못하는 필드를 일부 포함합니다. 일부 스킬은 Kiro 전용 메타데이터를 kiro.meta.yaml 사이드카 파일로 제공하며, 설치 스크립트는 이를 감지하면 로그를 출력합니다.
[install-kiro] skill linked: ai-infra/vllm-serving-setup
[install-kiro] kiro.meta.yaml sidecar detected for ai-infra/vllm-serving-setup
사이드카 파일 예시 구조:
# kiro.meta.yaml
kiro:
trigger_keywords:
- "vllm"
- "model serving"
- "PagedAttention"
context_files:
- SKILL.md
- reference/vllm-config.yaml
mcp_required:
- eks-mcp-server
- aws-pricing-mcp-server
phase: operations
approval_required: true
Kiro는 이 메타데이터를 읽어 다음을 수행합니다.
- trigger_keywords — 자연어 요청에서 매칭 시 스킬을 우선 제안
- context_files — 스킬 실행 시 함께 로드할 추가 파일
- mcp_required — 실행 전 필수 MCP 서버 연결 확인
- phase — Inception / Construction / Operations 단계 분류
- approval_required — 체크포인트 승인 필요 여부
사이드카가 없는 스킬은 SKILL.md frontmatter만으로 동작합니다.
Full Kiro Layout Support
OMA는 AWS Kiro 모더나이제이션 샘플에서 사용하는 전체 디렉터리 레이아웃을 지원합니다. 설치 스크립트는 다음 5개 디렉터리를 자동으로 구성합니다.
1. skills/ — 실행 가능한 스킬
모든 플러그인의 skills/ 하위 디렉터리를 ~/.kiro/skills/<plugin>/<skill>/ 형태로 심링크합니다. 각 스킬은 SKILL.md + 선택적 kiro.meta.yaml 사이드카로 구성됩니다.