extend-vision-solution

extend-vision-solution is a skill for Claude Code from suharvest/sensecraft-solutions. It costs 119 tokens per session (5,241 once invoked), scanned C, original, Apache-2.0.

A workflow for extending an AI camera or vision application from one edge device to several platforms, such as Jetson, RK, reCamera, and Hailo. Edge platforms are small computers that process camera data locally.

In plain words
What is it for?
Use it to add device presets, share tracking and message logic across platforms, define MQTT data contracts, move models to new hardware, and run comparable measurements.
Why use it?
It helps keep the application’s shared behavior consistent and makes performance results comparable across devices. It also addresses platform-specific runtime and model-conversion issues.

Skill for Claude Code

Written for Claude Code: allowed-tools in frontmatter.

Good fit Use it to add device presets, share tracking and message logic across platforms, define MQTT data contracts, move models to new hardware, and run comparable measurements.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/suharvest/sensecraft-solutions/extend-vision-solution
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add suharvest/sensecraft-solutions --skill extend-vision-solution
Clone the repo
git clone --depth 1 https://github.com/suharvest/sensecraft-solutions

Made for: Claude Code.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for extend-vision-solution

README.md
[![agentmods](https://agentmods.dev/badge/skills/suharvest/sensecraft-solutions/extend-vision-solution/github.svg)](https://agentmods.dev/skills/suharvest/sensecraft-solutions/extend-vision-solution)
Your own site
<a href="https://agentmods.dev/skills/suharvest/sensecraft-solutions/extend-vision-solution"><img src="https://agentmods.dev/badge/skills/suharvest/sensecraft-solutions/extend-vision-solution/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for extend-vision-solution

Your own site · 80×15
<a href="https://agentmods.dev/skills/suharvest/sensecraft-solutions/extend-vision-solution"><img src="https://agentmods.dev/badge/skills/suharvest/sensecraft-solutions/extend-vision-solution.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 119 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 5,241 The whole file, excluding the scripts and references it only reads on demand.
Security scan C 1 finding. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00119 $0.05241
Opus 5 $0.00060 $0.02620
Sonnet 5 $0.00024 $0.01048
Haiku 4.5 $0.00012 $0.00524

Measured 9d ago against content hash 0868b1e18155, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-10, from the pricing page.

Security

Grade C, and why

extend-vision-solution scanned grade C with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 9d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Recursive force deletehighDestructive command

rm -rf with a variable or a broad path is one typo away from removing the wrong tree.

另一个常见浪费:`COPY /wheels` 后 `RUN pip install && rm -rf /wheels`——**删除只是新层标记
skills/extend-vision-solution/SKILL.md · 311 lines

How it starts

The opening of the file, as written. The whole thing — 311 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Extend Vision Solution

把一个已在某台设备上跑通的 AI 视觉方案,扩展到其他边缘平台,并给出能横着比的数据。

本 skill 只讲扩展与实测。方案契约(device YAML 字段、guide.md 语法、preset 规则)以 spec/CONTRACT.md 为准,创作流程见 /author-solution


为什么需要它

跨设备扩展最容易产出的不是"多支持了几个平台",而是一张看起来能比、实际不能比的表。 本 skill 的核心是测量纪律:先把口径钉死,再谈数字。

第二个高频问题是厂商运行时——每个 NPU 平台都有一套与内核耦合的用户态库,镜像里baked 一份就会和板子上的驱动对不上。第三个是没有实机验证就声明支持

还有一个更早、更贵的问题:按平台各写一份业务逻辑。等发现四份跟踪器行为不一致时, 改哪一份都不对。所以 Phase 0.5 排在测量之前——先把逻辑收敛成一份,再谈移植和比较。


Phase 0:先判断值不值得扩

回答三个问题再动手:

  1. 模型能过去吗? 目标平台需要什么格式(.rknn / .hef / TensorRT engine / .cvimodel), 转换工具链在哪、要不要标定集、是否需要 x86 授权 SDK。
  2. 后处理能过去吗? raw-head 解码、NMS、跟踪、时序模型这些是不是纯 CPU/numpy 的? 如果绑死在某个平台的算子上,扩展成本会翻倍。
  3. 时序/状态类模型要不要重训? 如果方案含时序判定(跌倒、行为识别),每个平台必须用 自己的姿态输出重新抽取轨迹并重新冻结权重,不能跨平台借用——不同前端的关键点分布不同。

任何一项答不上来,先做可行性验证,不要先写 preset。


Phase 0.5:先分层,再移植

扩到第二个平台之前先问:跟踪、状态机、指标聚合、消息发布,是不是各写了一份?

如果是,先把它们抽出来,再谈移植。否则每加一个平台就复制一份业务逻辑,四份实现会各自漂移, 同一个人在不同板子上被判成不同状态——这类 bug 极难查,因为每一份单看都是对的。

参考反面教材:某方案家族只共享了契约,跟踪器和发布层重复了四遍(958 行 / 257 行 / 两份 C++)。做完分层之后,同一功能在 Jetson 端的平台专属代码从 1281 行降到 77 行

切口按"什么真的随硬件变"来划

是否共享 理由
契约(schema + 校验器) 全共享 语言无关
业务逻辑(跟踪 / 状态机 / 窗口指标 / 发布) 按语言家族共享 只吃 box 和时间戳,不碰厂商 SDK
backend(推理热路径 + 帧源) 绝不共享 张量布局、前后处理、ABI 锁定的宿主库都不同
board 目录 绝不共享 只有 config 和模型,不放代码

backend 只实现两件事:一个帧源,和 detect(frame) -> [DetectionBox]。多一件都说明切错了。

判据:共享层里一旦出现 #ifdef PLATFORMif backend == "rknn",就是切口错了, 要把那段往下推到 backend。

一个语言不够时

C++ 和 Python 两份实现无法再合并(reCamera/Hailo 是 C++,Jetson/RK 是 Python)。 用一组行为 fixture 卡住:录一段检测框序列 + 期望的 track id / state 序列,两边跑同一组。 期望值要从权威实现的规则推导,不能从某一个 port 录制——那只是把 port 固化了, 发现不了它本身的偏差。

抽象什么时候算数

一个抽象只被一个平台用过不算抽象。 第二个平台接进来才是验证切口对不对的时刻, 所以第一个平台不要过度设计,第二个平台不要图快绕过共享层。


Phase 0.6:数据契约(多设备场景必读)

单设备时随便发什么都能work,接入第二台就开始出问题。四条硬规则:

① 批量发,不要逐检测发。 按"每个检测框一条消息"发,broker 的消息速率 = 人数 × 摄像头数 × 帧率。改成每周期一条批量消息(1 Hz 起步),速率只跟设备数走。

② 批次内要有一个有界的区分键。 同批次所有对象共享一个时间戳, 时序库按 (topic, timestamp) 存的话同帧多人会被覆盖成一行。 用批次内下标(slot),不要用 track_id——它随部署时长单调增长,标签基数会无限膨胀。

Read the full file on GitHub · 311 lines

Files

What ships with it

1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 9d ago First seen · 311 lines · 119 tokens per session scan C 0868b1e18155

Subscribe to this mod's changes

extend-vision-solution is a skill published in the GitHub repository suharvest/sensecraft-solutions (2 stars, last pushed yesterday), licensed Apache-2.0. It adds 119 tokens to every session and 5,241 once invoked, about $0.0006 per session on Opus 5. A static security scan graded it C with 1 finding (recursive force delete). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

spark-environment-setup

Set up a working ML training/inference environment on NVIDIA DGX Spark (GB10, aarch64, CUDA 13). Use when installing PyTorch/Unsloth/TRL/vLLM on DGX Spark, hitting libcudart or wheel-ABI errors on aarch64, or choosing between NGC containers and bare pip installs.

wshobson/agents · 76 tokens

spark-memory-thermal-ops

Manage unified memory and thermals during long-running ML jobs on NVIDIA DGX Spark. Use when planning memory headroom for a training run on GB10, when a job OOMs on unified memory, or when monitoring temperature and power during multi-hour training.

wshobson/agents · 59 tokens

spark-training-gotchas

Preflight and diagnose the ten known failure modes for ML training on NVIDIA DGX Spark. Use when a training run on DGX Spark fails to start, OOMs below the 128GB limit, slows down mid-run, or before any multi-hour training job on GB10.

wshobson/agents · 63 tokens

llama-cpp

Runs LLM inference on CPU, Apple Silicon, and consumer GPUs without NVIDIA hardware. Use for edge deployment, M1/M2/M3 Macs, AMD/Intel GPUs, or when CUDA is unavailable. Supports GGUF quantization (1.5-8 bit) for reduced memory and 4-10× speedup vs PyTorch on CPU.

davila7/claude-code-templates · 76 tokens

minicpm5-deploy-vllm-ascend

Deploy MiniCPM5-2B with vLLM on Huawei Ascend NPU using vLLM-Ascend. Use when the user mentions vLLM-Ascend, Ascend NPU, Huawei Ascend, CANN, torchnpu, davinci devices, or wants an OpenAI-compatible MiniCPM5 server on Ascend hardware.

OpenBMB/MiniCPM · 87 tokens

amc-run-video-calibration

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.

NVIDIA/skills · 57 tokens