Cloudflare Browser Rendering
cloudflare/moltworker
Drives headless Chrome through Cloudflare Browser Rendering over a CDP WebSocket to take screenshots, navigate and scrape pages, and record multi-page videos.
Wavelet 项目专用:新增或修改 Asynq 异步任务、后台任务、定时任务、任务元数据、TaskHandler、TaskParam、PayloadValidator、AppendLog、任务重试、任务执行记录或 Admin 任务 API 时必须使用。
$ npx skills add Rain-kl/OpenFlare --skill new-async-task -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install Rain-kl/OpenFlare new-async-task --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/Rain-kl/OpenFlare.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/new-async-task .claude/skills/new-async-task && 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 "new-async-task" agent skill from https://github.com/Rain-kl/OpenFlare/tree/main/.agents/skills/new-async-task into .claude/skills/new-async-task/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "new-async-task", 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/Rain-kl/OpenFlare/tree/main/.agents/skills/new-async-taskType 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 Rain-kl/OpenFlare --skill new-async-task -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install Rain-kl/OpenFlare new-async-task --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Rain-kl/OpenFlare.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/new-async-task .agents/skills/new-async-task && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "new-async-task" agent skill from https://github.com/Rain-kl/OpenFlare/tree/main/.agents/skills/new-async-task into .agents/skills/new-async-task/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "new-async-task", 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 Rain-kl/OpenFlare --skill new-async-task -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install Rain-kl/OpenFlare new-async-task --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Rain-kl/OpenFlare.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/new-async-task .cursor/skills/new-async-task && 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 "new-async-task" agent skill from https://github.com/Rain-kl/OpenFlare/tree/main/.agents/skills/new-async-task into .cursor/skills/new-async-task/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "new-async-task", 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/Rain-kl/OpenFlare.git --path .agents/skills/new-async-task--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 Rain-kl/OpenFlare --skill new-async-task -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install Rain-kl/OpenFlare new-async-task --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Rain-kl/OpenFlare.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/new-async-task .gemini/skills/new-async-task && 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 "new-async-task" agent skill from https://github.com/Rain-kl/OpenFlare/tree/main/.agents/skills/new-async-task into .gemini/skills/new-async-task/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "new-async-task", 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 Rain-kl/OpenFlare new-async-taskInstalls 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 Rain-kl/OpenFlare --skill new-async-task -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/Rain-kl/OpenFlare.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/new-async-task .github/skills/new-async-task && 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 "new-async-task" agent skill from https://github.com/Rain-kl/OpenFlare/tree/main/.agents/skills/new-async-task into .github/skills/new-async-task/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "new-async-task", 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 Rain-kl/OpenFlare --skill new-async-task -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install Rain-kl/OpenFlare new-async-task --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Rain-kl/OpenFlare.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/new-async-task .opencode/skills/new-async-task && 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 "new-async-task" agent skill from https://github.com/Rain-kl/OpenFlare/tree/main/.agents/skills/new-async-task into .opencode/skills/new-async-task/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "new-async-task", 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.
new-async-taskWavelet 项目专用:新增或修改 Asynq 异步任务、后台任务、定时任务、任务元数据、TaskHandler、TaskParam、PayloadValidator、AppendLog、任务重试、任务执行记录或 Admin 任务 API 时必须使用。
New Async Task is an agent skill from Rain-kl/OpenFlare. Wavelet 项目专用:新增或修改 Asynq 异步任务、后台任务、定时任务、任务元数据、TaskHandler、TaskParam、PayloadValidator、AppendLog、任务重试、任务执行记录或 Admin 任务 API 时必须使用。
Its SKILL.md is about 950 tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including reference files (for example `references/CODE-EXAMPLES.md`).
It works with Cloudflare. The repository describes itself as: OpenFlare is an open-source CDN orchestration and edge security platform. It supports reverse proxy, centralized configuration synchronization, in-network tunneling (Tunnels)… The licence is Apache-2.0.
Read from SKILL.md and the folder at commit 7483897. 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:
makeFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
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.
New Async Task loads about 949 tokens when it runs, and up to ~3.1k if it reads all its reference files. Until then it costs about 36 tokens; SKILL.md has 251 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 Rain-kl/OpenFlare at commit 7483897, republished under its Apache-2.0 licence (© Rain-kl). 251 words, ~949 tokens.
.claude/skills/new-async-task/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.开始前阅读根目录 AGENTS.md。只修改任务相关链路,遵守项目路由、日志、数据库迁移和质量门禁要求。
按任务范围检查当前实现:
internal/infra/task/handler.go:TaskHandler、TaskResult、PayloadValidatorinternal/infra/task/meta.go:TaskMeta、TaskParaminternal/infra/task/executor.go:下发、执行、日志、重试、OnTaskCompleted 订阅internal/infra/task/handlers/register.go:Handler 和元数据注册(由 bootstrap 调用)internal/platform/bootstrap/bootstrap.go:任务注册与进程级装配入口internal/infra/task/worker/worker.go:Worker 路由和队列internal/infra/task/scheduler/scheduler.go:定时调度internal/apps/admin/task/routers.go:Admin 任务 APIinternal/model/task_execution.go:执行记录实体与 DTOinternal/repository/task_execution.go:执行记录和日志持久化需要模板时阅读 references/CODE-EXAMPLES.md。
internal/apps/<module>/tasks.go 定义任务类型、Admin 任务类型和 TaskMeta。<module>:<action> 格式。Type、AsynqTask、Name、Description、MaxRetry、Queue、Retryable。TaskParam.Name 必须与 payload JSON tag 一致。TaskParam 只描述前端表单,不代替服务端校验。task.TaskHandler。task.PayloadValidator,负责校验和标准化 Admin 下发参数。Execute 必须再次解析 payload;不要假设入口一定经过 Admin 校验。&task.TaskResult{Message: ..., Detail: ...}。internal/repository/(唯一入口);业务编排放模块内 logics.go / service.go。internal/model 仅实体/DTO,禁止 CRUD 与 DB 访问。internal/infra/task/handlers/register.go 同时注册 Handler 和 TaskMeta。routers.go 或 init() 中调用 task.RegisterHandler;统一由 bootstrap.RegisterTasks() → taskhandlers.Register() 在进程启动时装配。task.OnTaskCompleted 注册,在 bootstrap.RegisterTaskListeners() 中装配(Worker/all 进程)。| 进程 | 注册入口 |
|---|---|
api | cmd/api.go → bootstrap.RegisterAPI()(含 RegisterTasks) |
worker | worker.StartWorker() → bootstrap.RegisterWorker()(含 RegisterTasks + RegisterTaskListeners) |
scheduler | scheduler.StartScheduler() → bootstrap.RegisterScheduler() |
all | cmd/all.go → bootstrap.RegisterAll() |
所有 Register* 使用 sync.Once,重复调用安全。
internal/apps/admin/task/routers_test.go),必须在 setup 中显式调用 bootstrap.RegisterTasks()。init() 副作用或 import 链触发注册。TaskHandler.Execute 中使用 task.AppendLog(ctx, format, args...)。w_task_executions.log。日志框架约束:
pending、running、succeeded、failed。failedRetryable=trueRetryCount < MaxRetryinternal/infra/task/executor.gointernal/model/task_execution.gointernal/apps/admin/task/routers.goschedules。database-migration skill。internal/apps/admin/<module>/。internal/router/router.go 注册。{ "error_msg": "", "data": ... }。{ "total": 0, "results": [] }。make swagger。frontend/lib/services/。shadcn skill。any。w-full,不添加页面级 max-w-*。© Rain-kl, 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 (references) in .agents/skills/new-async-task of Rain-kl/OpenFlare.
Open the folder on GitHubat commit 7483897
New Async Task 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 |
|---|---|---|---|---|---|---|
| New Async Task this skillRain-kl/OpenFlare | 288 | — | ~949 | Automated safety check: Pass | Apache-2.0 | |
| Cloudflare Browser Renderingcloudflare/moltworker | 9.9k | — | ~742 | Automated safety check: Pass | Apache-2.0 | |
| Turnstile Spincloudflare/skills | 3k | 4 repos | ~7.2k | Automated safety check: Notes | Apache-2.0 | |
| Star Office UI Setupringhyacinth/Star-Office-UI | 7.5k | — | ~1.3k | Automated safety check: Pass | MIT | |
| Cloudflarehodgef/apiker | 127 | 7 repos | ~2.2k | Automated safety check: Pass | MIT | |
| Webhome Extension Builderwebhtv/webhtv | 1.7k | — | ~2.8k | Automated safety check: Pass | GPL-3.0 |
cloudflare/moltworker
Drives headless Chrome through Cloudflare Browser Rendering over a CDP WebSocket to take screenshots, navigate and scrape pages, and record multi-page videos.
cloudflare/skills
Set up, repair, or migrate to Cloudflare Turnstile bot verification in an existing frontend and backend, including server-side Siteverify.
ringhyacinth/Star-Office-UI
Sets up Star Office UI, a pixel-art office dashboard that shows AI agent states, lets other agents join and can be opened from a phone or a public link.
hodgef/apiker
Comprehensive Cloudflare platform skill covering Workers, Pages, storage (KV, D1, R2), AI (Workers AI, Vectorize, Agents SDK), feature flags (Flagship), networking (Tunnel, Spectrum), security (WAF…
webhtv/webhtv
Build, review, debug, reverse-engineer, and package WebHome injected extension scripts for FongMi/WebHome App WebView pages.
cloudflare/skills
Build, migrate, and deploy Next.js apps on Cloudflare Workers with vinext.
Rain-kl/OpenFlare
Provides comprehensive code review guidance for React 19, Vue 3, Angular 17+, Svelte 5, Rust, TypeScript, Java, PHP, Python, Django, Go, C/.NET, Kotlin, Swift, NestJS, C/C++, and more.
Rain-kl/OpenFlare
在选择日志方案、配置 slog、编写结构化日志语句或决定日志级别时使用。也适用于设置生产日志、为日志添加请求作用域上下文或从 log 迁移到 slog 的场景,即使用户未明确提及日志。不涵盖错误处理策略(参见 go-error-handling)。
Rain-kl/OpenFlare
Wavelet 项目专用:当新增或修改自定义业务 API、新增业务路由、新增 service 层核心逻辑时必须使用。本技能指导包职责划分、推荐文件结构、路由解耦、Swagger 文档生成与质量门禁验证。
Rain-kl/OpenFlare
Wavelet 项目专用:当新增或修改业务缓存(RAM/Redis/DB 三层读路径)、缓存失效、多节点 pub/sub 同步、或评估高频读是否应接入缓存时必须使用。本技能说明系统标准缓存框架、参考实现、禁止写法与分布式一致性要求。
Rain-kl/OpenFlare
Wavelet 项目专用:当新增或修改 ClickHouse 批量写入、接入 internal/infra/persistence/batchwriter、将业务域异步 flush 到分析表、迁移 riskcontrol/节点访问日志/可观测时序写入、或评估 asyncinsert 与背压策略时必须使用。本技能指导分层职责、各域独立 Writer 实例、repository 批量 API…
Rain-kl/OpenFlare
Wavelet 项目专用:当新增或修改数据库表结构、索引、初始化数据、系统配置 seed、模板 seed、默认管理员、goose SQL 迁移、internal/infra/persistence/migrator、ClickHouse 分析库 DDL 或数据库升级流程时必须使用。本技能指导在 internal/infra/persistence/migrator/goose 下编写…
Works with
Wavelet 项目专用:新增或修改 Asynq 异步任务、后台任务、定时任务、任务元数据、TaskHandler、TaskParam、PayloadValidator、AppendLog、任务重试、任务执行记录或 Admin 任务 API 时必须使用。. New Async Task is an agent skill from Rain-kl/OpenFlare.
Run `npx skills add Rain-kl/OpenFlare --skill new-async-task -a claude-code`. Or copy the skill folder (.agents/skills/new-async-task in Rain-kl/OpenFlare) into .claude/skills/new-async-task in your project. Claude Code loads it when a task matches its description.
Run `npx skills add Rain-kl/OpenFlare --skill new-async-task -a codex`. Or copy the skill folder (.agents/skills/new-async-task in Rain-kl/OpenFlare) into .agents/skills/new-async-task 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 Rain-kl/OpenFlare --skill new-async-task -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/new-async-task, .gemini/skills/new-async-task, .github/skills/new-async-task and .opencode/skills/new-async-task in your project.
Going by SKILL.md and its folder, New Async Task needs the command-line tools its instructions call (make).
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. Review the folder before installing.
New Async Task 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 949 tokens (SKILL.md is roughly 3.8k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 2.2k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with New Async Task: Cloudflare Browser Rendering (cloudflare/moltworker, 9.9k stars), Turnstile Spin (cloudflare/skills, 3k stars), Star Office UI Setup (ringhyacinth/Star-Office-UI, 7.5k stars) and Cloudflare (hodgef/apiker, 127 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
Rain-kl (a GitHub user) maintains it in Rain-kl/OpenFlare, which has 288 GitHub stars. The repository holds 12 skills in this directory. The repository was last updated on October 7, 2026.
Source: Rain-kl/OpenFlare on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.