Documentation Index
Fetch the complete documentation index at: https://hyperframes.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
HyperFrames occasionally asks how a render went or how a Studio session felt. This page explains why we do it, when prompts appear, what data is collected, and how to disable them.
Why We Ask
We use anonymous satisfaction scores to understand whether the tool is actually working well — not just whether it runs without errors. A render that takes 10 minutes and produces a broken file counts as a success in logs but a failure in practice. The feedback prompt is the only signal we have for that gap.
No account, email, or identity is tied to responses. Each installation generates a random UUID at setup; that is the only identifier.
How It Works
CLI — post-render prompt
After a successful hyperframes render, a short prompt may appear:
How was this render? [1=poor 5=great, enter to skip]
Any details? (enter to skip)
When it shows:
- First ever successful render
- Then every 15 renders after that (16th, 31st, 46th…)
- At most once per process — re-renders in the same session don’t trigger a second prompt
- Automatically suppressed in quiet mode (
--quiet), non-TTY shells, and CI environments
The prompt has a 10-second auto-timeout — if you don’t respond, it silently disappears and the CLI continues normally.
The render interval is configurable:
# Show prompt every 5 renders instead of 15 (useful for testing)
HYPERFRAMES_FEEDBACK_INTERVAL=5 hyperframes render --output out.mp4
Studio — session feedback bar
A thin 32px bar slides in at the bottom of the preview area periodically:
- Never on the first session — only starting from the 10th
- Then every 10 sessions (10th, 20th, 30th…)
- Slides in 3 seconds after page load to avoid flash
- Auto-dismisses after 20 seconds if ignored
- After any interaction (dismiss or submit), the session counter resets — next prompt after 10 more sessions
The session interval is configurable at build time:
VITE_HYPERFRAMES_FEEDBACK_INTERVAL=3
Invalid values (non-integer, zero, negative) fall back to the default.
Note: Disabling CLI telemetry (hyperframes telemetry disable) does not suppress the Studio bar — Studio feedback is gated separately. The submitted data is still sent through the same anonymous PostHog pipeline, so the same privacy guarantees apply.
hyperframes feedback command
You can submit feedback manually at any time:
# Quick rating
hyperframes feedback --rating 5
# Rating with details
hyperframes feedback --rating 3 --comment "render succeeded but GSAP timeline didn't animate text overlay"
| Flag | Description |
|---|
--rating | Satisfaction score, 1–5 (required) |
--comment | Optional free-text details |
This command collects a doctor summary automatically, flushes telemetry, and exits. It appears under the Settings group in hyperframes --help.
Agent Runtimes
When an AI agent is detected, HyperFrames skips the interactive readline prompt and prints a structured hint instead:
[hyperframes] Agent feedback: hyperframes feedback --rating <1-5> --comment "..."
Agents can then submit feedback using the hyperframes feedback command above.
The same cadence gate applies: the hint only appears on the first render, then every 15th.
Detected agents and their markers:
| Agent | Environment markers |
|---|
| Claude Code | CLAUDECODE present, or CLAUDE_CODE_ENTRYPOINT present |
| Codex | CODEX_THREAD_ID, CODEX_CI, or CODEX_SANDBOX_NETWORK_DISABLED present |
| Cursor | TERM_PROGRAM equals cursor |
| GitHub Copilot Agent | GITHUB_ACTIONS equals true and (COPILOT_AGENT_ID present or RUNNER_NAME equals Copilot) |
| Replit | REPL_ID or REPLIT_USER present |
| Hermes | HERMES_QUIET present |
| openclaw | OPENCLAW_STATE_DIR or OPENCLAW_CONFIG_PATH present |
| Pi | PI_CODING_AGENT present |
Only the existence (or in some cases the value) of these variables is checked — API keys and secrets that happen to share a prefix are never read.
What Is Collected
CLI feedback
| Field | Value |
|---|
$survey_id | render_satisfaction |
$survey_response | Rating (1–5) |
$survey_response_2 | Free-text comment (only when provided) |
render_duration_ms | Time the render took in milliseconds |
doctor_summary | System context (see below) |
The doctor_summary is a compact string with environment context — included automatically so you don’t need to run hyperframes doctor when reporting a problem:
os=darwin/arm64 node=v22.11.0 cpu=10cores mem=32GB ffmpeg=yes
It may also include wsl or sandbox runtime flags when those environments are detected.
Studio feedback
| Field | Value |
|---|
$survey_id | studio_experience |
$survey_response | Rating (1–5) |
$survey_response_2 | Free-text comment (only when provided) |
source | studio |
doctor_summary | Browser context (platform, screen, CPU cores, device memory, network type) |
What Is NOT Collected
- File paths or project names
- Composition content, HTML, or video files
- Environment variable values
- Personally identifiable information
- IP addresses or precise location
Feedback is anonymous. Each installation has a random UUID (anonymousId) — there is no account, login, or email association.
Config File
The CLI persists feedback state in ~/.hyperframes/config.json:
{
"telemetryEnabled": true,
"anonymousId": "a1b2c3d4-...",
"telemetryNoticeShown": true,
"commandCount": 47,
"renderSuccessCount": 14,
"lastFeedbackPromptAt": 1
}
| Field | Description |
|---|
renderSuccessCount | Total successful renders across all sessions |
lastFeedbackPromptAt | The renderSuccessCount value when the prompt last appeared — used to compute whether 15 renders have passed |
Studio stores the equivalent state in localStorage under the hyperframes-studio: prefix.
Opting Out
CLI — disable telemetry entirely
Disabling telemetry suppresses the CLI feedback prompt and all other CLI usage tracking:
# Via CLI command (persisted to ~/.hyperframes/config.json)
hyperframes telemetry disable
# Or via environment variable (per-session)
HYPERFRAMES_NO_TELEMETRY=1 hyperframes render --output out.mp4
# Or via DO_NOT_TRACK (respects the global standard)
DO_NOT_TRACK=1 hyperframes render --output out.mp4
Once disabled, the hyperframes feedback command will print Telemetry is disabled. Feedback not sent. and exit without sending anything.
CLI — suppress output without disabling telemetry
# Quiet mode: renders without any post-render output (including the feedback prompt)
hyperframes render --quiet --output out.mp4
CI environments
The CLI feedback prompt is automatically suppressed when the CI environment variable is set (GitHub Actions, CircleCI, etc. set this by default).
Studio
The Studio feedback bar is not affected by the CLI telemetry setting. To disable it at build time, set:
VITE_HYPERFRAMES_NO_FEEDBACK=1
When set to "1", the bar never shows — shouldShowFeedback() returns false unconditionally regardless of session count or localStorage state.
The session interval is still configurable independently:
VITE_HYPERFRAMES_FEEDBACK_INTERVAL=20