Show GN: RUNE-BOT : 실패를 규칙으로 학습하는 로컬 AI 에이전트
(github.com/dybala-21)로컬에서 돌아가는 범용 AI 비서 rune를 만들고 있습니다.
핵심은 "메모리를 쌓는 에이전트"가 아니라, 실패를 규칙으로 일반화하고 그 규칙을 실제 작업에서
검증하면서 스스로 행동을 조정하는 self-improving architecture입니다.
Self-Improving: 실패에서 규칙을 만들고, 규칙을 다시 검증한다
실행 → 기록 → 실패 반복 감지 → 규칙 후보 생성 → 관련 태스크에서 검증 → 승격 또는 폐기
에이전트가 같은 종류의 실패를 반복하면, 그 패턴을 하나의 예방 규칙 후보로 만듭니다. 이 규칙은 바로
프롬프트에 넣지 않습니다. 낮은 신뢰도로 시작하고, 이후 관련 있는 태스크에서만 결과를 추적합니다.
도움이 되는 규칙만 점진적으로 승격되고, 효과가 없는 규칙은 더 빠르게 감점되어 사라집니다.
모든 태스크는 episode로 저장되고, 성공/실패 결과가 남습니다. 비슷한 작업을 할 때는 과거 episode를 꺼내
참고합니다.
Proactive: 시키기 전에 먼저 움직인다
사용자가 요청하기 전에 먼저 제안합니다. 작업 흐름에서 좌절 신호(반복 실패, 빠른 취소, 에러 누적)를
감지하면 도움을 제안하고, 반복 실패 패턴이 감지되면 자동으로 예방 규칙을 생성합니다.
단, 무작정 끼어들지 않습니다. 사용자가 제안을 거부하면 그 피드백을 추적합니다. 30분 안에 5번 거절되면
자동으로 개입 빈도를 낮추고 제안 임계값을 올립니다. 프로액티브 시스템 자체가 사용자 반응을 보고 스스로
조절됩니다.
에이전트가 할 수 있는 것들
- 파일 읽기/쓰기/편집/검색, 셸 명령 실행
- 브라우저 자동화 — 페이지 이동, 클릭, 입력, 스크린샷, 텍스트 추출
- 웹 검색(DuckDuckGo/Brave)과 URL 스크래핑
- 코드 분석 — tree-sitter 기반 심볼 추적, 정의/참조 검색, 변경 영향 분석
- 서브에이전트 위임 — 복잡한 작업을 분할해서 병렬 실행
- cron 기반 예약 실행
- MCP 서버 연동 — 외부 도구를 자동 발견하고 실행
- 커스텀 스킬 — 사용자가 직접 도구를 만들어 등록
안전
Guardian이 위험한 행동을 먼저 차단하고, Completion/Evidence Gate가 "정말 읽고, 쓰고, 검증했는지"를
확인하고, Quality Gate가 내용 없는 성공 응답이나 에러 은폐를 걸러냅니다. 안전 시스템은 fail-open이
아니라 fail-closed입니다.
로컬 퍼스트
모든 장기 메모리는 markdown 파일이 source of truth입니다. SQLite와 FAISS는 검색 캐시일 뿐이고, 언제든
markdown에서 재구축할 수 있습니다. 직접 열어보고 수정하고 git으로 버전 관리할 수 있습니다.
인터페이스
- CLI + Rich 기반 터미널 UI
- 멀티채널: Telegram, Discord, Slack, LINE, WhatsApp, Google Chat, Mattermost
- Web
기술 스택은 Python 3.13+, litellm, APSW(WAL), FAISS HNSW, tree-sitter, structlog입니다. litellm을 통해
특정 모델 벤더에 묶이지 않고 어떤 LLM이든 붙일 수 있습니다.