返回 Skill 列表
extension
分类: 内容与媒体无需 API Key

pocket-transcripts

阅读来自Pocket AI (heypocket.com)录音设备的笔录和摘要。当用户想要检索、搜索或分析他们的Pocket录音、笔录、摘要或行动项时使用。在涉及Pocket设备数据、对话笔录、会议录音或音频笔记检索的请求时触发。

person作者: jakexiaohubgithub

Pocket Transcripts

Read transcripts and summaries from Pocket AI devices via reverse-engineered API.

Quick Reference

| Function | Description | |----------|-------------| | get_recordings(days, limit) | List recent recordings | | get_recording_full(id) | Get transcript + summary + action items | | get_transcript(id) | Get raw transcript text | | get_summarization(id) | Get markdown summary | | search_recordings(query) | Search by text |

Setup (One-Time)

1. Start Chrome with User Profile

~/.factory/skills/browser/start.js --profile
# or
~/.claude/skills/browser/start.js --profile

2. Log into Pocket

Navigate to and log in:

~/.factory/skills/browser/nav.js https://app.heypocket.com

3. Extract Token

python3 scripts/reader.py extract

Token is saved to ~/.pocket_token.json and expires in 1 hour.

Usage

List Recordings

from pathlib import Path
import sys
sys.path.insert(0, str(Path.home() / '.claude/skills/pocket-transcripts/scripts'))
from reader import get_recordings, get_recording_full

recordings = get_recordings(days=30, limit=20)
for r in recordings:
    print(f"{r.recorded_at:%Y-%m-%d} | {r.duration_str} | {r.title}")

Get Full Transcript and Summary

full = get_recording_full(recording_id)

print(f"Transcript ({len(full['transcript'])} chars):")
print(full['transcript'][:500])

print(f"\nSummary (markdown):")
print(full['summary'])

print(f"\nAction Items: {len(full['action_items'])}")
for item in full['action_items']:
    print(f"  - {item}")

Search Recordings

results = search_recordings("meeting", days=90)
for r in results:
    print(f"{r.title} - {r.description[:100]}")

API Details

Base URL: https://production.heypocketai.com/api/v1

Auth: Firebase Bearer token from browser IndexedDB

Key Endpoints:

  • GET /recordings - List with pagination, filters
  • GET /recordings/{id}?include=all - Full data with transcript/summary

Data Structure:

  • Transcript: data.transcription.transcription.text
  • Summary: data.summarizations[id].v2.summary.markdown
  • Action Items: data.summarizations[id].v2.actionItems.items

Token Refresh

Firebase tokens expire in 1 hour. When expired:

  1. Ensure Chrome is running with --profile
  2. Confirm logged into app.heypocket.com
  3. Re-run: python3 scripts/reader.py extract

Data Model

PocketRecording

  • id, title, description
  • duration (seconds), duration_str (human readable)
  • recorded_at, created_at
  • has_transcription, has_summarization
  • num_speakers
  • latitude, longitude (if location enabled)
  • tags (list of strings)

PocketSummarization

  • summary (markdown formatted)
  • action_items (list)
  • transcript (raw text)