yt-briefing 0.9.0 → 0.9.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +26 -16
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -1,11 +1,11 @@
1
1
  # yt-briefing
2
2
 
3
3
  Save hours on YouTube. yt-briefing watches the channels you follow so you don't have to. For
4
- each new video it distills the essence in your own language — every point that matters, with
4
+ each new video it gives you a short briefing in your own language — every point that matters, with
5
5
  only the filler cut, so nothing important is lost. Reading it takes a fraction of the time the
6
6
  video would, so you stay on top of everything and only watch what's actually worth it.
7
7
 
8
- It also gets better the more you use it. You give each briefing a quick rating, worth my time
8
+ It also gets better the more you use it. You give each summary a quick rating, worth my time
9
9
  or not, and from that it learns what to keep showing you and what to drop. Over time the queue
10
10
  becomes yours: less noise, more of what you care about.
11
11
 
@@ -55,9 +55,9 @@ YT_BRIEFING_LLM_MODEL=gemini-2.5-flash
55
55
  YT_BRIEFING_YOUTUBE_API_KEY=<key> # console.cloud.google.com → enable "YouTube Data API v3"
56
56
  ```
57
57
 
58
- Any OpenAI-compatible endpoint works — see [Providers](#providers) to use OpenRouter, OpenAI, or a
59
- local Ollama instead of Gemini. Miss a key and the engine tells you exactly which one. Keep `.env`
60
- gitignored; `YT_BRIEFING_PROXY` (datacenter/VPS IPs) is the only optional extra.
58
+ Any OpenAI-compatible endpoint works — see [Providers](#providers) to use OpenRouter, OpenAI,
59
+ Anthropic, or a local Ollama instead of Gemini. `YT_BRIEFING_PROXY` (datacenter/VPS IPs) is the
60
+ only optional extra.
61
61
 
62
62
  4. Onboard:
63
63
 
@@ -77,30 +77,39 @@ npx yt-briefing list # show the current l
77
77
 
78
78
  ## One-off: transcribe a single video
79
79
 
80
- Just want one video distilled — no channels, no queue, no rating? Run `/yt-transcribe` and
80
+ Just want one video summarized — no channels, no queue, no rating? Run `/yt-transcribe` and
81
81
  paste a URL or video ID. It pulls that video's transcript and writes a journalist-grade
82
- briefing in the language you chose at setup (the same `output_lang` as `/yt`). Want a one-off in
82
+ summary in the language you chose at setup (the same `output_lang` as `/yt`). Want a one-off in
83
83
  another language? Just say so when you run it (e.g. `/yt-transcribe <url> in German`) — it
84
84
  won't change your setup. `--lang pl|en` is separate — it picks which caption track to fetch,
85
- not the language it's written in.
85
+ not the summary language.
86
86
 
87
- The skill is installed alongside `/yt` by `init` / `install-skill`. From the plain CLI:
87
+ For example:
88
88
 
89
- ```bash
90
- npx yt-briefing transcribe <url-or-id> --lang auto # prints the transcript to stdout
89
+ ```
90
+ /yt-transcribe https://www.youtube.com/watch?v=dQw4w9WgXcQ
91
91
  ```
92
92
 
93
93
  ## Search within a channel
94
94
 
95
95
  Mine one channel's videos for a topic and get a comparison. Run `/yt-search` with a channel and
96
- an intent — e.g. `/yt-search @betterstack which terminal for AI coding`.
96
+ an intent — for example:
97
+
98
+ ```
99
+ /yt-search @betterstack which terminal for AI coding
100
+ ```
97
101
 
98
102
  It covers the channel's **whole history** (not just recent uploads), re-ranks every upload against
99
103
  your intent, then lazily yields one matching video at a time to keep or skip — and synthesizes a
100
104
  comparison from everything you kept.
101
105
 
102
106
  The one flag is `--top N` — how many of the top re-ranked matches to triage (**default 10**). Raise
103
- it to go deeper, lower it for a quicker pass: `/yt-search @betterstack which terminal --top 20`.
107
+ it to go deeper, lower it for a quicker pass:
108
+
109
+ ```
110
+ /yt-search @betterstack which terminal
111
+ /yt-search @betterstack which terminal --top 5
112
+ ```
104
113
 
105
114
  ## Run it
106
115
 
@@ -123,16 +132,17 @@ YT_BRIEFING_LLM_MODEL=gemini-2.5-flash
123
132
  > or switch to a paid key (enable billing, same model) to avoid it.
124
133
 
125
134
  Want something else? Change those three lines for OpenRouter (`https://openrouter.ai/api/v1`),
126
- OpenAI (`https://api.openai.com/v1`), or a local Ollama (`http://localhost:11434/v1`). Set
135
+ OpenAI (`https://api.openai.com/v1`), Anthropic (`https://api.anthropic.com/v1/`,
136
+ e.g. `claude-sonnet-4-6`), or a local Ollama (`http://localhost:11434/v1`). Set
127
137
  `YT_BRIEFING_LLM_BASE_URL`, `_API_KEY`, and `_MODEL` in your root `.env` (see [Setup](#setup)).
128
138
 
129
139
  ## Why an API, not the agent's native model
130
140
 
131
- The filtering and the briefings go through a plain OpenAI-compatible API call from the engine,
141
+ The filtering and the summaries go through a plain OpenAI-compatible API call from the engine,
132
142
  not through the coding agent's own model. Two reasons.
133
143
 
134
144
  Speed. The engine works ahead in the background. It expands channels in parallel and starts
135
- on the next video's briefing while you rate the current one, so the following step is usually
145
+ summarizing the next video while you rate the current one, so the following step is usually
136
146
  ready with no wait. An agent's turn-by-turn loop cannot prefetch like that, and every step pays
137
147
  its own cold start, which adds up across a whole queue.
138
148
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "yt-briefing",
3
- "version": "0.9.0",
3
+ "version": "0.9.2",
4
4
  "description": "A self-learning YouTube briefing engine: it sweeps the channels you follow, filters noise in two stages (title, then transcript), summarizes the rest in your language, and adapts to your ratings — one video at a time.",
5
5
  "type": "module",
6
6
  "bin": {