charmbracelet / charmbracelet/vhs

No platform checking, results in broken demo *.tape files on Windows

Open
#671 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Go
Stars
20.9k
Forks
480
Avg merge
4d 1h
Merged PRs (30d)
2

Description

Installed VHS using winget. Clean install of dependencies. For all intents and purposes, clean and prepared environment. However, this is the result of a basic test:

`vhs new demo`
`vhs demo.tape`
_failed to execute command: exec: "echo": executable file not found in %PATH%
recording failed_

I'm guessing tests weren't run, at least on Windows platforms. That's not the most elegant and informative feedback - confused me, like "echo" not found? So this exposes a couple of things: better out-of-the-box stability and... working functionality is missing, and verbose error feedback with logical reporting so users can self-help or at the very least, have a bread crumb to track.

The issue is the content of the *.tape file. It would seem VHS or the hardcoded demo code doesn't have platform checking. That should be a thing, so users get a working demo *.tape file for their respective platform.

Contributor guide

Open the contributing guide

Research direction

Reproduce the Windows failure with `vhs new demo` followed by `vhs demo.tape`, then trace the demo-generation and command-execution entry points in this Go CLI. Done means a newly generated demo works on Windows and the platform-specific behavior is verified by tests or a repeatable manual check; the issue names no files or tests, so locate those first.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
cli, operating-systems
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.