← RendemoCONTENT HISTORYWHAT CHANGED · RULE-BASED ANALYSIS
Update to Rendemo
Snapshot Sep 30, 2026 · 23:08 UTC · version 1.0.0
Collection source: not recorded for this historical snapshot.
First saved snapshot
No earlier snapshot is available to establish a change.
Compare saved observations
Download comparison JSONFull technical diff · 0 changed fields
Full snapshot data
{
"name": "drive-and-record",
"description": "Use when the user wants a demo of their signed-in product and wants YOU to do the walkthrough rather than record it themselves or tell you which buttons to click — \"make a demo of my app and you drive it\", \"record a demo of my product without me clicking\", \"walk through my dashboard yourself and record it\", \"drive my signed-in session and build the demo\". The agent REHEARSES the workflow unrecorded on the user's own signed-in tab through the Rendemo Chrome extension, PROPOSES the take as a numbered plan the user approves in chat, then RECORDS that plan as one clean take that auto-directs — no free-roam replica to leak, so it is the right route for a data-dense product (CRM, inbox, leads). Read it BEFORE rendemo_start_drive_session / rendemo_drive / rendemo_propose_drive_plan / rendemo_record_drive_plan: it covers the intake questions to ask first, the paste steps to hand the user, the unrecorded read→decide→act rehearsal, how to write the plan and get a yes, the Record click, and the hand-off to the build pass. A user who would rather click through it themselves wants a plain recording (`new-demo`).",
"included_files": [],
"skill_md_contents": "---\r\nname: drive-and-record\r\ndescription: Use when the user wants a demo of their signed-in product and wants YOU to do the walkthrough rather than record it themselves or tell you which buttons to click — \"make a demo of my app and you drive it\", \"record a demo of my product without me clicking\", \"walk through my dashboard yourself and record it\", \"drive my signed-in session and build the demo\". The agent REHEARSES the workflow unrecorded on the user's own signed-in tab through the Rendemo Chrome extension, PROPOSES the take as a numbered plan the user approves in chat, then RECORDS that plan as one clean take that auto-directs — no free-roam replica to leak, so it is the right route for a data-dense product (CRM, inbox, leads). Read it BEFORE rendemo_start_drive_session / rendemo_drive / rendemo_propose_drive_plan / rendemo_record_drive_plan: it covers the intake questions to ask first, the paste steps to hand the user, the unrecorded read→decide→act rehearsal, how to write the plan and get a yes, the Record click, and the hand-off to the build pass. A user who would rather click through it themselves wants a plain recording (`new-demo`).\r\nversion: 2.0.0\r\n---\r\n\r\n<!-- GENERATED by `npm run skills:generate` from lib/copilot/skills/drive-and-record/SKILL.md.\r\n Edit that file, not this one. `npm run skills:check` fails the build if they have drifted. -->\r\n\r\n# Rehearse, propose, record\r\n\r\nThe user has asked for a demo of their product and they do NOT want to walk it themselves, and they\r\ndo NOT want to tell you which buttons to click. You drive their signed-in product tab. What comes\r\nout is a real recording — real screens, real transitions, real data — and because it is a recording\r\nthere is no free-roam replica for anyone to wander into, which makes this the SAFE choice for a\r\nproduct whose screens are full of other people's data: a CRM, an inbox, a leads list.\r\n\r\nThe shape of the work is the shape a person uses: **rehearse first, then perform.** You explore the\r\nproduct with the recorder OFF until you know the path. You write that path down as a plan and show\r\nit to the user. Once they say yes, the extension performs the plan as ONE clean take — every step\r\nback-to-back, a beat between them, nothing else. The recording holds the performance, never the\r\nthinking. (The first takes that recorded the thinking were five minutes long with seconds of frozen\r\nscreen between clicks and every failed retry in the footage. That is what this shape prevents.)\r\n\r\nThis is one rung of the capture ladder in `new-demo`. Reach for it when all three are true: the demo\r\nis behind a login, the user wants the agent to do the walkthrough rather than record it themselves,\r\nand you can drive their browser through the extension. If the user would rather click through it\r\nthemselves, that is a plain recording (`new-demo`), and it is better when they have it in them.\r\n\r\n## Ask first — two or three short questions, then get out of the way\r\n\r\nYou are about to navigate a product you have never seen toward a goal only the user knows. Ask\r\nbefore you start. Keep it to three, lead with your read so they can just say yes, and never turn it\r\ninto an interview:\r\n\r\n1. **What is this demo for?** Selling to prospects, onboarding new users, teaching one feature. The\r\n answer sets the story shape and the theme, exactly as in `new-demo`'s intent table.\r\n2. **What is the one outcome it should land on?** The screen or moment that makes the case — the\r\n populated dashboard, the sent campaign, the analytics that prove it works. This is the payoff you\r\n steer toward; everything in the plan is in service of reaching it.\r\n3. **Anything I must not touch?** A real destructive control, a customer's private record, a live\r\n send. You already refuse logout/delete-shaped navigation and destructive-looking clicks, but the\r\n user knows their product's landmines.\r\n\r\nDo not ask a fourth question, and do not ask them to plan the steps — the steps are yours to find.\r\n\r\n## Starting the session\r\n\r\n`rendemo_start_drive_session({ url })` with the signed-in entry url. It returns a code. Hand the\r\nuser these steps verbatim — do not paraphrase:\r\n\r\n1. Have the Rendemo Chrome extension installed and connected to your Rendemo account.\r\n2. Open your product in Chrome and sign in the way you normally would.\r\n3. Click the Rendemo extension icon and choose **Let my AI drive this tab**.\r\n4. Paste the code, and approve the one-time permission prompt. Chrome will show a \"Rendemo is\r\n debugging this browser\" bar — expected; it goes when the session ends.\r\n5. Keep that tab in front and tell me once you are connected. Nothing is recorded yet.\r\n\r\nThen wait for them to say they are connected. Your first `rendemo_drive` also tells you whether they\r\nare: a \"session has not started\" result means the code is not pasted yet — not a stopping point,\r\ncall it again with the SAME session. Never mint a second code; that abandons the first.\r\n\r\n## Phase 1 — rehearse: the read, decide, act loop, unrecorded\r\n\r\nNothing is recorded here, so explore freely. The rule is simple: **you choose every target; you\r\nnever ask the user which one.** Each `rendemo_drive` returns what the page looks like after the\r\naction, including a `read` outline where every button, link and field carries a selector in `«…»`.\r\nThat outline is your map.\r\n\r\n1. **Read the landing.** `rendemo_drive({ sessionId, url, action: { op: \"read\" } })`.\r\n2. **Decide the next move toward the outcome** the user named. Pick a target from the outline by\r\n its selector, or by its visible text.\r\n3. **Act.** `navigate`, `click`, `type`, `scroll`. The extension resolves the target and clicks the\r\n real element with trusted input.\r\n4. **Read again**, and repeat. Backtrack when a path dead-ends. Note which selectors and texts\r\n actually worked — those are what the plan will use.\r\n\r\nRehearse until you can name the path from the entry screen to the payoff in five to ten visible\r\nactions, and you have SEEN each of them work. Do not propose a step you have not performed.\r\n\r\nWhen the outline does not show a control you need — a canvas, a JS-only widget with no link or\r\nrole — say so plainly and ask the user to click that ONE step themselves, then carry on.\r\n\r\n## Phase 2 — propose the plan, and wait for a yes\r\n\r\n`rendemo_propose_drive_plan({ sessionId, url, title, steps })`. Each step is a visible action with a\r\none-sentence `purpose` — what the viewer learns from it — and optionally a longer `settleMs` after\r\na slow transition. Never a `read`; reads are dead time and the tool refuses them.\r\n\r\nThe plan is the demo's story, so write it like one:\r\n\r\n- **One path to the payoff.** Five to ten steps. A plan that opens every menu is a sitemap.\r\n- **Every step earns its place.** If it does not carry the viewer toward the outcome, cut it.\r\n- **Land on the outcome.** The last step is the screen the user named, held for a beat.\r\n- **Use what worked.** The exact selector or text you clicked in rehearsal, not a guess.\r\n- **Purposes become captions.** Write each one as the sentence a caption would carry.\r\n\r\nThe tool returns the plan as a numbered list. **Show it to the user and ask them to approve or\r\nchange it.** Do not record until they say yes. If they want changes, propose again — the new plan\r\nreplaces the old.\r\n\r\n## Phase 3 — record the take\r\n\r\nOnce approved: `rendemo_record_drive_plan({ sessionId, url })`, then tell the user in one line to\r\nclick **Record the plan** in the Rendemo extension popup (Chrome needs their click to start the\r\nrecorder). The tool holds open through their click and the take; if it comes back \"waiting for the\r\nclick\" or \"recording\", call it again — not a stopping point. It returns when the take is done and\r\nuploading, with a per-step result. A step that fails stops the take there and says which one; what\r\nwas recorded still uploads. Rehearse that step again, fix the plan, propose, and record again after\r\nthe user approves.\r\n\r\n## Then the build\r\n\r\n`rendemo_watch_captures()` — no crawlId — holds open until the project lands and its story director\r\nfinishes. If it says nothing yet, call it again. Then `rendemo_get_plan` and the `new-demo` build\r\npass: each step's caption can start from the purpose you wrote, so the copy is already half done.\r\nSet the theme and motion to match what the demo is for, write the title and end cards, review the\r\nframes, and publish once the user agrees. `demo-craft` governs the step scene.\r\n\r\n## Waiting is a tool call, not a turn\r\n\r\n`rendemo_drive`, `rendemo_record_drive_plan` and `rendemo_watch_captures` hold the connection open\r\nand return when something happens. When one comes back still-not-done, call it again immediately.\r\nDo not summarise the wait, do not ask the user to check, and do not end your turn.\r\n\r\n## Tools\r\n\r\n`rendemo_start_drive_session` → (hand over the paste steps) → `rendemo_drive` (`read` → decide →\r\nact, repeated, unrecorded) → `rendemo_propose_drive_plan` (show the list, get a yes) →\r\n`rendemo_record_drive_plan` (they click Record the plan) → `rendemo_watch_captures` →\r\n`rendemo_get_plan` → the `new-demo` build pass → `rendemo_publish_demo`.\r\n`rendemo_finish_drive_session` ends a session early — abandon a rehearsal, or stop a take.\r\n"
}SHA-256: b7cbcff6db272ea600e91ed240b520f9afdd4a9dfb1e737f5ce4aaf1fb64f4b0