본문으로 건너뛰기
cccskills
무료GitHub에 공개

screenpipe-health

Check Screenpipe's process, API, screen capture, and audio transcription status. Inspect logs, storage, resource usage, and processing metrics to identify problems, then report the findings with relevant errors and suggested fixes.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

원문원문 설명 보기

Check Screenpipe health status, process state, and diagnose common issues

설치 방법 보기

이럴 때 유용합니다

  • Check whether Screenpipe is running
  • Investigate missing screen captures
  • Diagnose missing audio transcriptions
  • Investigate high CPU, memory, or storage usage
  • Check database integrity and locking issues

포함된 파일(1)

  • SKILL.md6.6 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

Screenpipe Health Agent

You are a specialized agent for checking Screenpipe's health status and diagnosing issues.

Quick Health Check

1. Check if Screenpipe is Running

# Check for screenpipe processes
pgrep -fl screenpipe

# Check if API is responding
curl -s http://localhost:3030/health | head -100

2. Check Recording Status

# Get health with recording info
curl -s http://localhost:3030/health | jq '.frame_status, .audio_status' 2>/dev/null || curl -s http://localhost:3030/health

3. Check Disk Usage

# Screenpipe data directory size
du -sh ~/.screenpipe/

# Database size
ls -lh ~/.screenpipe/db.sqlite* 2>/dev/null

# Video/audio cache
du -sh ~/.screenpipe/data/ 2>/dev/null

4. Check Recent Logs for Errors

# Last 10 errors from today
grep -i "error" ~/.screenpipe/screenpipe.$(date +%Y-%m-%d).log 2>/dev/null | tail -10

Detailed Diagnostics

Process Information

# Detailed process info
ps aux | grep -i screenpipe | grep -v grep

# Memory usage
ps aux | grep -i screenpipe | grep -v grep | awk '{sum+=$6} END {print "Total Memory: " sum/1024 " MB"}'

# Check if app or CLI
pgrep -fl "screenpipe-app" && echo "Desktop app running"
pgrep -fl "screenpipe$" && echo "CLI running"

API Endpoints Check

# Health endpoint (includes vision + audio pipeline stats)
curl -s http://localhost:3030/health

# Search endpoint (test query)
curl -s "http://localhost:3030/search?limit=1" | head -50

# List audio devices
curl -s http://localhost:3030/audio/list

# List monitors
curl -s http://localhost:3030/vision/list

# Vision pipeline metrics (raw counters)
curl -s http://localhost:3030/vision/metrics

# Audio pipeline metrics (raw counters)
curl -s http://localhost:3030/audio/metrics

Audio Pipeline Diagnostics

# Quick audio pipeline health — is transcription actually working?
curl -s http://localhost:3030/audio/metrics | python3 -c "
import sys,json
m = json.load(sys.stdin)
total_vad = m['vad_passed'] + m['vad_rejected']
print(f'Uptime: {m[\"uptime_secs\"]/60:.0f} min')
print(f'Chunks sent to engine: {m[\"chunks_sent\"]}')
print(f'  Channel full drops:  {m[\"chunks_channel_full\"]}')
print(f'  Stream timeouts:     {m[\"stream_timeouts\"]}')
print(f'VAD passed/rejected:   {m[\"vad_passed\"]}/{m[\"vad_rejected\"]} ({m[\"vad_passthrough_rate\"]*100:.0f}% passthrough)')
print(f'  Avg speech ratio:    {m[\"avg_speech_ratio\"]:.3f}')
print(f'Transcriptions:        {m[\"transcriptions_completed\"]} ok, {m[\"transcriptions_empty\"]} empty, {m[\"transcription_errors\"]} errors')
print(f'DB inserted:           {m[\"db_inserted\"]} ({m[\"total_words\"]} words, {m[\"words_per_minute\"]:.0f} wpm)')
print()
if m['chunks_channel_full'] > 0: print('⚠️  Channel full — transcription engine too slow, audio being dropped')
if total_vad > 0 and m['vad_passthrough_rate'] < 0.1: print('⚠️  Very low VAD passthrough — may be dropping real speech')
if m['transcription_errors'] > 0: print('⚠️  Transcription errors detected')
if m['chunks_sent'] > 0 and m['db_inserted'] == 0: print('🔴 Chunks sent but nothing stored — pipeline is broken')
if m['chunks_sent'] == 0 and m['uptime_secs'] > 120: print('🔴 No chunks sent after 2min — audio capture not working')
"

# Audio pipeline info from /health (summary view)
curl -s http://localhost:3030/health | python3 -c "
import sys,json
h = json.load(sys.stdin)
print(f'Audio status: {h[\"audio_status\"]}')
if 'audio_pipeline' in h and h['audio_pipeline']:
    p = h['audio_pipeline']
    print(f'  VAD passthrough: {p[\"vad_passthrough_rate\"]*100:.0f}%')
    print(f'  Words/min:       {p[\"words_per_minute\"]:.0f}')
    print(f'  DB inserted:     {p[\"db_inserted\"]}')
"

Database Health

# Check database integrity
sqlite3 ~/.screenpipe/db.sqlite "PRAGMA integrity_check;" 2>/dev/null

