v1.1.8
- Description updated: works out of the box, optional tools enhance quality, internet required for YouTube
- Added OpenClaw metadata: declares summarize as required binary
- Added security clarifications: no data uploaded, sub-agent has strict no-install instructions
- Expanded setup.py documentation in README
- Fixed display name on ClawHub: TubeScribe (was Tubescribe)
v1.1.7
TubeScribe 1.1.7
- Updated documentation in SKILL.md and README.md for clarity on local vs. network operations.
- Clarified no paid APIs or subscriptions are required, but network is used to fetch YouTube data.
- Improved instructions regarding the handling of source/output paths and first-time setup.
- Minor corrections to workflow steps and documentation formatting for setup and configuration.
v1.1.6
Fixed long code line in SKILL.md causing horizontal scroll on ClawHub page
v1.1.5
MLX-Audio TTS (3-4x faster on Apple Silicon), 12 bug fixes, 4 security fixes, yt-dlp max_comments correct 5-value format, per-user secure temp directory, SKILL.md temp path fix
v1.1.4
Fix: wrapped long line in SKILL.md that caused horizontal scroll on ClawHub page
v1.1.3
## v1.1.3 — Bug Fixes, Security Hardening & Config Improvements
### Bug Fixes
- Fixed URL handling: normalize /live/, /shorts/ and other YouTube URL formats
- Fixed false-positive error detection (only check error patterns when command actually fails)
- Fixed queue file locking: proper lock-before-open semantics with os.open()+os.fdopen()
- Fixed timezone-aware comparison in stale job detection (was crashing on some systems)
- Fixed link double-encoding in HTML output (URLs with & were breaking)
- Fixed built-in TTS (macOS say) for long summaries: uses temp file to avoid CLI arg length limits
- Fixed headers and table cells now render bold/italic/links correctly in HTML output
- Cleanup now removes TTS temp script files too
### Security
- Zip/tar path traversal validation when installing pandoc/yt-dlp (prevents zip-slip attacks)
- Added single-quote escaping in HTML output
- Added safety rule in SKILL.md to prevent sub-agents from installing software
### Improvements
- Kokoro voice blend and speed now read from config (no more hardcoded values)
- Config uses nested key access throughout (audio.format instead of flat keys)
- Renamed config.set() to config.set_value() to avoid shadowing Python builtin
- setup.py delegates to tubescribe.py for find_ytdlp/find_kokoro (DRY, no duplication)
- Uses find_ytdlp() helper with multi-path search instead of raw subprocess calls
- SKILL.md uses relative paths (portable across installations)
- TTS respects tts_engine config setting (kokoro/builtin/disabled)
- Better error message when macOS say command not found
- Removed unreliable live_stream error pattern
- Default Kokoro path updated to ~/.openclaw/tools/kokoro
v1.1.2
Bug fixes: stale queue crash, config corruption, HTML table/XSS fixes, URL validation. Removed python-docx fallback and afconvert dependency. Simplified builtin TTS (say → WAV direct). Added queue file locking, blockquotes. Improved comment formatting (dash + italic).
v1.1.1
Non-blocking async workflow, improved queue processing, viewer sentiment and best comments
v1.1.0
Step timing, bold headings, improved comment formatting
v1.0.8
Fixed RTF→HTML, added Markdown support, updated config docs
v1.0.7
Simplified frontmatter
v1.0.5
Re-publish: Fixed RTF→HTML, added Markdown support, updated docs
v1.0.4
Fixed RTF references - replaced with HTML. Added Markdown format support. Updated config documentation.
v1.0.3
Fixed display name capitalization (TubeScribe not Tubescribe); restored Markdown in description
v1.0.2
Fixed description: outputs are DOCX or HTML (not Markdown)
v1.0.1
Cleanup: removed unused RTF writer (HTML is the fallback now)
v1.0.0
Initial release: YouTube video summarizer with speaker detection, documents, and audio