agent-visual-feedback
Use when the NPA agent should describe or critique the current viewer (Rerun, video, image, or data) via the Describe this control or multimodal chat.
Skill by nebius
Chalk Labs
Need help deploying agent-visual-feedback?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/nebius-agent-visual-feedback
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: data, agent-building
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/agent-visual-feedback
What's inside
- Skill name
agent-visual-feedback- Description
- Use when the NPA agent should describe or critique the current viewer (Rerun, video, image, or data) via the Describe this control or multimodal chat.
- License
- Apache-2.0
- Instructions
- 87 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# Agent Visual Feedback (Describe this)
Use this skill when the operator wants the agent to **look at the current
viewer** and give actionable feedback — not a generic caption.
## When To Use
- UI **Describe this** button (stays on the Rerun/viewer tab; chat opens as a drawer)
- Chat turns containing `[npa-visual-feedback]` or “describe this viewer/visual”
- Interpreting held-out Rerun frames, Isaac/GR00T-style sim views, rollout video, images, or Data-pane JSON
- For Sim2Real recordings, inspect `summary/stage_progress` and
`summary/policy_access` alongside `rollouts/outer_*/iter_*`: camera and action
entities share the same frame timeline; policy access is a link/download
action and must never be described as policy execution inside Rerun.
- Metadata-only feedback when a frame cannot be captured
## Model
1. Prefer a **quality-captured frame** (vision tier → `MiniMaxAI/MiniMax-M3`).
2. Wait for a non-blank canvas (skip uniform black/white/**mid-gray**; dense RGB, skeletons on dark grids, and meshes are valid). Cleared WebGL buffers often look mid-gray — never attach those. Blank detection must keep enough resolution to see **sparse** orange/cyan skeleton strokes (do not 80px-downscale them away).
3. Rerun capture must use the **MediaStream bridge** (`canvas.captureStream` → `<video>` → JPEG). Do **not** gate capture on sync `drawImage` blank checks — those false-negative on live WebGL/WebGPU.
4. If capture fails, send **metadata/text** and use the reasoning tier — never pretend pixels were seen.
5. Do **not** answer Describe-this from the grounded intent router.
6. Open the chat drawer and show **Describe this — capturing…** immediately; do not wait for capture before the user bubble appears.
## Visual kinds (generalized — no URI allowlists)
| Kind | Source | What to emphasize |
|------|--------|-------------------|
| `rerun` | Largest same-origin Rerun canvas after quality wait | Sim RGB, depth/seg, 3D mesh, tiled envs, policy strips — **not** “blank” by default |
| `video` | `<video>` current frame | Task progress, success/failure cues |
| `image` | Preview `<img>` | Scene contents, defects |
| `data` | `<pre>` / text excerpt | Report fields, success_rate, missing keys |
Domain hints are inferred from free-text metadata tokens (`artifact_key`, notes,
workflow name) such as isaac / gr00t / heldout / genesis / cosmos — never from a
hardcoded path allowlist.
## UX
- On the Viewer tab (Rerun/Video/Image/Data), chat is a **bottom-right collapsible widget** (`viewer-focus` + FAB).
- Clicking the **Chat** main tab from Viewer opens the widget (stays on the media pane); **Full chat** expands to the Chat tab.
- **Describe this** captures in-place, opens the widget, and queues the vision turn.
- Chat sends are **queued** (`enqueueChatJob`) so Describe + typed messages do not drop.
- Frame captures are JPEG-capped (`maxChars`) and nginx allows `client_max_body_size 32m` so multimodal POSTs do not 413 / `Failed to fetch`.
- Do **not** prefetch `.rrd` bodies (many runs). Soft-swap uses `add_receiver` only; warm wasm/js separately.
## Agent API flow
```http
POST /api/chat
{
"session_id": "default",
"visual_context": {
"kind": "rerun",
"run_id": "demo-workbench-ui",
"artifact_key": "…/reports/sim2real.rrd",
"frame_quality": "rendered",
"capture": "frame"
},
"messages": [
{
"role": "user",
"content": [
{"type": "text", "text": "[npa-visual-feedback] Describe this rerun viewer…"},
{"type": "image_url", "image_url": {"url": "data:image/jpeg;base64,..."}}
]
}
]
}
```
## Reply shape (required)
1. **What I see**
2. **Likely meaning**
3. **Operator feedback**
4. **Next actions**
## Implementation pointers
- Helpers: `npa/src/npa/cli/agent_visual_feedback.py`
- UI: `describeVisual`, `waitForQualityRerunFrame`, `queueChatText`, viewer drawer
- Contracts: `AGENT_VISUAL_FEEDBACK_CONTRACT`, `AGENT_CHAT_QUEUE_CONTRACT`,
`AGENT_VIEWER_CHAT_DRAWER_CONTRACT`From nebius/nebius-physical-ai, Apache-2.0.
More from nebius/nebius-physical-ai
- 0.666score
curobo
nebius
Use when running, validating or reviewing NVIDIA cuRobo V2 Franka pose planning and complete MotionBenchMaker/MPiNets benchmarks on CUDA, with factual…
SkillAFreshness: A★ 60Claude Code +9 - 0.666score
gpu-first-guidance
nebius
Use when recommending how to run a workbench workload, writing user-facing docs, or answering "what should I run first?" — lead with the Nebius GPU path and…
SkillAFreshness: A★ 60Claude Code +9 - 0.666score
cosmos
nebius
Use when working on Cosmos world model serving, inference, serverless training smoke validation, backend selection, or rendering limitations.
SkillAFreshness: A★ 60Claude Code +9 - 0.666score
embodiedgen
nebius
Use when running or reviewing the operator-private EmbodiedGen V2 image-to-rigid-object workflow with upstream TRELLIS generation, URDF export, collision…
SkillAFreshness: A★ 60Claude Code +9 - 0.666score
gpu-selection
nebius
Use when choosing or reviewing GPU targets for NPA workbench tools, training, rendering, inference, or workflow YAML resources.
SkillAFreshness: A★ 60Claude Code +9 - 0.666score
toolref-argv-contract
nebius
Use when adding or changing an npa.workflow toolRef argv template, or when changing a CLI option that a toolRef already passes — the contract that stops a…
SkillAFreshness: A★ 60Claude Code +9 - 0.666score
debug-failed-run
nebius
Use when a workflow run failed, hung, or produced no artifacts — an ordered triage from run id to root cause across status, stage logs, S3 evidence, pod-level…
SkillAFreshness: A★ 60Claude Code +9 - 0.666score
agent-development
nebius
Use when building, enhancing, or testing the NPA chat agent backend — grounded-first routing, cost-aware Token Factory model selection, the embedded-backend…
SkillAFreshness: A★ 60Claude Code +9 - 0.666score
gpu-allocation-fallback
nebius
Track typed GPU placement failures in the NPA agent and offer a consent-gated on-demand-to-preemptible fallback after repeated failures or deterministic…
SkillAFreshness: A★ 60Claude Code +9 - 0.665score
submit-workflow
nebius
Use when submitting, validating, or debugging NPA SkyPilot workflow YAMLs and workflow runner paths.
SkillAFreshness: A★ 60Claude Code +9 - 0.663score
cosmos-data-factory-setup
nebius
Prepare the shared NPA runtime, storage, credentials, and private compatibility images for Cosmos Data Factory IAA or EVG workflows on Nebius and SkyPilot.
SkillAFreshness: A★ 60Claude Code +9 - 0.663score
physical-ai-image-attribute-augmentation
nebius
Author, run, or inspect the NPA Cosmos Data Factory IAA workflow for person-image clothing, color, and footwear augmentation with attribute verification and…
SkillAFreshness: A★ 60Claude Code +9
Signals
- Stars
- 60
- Forks
- 19
- Open issues
- 10
- Last commit (this folder)
- Sep 6, 2026 (1 month ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- Apache-2.0
- Repository
- github.com/nebius/nebius-physical-ai
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from nebius
- 0.666score
gpu-allocation-fallback
nebius
Track typed GPU placement failures in the NPA agent and offer a consent-gated on-demand-to-preemptible fallback after repeated failures or deterministic…
SkillAFreshness: A★ 60Claude Code +9 - 0.666score
toolref-argv-contract
nebius
Use when adding or changing an npa.workflow toolRef argv template, or when changing a CLI option that a toolRef already passes — the contract that stops a…
SkillAFreshness: A★ 60Claude Code +9 - 0.666score
agent-development
nebius
Use when building, enhancing, or testing the NPA chat agent backend — grounded-first routing, cost-aware Token Factory model selection, the embedded-backend…
SkillAFreshness: A★ 60Claude Code +9 - 0.666score
debug-failed-run
nebius
Use when a workflow run failed, hung, or produced no artifacts — an ordered triage from run id to root cause across status, stage logs, S3 evidence, pod-level…
SkillAFreshness: A★ 60Claude Code +9 - 0.666score
gpu-first-guidance
nebius
Use when recommending how to run a workbench workload, writing user-facing docs, or answering "what should I run first?" — lead with the Nebius GPU path and…
SkillAFreshness: A★ 60Claude Code +9 - 0.666score
cosmos
nebius
Use when working on Cosmos world model serving, inference, serverless training smoke validation, backend selection, or rendering limitations.
SkillAFreshness: A★ 60Claude Code +9
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get agent-visual-feedback running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
agent-visual-feedback skill. Agent Mart. https://agentmart.dev/skills/nebius-agent-visual-feedback (last updated 2026-10-24)