Skip to content

Add podtx summarize for episode summaries and takeaways #8

Closed

Description

@frarredondo

Summary

Raw transcripts are long. Users often want a short summary, key points, and timestamped quotes without re-listening.

Motivation / evidence

Library already contains hour-long interviews (12k–16k+ words). Manual summarization per episode doesn’t scale.

Proposal

podtx summarize path/to/episode.json
podtx summarize --feed corecursive-coding-stories --limit 5

Produce a sidecar summary (e.g. .summary.md or JSON) with:

  • short overview
  • key points / takeaways
  • optional notable quotes with timestamps

Use a pluggable backend (local model and/or API), configured explicitly—no silent external calls.

Out of scope

Full chat-with-podcast UI, automatic publishing to blogs/newsletters.

Acceptance criteria

  • Can summarize from existing transcript JSON without re-running ASR
  • Output format is stable and documented
  • Backend/credentials behavior is explicit and offline-friendly by default where possible
  • Docs / --help updated

Activity

  1. frarredondo commented on Aug 29, 2026

    @frarredondo
    OwnerAuthor

    This was generated by AI during triage.

    Agent Brief

    Category: enhancement
    Summary: Add offline-friendly episode summarization (summary + takeaways + timestamped quotes)

    Current behavior:
    The library stores full interview transcripts (often 12k–16k+ words) as .json+.txt plus timed segments, and a reformat path already rebuilds outputs without re-running ASR. There is no summarization command; users must read full text or summarize manually per episode.

    Desired behavior:
    A new podtx summarize command generates a stable sidecar summary from existing transcript JSON without re-running ASR. It produces a short overview, key points/takeaways, and optionally notable timestamped quotes. The summarization backend is pluggable and explicitly configured — no silent external network calls — and defaults to an offline-friendly option where possible. Output format is stable and documented, and single-episode and batch-by-feed modes are supported.

    Key interfaces:

    • CLI: podtx summarize <path/to/episode.json> and podtx summarize --feed <slug> [--limit N] (or equivalent batch flags); credentials/backend selection is explicit via flags/config/env, never implicit
    • Input: existing transcript JSON (text + segments) as the source of truth; no audio re-ingest
    • Output: a sidecar file per episode (e.g. .summary.md or structured JSON) with stable fields for overview, key points, and optional quotes with timestamps; format is versioned/documented

    Acceptance criteria:

    • Can summarize from an existing transcript JSON without invoking the ASR engine
    • Supports both single-file (path/to/episode.json) and batch (--feed <slug> [--limit N]) invocation
    • Output is a stable, documented sidecar format containing at least overview + key points, with optional notable quotes carrying timestamps
    • Backend/credential behavior is explicit: the user must opt into any external API use; default path is offline-friendly or clearly requires local model setup, with no silent network calls
    • Docs: README and --help describe invocation, output format, and backend configuration; examples cover single and batch modes

    Out of scope:

    • Full chat-with-podcast UI or conversational agent
    • Automatic publishing to blogs/newsletters or third-party platforms
    • Semantic search over summaries (search is a separate feature)
    • Re-transcription or audio re-processing during summarization
  2. frarredondo commented on Aug 30, 2026

    @frarredondo
    OwnerAuthor

    Shipped by PR #33 (commit df7409b). Verified against this issue's acceptance criteria:

    • Summarize from existing transcript JSON without re-running ASR: met (podtx summarize <path>.json)
    • Batch modes: met (--feed <slug> [--limit N], plus --all)
    • Stable sidecar format (overview, key points, optional timestamped quotes): met (.summary.json / .summary.md)
    • Backend/credentials explicit and offline-friendly: met (default fake extractive, no network; openrouter/opencode/lmstudio opt-in; keys via podtx auth set, env, or --api-key)
    • Docs: --help met; README still missing, tracked in Document podtx summarize in README #37

    Closing as done; the README gap is tracked separately in #37.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions