Install
$ agentstack add skill-sumitaich1998-jarvisvr-describe-surroundings ✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
About
Describe Surroundings
Give a concise, useful overview of what Jarvis currently sees and pin labels on the most relevant few objects (the backend caps annotations at ~3 so the view stays readable).
Steps
- Ensure a fresh frame. If vision is active the buffer already has one; for a
cold start request perception.request{stream:"vision", action:"once", reason:"user asked to describe the room"}.
- Call
describe_view. Returnsdata.speech,data.objects(top labels),
and an observation{text, annotations} plus up to three vision_annotation directives. It also records what it saw to episodic memory (so locate-remembered-object can recall it later).
- Narrate the scene with
agent.observation; render the labels. - Optionally open
show_vision_feed("show me what you see") so the user can
confirm the camera view with detection overlays.
Output
agent.observation with spatial annotations:
{ "text": "I can see a coffee mug, a laptop, and a notebook on your desk.",
"final": true,
"annotations": [
{ "label": "coffee mug", "position": [0.3,0.8,0.7], "anchor": "world" },
{ "label": "laptop", "position": [0.0,0.78,0.65], "anchor": "world" },
{ "label": "notebook", "position": [-0.25,0.79,0.7], "anchor": "world" }
] }
Each annotation is realized as a vision_annotation holo.spawn (annotate_object). Optional feed (show_vision_feed → vision_feed):
{ "widget_type": "vision_feed",
"props": { "title": "What Jarvis sees", "source": "rgb_center", "show_detections": true, "fps": 2.0 } }
Edge cases
- Empty / featureless view → "It's pretty bare from here — I mostly see a wall
and the floor."
- Too cluttered → describe categories ("a desk covered in cables and a few
mugs") rather than enumerating everything; cap labels at ~3.
- Specific subset asked ("just the desk") → describe only objects near the
named surface from client.scene.surfaces.
- Single object focus → use
identify-objectinstead. - Privacy/battery → stop a
oncestream when finished; honorperception.state
thermal/battery hints by lowering fps.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: sumitaich1998
- Source: sumitaich1998/jarvisvr
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet — be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.