Token导航 LogoToken导航TokenDH.com
研究检索执行命令clawhub未标认证来源可访问clear审计通过

async-concurrency-reviewer异步并发审阅器

Agent Skill

async-concurrency-reviewer 用于查找、检索和筛选相关信息,适合在 OpenClaw 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

4,680

周安装

195

GitHub Stars

公开资料未说明

下载量

1,560
OpenClaw

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

MIT-0

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:async-concurrency-reviewer(异步并发审阅器)
来源仓库:https://github.com/lnguyen1996/async-concurrency-reviewer
安装命令:
openclaw skills install async-concurrency-reviewer
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 OpenClaw 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

ClawHubOpenClaw
openclaw skills install async-concurrency-reviewer

简介

检查异步和并发代码是否存在死锁、竞争条件、缺失取消以及跨多种语言的误用,并返回详细的修复报告。

SKILL.md

async-concurrency-reviewer

Description

Review async and concurrency code across any language. Finds real bugs — deadlocks, race conditions, missing cancellation, blocking calls in async contexts, and misused primitives. Returns a structured report with severity ratings and corrected code.

Use when

  • "review my async code"
  • "is this thread-safe"
  • "could this deadlock"
  • "check my concurrency"
  • "await/promise/goroutine review"
  • "is this race condition-safe"
  • Any code with: async/await, promises, goroutines, threads, locks, channels, semaphores, actors

Supported languages

Python, JavaScript/TypeScript, C#, Go, Rust, Java, Kotlin — and any other language with async or concurrency primitives.

Input

Paste code. Optionally specify: language, runtime (Node, .NET, JVM, etc.), context (web server, CLI, background worker).

Output format

## Async/Concurrency Review

### Critical (fix before shipping)
- [Finding] — [why it causes bugs in production]
  ✗ Before: [problematic code]
  ✓ After:  [corrected code]

### Warnings (should fix)
- [Finding] — [explanation]

### Suggestions (nice to have)
- [Finding] — [explanation]

### What's correct
- [Specific patterns done right — always include at least one]

### Summary
[2–3 sentences: biggest risk, top fix, one pattern to adopt going forward]

Review checklist by language

Python

  • asyncio.run() called inside an already-running event loop
  • Blocking calls (time.sleep, requests.get) inside async def — use asyncio.sleep, httpx
  • asyncio.create_task() result not stored — task gets garbage collected
  • Missing await on coroutines (silent no-op bug)
  • threading.Lock() inside async code — use asyncio.Lock()
  • Shared mutable state across tasks without locks

JavaScript / TypeScript

  • await inside forEach — use Promise.all with map
  • Unhandled promise rejections
  • async function called without await (fire and forget — often unintentional)
  • Sequential await where parallel Promise.all would work
  • Mixing callbacks and promises in the same flow
  • setTimeout used as a poor-man's debounce in async context

C# / .NET

  • .Result or .Wait() — deadlocks in sync-over-async
  • async void — exceptions swallowed, no awaitable
  • Missing CancellationToken on public async methods
  • ConfigureAwait(false) missing in library code
  • Task.Run wrapping sync CPU-bound work — correct; wrapping async — wrong
  • lock keyword in async code — use SemaphoreSlim
  • await inside lock — compiler error but watch for equivalent patterns

Go

  • Goroutine leak — goroutine started, no way to stop it
  • Channel send/receive without select+default or timeout — blocks forever
  • WaitGroup.Add() called inside goroutine — race condition
  • Shared map written from multiple goroutines without mutex
  • Forgetting to close channels — range loop never terminates
  • Context not passed through call chain — cancellation doesn't propagate

Rust

  • block_on inside an async runtime — panic
  • .unwrap() on JoinHandle — hides panics
  • Holding a Mutex lock across an .await — deadlock
  • spawn without storing the handle — fire and forget, errors lost
  • Arc<Mutex<T>> contention hotspot — consider RwLock or message passing

Java / Kotlin

  • CompletableFuture.get() blocking on the event thread
  • Kotlin runBlocking inside a coroutine scope
  • GlobalScope.launch — unstructured concurrency, leaks
  • Missing Dispatchers.IO for blocking I/O in coroutines
  • synchronized on wrong object — lock doesn't protect the shared state

Severity definitions

  • Critical: Will deadlock, lose data, swallow exceptions, or cause race conditions in production
  • Warning: Performance issue, resource leak, or hard-to-debug behaviour
  • Suggestion: Style, clarity, or future-proofing improvement

Self-improvement instructions

After each review, note the most common finding. After 20 reviews, surface the top 3 patterns in your response as "Most common issues in [language]" to help users learn, not just fix.

适合场景

01

OpenClaw 用户查找和安装 Skill 时

02

用户想查找某类 Agent Skill 时

03

需要根据任务场景推荐可安装能力包时

04

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

补充不同宿主或平台的使用分布数据

能力 5

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

OpenClaw

92.69%
按下载量换算1,446

安全审计

VirusTotal

通过

ClawScan

通过

Static analysis

通过

权限和风险

执行命令

安装流程涉及命令执行,可能通过 openclaw skills install async-concurrency-reviewer 联网下载 Skill 或依赖。用户安装前应确认命令来源、仓库内容和执行环境。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills