Codflow Update
bighadj22/codflow
Update runbook for a self-hosted CodFlow install — an AI agent following it fetches the latest code from the CodFlow GitHub repo, merges it into an EXISTING checkout, syncs the gitignored…
View or change NarraCat-app's internal-test release gate / remote kill switch (the release-guard Cloudflare Worker in workers/release-guard).
$ npx skills add yannikzz/narracat-novel-agent --skill release-guard -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install yannikzz/narracat-novel-agent release-guard --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/yannikzz/narracat-novel-agent.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/release-guard .claude/skills/release-guard && 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 "release-guard" agent skill from https://github.com/yannikzz/narracat-novel-agent/tree/main/.claude/skills/release-guard into .claude/skills/release-guard/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "release-guard", 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/yannikzz/narracat-novel-agent/tree/main/.claude/skills/release-guardType 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 yannikzz/narracat-novel-agent --skill release-guard -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install yannikzz/narracat-novel-agent release-guard --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/yannikzz/narracat-novel-agent.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.claude/skills/release-guard .agents/skills/release-guard && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "release-guard" agent skill from https://github.com/yannikzz/narracat-novel-agent/tree/main/.claude/skills/release-guard into .agents/skills/release-guard/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "release-guard", 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 yannikzz/narracat-novel-agent --skill release-guard -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install yannikzz/narracat-novel-agent release-guard --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/yannikzz/narracat-novel-agent.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.claude/skills/release-guard .cursor/skills/release-guard && 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 "release-guard" agent skill from https://github.com/yannikzz/narracat-novel-agent/tree/main/.claude/skills/release-guard into .cursor/skills/release-guard/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "release-guard", 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/yannikzz/narracat-novel-agent.git --path .claude/skills/release-guard--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 yannikzz/narracat-novel-agent --skill release-guard -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install yannikzz/narracat-novel-agent release-guard --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/yannikzz/narracat-novel-agent.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.claude/skills/release-guard .gemini/skills/release-guard && 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 "release-guard" agent skill from https://github.com/yannikzz/narracat-novel-agent/tree/main/.claude/skills/release-guard into .gemini/skills/release-guard/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "release-guard", 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 yannikzz/narracat-novel-agent release-guardInstalls 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 yannikzz/narracat-novel-agent --skill release-guard -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/yannikzz/narracat-novel-agent.git skills-src && mkdir -p .github/skills && cp -r skills-src/.claude/skills/release-guard .github/skills/release-guard && 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 "release-guard" agent skill from https://github.com/yannikzz/narracat-novel-agent/tree/main/.claude/skills/release-guard into .github/skills/release-guard/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "release-guard", 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 yannikzz/narracat-novel-agent --skill release-guard -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install yannikzz/narracat-novel-agent release-guard --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/yannikzz/narracat-novel-agent.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.claude/skills/release-guard .opencode/skills/release-guard && 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 "release-guard" agent skill from https://github.com/yannikzz/narracat-novel-agent/tree/main/.claude/skills/release-guard into .opencode/skills/release-guard/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "release-guard", 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.
release-guardView or change NarraCat-app's internal-test release gate / remote kill switch (the release-guard Cloudflare Worker in workers/release-guard).
Release Guard is an agent skill from yannikzz/narracat-novel-agent. View or change NarraCat-app's internal-test release gate / remote kill switch (the release-guard Cloudflare Worker in workers/release-guard). Use when the user wants to check the gate's current status (is it blocking users right now?), set or clear the internal-test deadline, trigger or release the emergency brake (kill switch), raise the minimum allowed version, or edit the block-screen notice. 触发词:内测开关 / 急刹车 / 看后台配置 / 改截止日 / 下线版本 / 释放门控 / release guard.
Its SKILL.md is about 500 tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including scripts.
It sits in Writing & Content. It works with Cloudflare Workers. The repository describes itself as: 面向中国网文作者的 AI 共创桌面应用 | AI-powered desktop writing studio for Chinese web novels. The licence is AGPL-3.0.
2 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 2c49f9f. 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.
Ships 1 file in scripts/ (JavaScript), which the agent can run.
Shell commands in SKILL.md call:
nodebunxwranglerFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use bunx and wrangler, 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.
Release Guard loads about 495 tokens when it runs. Until then it costs about 118 tokens; SKILL.md has 101 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); the scripts in this folder are not scanned.
The full file from yannikzz/narracat-novel-agent at commit 2c49f9f, republished under its AGPL-3.0 licence (© yannikzz). 101 words, ~495 tokens.
.claude/skills/release-guard/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.控制内测包的「软过期 + 远程急刹车」。一个已部署的 Cloudflare Worker 返回一段 JSON,App 启动时拉取后决定要不要把用户挡在外面。改这个 Worker、不动 App、不发新包,约 10s 全员生效。
workers/release-guard/src/index.ts 是它的源码)electron/main/release-guard-runtime.ts 的 RELEASE_GUARD_URLelectron/main/release-guard.ts(单测 release-guard.test.ts)先跑状态脚本,把结果原样转述给用户(它会显示线上当前配置、现在拦不拦人、以及本地有没有改了没部署):
node .claude/skills/release-guard/scripts/status.mjs脚本自定位仓库根,任意 cwd 可跑、只读不改。读完用一两句话总结「现在是放行还是拦人、有没有截止日」。
只改 workers/release-guard/src/index.ts 里的 RELEASE_GATE 这一个对象,然后部署、再复验。
| 想干嘛 | 改 RELEASE_GATE | 效果 |
|---|---|---|
| 定内测截止日 | deadline: "2026-09-30T00:00:00Z"(ISO 8601,建议带 Z/时区) | 过期后所有版本启动被拦 |
| 取消截止日 | deadline: "" | 不再按日期拦 |
| 🚨 紧急下线坏版本 | kill: true | 立即拦所有版本 |
| 解除急刹车 | kill: false | 恢复(再按 deadline/minVersion 判) |
| 逼旧版升级 | minVersion: "0.1.320"(semver) | 低于此版本被拦 |
| 改拦截页文案 | notice: "……" | 用户看到的提示语 |
部署(已 wrangler login 过;若 token 过期会提示重登):
cd workers/release-guard && bunx wrangler deploy部署后必须复验:再跑一次第 1 步的 status 脚本,确认线上确实变了、判定符合预期。改完务必把 RELEASE_GATE 和线上对上(status 脚本会报「改了没部署」的漂移)。
kill: true 或过期的 deadline 会拦所有装了内测包的用户,最坏 ~60s 缓存后全员生效——确认是想要的再部署。调整类操作,在说"已生效"前必须:部署成功 + status 脚本复验线上配置已更新 + 解读判定正确。仅查看则无需部署。
© yannikzz, AGPL-3.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 (scripts) in .claude/skills/release-guard of yannikzz/narracat-novel-agent.
Open the folder on GitHubat commit 2c49f9f
Release Guard 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 |
|---|---|---|---|---|---|---|
| Release Guard this skillyannikzz/narracat-novel-agent | 105 | — | ~495 | Automated safety check: Pass | AGPL-3.0 | |
| Codflow Updatebighadj22/codflow | 354 | — | ~6.2k | Automated safety check: Notes | Apache-2.0 | |
| Socialcoreyhaines31/marketingskills | 54k | 4 repos | ~4.5k | Automated safety check: Pass | MIT | |
| HumanizerAzure-Samples/interview-coach-agent-framework | 173 | 38 repos | ~5.8k | Automated safety check: Pass | MIT | |
| Avoid AI Writingconorbronsdon/avoid-ai-writing | 4.9k | 3 repos | ~8.1k | Automated safety check: Pass | MIT | |
| JavaScript Concept Fact Checkerleonardomso/33-js-concepts | 67k | 1 repos | ~5k | Automated safety check: Pass | MIT |
bighadj22/codflow
Update runbook for a self-hosted CodFlow install — an AI agent following it fetches the latest code from the CodFlow GitHub repo, merges it into an EXISTING checkout, syncs the gitignored…
coreyhaines31/marketingskills
When the user wants help creating, scheduling, or optimizing social media content for LinkedIn, Twitter/X, Instagram, TikTok, or Facebook, or wants to do social listening and engagement triage.
Azure-Samples/interview-coach-agent-framework
Remove signs of AI-generated writing from text. An agent skill from Azure-Samples/interview-coach-agent-framework.
conorbronsdon/avoid-ai-writing
Audit and rewrite content to remove AI writing patterns ("AI-isms").
leonardomso/33-js-concepts
Verifies the technical accuracy of JavaScript concept pages by checking code examples, MDN and ECMAScript claims and external links through a five-phase method.
guillaumemeyer/watermarks-remover
Audits prose for invisible Unicode characters and rewrites it while keeping facts, citations, code and required disclosures unchanged and the writer's voice intact.
yannikzz/narracat-novel-agent
Cut and publish a new NarraCat-app version — bump the version number, build the Windows x64 package in CI, package + sign + notarize the macOS build locally, and publish both platforms into one…
yannikzz/narracat-novel-agent
Narrative structure knowledge for long-form web fiction, covering emotional stakes, tension rhythm, climax layering, foreshadowing payoff pacing, value shifts and event architecture, multi-thread…
yannikzz/narracat-novel-agent
A reference work analysis method providing text decomposition and five-dimension extraction framework (premise / world / characters / structure / style, with narrator voice sub-framework under…
yannikzz/narracat-novel-agent
Web-fiction craft material library consumed by the /write brief compressor — retention mechanics (hooks, pacing, conflict clarity, dialogue load, payoff delivery, chapter-end pull) kept as…
yannikzz/narracat-novel-agent
Guide for answering natural language questions about novel content by querying NovelMemory MCP read tools from the main conversation.
yannikzz/narracat-novel-agent
A real-novel writing style reference library backed by the novelquerystylereference MCP tool.
Works with
Categories
View or change NarraCat-app's internal-test release gate / remote kill switch (the release-guard Cloudflare Worker in workers/release-guard). Release Guard is an agent skill from yannikzz/narracat-novel-agent. View or change NarraCat-app's internal-test release gate / remote kill switch (the release-guard Cloudflare Worker in workers/release-guard).
Release Guard fits situations like: the user wants to check the gates current status (is it blocking users right now?); clear the internal-test deadline; release the emergency brake (kill switch); raise the minimum allowed version.
Run `npx skills add yannikzz/narracat-novel-agent --skill release-guard -a claude-code`. Or copy the skill folder (.claude/skills/release-guard in yannikzz/narracat-novel-agent) into .claude/skills/release-guard in your project. Claude Code loads it when a task matches its description.
Run `npx skills add yannikzz/narracat-novel-agent --skill release-guard -a codex`. Or copy the skill folder (.claude/skills/release-guard in yannikzz/narracat-novel-agent) into .agents/skills/release-guard 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 yannikzz/narracat-novel-agent --skill release-guard -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/release-guard, .gemini/skills/release-guard, .github/skills/release-guard and .opencode/skills/release-guard in your project.
Going by SKILL.md and its folder, Release Guard needs JavaScript for the scripts in its folder and the command-line tools its instructions call (node, bunx and wrangler). Our summary lists: Node.js.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. 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. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Release Guard is published under the AGPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 495 tokens (SKILL.md is roughly 2k 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 Release Guard: Codflow Update (bighadj22/codflow, 354 stars), Social (coreyhaines31/marketingskills, 54k stars), Humanizer (Azure-Samples/interview-coach-agent-framework, 173 stars) and Avoid AI Writing (conorbronsdon/avoid-ai-writing, 4.9k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
yannikzz (a GitHub user) maintains it in yannikzz/narracat-novel-agent, which has 105 GitHub stars. The repository holds 7 skills in this directory. The repository was last updated on October 7, 2026.
Source: yannikzz/narracat-novel-agent on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.