fed3526b20
설정·스크립트·스킬·문서·큐레이션 메모리 추적. 시크릿(credentials/identity)·런타임 상태(state/logs/sessions/sqlite)· 백업(clobbered/bak)·dream 캐시는 .gitignore로 제외. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
73 lines
3.2 KiB
Markdown
73 lines
3.2 KiB
Markdown
# TOOLS.md - Local Notes
|
|
|
|
Skills define _how_ tools work. This file is for _your_ specifics — the stuff that's unique to your setup.
|
|
|
|
## What Goes Here
|
|
|
|
Things like:
|
|
|
|
- Camera names and locations
|
|
- SSH hosts and aliases
|
|
- Preferred voices for TTS
|
|
- Speaker/room names
|
|
- Device nicknames
|
|
- Anything environment-specific
|
|
|
|
## Examples
|
|
|
|
```markdown
|
|
### Cameras
|
|
|
|
- living-room → Main area, 180° wide angle
|
|
- front-door → Entrance, motion-triggered
|
|
|
|
### SSH
|
|
|
|
- home-server → 192.168.1.100, user: admin
|
|
|
|
### TTS
|
|
|
|
- Preferred voice: "Nova" (warm, slightly British)
|
|
- Default speaker: Kitchen HomePod
|
|
```
|
|
|
|
## Why Separate?
|
|
|
|
Skills are shared. Your setup is yours. Keeping them apart means you can update skills without losing your notes, and share skills without leaking your infrastructure.
|
|
|
|
---
|
|
|
|
Add whatever helps you do your job. This is your cheat sheet.
|
|
|
|
## 후잉(가계부) 직접 입력
|
|
|
|
관리자님이 "가계부에 한 건 추가해줘" / "후잉에 등록해줘" 라고 하면, 골디의 manual 스크립트로 처리.
|
|
|
|
- 스크립트: `agents/budget/workspace/skills/whooing-sync/scripts/whooing_manual.py`
|
|
- 계정 차트: `agents/budget/workspace/state/whooing_accounts.json` (여기 있는 이름만 사용)
|
|
- 프로토콜: `agents/budget/workspace/skills/whooing-sync/SKILL.md` 의 "에이전트 대화 프로토콜 (스텝바이스텝)" 섹션을 따른다. 한 번에 하나씩 묻기.
|
|
|
|
## Playwright MCP (브라우저 자동화)
|
|
|
|
OpenClaw가 `openclaw.json` 의 MCP 서버 `playwright`로 노출. 도구는 `playwright__browser_*` prefix로 약 23개.
|
|
|
|
- **탐색:** `navigate / navigate_back / tabs / wait_for`
|
|
- **관찰:** `snapshot` (접근성 트리 — 클릭 대상 ref 식별에 **우선 사용**) / `take_screenshot` / `console_messages` / `network_requests` / `network_request`
|
|
- **조작:** `click / type / fill_form / press_key / hover / select_option / drag / drop / file_upload / handle_dialog / resize / close`
|
|
- **평가:** `evaluate` (페이지 JS 컨텍스트) / `run_code_unsafe` (Playwright 코드 직접 — **RCE 등급, 마지막 수단**)
|
|
|
|
**표준 흐름:** `navigate` → `snapshot`으로 ref 확보 → `click`/`type`/`fill_form` → `wait_for`로 결과 대기 → `snapshot` 또는 `network_requests`로 검증. 스크린샷은 사람 보고용이지 다음 동작 분기 근거로 쓰지 말 것.
|
|
|
|
**운영 특성:**
|
|
- 기본값 `--headless --isolated`. 매 세션 쿠키·로그인 폐기.
|
|
- 영속 로그인 필요한 사이트는 시도 전 **코디에게 `user-data-dir` 분리·등록 요청**.
|
|
- 첫 호출 시 npx spawn 1~2초 지연 — 시간 민감 작업은 미리 한 번 워밍업.
|
|
- 키움 영웅문·HTS, 은행 공동인증서 등 보안프로그램 탑재 사이트는 차단 위험 → 시도 자제.
|
|
- 공동인증서·OTP·CAPTCHA 화면이 나오면 **즉시 중단하고 관리자님께 보고**, 우회 시도 X.
|
|
|
|
**활용 시나리오 (클로 맥락):**
|
|
- Google 워크스페이스 UI 작업 (API로 안 되는 라벨·필터·서명 정리 등)
|
|
- 가격·재고 모니터링 (항공권·호텔·쇼핑몰) → 임계가 도달 시 텔레그램 알림
|
|
- 택배 추적, 정부24/공공 사이트 등 OAuth 없는 조회·신청
|
|
- 외부 페이지 변화 감지(공지·뉴스·블로그) → 결과만 텔레그램 요약
|