Conversation
Set up charmbracelet/vhs demo recordings for Figma, GitHub, Linear, and Notion workflows. Tapes produce GIF + MP4 for docs and social media. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Issue Linking ReminderThis PR doesn't appear to have a linked issue. Consider linking to:
Using If this PR doesn't need an issue, you can ignore this message. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 78bfdca6d5
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| vhs demos/figma.tape | ||
|
|
||
| # Generate all demos | ||
| for tape in demos/*.tape; do vhs "$tape"; done |
There was a problem hiding this comment.
Add CLI setup before demo generation steps
The README’s Generate demos section assumes vhs is enough, but every tape runs the ralph-starter binary (for example demos/github.tape uses Type "ralph-starter run ..."). In a fresh clone, that command is not available on PATH until the project is built/installed, so following these instructions produces command not found captures instead of the intended demo flow. Please add a prerequisite to build/link/install ralph-starter, or change the tapes to call the local CLI entrypoint directly.
Useful? React with 👍 / 👎.
Greptile SummaryThis PR introduces a Issues found:
Confidence Score: 2/5
Flowchart%%{init: {'theme': 'neutral'}}%%
flowchart TD
A[Developer runs\n`vhs demos/*.tape`] --> B{ralph-starter\ninstalled?}
B -- No --> C[❌ command not found\nBlank/error GIF recorded\nNo Require guard to abort early]
B -- Yes --> D[VHS executes tape]
D --> E[Type command + Enter]
E --> F{Tape type?}
F -- figma.tape --> G[Interactive prompts\nType responses to each step]
F -- github/linear/notion.tape --> H[Sleep-only blocks\nNo simulated output]
G --> I[Sleep + finish]
H --> I
I --> J[✅ Output written to\ndemos/output/*.gif\ndemos/output/*.mp4]
Last reviewed commit: 78bfdca |
| Output demos/output/figma-demo.gif | ||
| Output demos/output/figma-demo.mp4 | ||
|
|
||
| Require echo |
There was a problem hiding this comment.
All four tape files declare Require echo but none declare Require ralph-starter. The Require directive causes VHS to abort with a clear error before recording begins if the binary is not found. Without it, VHS will silently record a GIF that shows a command not found (or similar shell error) instead of a working demo.
Add a Require ralph-starter line alongside the existing Require echo. The same issue exists in demos/github.tape:7, demos/linear.tape:7, and demos/notion.tape:7.
| Require echo | |
| Require echo | |
| Require ralph-starter |
Prompt To Fix With AI
This is a comment left during a code review.
Path: demos/figma.tape
Line: 7
Comment:
All four tape files declare `Require echo` but none declare `Require ralph-starter`. The `Require` directive causes VHS to abort with a clear error before recording begins if the binary is not found. Without it, VHS will silently record a GIF that shows a `command not found` (or similar shell error) instead of a working demo.
Add a `Require ralph-starter` line alongside the existing `Require echo`. The same issue exists in `demos/github.tape:7`, `demos/linear.tape:7`, and `demos/notion.tape:7`.
```suggestion
Require echo
Require ralph-starter
```
How can I resolve this? If you propose a fix, please make it concise.
demos/github.tape
Outdated
|
|
||
| # Simulate loop iterations | ||
| Sleep 2s | ||
|
|
||
| # Show validation passing | ||
| Sleep 2s | ||
|
|
||
| # Show PR creation | ||
| Sleep 2s | ||
|
|
||
| # Show completion | ||
| Sleep 4s |
There was a problem hiding this comment.
After pressing Enter on the command, this tape (and similarly linear.tape and notion.tape) only uses Sleep statements with no Type, Show, or Hide+echo blocks to simulate terminal output. The resulting GIF will show a terminal sitting blank while the process runs silently offscreen, producing a confusing or empty recording.
Compare with figma.tape, which types interactive responses to simulate a real prompt-driven flow. Consider using Hide/Show blocks with echo calls to print representative output at each stage, which is a common VHS pattern for demos that can't rely on a live binary:
Hide
Type "echo 'Fetching issue #42 from acme/webapp...'" Enter
Sleep 200ms
Show
Sleep 1s
Hide
Type "echo '✓ 3 iterations · tests passing'" Enter
Sleep 200ms
Show
Sleep 1s
Without simulated output, the Sleep 2s / Sleep 4s blocks record dead air. The same concern applies to demos/linear.tape:26-37 and demos/notion.tape:26-37.
Prompt To Fix With AI
This is a comment left during a code review.
Path: demos/github.tape
Line: 26-37
Comment:
After pressing `Enter` on the command, this tape (and similarly `linear.tape` and `notion.tape`) only uses `Sleep` statements with no `Type`, `Show`, or `Hide`+`echo` blocks to simulate terminal output. The resulting GIF will show a terminal sitting blank while the process runs silently offscreen, producing a confusing or empty recording.
Compare with `figma.tape`, which types interactive responses to simulate a real prompt-driven flow. Consider using `Hide`/`Show` blocks with `echo` calls to print representative output at each stage, which is a common VHS pattern for demos that can't rely on a live binary:
```
Hide
Type "echo 'Fetching issue #42 from acme/webapp...'" Enter
Sleep 200ms
Show
Sleep 1s
Hide
Type "echo '✓ 3 iterations · tests passing'" Enter
Sleep 200ms
Show
Sleep 1s
```
Without simulated output, the `Sleep 2s` / `Sleep 4s` blocks record dead air. The same concern applies to `demos/linear.tape:26-37` and `demos/notion.tape:26-37`.
How can I resolve this? If you propose a fix, please make it concise.Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!
- Add `Require ralph-starter` to all tape files to abort early if the binary is missing instead of recording a command-not-found GIF - Replace blank Sleep blocks in github/linear/notion tapes with Hide/Show + echo blocks that simulate realistic terminal output - Enhance figma.tape with full wizard simulation (prompts + output) - Update README with build/install prerequisite and embedding guide Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
Fix VHS escaped quote parser errors in github/linear/notion tapes. Generate all 4 integration demo GIFs. Add DemoShowcase component with tabbed interface to the homepage. Embed figma GIF in README. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
🔗 Docs PreviewPreview URL: https://feat-vhs-terminal-demos.ralph-starter-docs.pages.dev This preview was deployed from the latest commit on this PR. |
Replace plain echo tapes with bash simulation scripts that reproduce the actual ralph-starter terminal output — cyan box banners, green checkmarks, colored prompts, iteration progress boxes, and visual validation indicators. GIFs are 65% smaller and look authentic. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
Summary
Test plan
brew install charmbracelet/tap/vhsvhs demos/figma.tape— producesdemos/output/figma-demo.gifand.mp4🤖 Generated with Claude Code