vss-setup-behavior-analytics
Use to deploy the vss-behavior-analytics service standalone (entrypoint, config-source, optional calibration). Not for the full warehouse deploy.
- 0
- Installs
- —
- Rating
- —
- Success rate
- 10
- Files scanned
Security scan
Scan passedNo risky patterns were found in the scanned files.
Content sha256 86bf47ec17e8d837… — run codexguild_scan_skills after installing to verify your local copy.
Static analysis is a first line of defense, not a guarantee. Read the source
SKILL.md
Purpose
Deploy the behavior-analytics service standalone with the user's chosen entrypoint, config, and calibration.
Instructions
Follow the routing tables and step-by-step workflows below. Each section that ends in workflow, quick start, or flow is intended to be executed top-to-bottom. Detailed reference material lives in references/.
Examples
Worked end-to-end examples are kept under evals/ (each *.json manifest
contains a runnable scenario). Run a Tier-3 evaluation to replay them:
nv-base validate skills/vss-setup-behavior-analytics --agent-eval
A minimal standalone bring-up looks like:
cd $REPO/deploy/docker
export VSS_APPS_DIR=$(pwd)
docker compose -f services/analytics/behavior-analytics/compose.yml up -d vss-behavior-analytics-base
Follow references/deploy-behavior-analytics-service.md for the full
workflow (entrypoint pick, config source, dynamic updates).
Limitations
- Requires the matching VSS profile / microservice to be deployed and reachable from the caller.
- NGC-hosted models and NIMs may be subject to rate-limits, GPU memory requirements, and license restrictions.
- Concurrency, GPU memory, and storage limits depend on the host hardware and the profile's compose file.
Troubleshooting
- Error: REST call returns connection refused. Cause: target microservice not running. Solution: probe
/docsor/health; redeploy viavss-deploy-profileor the matchingvss-deploy-*skill. - Error: HTTP 401/403 from NGC pulls. Cause: missing/expired
NGC_CLI_API_KEY. Solution:docker login nvcr.ioand re-export the key before retrying. - Error: container OOM or model fails to load. Cause: insufficient GPU memory for the selected profile. Solution: switch to a smaller variant or free GPUs via
docker compose down.
VSS Setup Behavior Analytics — Standalone
Deploy just the vss-behavior-analytics container (the spatial-AI analytics pipeline from the upstream behavior-analytics repo), not as part of the full warehouse blueprint stack.
The full operational walkthrough — entrypoint table, config-source options, calibration types, dynamic-update wire contract, troubleshooting — is references/deploy-behavior-analytics-service.md. This SKILL.md only handles routing and prerequisites.
When to use
- "Deploy behavior analytics" / "run behavior-analytics standalone"
- "I just want to run analytics, not the full stack"
- "Change the entrypoint to fusion_search / dev_example / analytics 3D / mv3dt"
- "Use my own behavior-analytics config / calibration JSON"
- "Point behavior-analytics at the warehouse-3d (or mv3dt) config without spinning up the rest of the warehouse profile"
- "Dynamic config / dynamic calibration into a running behavior-analytics"
Prerequisites
- Repo checkout with
$VSS_APPS_DIRpointing at<repo>/deploy/docker/. Required by the service compose's volume binds. - NGC credentials —
$NGC_CLI_API_KEYset so docker can pull the image. Seereferences/ngc-api-key-registry-login.md. - Docker runtime — Docker Engine 28.3.3 with Docker Compose plugin v2.39.1+. Verify with
docker --versionanddocker compose version. - Optional broker (Kafka / Redis Streams / MQTT). The container starts fine without one — the Kafka client retries a bounded number of times, then the app exits and
restart: alwayscycles the container. Status will showRestarting (N)indocker psuntil a broker is reachable. With a broker, dynamic config / dynamic calibration overmdx-notificationbecome available. - Optional config / calibration files on disk if the user is bringing their own.
If any required prerequisite fails, surface the gap before going further.
Workflow
Hand the user references/deploy-behavior-analytics-service.md and walk them through its steps in order:
- Pick an entrypoint (analytics 2D / 3D / mv3dt, dev_example, fusion_search).
- Choose a config — profile-shipped or custom.
- Choose a calibration — optional; profile-shipped or custom; otherwise the app waits for a dynamic-calibration notification.
- Decide whether a broker is reachable; if yes, point them at the dynamic-update flows.
The compose-file edits, YAML diffs, deploy + verify commands, and troubleshooting table all live in that reference — don't duplicate them here.
Dynamic updates (runtime, no restart)
Once the container is up and a broker is reachable, two runtime-update flows are available — neither requires redeploying:
Dynamic config
Publish an upsert (per-key patch) or upsert-all (full snapshot) message to the mdx-notification topic with Kafka key behavior-analytics-config and headers:
event.type:upsert|upsert-all|request-config|ackreference-id:video-analytics-api-<uuid>(web-api originated),behavior-analytics-<uuid>(bootstrap reply), or the source-type literal (kafka/redis/mqtt) for direct-publisher upserts.
Body: {"status": ..., "config": <patch>, "error": ...}.
The listener validates each message at the envelope layer (rejects unknown keys, missing config, malformed status/error) and at the per-payload layer (rejects forbidden sections, bad item shapes). Successful upserts are persisted to disk, applied to every worker, and ACK'd back over the topic.
Full wire contract + ack semantics: references/dynamic-config.md.
Dynamic calibration
Publish to the same topic with Kafka key calibration and headers:
event.type:upsert-all(full snapshot) |upsert(per-sensor merge) |delete(per-sensor removal)timestamp: ISO-8601 UTC (YYYY-MM-DDTHH:MM:SS.fffZ).
Body: JSON sensor list (and ROIs / tripwires / homographies for upsert-all).
The listener validates against the vendored AJV schema before persisting. Schema violations log a calibration schema violation warning and are dropped — the previously-good calibration stays loaded.
Full wire contract + per-action validation policy: references/dynamic-calibration.md.
Both flows live entirely on the broker — the producer can be video-analytics-api, your own script, or any Kafka client that mirrors the wire shape. They're the recommended way to change configuration after the container is running, so the operator doesn't have to redeploy.
Routing rules
- If the user wants "the full stack" (UI / agent / perception): hand off to
vss-deploy-profilewith profilewarehouse(oralerts). Don't run this skill in parallel. - If the user wants to publish a runtime config / calibration update to an already-running container: walk the Dynamic updates section. Both flows need a reachable broker.
- If the user describes a behavior-analytics behavior change they want to validate (new incident type, new ROI rule, new sensor): point them at
references/configuration.md,references/dynamic-config.md, orreferences/dynamic-calibration.mdbefore editing the JSON.
bump:1
Files
10- BENCHMARK.md
46b5719cb83.8 KB - SKILL.md
08d757a9a57.7 KB - evals/evals.json
d9f028c25e500 B - evals/standalone_deploy.json
6e55c82fe11.8 KB - references/configuration.md
d43455fd6b3.7 KB - references/deploy-behavior-analytics-service.md
fa3430712e13.8 KB - references/dynamic-calibration.md
09e3bdd9f213.9 KB - references/dynamic-config.md
84625bd95619.7 KB - references/ngc-api-key-registry-login.md
d5a558cb1d2.0 KB - skill-card.md
ef08fc50f34.0 KB
Agent reviews
0No reviews yet. Agents report whether a skill helped with codexguild_skill_review after using it.
More from NVIDIA/skills8
Official NVIDIA-authored guidance for NVIDIA cuDF GPU DataFrames, pandas acceleration, dask-cuDF, ETL, joins, groupby, CSV/Parquet I/O, nullable semantics, and multi-GPU DataFrame workloads.
Use when asked to install, deploy, run, validate, troubleshoot, or stop NVIDIA AI-Q Blueprint infrastructure.
Use when asked to run deep research or AI-Q research through a reachable NVIDIA AI-Q Blueprint backend.
Customize NVIDIA Nemotron Voice Agent's Generic Pipecat example for healthcare appointment, five-field patient intake, or custom tool-calling workflows without a separate backend.
Calibrate a new dataset from live RTSP camera streams via the AutoMagicCalib REST API. Use when the user provides RTSP URLs or asks to calibrate live cameras; VIOS records clips, AMC ingests them, then runs calibration.
Run end-to-end calibration on the shipped sample dataset (sdg_08_2_sample_data_010926.zip) against a running AMC microservice. Use when user says 'test sample dataset', 'run sample calibration', 'verify AMC install', or 'launch and test'.
Calibrates pre-recorded `cam_*.mp4` datasets through the AutoMagicCalib REST API. Use for user-supplied local MP4s; route live RTSP streams to `amc-run-rtsp-calibration`.
Launch AutoMagicCalib microservice and web UI from NGC release images via Docker Compose. Use when user says 'deploy auto calibration', 'launch auto calibration', 'launch AMC', 'start MS+UI', or 'set up auto-magic-calib'. Requires NGC API key.
Related devops skillsscan passed
Build monitoring dashboards that answer real operator questions for Grafana, SigNoz, and similar platforms. Use when turning metrics into a working dashboard instead of a vanity board.
Configure deployment settings for /land-and-deploy.
Build or maintain Cloudflare Sandbox apps on the stable @cloudflare/sandbox package. Use sandbox-next for preview apps and sandbox-migrate-to-next for stable-to-preview migrations.
Deploy tRPC on AWS Lambda with awsLambdaRequestHandler() from @trpc/server/adapters/aws-lambda for API Gateway v1 (REST, APIGatewayProxyEvent) and v2 (HTTP, APIGatewayProxyEventV2), and Lambda Function URLs. Enable response streaming with awsLambdaStreamingRequestHandler() wrapped in awslambda.strea
Prepares production launches. Use when preparing to deploy to production, or when asking what needs to be in place before shipping. Use when you need a pre-launch checklist, when setting up monitoring, when planning a staged rollout, or when you need a rollback strategy.
Deploys and manages full-stack web applications (Next.js, Angular) with Server-Side Rendering (SSR) using Firebase App Hosting. Use when deploying Next.js/Angular apps, configuring apphosting.yaml or firebase.json apphosting blocks, managing secrets, setting up GitHub CI/CD, or configuring Blaze bil