https://docs.openskycam.org/
과거에는 스카이 카메라로 유성체를 찾는다는 것은 수 시간 분량의 야간 비디오를 검토하고, 프레임을 손으로 추출하여 라벨을 지정하며, 모델을 재훈련한 후 모든 별에 플래그가 지정될 때마다 처음부터 다시 시작하는 것을 의미했습니다. 저는 openskycam을 구축하여 Claude가 그 부분을 처리할 수 있도록 했습니다. 이 시스템은 하늘을 향해 24시간 동안 4K 카메라로 녹화하고 영상을 사용자의 디스크에 보관합니다. 작업 흐름(Workflows)은 샘플 프레임을 실행하고, 탐지 모델(detection models)을 구동하며, 탐지된 지점들을 추적 경로(움직이는 것 vs. 고정된 것)로 연결한 다음, 유성체, 비행기, 고정 조명 등의 버킷으로 결과를 분류합니다. 웹사이트에서 하는 모든 작업은 API 호출이며, MCP 서버가 존재하기 때문에 Claude Code가 이 모든 것을 구동할 수 있습니다.
Claude가 수행하는 역할 - 밤 시간대 워크플로우를 구축했으며, 이제 영상이 도착할 때마다 매일 실행됩니다.
- 들어오는 데이터를 검토하며 각 탐지를 살펴보고 승인하거나 거부합니다.
- 모델이 계속 별을 비행 물체로 호출했을 때, 저는 승인한 탐지 데이터로부터 데이터셋을 만들고 이를 재훈련했습니다. 이전에 훈련하지 않았던 밤에는 별에 대한 오탐지율(false alarms)이 약 절반에서 7%로 떨어졌으며, 여전히 유성체의 90%를 포착합니다.
- 매일 아침 쓰레기 데이터는 버리고 좋은 것들만 저에게 문자로 전송합니다. 구름 낀 밤에는 아무것도 하지 않는 배려심까지 갖추고 있습니다.
Claude Code와 작동하게 만든 요소 - MCP 서버가 자체 가이드 및 스킬(build-a-workflow, find-detections, verify-changes)을 제공하기 때문에, Claude는 제 프롬프트가 아닌 서버로부터 규칙을 학습합니다.
가드레일(guardrails)은 프롬프트가 아닌 서버에 의해 강제됩니다: 키를 생성할 수 없으며, 삭제 시 미리보기를 보여주고 확인이 필요하고, 수정은 덮어쓰는 대신 실패하도록 설정되어 있습니다.
설정은 무인으로 실행될 수 있습니다: npm run setup -- --yes는 .env에서 모든 것을 읽고 누락된 설정 이름과 함께 중단됩니다.
한 사람이 여전히 Cloudflare 터널, 로그인 앱 및 API 키 아키텍처 검사를 생성하며, Claude가 코드를 잘못된 레이어에 넣으면 해당 검사가 실패합니다. 영상은 밤 9시 30분부터 다음 날 오후 6시까지 진행됩니다: 밤새 촬영된 모든 유성체와 비행기가 4K 카메라로 실제 촬영되고, 낮에는 발견한 새들이 분홍색 점으로 찍히며, 매 10회 감지마다 실제 새의 클로즈업이 이어집니다. 마지막은 전체 기록을 하나의 프레임과 몇 가지 차트로 보여주며 마무리됩니다.
관련 레포지토리: openskycam (카메라, 탐지 및 Claude가 사용하는 도구): https://github.com/Deibler/openskycam - edmund-harness (iMessage 하네스): https://github.com/Deibler/edmund-harness
사용하려면 RTSP 카메라, 라즈베리 파이(Raspberry Pi), 대용량 디스크가 있는 컴퓨터(macOS 또는 Linux; 모델 실행도 가능하며 GPU는 선택 사항) 및 도메인이 연결된 Cloudflare 계정이 필요합니다. 하나의 명령어로 설치가 완료되며 설정 과정을 안내받을 수 있고, 훈련된 야간 모델은 레포지토리에 포함되어 있습니다.
이 시스템의 일부 버전은 2024년부터 제 하늘을 지켜봐 왔지만, UFO 카운트는 여전히 '0'입니다. 유성체는 충분하고, 비행기는 엄청나게 많으며, 새 탐지 건수도 많아 지역 오두본 협회(local Audubon society)에 가입하기 직전입니다. 혹시 더 좋은 운을 경험했다면, 저에게 들려주고 싶습니다.
제출자: /u/Terrible_Award_2124 [링크] [댓글]