# Database size and tables
sqlite3 ~/.screenpipe/db.sqlite "SELECT name, (SELECT COUNT(*) FROM main WHERE name=t.name) FROM sqlite_master t WHERE type='table';" 2>/dev/null

# Recent frame count
sqlite3 ~/.screenpipe/db.sqlite "SELECT COUNT(*) as frames_today FROM frames WHERE timestamp > datetime('now', '-1 day');" 2>/dev/null

Permissions Check (macOS)

# Check screen recording permission
sqlite3 ~/Library/Application\ Support/com.apple.TCC/TCC.db "SELECT client,allowed FROM access WHERE service='kTCCServiceScreenCapture';" 2>/dev/null | grep -i screenpipe

# Check microphone permission
sqlite3 ~/Library/Application\ Support/com.apple.TCC/TCC.db "SELECT client,allowed FROM access WHERE service='kTCCServiceMicrophone';" 2>/dev/null | grep -i screenpipe

# Or use tccutil (if available)
echo "Check System Preferences > Privacy & Security > Screen Recording and Microphone for screenpipe permissions"

Common Issues & Fixes

Issue: Screenpipe not running

# Start CLI
screenpipe

# Or start app
open /Applications/screenpipe.app

Issue: No frames being captured

  1. Check screen recording permission in System Preferences
  2. Check logs for permission errors:
grep -i "permission\|denied\|cg\|capture" ~/.screenpipe/screenpipe.$(date +%Y-%m-%d).log | tail -20

Issue: No audio transcription

  1. Check microphone permission
  2. Check audio pipeline metrics:
# Is audio being captured at all?
curl -s http://localhost:3030/audio/metrics | python3 -c "
import sys,json; m=json.load(sys.stdin)
print(f'chunks_sent={m[\"chunks_sent\"]}, vad_passed={m[\"vad_passed\"]}, vad_rejected={m[\"vad_rejected\"]}, db_inserted={m[\"db_inserted\"]}')
if m['chunks_sent']==0: print('→ No audio reaching engine. Check device/permissions.')
elif m['vad_passed']==0: print('→ VAD rejecting everything. Check mic input level or lower vad_sensitivity.')
elif m['db_inserted']==0: print('→ Transcription failing. Check engine config or logs.')
"
  1. Check audio device selection:
curl -s http://localhost:3030/audio/list
grep -i "audio\|device\|whisper" ~/.screenpipe/screenpipe.$(date +%Y-%m-%d).log | tail -20

Issue: High CPU/Memory

# Check current usage
top -l 1 -s 0 | grep -i screenpipe

# Check for memory leaks in logs
grep -i "memory\|oom" ~/.screenpipe/screenpipe.$(date +%Y-%m-%d).log

Issue: Database locked

# Check for lock
fuser ~/.screenpipe/db.sqlite 2>/dev/null

# Check for multiple processes
pgrep -c screenpipe

Response Format

When reporting health status:

  1. Start with overall status (healthy/unhealthy)
  2. List any issues found
  3. Provide specific error messages if relevant
  4. Suggest fixes for identified issues

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

Develop and test Windows-specific Screenpipe changes on a disposable Azure virtual machine. The workflow verifies native behavior, preserves logs and desktop video, and handles branch and pull request delivery when authorized.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Test Windows-specific capture and permission behavior
  • Investigate compiler, process, or service issues
  • Preserve desktop video and logs for a pull request
screenpipe/screenpipe2.2만2026년 10월 18일 업데이트

release

무료

Prepare screenpipe component releases by updating versions and dependency lock files, running required build checks, and triggering GitHub Actions. Verify build results and release artifacts, then hand public app publication over to a person.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Preparing a desktop app release
  • Checking whether Rust changes require a CLI release
  • Updating MCP versions and checking publication
screenpipe/screenpipe2.2만2026년 10월 18일 업데이트

Create charts, dashboards, scorecards, and styled summaries as standalone HTML reports for the screenpipe viewer. Keep styles, scripts, and images inside the file so the report renders in a sandbox with no network access.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Create a visual report of daily work time
  • Present key metrics in a dashboard
  • Summarize results with charts and scorecards
screenpipe/screenpipe2.2만2026년 10월 18일 업데이트

Search Screenpipe recordings, screen text, audio transcripts, and synced-device history through its local API. Use the evidence to review activity, find meeting details, and inspect saved workflows, including recorded steps that can inform automation.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Review activity from a specific day or time range
  • Find recorded meeting remarks and screen text
  • Search work history on another synced device
screenpipe/screenpipe2.2만2026년 10월 18일 업데이트

Use Screenpipe’s local REST API, an interface for programmatic requests, to search screen and meeting history, review app activity and active time, retrieve synced-device records, export recordings, and rerun audio transcription.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Reviewing daily app use and active screen time
  • Finding decisions in recorded meetings
  • Searching history from a synced device
screenpipe/screenpipe2.2만2026년 10월 18일 업데이트

Turn a recorded software failure into a draft bug report with timestamps, reproduction steps, expected and actual behavior, and relevant evidence. Separate visible symptoms from possible causes and remove sensitive details from shareable evidence.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Drafting a bug report from recorded activity
  • Recovering steps taken before and after a failure
  • Comparing expected behavior with observed results
screenpipe/screenpipe2.2만2026년 10월 18일 업데이트

screenpipe의 스킬 모두 보기

이 스킬의 문제 신고