Bash Hooks를 사용한 Kiro용 Persistent Memory 구축
Source: Dev.to
위의 링크에 있는 전체 텍스트를 제공해 주시면, 해당 내용을 한국어로 번역해 드리겠습니다. (코드 블록, URL 및 마크다운 형식은 그대로 유지됩니다.)
문제
Kiro와 Kiro CLI를 매일 사용한 지 몇 달이 지나, 이번 주를 되돌아보고 싶었습니다.
- 어떤 문제를 해결했나요?
- 어떤 접근 방식이 효과적이었나요?
- 무엇을 배웠나요?
Kiro는 대화 지속성을 제공하여 채팅을 재개하고 세션을 저장·불러올 수 있습니다. 이는 유용하지만, 제가 원한 것은 아니었습니다.
오래된 대화를 스크롤해서 찾아보는 것이 아니라 인사이트—패턴, 작동한 솔루션 및 그 이유—를 추출하고 싶었습니다.
화요일 디버깅 세션에서 Terraform 상태 잠금에 대해 배운 것이 있었지만, 그 교훈은 200개의 메시지 대화 속에 파묻혀 있었습니다. 다음에 같은 문제를 마주했을 때, 이를 검색할 생각을 할까요? 혹은 그 일이 있었던 자체를 기억할까요?
Kiro는 에이전트, 훅, 스티어링 파일 등 훌륭한 인프라를 제공합니다. 하지만 배운 내용을 캡처하고 필요할 때 다시 보여주는 시스템은 없습니다.
그래서 생각하기 시작했습니다: Kiro가 이미 제공하는 것 위에 그 레이어를 구축한다면 어떨까?
아이디어
저는 Daniel Miessler의 PAI 프로젝트 — Claude용 개인 AI 인프라스트럭처를 발견했습니다. 바로 이해가 되었습니다.
아이디어: 당신의 작업에서 배우고 그 지식을 향후 작업에 적용하는 AI 어시스턴트.
Kiro를 위해 비슷한 것을 만들 수 있다면 어떨까요? 다음과 같은 레이어:
- 학습을 실시간으로 캡처한다
- 내 프로젝트와 우선순위를 알고 있다
- 일관된 문제 해결 방식을 따른다
더 똑똑한 모델이 아니라—그냥 학습하는 시스템일 뿐이다.
Kiro는 이미 빌딩 블록을 가지고 있다: 핵심 순간에 실행되는 훅, 지속적인 컨텍스트를 위한 스티어링 파일, 그리고 에이전트 구성. 나는 이들을 연결하기만 하면 되었다.
내가 만든 것
PILOT은 Kiro용 에이전트로, 세 가지를 추가합니다:
1. 알고리즘
Every task follows seven phases:
OBSERVE → THINK → PLAN → BUILD → EXECUTE → VERIFY → LEARN
혁신적인 것은 아니며, 경험 많은 엔지니어들이 이미 하는 방식입니다. 이를 명시적으로 만들면 AI가 일관되게 따르게 됩니다.
핵심 통찰: 실행하기 전에 성공 기준을 정의합니다. 대부분의 사람들은 이를 건너뛰고 무언가를 시도한 뒤, 대충 작동했는지 확인하고 넘어갑니다.
2. 메모리
PILOT은 검증을 통해 작동이 확인된 후에만 솔루션을 저장합니다.
~/.pilot/learnings/
├── 2026-01-15_terraform-state-lock-fix.md
├── 2026-01-14_lambda-timeout-optimization.md
└── 2026-01-12_git-merge-conflict-pattern.md
다음에 비슷한 문제에 직면하면, PILOT이 이전 솔루션을 보여줍니다.
학습 내용에 대한 의미 검색을 위해 PILOT은 Kiro의 /knowledge 기능을 사용합니다. 이 기능이 없더라도 PILOT은 작동하지만 키워드 매칭으로 대체됩니다.
검증되지 않은 솔루션은 추측에 불과합니다.
검증된 솔루션은 지식입니다.
3. 아이덴티티
PILOT에게 당신에 대한 컨텍스트를 제공하는 선택적 마크다운 파일들:
~/.pilot/identity/
├── MISSION.md # What you're building
├── GOALS.md # Current objectives
├── PROJECTS.md # Active work
└── STRATEGIES.md # Approaches that work for you
이를 직접 채울 필요는 없습니다. PILOT은 당신의 작업을 관찰하고 점진적으로 채워 넣습니다. 사용할수록 더 많은 컨텍스트를 포착합니다: 진행 중인 프로젝트, 직면한 도전 과제, 당신에게 효과적인 전략 등.
아이덴티티가 없을 때: “이 Lambda 타임아웃을 고치는 방법입니다.”
아이덴티티가 있을 때: “비용 최적화에 집중하고 있다는 점을 고려해, 지난달에 사용한 이 접근 방식을 검토해 보세요…”
작동 방식
PILOT은 네 가지 Kiro 기능을 사용합니다: hooks, resources, agents, 그리고 실험적인 knowledge base.
리소스
리소스는 에이전트에 컨텍스트를 로드합니다. Kiro는 세 가지 유형을 지원합니다:
| Scheme | 로드 시점 |
|---|---|
file:// | 시작 시 바로 로드 (예: 신원 파일) |
skill:// | 필요할 때 관련된 경우에 로드 (알고리즘, 원칙) |
knowledgeBase | 인덱싱된 콘텐츠에 대한 의미 검색을 가능하게 함 |
PILOT은 여러분의 learnings 폴더를 지식 베이스로 인덱싱합니다. 무언가에 대해 질문하면, 키워드가 정확히 일치하지 않더라도 관련된 과거 솔루션을 찾아낼 수 있습니다.
이렇게 하면 컨텍스트가 가볍게 유지됩니다: 에이전트는 여러분의 미션과 목표를 즉시 파악하지만, 전체 알고리즘 문서를 참조해야 할 때만 로드합니다.
훅
훅은 핵심 순간에 스크립트를 실행합니다. Kiro는 트리거 포인트를 제공하고, PILOT은 스크립트를 제공합니다:
┌─────────────────────────────────────────────────────────────┐
│ Kiro Session │
│ │
│ Kiro Event PILOT Script │
│ ────────── ──────────── │
│ │
│ agentSpawn → agent-spawn.sh │
│ Load identity, past learnings │
│ │
│ userPromptSubmit → user-prompt-submit.sh │
│ Search relevant patterns │
│ │
│ preToolUse → pre-tool-use.sh │
│ Validate before execution │
│ │
│ [Tool executes] │
│ │
│ postToolUse → post-tool-use.sh │
│ Capture results │
│ │
│ stop → stop.sh │
│ Archive session, save learnings │
│ │
└─────────────────────────────────────────────────────────────┘
Kiro 제공
- 훅 트리거 포인트
- 에이전트 시스템
PILOT 제공
- 각 훅에서 실행되는 스크립트
- 학습 캡처 로직
PILOT과 함께라면 Kiro는 단순한 도구 실행자를 넘어, 학습 내용을 기록·검증·재사용하는 개인 지식 구축 파트너가 됩니다.
메모리 관리
PILOT은 검증된 솔루션을 ~/.pilot/learnings/에 저장합니다. 검증되지 않은 시도는 폐기되어, 지식 베이스에 신뢰할 수 있는 정보만 포함됩니다.
아이덴티티 컨텍스트
~/.pilot/identity/에 있는 선택적 파일들은 작업하면서 자동으로 채워지며, 에이전트에게 당신의 미션, 목표, 프로젝트 및 전략에 대한 개인화된 뷰를 제공합니다.
에이전트
pilot.json 구성은 모든 것을 하나로 묶습니다:
- 실행할 훅과 실행 시점
- 로드할 리소스
- 알고리즘 단계가 포함된 시스템 프롬프트
- 도구 권한 및 안전 규칙
훅은 상태 0으로 종료해야 합니다; 훅이 충돌하면 세션이 중단됩니다. 이 모든 것은 shell scripts 로 구현됩니다 – TypeScript도, 빌드 도구도, 외부 종속성도 없습니다.
왜 bash인가? 세 가지 이유
- 런타임 시작 비용이 없음
- macOS와 Linux에서 바로 작동
- 텍스트 기반 스크립트 – 파일을 열면 정확히 무엇을 하는지 바로 확인 가능
변경 사항
지속적인 학습이 복합적으로 작용합니다.
초기에는 이점이 작습니다: 몇 가지 포착된 솔루션, 시작 시 로드되는 일부 컨텍스트. 하지만 각 세션이 지식 베이스에 추가됩니다. 검증된 수정 사항 하나하나가 다음 번에 사용할 수 있게 됩니다.
몇 주가 지나면 차이가 눈에 띕니다. 단일 기능이 혁신적이라기보다, 시스템이 이미 파악한 내용을 기억하고 있기 때문입니다.
트레이드오프
잘 작동하는 점
- 학습 캡처가 자동입니다
- 관련 있을 때 과거 솔루션이 표시됩니다
- 알고리즘이 작업을 구조화합니다
- Bash는 빠르고 디버깅이 가능합니다
제한 사항
- 각 프로젝트는 독립된 메모리를 가집니다 (아직 교차 프로젝트 패턴은 없습니다)
- 학습 감지는 키워드 기반이며, ML 기반이 아닙니다
- 의미 검색은 Kiro의
/knowledge기능을 활성화해야 합니다
누락된 항목
- 팀 협업 (학습 내용이 개인에게 남습니다)
- 시각적 대시보드
- 교차 프로젝트 패턴 공유
이것은 MVP입니다. 사용해 보고 워크플로에 맞는지 확인하세요.
사용해 보기
git clone https://github.com/requix/pilot
cd pilot
./install.sh
선택 사항(권장) – 학습에 대한 의미 검색 활성화
kiro-cli settings chat.enableKnowledge true
그 다음 실행:
kiro-cli --agent pilot
코드는 간단합니다. 그 영향은 시간이 지날수록 누적됩니다.
질문이 있나요? Open an issue. 시스템은 사용을 통해 개선됩니다.