채팅, 스킬 실행, 스케줄러, 메모리, 권한 제어를 작은 단위로 만들면서
어디까지 갈 수 있는지 보고 있는 Go 프로젝트입니다. 단일 binary, 외부 런타임 없음.
curl -fsSL https://raw.githubusercontent.com/kittypaw-app/kitty/main/install-kittypaw.sh | sh
macOS · Linux — Windows는 릴리스에서 직접 다운로드
single Go binary · sqlite (modernc) · goja JS sandbox · macOS / Linux / Windows
완성된 SaaS 가 아니라, 로컬 AI 에이전트의 구성 요소를 하나씩 만들고 검증하는 프로젝트입니다.
각 카드 의 ✅ / 🚧 / 🔬 는 현재 검증 상태입니다.
레지스트리 / GitHub / 로컬 디렉터리에서 설치. package.toml, source-bound config (secrets.json), SHA256 검증.
최근 대화 → 반복 의도 / 토픽 후보 저장. 첫 turn suffix surface ✅ verified, "네" 답변 시 dispatch ✅, 자동 생성 코드 안정성 🚧.
모든 스킬은 goja 안에서 실행. SSRF 차단, hop-by-hop header 차단, 위험 op (Shell.exec / Git.push) 는 supervised mode 에서 사용자 승인.
여러 스킬을 pipeline 으로 연결. 단계별 실행은 일부 패키지에서 검증. 일반화된 chain DSL 은 미정.
DuckDuckGo (no-config) + Google API + Tavily 옵션. Web.search + Web.fetch primitive. 출처 품질 / 결과 검증 진행 중.
Ollama / LM Studio 같은 OpenAI 호환 로컬 endpoint 연결. 모델 성능 편차 큼 — 작은 모델은 tool use 한계 있음.
최근 대화에서 반복 의도와 토픽 후보를 추출 → 저장 → chat 첫 turn 에 suffix 로 surface. live test verified (commit 8f2536a).
최근 사용자 메시지를 묶어 반복된 요청 후보를 저장합니다. 기본 기준은 빈도 3회 이상입니다.
Reflection 결과로 저장된 토픽 비율을 조회합니다. 장기 리포트와 발송 흐름은 아직 검증 중입니다.
자동으로 코드를 바꾸지 않습니다. 후보를 surface → 사용자 "네" → InstallConsentBranch dispatch. 자동 코드 변경 / 자가 수정 (self-healing) 은 한 번 시도 후 retired.
CLI 또는 로컬 Web UI 에서 — 모든 데이터는 로컬 SQLite 에 저장됩니다.
kittypaw skill install <name> — 레지스트리 / GitHub URL / 로컬 path 모두 지원.
kittypaw skill config <name> <key> <value> — 또는 kittypaw setup 으로 LLM/채널 한 번에. 어떤 값 필요한 지는 패키지의 package.toml 에.
kittypaw skill run <name> 수동 실행, 또는 cron trigger 에 따라 서버가 자동 실행 → 채널 어댑터 통해 발송.
live test 로 검증된 / 진행 중인 흐름입니다. 각 카드 내 status 참고.
날씨 / 시장 / RSS 패키지 설치 → cron 스케줄 → telegram setup 후 cron 시각에 발송.
Reflection 후보 저장 → chat 첫 turn suffix surface verified (commit 8f2536a). 자동 생성 코드는 🚧.
JS 코드 생성 → goja syntax 검증 (5/5 pass measured) → SkillStore 저장. 런타임 동작은 패키지 마다.
cron HTTP 체크 → 상태 변경 시 alert 메시지. telegram 라우팅 시 발송.
kittypaw skill install <name> 으로 설치. 모든 status 는 live test 기준.
ETF + AI 요약
✅ cron7일 예보 (Open-Meteo)
✅ API 키 불필요피드 + LLM 요약
✅ 중복 필터채팅 keyword + cron
🚧 partialHTTP 체크 + 상태 변경 alert
✅ 5분 주기단일 바이너리. npm / Node / Python 의존성 없음. 20 SQLite migrations, 159 commits 진행 중.
KittyPaw 는 기능을 하나씩 켜는 도구에 가깝습니다. 지금 하려는 일에 맞는 경로를 고르면 설치, 설정, 검증까지 한 번에 따라갈 수 있습니다.
설치 명령, kittypaw setup, 첫 대화, 로컬 서버 확인까지 최소 경로로 진행합니다.
날씨, 시장, RSS 패키지를 설치하고 cron 시각에 Telegram 으로 받는 흐름입니다.
시나리오 보기 → 반복 의도최근 대화에서 후보를 찾고, 사용자가 승인했을 때 dispatch 하는 Reflection 흐름을 설명합니다.
Reflection 보기 → 운영 전 확인goja sandbox, permission, secrets.json, 로컬 저장 원칙을 기준으로 위험한 동작을 구분합니다.
보안 가이드 보기 →