🔬 Alpha · Go · Elastic License 2.0

KittyPaw
로컬에서 만드는 AI 에이전트 실험

채팅, 스킬 실행, 스케줄러, 메모리, 권한 제어를 작은 단위로 만들면서
어디까지 갈 수 있는지 보고 있는 Go 프로젝트입니다. 단일 binary, 외부 런타임 없음.

$ curl -fsSL https://raw.githubusercontent.com/kittypaw-app/kitty/main/install-kittypaw.sh | sh

macOS · Linux — Windows는 릴리스에서 직접 다운로드

kittypaw — bash
$ kittypaw setup
LLM provider: Claude (Anthropic)
Channel: Telegram
✓ 설정 저장 · 데몬 부팅
🐾 KittyPaw started on :3000

single Go binary · sqlite (modernc) · goja JS sandbox · macOS / Linux / Windows

✅ CLI + 로컬 서버
✅ 5 채널 어댑터 (Telegram/Slack/Discord/Kakao/WS)
🚧 Reflection 후보 / 자연어 스킬 생성
🔬 팀공간 · MoA · live indexing
구성 요소

지금 만들고 있는 부품들

완성된 SaaS 가 아니라, 로컬 AI 에이전트의 구성 요소를 하나씩 만들고 검증하는 프로젝트입니다.
각 카드 의 ✅ / 🚧 / 🔬 는 현재 검증 상태입니다.

🎯

✅ Skill 패키지

레지스트리 / GitHub / 로컬 디렉터리에서 설치. package.toml, source-bound config (secrets.json), SHA256 검증.

🧠

🚧 Reflection 루프

최근 대화 → 반복 의도 / 토픽 후보 저장. 첫 turn suffix surface ✅ verified, "네" 답변 시 dispatch ✅, 자동 생성 코드 안정성 🚧.

🔒

✅ Sandbox + Permission

모든 스킬은 goja 안에서 실행. SSRF 차단, hop-by-hop header 차단, 위험 op (Shell.exec / Git.push) 는 supervised mode 에서 사용자 승인.

🔗

🔬 Skill chaining

여러 스킬을 pipeline 으로 연결. 단계별 실행은 일부 패키지에서 검증. 일반화된 chain DSL 은 미정.

🌐

🚧 Web 검색

DuckDuckGo (no-config) + Google API + Tavily 옵션. Web.search + Web.fetch primitive. 출처 품질 / 결과 검증 진행 중.

🏠

✅ Local LLM

Ollama / LM Studio 같은 OpenAI 호환 로컬 endpoint 연결. 모델 성능 편차 큼 — 작은 모델은 tool use 한계 있음.

🚧 실험 + 부분 작동

Reflection 루프

최근 대화에서 반복 의도와 토픽 후보를 추출 → 저장 → chat 첫 turn 에 suffix 로 surface. live test verified (commit 8f2536a).

🔄

반복 의도 후보

최근 사용자 메시지를 묶어 반복된 요청 후보를 저장합니다. 기본 기준은 빈도 3회 이상입니다.

환율 알려줘 달러 가격이 얼마야? 오늘 환율 어때? 후보: 환율 조회
count=3 · cron 제안 포함
📊

토픽 요약

Reflection 결과로 저장된 토픽 비율을 조회합니다. 장기 리포트와 발송 흐름은 아직 검증 중입니다.

📊 저장된 토픽 요약 예시
AI · 기술 65%
경제 · 시장 25%
날씨 · 생활 10%

승인 → dispatch

자동으로 코드를 바꾸지 않습니다. 후보를 surface → 사용자 "네" → InstallConsentBranch dispatch. 자동 코드 변경 / 자가 수정 (self-healing) 은 한 번 시도 후 retired.

1 ✅ 대화 저장
2 ✅ Reflection 분석
3 ✅ Suffix surface
4 🚧 생성 코드 안정성
사용 흐름

기본 흐름

CLI 또는 로컬 Web UI 에서 — 모든 데이터는 로컬 SQLite 에 저장됩니다.

📦
1

Skill 설치

kittypaw skill install <name> — 레지스트리 / GitHub URL / 로컬 path 모두 지원.

⚙️
2

Config 입력

kittypaw skill config <name> <key> <value> — 또는 kittypaw setup 으로 LLM/채널 한 번에. 어떤 값 필요한 지는 패키지의 package.toml 에.

3

실행 / 스케줄

kittypaw skill run <name> 수동 실행, 또는 cron trigger 에 따라 서버가 자동 실행 → 채널 어댑터 통해 발송.

실제 시나리오

레지스트리 패키지로 만든 흐름

live test 로 검증된 / 진행 중인 흐름입니다. 각 카드 내 status 참고.

📖 모든 시나리오 보기 →
레지스트리

현재 레지스트리에 있는 패키지

kittypaw skill install <name> 으로 설치. 모든 status 는 live test 기준.

📈

매크로 경제 리포트

ETF + AI 요약

✅ cron
🌤

날씨 브리핑

7일 예보 (Open-Meteo)

✅ API 키 불필요
📰

RSS 뉴스 요약

피드 + LLM 요약

✅ 중복 필터

리마인더

채팅 keyword + cron

🚧 partial
🔍

URL 모니터

HTTP 체크 + 상태 변경 alert

✅ 5분 주기
기술 스택

Go 만으로 — 외부 런타임 0

단일 바이너리. npm / Node / Python 의존성 없음. 20 SQLite migrations, 159 commits 진행 중.

🐹
Go
단일 바이너리 · 고성능
🖥
Web UI
Chi + WebSocket 스트리밍
🔐
goja Sandbox
안전한 스킬 실행
🤖
Claude + OpenAI
멀티 LLM 지원
🗄
SQLite
로컬 데이터 저장
🔑
per-account secrets.json
account 별 분리 저장
🛡
Permission 시스템
승인 기반 접근 제어
📦
TOML 패키지
스킬 배포 포맷
FAQ

짧게 답하는 KittyPaw

검색 결과와 AI 답변에서 바로 인용할 수 있도록 핵심 정의, 사용 범위, 크롤러 정책을 명확하게 정리했습니다.

KittyPaw는 무엇인가요?

KittyPaw는 로컬에서 실행되는 AI 자동화 실험 프로젝트입니다. 단일 Go 바이너리 안에 채팅, 스킬 실행, 스케줄러, 메모리, 권한 제어, 채널 어댑터를 작은 단위로 묶어 검증합니다.

어떤 일을 자동화하나요?

현재 검증된 흐름은 아침 브리핑, URL 상태 모니터링, 반복 요청 후보 surface, 레지스트리 스킬 실행입니다. 자연어 스킬 생성은 초안 생성과 syntax 검증까지 가능하지만 런타임 확인이 필요합니다.

AI 검색과 크롤러 접근은 어떻게 처리하나요?

공개 문서는 검색과 AI 검색 retrieval 에 노출되도록 설계했습니다. robots.txt 에 Googlebot, Bingbot, OAI-SearchBot, Claude-SearchBot, PerplexityBot 등 주요 검색/AI 검색 봇을 명시적으로 허용합니다.

llms.txt는 어디에 있나요?

AI 에이전트와 코딩 도구가 빠르게 읽을 수 있는 요약은 /llms.txt 에 있습니다. 랭킹 신호를 기대하는 파일이 아니라, canonical page 와 고신호 사실을 한 곳에 모은 색인입니다.

사용자 가이드

어디서 시작할까요?

KittyPaw 는 기능을 하나씩 켜는 도구에 가깝습니다. 지금 하려는 일에 맞는 경로를 고르면 설치, 설정, 검증까지 한 번에 따라갈 수 있습니다.