FE-1592: Add a repo skill for recording Petrinaut demo videos - #9541
Draft
kube wants to merge 4 commits into
Draft
FE-1592: Add a repo skill for recording Petrinaut demo videos#9541kube wants to merge 4 commits into
kube wants to merge 4 commits into
Conversation
The capture harness, the encoder, the pointer overlay and the canvas helpers lived in one person's home directory, so nobody else could produce a comparable video and a before/after pair could not be split between two people. They now sit in .agents/skills and resolve from the repository root. The publish step is a script that posts a finished file to GitHub's user-attachments store and prints the asset URL, which plays inline for anyone who can read the repository.
|
The latest updates on your projects. Learn more about Vercel for GitHub.
3 Skipped Deployments
|
`.claude/skills/skill-rules.json` is generated from the skill frontmatter by `yarn agents:skill-management generate-skill-rules`, and CI regenerates it to check nothing in .agents/skills is missing from it.
Semgrep reads the first `console.log` argument as a format string, so a computed value there is a forgeable one. The elapsed time moves into an argument.
Both takes have to run the same scenario against two builds, and the revert that gets you the second one has a trap: restoring the branch leaves a file that main has and the branch deleted staged, because git cannot remove from the working tree what HEAD does not contain.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Before this PR, recording a demo of a Petrinaut flow needed one person's local tooling. The capture harness, the encoder, the pointer overlay and the canvas framing helpers all lived in a home directory, so nobody else could produce a comparable video, and a before/after pair could not be split between two people.
Vendors that tooling into
.agents/skills/recording-petrinaut-demos, where anyone working in the repository picks it up. Everything resolves from the repository root, so it runs from any checkout, and the publish step is a script that posts a finished file to GitHub's user-attachments store and prints a URL that plays inline for anyone who can read the repository.Links
Changes
Procedure
SKILL.mdcarries the fixed output format and the storyboard budgetSKILL.mdcarries the before/after recipe and its trapreferences/petrinaut-setup.mdcarries what the editor itself needsTooling
scripts/record-demo.mjscaptures through CDP rather than Playwright's recorderscripts/demo-hud.mjsdraws the pointer and the keystrokes over the appscripts/upload-attachment.shturns a file into a linkscripts/probe-cursor.mjsscreenshots the overlay in a few secondsTest coverage
How to test
yarn workspace @apps/petrinaut-website devnpx turbo run build --filter @hashintel/petrinautnode .agents/skills/recording-petrinaut-demos/scripts/record-demo.mjs .agents/skills/recording-petrinaut-demos/references/example.scenario.mjs --out ./demo.agents/skills/recording-petrinaut-demos/scripts/make-demo.sh ./demo/recording.json ./demo/out.mp4