Getting it into your agent
It runs from inside its repository, so the clone comes first — what it calls does not travel with the file alone.
git clone --depth 1 https://github.com/zhuanggenhua/BoardGamenpx agentmods add skills/zhuanggenhua/boardgame/deploy-after-ciWrote 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.
[](https://agentmods.dev/skills/zhuanggenhua/boardgame/deploy-after-ci)<a href="https://agentmods.dev/skills/zhuanggenhua/boardgame/deploy-after-ci"><img src="https://agentmods.dev/badge/skills/zhuanggenhua/boardgame/deploy-after-ci/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.
<a href="https://agentmods.dev/skills/zhuanggenhua/boardgame/deploy-after-ci"><img src="https://agentmods.dev/badge/skills/zhuanggenhua/boardgame/deploy-after-ci.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
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.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00052 | $0.01542 |
| Opus 5 | $0.00026 | $0.00771 |
| Sonnet 5 | $0.00010 | $0.00308 |
| Haiku 4.5 | $0.00005 | $0.00154 |
Grade A, and why
deploy-after-ci scanned grade A with 0 findings 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 6d 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.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 110 lines — stays where its author put it; the contents beside it link to each section on GitHub.
BoardGame CI 后部署
目标
把生产更新固定成两条命令路径,避免每次重新展开部署文档、手工拼 GitHub CLI、SSH 和 OTA 发布命令。
路径选择
- 用户只说“更新部署 / 部署生产 / 更新线上”:直接执行“CI 构建后直传镜像到服务器并
update-local+ Android stable OTA”,不再让本机先拉 GHCR。 - 用户说“检查修改没问题就更新部署 / 看下改动没问题再发生产 / 检查后部署”:先按
git-operations审查当前改动范围,再决定是否能进入部署;不能把本地未提交改动、未推送提交或未归属脏改默认当成已经会被生产部署包含。 - 用户明确说“看 CI / CI 好了 / 查 CI / 等 CI”:先查远端
origin/main对应的 Docker 镜像 CI;只有成功才执行服务器更新与 OTA。 - 用户明确说“只更新服务器 / 不发 OTA”:显式加
-SkipOta。 - 用户指定 tag:默认只建议用于服务器镜像更新;若同时要发 OTA,必须确认 OTA 的 git ref 与本次要发的代码一致。
检查后部署
“检查修改没问题就更新部署”是审查与部署的组合授权,不等于跳过改动归属判断。
- 先审查当前仓库状态、改动统计和目标相关 diff,区分已提交、未提交、未跟踪、生成物、证据和无关在途改动。
- 若用户要部署的是本地改动,必须先确认这些改动已经提交、推送到部署目标 ref,并且对应 CI / 镜像可回查;否则停止在部署前,说明生产仍会使用哪个远端版本。
- 若本地存在无关或无法归属的脏改,不能为了部署把它们吞进提交、测试或发布;只能排除并说明,或等用户确认归属。
- 静态审查、自动 hook 或必要校验发现真实问题时,先按对应 workflow 做最小修复和复验;不得用“只是要部署”绕过会影响生产结果的失败。
直接部署
使用本 skill 的包装脚本:
powershell -NoProfile -ExecutionPolicy Bypass -File .spec\skills\deploy-after-ci\scripts\deploy-prod.ps1
只更新服务器,不发 OTA:
powershell -NoProfile -ExecutionPolicy Bypass -File .spec\skills\deploy-after-ci\scripts\deploy-prod.ps1 -SkipOta
指定 tag 且只更新服务器:
powershell -NoProfile -ExecutionPolicy Bypass -File .spec\skills\deploy-after-ci\scripts\deploy-prod.ps1 -Tag v1.2.3 -SkipOta
脚本默认会触发 Docker workflow,CI 构建完成后直接把镜像 tar 输送到服务器并执行 update-local,再在本地发布 Android stable OTA:
node scripts/release/deploy-and-ota.mjs --skip-wait --ota-channel stable
服务器部署版本以 git ref、CI run 和镜像为准,不要求修改商业产品版本。OTA 包版本在上传时决定:默认自动生成内部游标和显示发布号;需要显式商业产品版本时,通过 -OtaExtra "--product-version <version>" 或底层 --ota-extra "--product-version <version>" 传入。
其中服务器步骤默认等价于手动触发:
gh workflow run docker-publish.yml --ref main -f stream_to_server=true -f deploy_after_stream=true -f deploy_tag=latest -f [email protected] -f remote_dir=/home/admin/BoardGame
只有用户明确要求“本机输送 / 不触发 CI 直传”时,才传 -DeployMode stream,让底层改用 stream-images-to-server.mjs 本机 fallback。只有用户明确要求“服务器直接拉镜像 / 不走镜像输送”时,才传 -DeployMode remote,让底层改用 deploy-image.sh update 旧链路。
What ships with it
4 files 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.
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.
- 6d ago Changed · +10 lines e5d83874dfba
- 11d ago First seen · 100 lines · 52 tokens per session scan A acffd2dfe592
deploy-after-ci is a skill published in the GitHub repository zhuanggenhua/BoardGame (23 stars, last pushed today), licensed MIT. It adds 52 tokens to every session and 1,542 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
agent-browser
Browser automation via Chrome/Chromium CDP — open, snapshot, click, screenshot. For testing web apps, mobile layouts, and automated interactions without Playwright/Puppeteer.
odevio
Take a Flutter project to an iPhone or the App Store with Odevio - build, sign and publish iOS apps from Windows, Linux or macOS with no Mac and no Xcode. Handles Apple setup, certificates, provisioning profiles, code signing, the .ipa, TestFlight and App Store submission, and fixes build failures automatically. Use…
fastly-compute-well-known-spa-fallback
Fix .well-known files (apple-app-site-association, assetlinks.json) being served as HTML by the @fastly/compute-js-static-publish SPA fallback instead of JSON. Use when: (1) iOS Universal Links or Android App Links are broken because the verification files return text/html instead of application/json, (2)…
expo-deployment
Deploying Expo apps to iOS App Store, Android Play Store, web hosting, and API routes.
capawesome-cloud
Guides the agent through setting up and using Capawesome Cloud for Capacitor and Cordova apps. Covers three core workflows: (1) Native Builds — cloud builds for iOS and Android (Capacitor, Cordova, or native projects), signing certificates, environments, Trapeze configuration, and build artifacts; (2) Live Updates …
google-mobile-ninja
Master orchestrator for 35+ mobile development agent skills from official Google repositories. Use when working with Android, Flutter, Dart, Jetpack Compose, Navigation, CameraX, AGP, Play services, or any mobile app development task. Routes to the optimal specialized skill based on context. Triggers: Android…