Paddle Build
PaddlePaddle/Paddle
A skill your agent uses when needing to compile, rebuild, or install Paddle from source after code changes.
以 AddressSanitizer(ENABLETESTSANITIZE=ON)构建并运行 vlink-test 单元测试,复现 CI 的 ASan 门禁。用户要求"跑 asan"、"内存检测测试"、 排查 ci-test 的 sanitize 失败时使用。
$ npx skills add thun-res/vlink --skill asan -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install thun-res/vlink asan --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/thun-res/vlink.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/asan .claude/skills/asan && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "asan" agent skill from https://github.com/thun-res/vlink/tree/master/.agents/skills/asan into .claude/skills/asan/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "asan", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/thun-res/vlink/tree/master/.agents/skills/asanType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add thun-res/vlink --skill asan -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install thun-res/vlink asan --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/thun-res/vlink.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/asan .agents/skills/asan && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "asan" agent skill from https://github.com/thun-res/vlink/tree/master/.agents/skills/asan into .agents/skills/asan/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "asan", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add thun-res/vlink --skill asan -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install thun-res/vlink asan --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/thun-res/vlink.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/asan .cursor/skills/asan && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "asan" agent skill from https://github.com/thun-res/vlink/tree/master/.agents/skills/asan into .cursor/skills/asan/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "asan", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/thun-res/vlink.git --path .agents/skills/asan--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add thun-res/vlink --skill asan -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install thun-res/vlink asan --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/thun-res/vlink.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/asan .gemini/skills/asan && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "asan" agent skill from https://github.com/thun-res/vlink/tree/master/.agents/skills/asan into .gemini/skills/asan/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "asan", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install thun-res/vlink asanInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add thun-res/vlink --skill asan -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/thun-res/vlink.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/asan .github/skills/asan && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "asan" agent skill from https://github.com/thun-res/vlink/tree/master/.agents/skills/asan into .github/skills/asan/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "asan", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add thun-res/vlink --skill asan -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install thun-res/vlink asan --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/thun-res/vlink.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/asan .opencode/skills/asan && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "asan" agent skill from https://github.com/thun-res/vlink/tree/master/.agents/skills/asan into .opencode/skills/asan/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "asan", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
asan以 AddressSanitizer(ENABLETESTSANITIZE=ON)构建并运行 vlink-test 单元测试,复现 CI 的 ASan 门禁。用户要求"跑 asan"、"内存检测测试"、 排查 ci-test 的 sanitize 失败时使用。
Asan is an agent skill from thun-res/vlink. 以 AddressSanitizer(ENABLETESTSANITIZE=ON)构建并运行 vlink-test 单元测试,复现 CI 的 ASan 门禁。用户要求"跑 asan"、"内存检测测试"、 排查 ci-test 的 sanitize 失败时使用。
Its SKILL.md is about 680 tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files (for example `agents/openai.yaml`).
It works with C++. The repository describes itself as: VLink is a high-performance C++ communication middleware for autonomous driving and embodied intelligence, positioned as a full-scenario alternative to ROS 2. The licence is Apache-2.0.
2 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 1793889. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
cmakegitbashFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use git, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Asan loads about 683 tokens when it runs. Until then it costs about 34 tokens; SKILL.md has 97 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from thun-res/vlink at commit 1793889, republished under its Apache-2.0 licence (© thun-res). 97 words, ~683 tokens.
.claude/skills/asan/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.ENABLE_TEST_SANITIZE=ON 时,根 CMakeLists.txt 对 vlink 库目标调用
vlink_test_sanitize()(cmake/functions/common.cmake:45),追加
-fsanitize=address 编译与链接选项;随后构建并运行 vlink-test 触发
被测库代码。支持 Windows/QNX 之外的 GCC/Clang 目标;不满足条件时会
告警跳过。CI 中只有 Linux job 开启此项
(.github/workflows/ci-test.yml)。
先从仓库任意子目录解析根目录:
REPO_ROOT="$(git rev-parse --show-toplevel)"
BUILD_DIR_REL=build-ai/skill_asan
BUILD_DIR="$REPO_ROOT/$BUILD_DIR_REL"
export PYTHONPYCACHEPREFIX="$BUILD_DIR/__pycache__"
PHYSICAL_CORES=
case "$(uname -s 2>/dev/null)" in
Linux)
PHYSICAL_CORES="$(
LC_ALL=C lscpu -p=CORE,SOCKET 2>/dev/null |
awk -F, '
$1 !~ /^#/ && $1 ~ /^[0-9]+$/ && $2 ~ /^[0-9]+$/ {
cores[$2 SUBSEP $1] = 1
}
END {
for (core in cores) {
count++
}
if (count > 0) {
print count
}
}'
)" || PHYSICAL_CORES=
;;
Darwin)
PHYSICAL_CORES="$(sysctl -n hw.physicalcpu 2>/dev/null)" || PHYSICAL_CORES=
;;
esac
case "$PHYSICAL_CORES" in
'' | *[!0-9]* | 0) PHYSICAL_CORES=1 ;;
esac
if [ "$PHYSICAL_CORES" -gt 1 ]; then
BUILD_JOBS=$((PHYSICAL_CORES - 1))
else
BUILD_JOBS=1
fi配置(AI 专用构建目录):
cmake -S "$REPO_ROOT" -B "$BUILD_DIR" \
-DCMAKE_BUILD_TYPE=Release \
-DENABLE_CXX_STD_20=OFF \
-DENABLE_TEST=ON \
-DENABLE_TEST_WARN=ON \
-DENABLE_TEST_SANITIZE=ON \
-DENABLE_TEST_COVERAGE=OFF \
-DENABLE_PROXY=ON \
-DENABLE_EXAMPLES=OFF配置前确认 Fast DDS 或 Cyclone DDS 可被 CMake 找到。CMake 将
ENABLE_PROXY 改回 OFF 或未生成 vlink-proxy target 均为配置
失败,不得继续测试。
构建:
cmake --build "$BUILD_DIR" --target vlink-test vlink-proxy --parallel "$BUILD_JOBS"运行测试。复用 CI 脚本,确保先启动测试依赖的 vlink-proxy,并沿用
CI 的超时、并行度和排除规则:
export ASAN_OPTIONS=detect_odr_violation=0
cd "$REPO_ROOT"
BUILD_DIR="$BUILD_DIR_REL" bash .github/scripts/run-posix-ci-tests.shdetect_odr_violation=0 是 CI 既有约定(共享库场景误报),不要再额外
放宽 ASAN_OPTIONS。BUILD_JOBS 必须严格等于 max(真实物理核心数 - 1, 1)。禁止改用
逻辑 CPU 数、裸 --parallel/-j 或固定高并行度;无法可靠获取物理
核心数时固定单核,且同一时刻只运行一个本地构建,防止编译卡死或耗尽
内存。BUILD_DIR_REL 为 build-ai/skill_asan;正被其他任务使用时先改为
build-ai/skill_asan_<task_name>,再派生 BUILD_DIR,不得共用或清理
其他构建目录。AGENTS.md 强制规则第 3 条(不主动构建)。© thun-res, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 1 other file in .agents/skills/asan of thun-res/vlink.
Open the folder on GitHubat commit 1793889
Asan next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Asan this skillthun-res/vlink | 116 | — | ~683 | Automated safety check: Pass | Apache-2.0 | |
| Paddle BuildPaddlePaddle/Paddle | 24k | — | ~1k | Automated safety check: Pass | Apache-2.0 | |
| Fory Releaseapache/fory | 4.6k | — | ~2.9k | Automated safety check: Pass | Apache-2.0 | |
| ONNX Runtime Shape Inference Safety Auditmicrosoft/onnxruntime | 22k | — | ~3.3k | Automated safety check: Pass | MIT | |
| Code Audit3stoneBrother/code-audit | 892 | 1 repos | ~2.7k | Automated safety check: Pass | None | |
| Qt C++ Code Reviewx-tools-author/x-tools | 1.1k | 2 repos | ~4.3k | Automated safety check: Pass | BSD-3-Clause |
PaddlePaddle/Paddle
A skill your agent uses when needing to compile, rebuild, or install Paddle from source after code changes.
apache/fory
Prepare an Apache Fory release candidate from a clean release branch, including the version bump, RC tag, JVM staging, ASF source artifacts, SVN upload, and vote email.
microsoft/onnxruntime
Finds and fixes out-of-range output writes in ONNX Runtime operator shape-inference functions where a getNumOutputs guard admits too few outputs.
3stoneBrother/code-audit
Professional code security audit skill covering 55+ vulnerability types.
x-tools-author/x-tools
Read-only review of Qt6 C++ code that combines a deterministic lint script with six parallel analysis agents and reports only high-confidence issues.
doxygen/doxygen
Keeps all Doxygen and Doxywizard translations up to date across three mechanisms: translator C++ classes (src/translatorxx.h), Qt .ts locale files for the Doxywizard GUI (addon/doxywizard/i18n/)…
thun-res/vlink
调查 VLink 中可复现的缺陷、文档遗漏或功能建议,搜索 open/closed Issue 去重,按仓库模板用自然、具体、证据充分的简体中文草拟或创建 Issue, 可读取既有 Issue 上下文后草拟或发布单条回复.用户要求"提 issue"、 "创建 issue"、"检查是否已有 issue"、"回复 issue"、"评论 issue"、 "帮我回应…
thun-res/vlink
构建并运行 vlink-bench 性能基准(showcase/quick/full 预设),生成 HTML/JSON 报告。用户要求"跑 bench"、"性能测试"、对比后端吞吐/延迟、 验证性能回归时使用。
thun-res/vlink
用 gh CLI 触发/查看 GitHub CI/CD:手动 dispatch 工作流 (release/coverage/docker)、查看运行状态与失败日志、重跑失败 job.
thun-res/vlink
对指定文件或全仓库运行 clang-tidy(WarningsAsErrors='')。用户要求 "跑 clang-tidy"、"tidy 检查某文件"、排查 CI tidy 门禁失败时使用。
thun-res/vlink
提交前强制执行 VLink 的 format 与 check skill,再分析当前工作树的全部 staged、unstaged 与 untracked 改动,按模块、功能和依赖关系拆分为可独立 评审的 Conventional Commits,生成简洁且覆盖重要行为的英文 commit message 并逐组提交。用户要求“提交当前改动”、“按功能拆 commit”、 “自动写 commit…
thun-res/vlink
以 ENABLETESTCOVERAGE=ON 构建、运行测试并生成 lcov 代码覆盖率报告, 复现 CI 的 coverage 流水线。用户要求"跑覆盖率"、"生成 coverage 报告"、查某模块覆盖情况时使用。
Works with
以 AddressSanitizer(ENABLETESTSANITIZE=ON)构建并运行 vlink-test 单元测试,复现 CI 的 ASan 门禁。用户要求"跑 asan"、"内存检测测试"、 排查 ci-test 的 sanitize 失败时使用。. Asan is an agent skill from thun-res/vlink.
Run `npx skills add thun-res/vlink --skill asan -a claude-code`. Or copy the skill folder (.agents/skills/asan in thun-res/vlink) into .claude/skills/asan in your project. Claude Code loads it when a task matches its description.
Run `npx skills add thun-res/vlink --skill asan -a codex`. Or copy the skill folder (.agents/skills/asan in thun-res/vlink) into .agents/skills/asan in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add thun-res/vlink --skill asan -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/asan, .gemini/skills/asan, .github/skills/asan and .opencode/skills/asan in your project.
Going by SKILL.md and its folder, Asan needs the command-line tools its instructions call (cmake, git and bash).
SKILL.md contains no URLs. Its commands use git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Asan is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 683 tokens (SKILL.md is roughly 2.7k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Asan: Paddle Build (PaddlePaddle/Paddle, 24k stars), Fory Release (apache/fory, 4.6k stars), ONNX Runtime Shape Inference Safety Audit (microsoft/onnxruntime, 22k stars) and Code Audit (3stoneBrother/code-audit, 892 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
thun-res (a GitHub user) maintains it in thun-res/vlink, which has 116 GitHub stars. The repository holds 16 skills in this directory. The repository was last updated on October 9, 2026.
Source: thun-res/vlink on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.