feat(scripts): ad-hoc Meet Kevin video analyzer CLI
Some checks failed
ci/woodpecker/push/woodpecker Pipeline was canceled
Some checks failed
ci/woodpecker/push/woodpecker Pipeline was canceled
Given a YouTube video ID or URL, runs the same caption-extraction +
LLM-analysis pipeline the watcher uses in prod, then prints the
extracted tickers + actions sorted by action priority and conviction
descending. No DB writes, no Redis publish — strictly observational.
Two entry points:
- scripts/analyze_kevin_video.py — pure Python; needs yt-dlp +
Anthropic OAuth token in env. Local laptop yt-dlp tends to hit
"Sign in to confirm you're not a bot" rate-limits; running inside
a cluster pod avoids this.
- scripts/kevin-analyze.sh — wrapper that finds the running
trading-bot-workers pod and execs the Python script in the
meet-kevin-watcher container. Easiest invocation.
Example:
$ ./scripts/kevin-analyze.sh poUJIZRmFew
=== Meet Kevin analysis — poUJIZRmFew ===
Market outlook: bullish
TICKERS (12):
SYMBOL ACTION CONV HORIZON RATIONALE
APPF buy 85.0% long_term Apploven's looking fantastic ...
SOX buy 80.0% months Semiconductor ETF momentum ...
...
This commit is contained in:
parent
065b634b99
commit
a93cb06898
2 changed files with 203 additions and 0 deletions
27
scripts/kevin-analyze.sh
Executable file
27
scripts/kevin-analyze.sh
Executable file
|
|
@ -0,0 +1,27 @@
|
|||
#!/usr/bin/env bash
|
||||
# Ad-hoc Meet Kevin video analyzer wrapper.
|
||||
#
|
||||
# Usage:
|
||||
# ./scripts/kevin-analyze.sh <video-id-or-url>
|
||||
#
|
||||
# Picks the running meet-kevin-watcher container (which already has
|
||||
# yt-dlp + ffmpeg + the Anthropic token + the right Python env) and
|
||||
# runs scripts/analyze_kevin_video.py inside it.
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
if [[ $# -ne 1 ]]; then
|
||||
echo "usage: $0 <youtube-video-id-or-url>" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
POD=$(kubectl -n trading-bot get pod -l app=trading-bot-workers \
|
||||
-o jsonpath='{.items[0].metadata.name}')
|
||||
|
||||
if [[ -z "$POD" ]]; then
|
||||
echo "no trading-bot-workers pod found" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
exec kubectl -n trading-bot exec "$POD" -c meet-kevin-watcher -- \
|
||||
python -m scripts.analyze_kevin_video "$1"
|
||||
Loading…
Add table
Add a link
Reference in a new issue