agentic-os
AFaffaan-m/ECC278k4,046 new stars in the last 7 days
Use this skill to deploy the vss-behavior-analytics service standalone (entrypoint, config-source, optional calibration). Not for the full warehouse deploy.
Deploy the behavior-analytics service standalone with the user's chosen entrypoint, config, and calibration.
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/.
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/deployment/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).
curl and no /health to probe. Verify it through container logs and
the output topics.gpu_count: 0 in this skill's own evals), so GPU memory and
NIM rate-limits are not constraints here.numWorkersFor*
at 0 the runner logs FATAL - Error in app: No processors registered, closes its listeners and returns — the
process exits 0, so to anything watching exit codes it looks like a clean shutdown. Only the
log distinguishes it.No destination configured for '<key>'; output for it is disabled once per key and drops the rest, so a missing
topic looks like an empty stream rather than a failure.FATAL - Config file ... contains invalid JSON or
... has invalid structure. Cause: the mounted config is malformed or fails AppConfig validation.
Solution: fix the JSON / schema — the app calls exit(1), so compose's restart policy cycles it forever.Exited (0) and the log ends in
FATAL - Error in app: No processors registered in app .... Cause: every numWorkersFor* is 0 (the shipped
composite_config.json ships this way on purpose). Solution: set the worker count for the capabilities you
want. Note the exit code is 0, so a restart: on-failure policy will not cycle it — it just stays stopped.Restarting (N) and the log ends in a Kafka/Redis connection error. Cause: no
broker reachable. The client retries a bounded number of times, then the worker raises and the scheduler shuts the
whole app down. Solution: bring up the broker, or expect the restart loop until one exists.No destination configured warning) or the processor that writes it has 0 workers.
Solution: define the topic and set the worker count.Error reading calibration type from ...: defaulting to IMAGE. Cause: --calibration
was omitted or unreadable. Solution: this is not fatal — the app runs image-calibrated, which silently changes
coordinate semantics. Mount a calibration if you meant a cartesian or geo deployment.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.
This skill deploys one container. Hand off instead when the request is:
vss-build-vision-ai. Do not run both in parallel; it owns behavior-analytics as part of the profile.vss-deploy-detection-tracking-2d or -3d. This service analyses mdx-raw; it does not create it.vss-generate-video-calibration. This skill only mounts one.vss-query-analytics; alert workflows and verification verdicts are vss-manage-alerts.vss-setup-video-analytics-api. Behavior-analytics itself exposes no HTTP endpoint.$VSS_APPS_DIR pointing at <repo>/deploy/docker/. Required by the service compose's volume binds.ghcr.io/nvidia-ai-blueprints/vss/vss-behavior-analytics is public, so docker pull works unauthenticated. You only need credentials if you override VSS_CONTAINER_REGISTRY to NGC — see references/ngc-api-key-registry-login.md.docker --version and docker compose version.restart: always cycles the container. Status will show Restarting (N) in docker ps until a broker is reachable. With a broker, dynamic config / dynamic calibration over mdx-notification become available.If any required prerequisite fails, surface the gap before going further.
Hand the user references/deploy-behavior-analytics-service.md and walk them through its steps in order:
The compose-file edits, YAML diffs, deploy + verify commands, and troubleshooting table all live in that reference — don't duplicate them here.
Once the container is up and a broker is reachable, two runtime-update flows are available — neither requires redeploying:
Dynamic config — patch app[] / sensors[] at runtime by publishing to mdx-notification under Kafka key
behavior-analytics-config. Only allowlisted keys apply; everything else is rejected in the ack rather than
silently ignored. Successful upserts are persisted to disk, applied to every worker, and ACK'd back.
Message shape, headers, ack semantics and the allowlist: references/dynamic-config.md.
Dynamic calibration — replace sensors / ROIs / tripwires / homographies at runtime under Kafka key
calibration on the same topic. Payloads are schema-validated before anything is persisted, and a violation is
dropped with a calibration schema violation warning, leaving the previously-good calibration loaded.
Message shape, per-action validation policy and the no-ack caveat:
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.
vss-build-vision-ai with profile warehouse (or alerts). Don't run this skill in parallel.references/integrate-behavior-analytics-service.md.references/configuration.md, references/dynamic-config.md, or references/dynamic-calibration.md before editing the JSON.AFaffaan-m/ECC278k4,046 new stars in the last 7 days
GAgarrytan/gstack136k883 new stars in the last 7 days
ADaddyosmani/agent-skills106k3,628 new stars in the last 7 days
NEnexu-io/open-design101k1,126 new stars in the last 7 days
NEnexu-io/open-design101k1,126 new stars in the last 7 days
THthedotmack/claude-mem100k3,024 new stars in the last 7 days