Add VideoDB Skills to Individual Skills#301
Add VideoDB Skills to Individual Skills#3010xrohitgarg wants to merge 4 commits intoaffaan-m:mainfrom
Conversation
|
Important Review skippedDraft detected. Please check the settings in the CodeRabbit UI or the You can disable this status message by setting the Use the checkbox below for a quick retry:
📝 WalkthroughWalkthroughA new SKILL.md documentation file was added to the videodb-skills directory, documenting the VideoDB skill including activation scenarios, setup instructions, usage patterns (upload, search, timeline editing), capabilities matrix, best practices, and environment guidance. Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~8 minutes Poem
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 2
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@skills/videodb-skills/SKILL.md`:
- Around line 11-109: Rename the "When to Activate" heading to "When to Use",
add a new "How It Works" section immediately after it that explains VideoDB's
integration and workflow: how the SDK (videodb.connect / conn) authenticates via
VIDEO_DB_API_KEY, how operations flow (upload → index_spoken_words /
index_scenes → search / get_transcript → edit via Timeline → generate_stream), a
brief note on timeline-based editing internals (assets like
VideoAsset/AudioAsset produce new streams without modifying originals) and the
relationship between collections, videos, and streams, and finally rename or
duplicate "Core Patterns" as "Examples" to match guidelines while keeping
existing examples (upload, search, timeline editing, AI generation) intact.
- Line 1: The file name SKILL.md violates the lowercase-with-hyphens convention;
rename SKILL.md to skill.md and update any references/imports/links that point
to SKILL.md (e.g., README, index files, or any code that reads
skills/videodb-skills/SKILL.md) so they reference skills/videodb-skills/skill.md
to avoid broken links or imports.
| @@ -0,0 +1,109 @@ | |||
| --- | |||
There was a problem hiding this comment.
Rename file to follow lowercase-with-hyphens convention.
The filename SKILL.md uses uppercase, but the coding guidelines require lowercase with hyphens for files in the skills directory. As per coding guidelines: Use lowercase with hyphens for file naming (e.g., python-reviewer.md, tdd-workflow.md).
📝 Suggested filename
Rename SKILL.md to skill.md
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@skills/videodb-skills/SKILL.md` at line 1, The file name SKILL.md violates
the lowercase-with-hyphens convention; rename SKILL.md to skill.md and update
any references/imports/links that point to SKILL.md (e.g., README, index files,
or any code that reads skills/videodb-skills/SKILL.md) so they reference
skills/videodb-skills/skill.md to avoid broken links or imports.
skills/videodb-skills/SKILL.md
Outdated
| ## When to Activate | ||
|
|
||
| - Uploading or ingesting videos from YouTube URLs, web URLs, or local files | ||
| - Searching spoken words or visual scenes across video content | ||
| - Generating transcripts or auto-styling subtitles | ||
| - Editing clips — trim, combine, multi-timeline composition | ||
| - Adding overlays — text, images, audio, music | ||
| - Generating AI media — images, video, music, sound effects, voiceovers | ||
| - Transcoding — resolution, codec, bitrate, FPS changes | ||
| - Reframing video for social platforms (vertical, square, etc.) | ||
| - Real-time screen or audio capture with AI transcription | ||
| - Getting playable HLS streaming links for any output | ||
|
|
||
| ## Setup | ||
|
|
||
| ```bash | ||
| # Install the skill | ||
| npx skills add video-db/skills | ||
|
|
||
| # Or setup manually | ||
| pip install "videodb[capture]" python-dotenv | ||
| export VIDEO_DB_API_KEY=sk-xxx | ||
| ``` | ||
|
|
||
| Run `/videodb setup` inside your agent for guided setup ($20 free credits, no credit card). | ||
|
|
||
| ## Core Patterns | ||
|
|
||
| ### Upload and Process | ||
|
|
||
| ```python | ||
| import videodb | ||
|
|
||
| conn = videodb.connect() | ||
| video = conn.upload(url="https://www.youtube.com/watch?v=VIDEO_ID") | ||
|
|
||
| transcript = video.get_transcript() | ||
| for entry in transcript: | ||
| print(f"[{entry['start']:.1f}s] {entry['text']}") | ||
| ``` | ||
|
|
||
| ### Search Across Videos | ||
|
|
||
| ```python | ||
| # Index for semantic search | ||
| video.index_spoken_words() | ||
|
|
||
| # Search by what was said | ||
| results = video.search("product demo") | ||
| for r in results: | ||
| print(f"{r.start:.1f}s - {r.end:.1f}s: {r.text}") | ||
| ``` | ||
|
|
||
| ### Timeline Editing | ||
|
|
||
| ```python | ||
| from videodb import Timeline, VideoAsset, AudioAsset | ||
|
|
||
| timeline = Timeline(conn) | ||
| asset = VideoAsset(asset_id=video.id, start=10, end=30) | ||
| timeline.add_inline(asset) | ||
|
|
||
| stream = timeline.generate_stream() | ||
| print(stream) # Playable HLS link | ||
| ``` | ||
|
|
||
| ### AI Media Generation | ||
|
|
||
| ```python | ||
| audio = conn.generate_audio(text="Upbeat background music", duration=30) | ||
| image = conn.generate_image(prompt="Title card: Welcome to the Demo") | ||
| ``` | ||
|
|
||
| ## Capabilities | ||
|
|
||
| | Capability | What It Does | | ||
| |---|---| | ||
| | Upload | YouTube, URLs, local files | | ||
| | Search | Speech-based and scene-based | | ||
| | Transcripts | Timestamped, multi-language | | ||
| | Edit | Trim, combine, multi-timeline | | ||
| | Subtitles | Auto-generate, custom styling | | ||
| | AI Generate | Images, video, music, SFX, voiceover | | ||
| | Capture | Screen + audio, real-time | | ||
| | Transcode | Resolution, codec, aspect ratio | | ||
| | Stream | HLS playable links | | ||
|
|
||
| ## Best Practices | ||
|
|
||
| - Always verify SDK connection before operations: `conn.get_collection()` | ||
| - Use `video.index_spoken_words()` before searching — indexing is required once per video | ||
| - For scene search, use `video.index_scenes()` — this processes visual frames | ||
| - Timeline edits produce new streams; the original video is never modified | ||
| - AI generation is async — poll status or use callbacks for long operations | ||
| - Store `VIDEO_DB_API_KEY` in `.env`, not hardcoded | ||
|
|
||
| ## Repository | ||
|
|
||
| https://github.com/video-db/skills |
There was a problem hiding this comment.
Add required "How It Works" section and align section naming with guidelines.
The coding guidelines require skills to have clear sections for "When to Use", "How It Works", and "Examples". The current file is missing the "How It Works" section and uses slightly different section names.
Current structure:
- "When to Activate" → Should be "When to Use"
- Missing → Need "How It Works" section
- "Core Patterns" → Should be "Examples" (or keep both)
The "How It Works" section should explain the mechanics of how VideoDB integrates with the agent, the SDK architecture, and the workflow of video processing operations.
📋 Suggested structure improvement
Consider adding a "How It Works" section after "When to Use" that explains:
- How the VideoDB SDK connects and authenticates
- The workflow: upload → index → search/edit → stream
- How timeline-based editing works internally
- The relationship between videos, collections, and streams
You can also rename "When to Activate" to "When to Use" and "Core Patterns" to "Examples" to match the guidelines exactly, though "Core Patterns" is also descriptive.
As per coding guidelines: Skills should be formatted as Markdown with clear sections for When to Use, How It Works, and Examples.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@skills/videodb-skills/SKILL.md` around lines 11 - 109, Rename the "When to
Activate" heading to "When to Use", add a new "How It Works" section immediately
after it that explains VideoDB's integration and workflow: how the SDK
(videodb.connect / conn) authenticates via VIDEO_DB_API_KEY, how operations flow
(upload → index_spoken_words / index_scenes → search / get_transcript → edit via
Timeline → generate_stream), a brief note on timeline-based editing internals
(assets like VideoAsset/AudioAsset produce new streams without modifying
originals) and the relationship between collections, videos, and streams, and
finally rename or duplicate "Core Patterns" as "Examples" to match guidelines
while keeping existing examples (upload, search, timeline editing, AI
generation) intact.
affaan-m
left a comment
There was a problem hiding this comment.
Automated review: doc-only changes look good. Approving.
|
|
| Condition | Recommendation |
|---|---|
| < 20 commits | Repository may be too new for pattern detection |
| Unusual structure | Non-standard project layout |
| Documentation-only | Limited code patterns available |
To retry: /ecc-tools analyze
|
|
| Condition | Recommendation |
|---|---|
| < 20 commits | Repository may be too new for pattern detection |
| Unusual structure | Non-standard project layout |
| Documentation-only | Limited code patterns available |
To retry: /ecc-tools analyze
|
|
| Condition | Recommendation |
|---|---|
| < 20 commits | Repository may be too new for pattern detection |
| Unusual structure | Non-standard project layout |
| Documentation-only | Limited code patterns available |
To retry: /ecc-tools analyze
Description
Type of Change
fix:Bug fixfeat:New featurerefactor:Code refactoringdocs:Documentationtest:Testschore:Maintenance/toolingci:CI/CD changesChecklist
node tests/run-all.js)Summary by CodeRabbit