# 배포 후 화면 감시 (canary)

> 배포 후 브라우저로 운영 페이지를 주기적으로 열어 화면, 콘솔 오류, 로드 시간, 깨진 링크를 기준선과 비교해 보고합니다.

- 카테고리: [모니터링·운영](https://www.myskills.tools/ko/categories/monitoring-ops/)
- 출처: 커뮤니티 · Garry Tan
- 저장소: https://github.com/garrytan/gstack/tree/main/canary (commit 3e4240a · v1.0.0)
- SKILL.md: https://github.com/garrytan/gstack/blob/main/canary/SKILL.md
- 설치 명령: `npx skills add garrytan/gstack --skill canary`
- 라이선스: MIT
- 호환 도구: Claude Code, Codex, Cursor, Copilot
- 권한: read-repo ✓, write-files ✓, shell ✓, network ✓
- 상태: 스캔 통과
- 규칙 스캔으로 모든 위험을 찾을 수는 없습니다. 설치 전에 이 스킬의 SKILL.md를 읽고 권한을 확인하세요.
- ⚠ Aside로 사용자의 실제 브라우저와 로그인 세션을 조작하며, 대체 브라우저는 처음에 ./setup 빌드가 필요하고 bun을 설치할 수 있습니다.

## 핵심 규칙

기준선 대비 변화에만 경고하며, 두 번 이상 연속으로 지속된 문제만 알립니다.

## 실행 단계

1. **준비와 기준선** — .gstack/canary-reports/를 만들고, --baseline이면 배포 전에 각 페이지의 스크린샷, 콘솔 오류, 로드 시간, 텍스트를 기록합니다.
2. **감시 페이지 결정** — 내비게이션에서 동일 출처 링크를 찾아 상위 5개와 홈페이지를 사용자에게 확인받고, 기준선이 없으면 시작 스냅숏을 남깁니다.
3. **반복 감시** — 정해진 기간 동안 60초마다 각 페이지를 확인해 기준선과 비교하고, 심각·높음 문제가 두 번 연속되면 사용자에게 대응을 묻습니다.
4. **상태 보고** — HEALTHY·DEGRADED·BROKEN 판정을 내리고 Markdown과 JSON 보고서를 .gstack/canary-reports/에 저장하며, 정상이면 기준선 갱신을 제안합니다.

## 권한 설명 (SKILL.md 기준)

| 기능 | 필요 여부 | 설명 |
|---|---|---|
| 파일 쓰기 | 일부 필요 | .gstack/canary-reports/의 스크린샷, 기준선, 보고서와 gstack 이력만 씁니다. 요청이 없으면 코드는 바꾸지 않습니다. |
| 명령 실행 | 일부 필요 | aside repl 또는 gstack 내장 헤드리스 브라우저, gstack 보조 스크립트, 스크린샷 복사 등을 실행합니다. |
| 네트워크 송신 | 일부 필요 | 사용자가 지정한 사이트와 동일 출처 링크에만 접근하며, 로컬이 아닌 사이트에서 제출 같은 변경 작업 전에는 동의를 받습니다. |

## SKILL.md 프런트매터(YAML)

```yaml
---
name: canary
preamble-tier: 2
version: 1.0.0
description: Post-deploy canary monitoring. (gstack)
allowed-tools:
  - Bash
  - Read
  - Write
  - Glob
  - AskUserQuestion
triggers:
  - monitor after deploy
  - canary check
  - watch for errors post-deploy
---
```

홈: https://www.myskills.tools/ko/ · URL: https://www.myskills.tools/ko/skills/canary/
