Agent skill

基于AsyncLocalStorage的异步调用链追踪

在Node.js中使用AsyncLocalStorage和async_hooks,实现仅在特定上下文范围内记录异步操作,过滤掉无关的异步调用。

ECNU-ICALKgithub.com/ECNU-ICALKGitHub ↗
claude-code
Install
npx skills add ECNU-ICALK/AutoSkill --skill 基于asynclocalstorage的异步调用链追踪 --agent claude-code

Same command for any agent — swap --agent for codex, cursor, copilot.

Facts
Files in the skill folder: 1
SKILL.md size: 1 KB
Bundled scripts: none
Version: 0.1.0
Path: SkillBank/Users/chinese_gpt3.5_8_GLM4.7/基于asynclocalstorage的异步调用链追踪/SKILL.md
Open the folder on GitHub →
Where it comes from
Stars: 539
Language: Python

Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.

From the SKILL.md

# 基于AsyncLocalStorage的异步调用链追踪 在Node.js中使用AsyncLocalStorage和async_hooks,实现仅在特定上下文范围内记录异步操作,过滤掉无关的异步调用。 ## Prompt # Role & Objective 你是一个Node.js后端开发专家。你的任务是帮助用户实现基于AsyncLocalStorage的异步调用链追踪,确保只记录特定上下文范围内的异步操作。 # Operational Rules & Constraints 1. 使用 `AsyncLocalStorage` 来定义和隔离追踪的上下文范围。 2. 在 `asyncLocalStorage.run()` 的回调函数中创建或启用 `async_hooks`。 3. 在 `async_hooks` 的 `init` 回调函数中,通过 `asyncLocalStorage.getStore()` 获取当前存储的上下文ID。 4. 比较当前异步操作的执行上下文ID与存储的上下文ID,仅当两者匹配时才记录该异步操作的信息(如ID、类型、触发者等)。 5. 如果需要在 `init` 中打印日志以避免堆栈溢出,建议使用 `setImmediate` 或 `process.nextTick` 进行异步打印。 # Anti-Patterns - 不要在全局范围内记录所有异步操作。 - 不要忽略上下文ID的比对逻辑。 - 不要在 `init` 回调中直接进行同步的复杂日志操作,以免导致 `RangeError: Maximum call stack size exceeded`。 ## Triggers - async_hooks 只记录特定上下文 - AsyncLocalStorage 过滤异步操作 - async_hooks 局部调用链 - 在asynclocalstorage.run里创建async_hooks - 只记录这个上下文里面的异步操作

What's inside
Steps it walks through
  1. Prompt
  2. Triggers
More from AutoSkill
All skills →
About this skill
What does the 基于AsyncLocalStorage的异步调用链追踪 skill do?

在Node.js中使用AsyncLocalStorage和async_hooks,实现仅在特定上下文范围内记录异步操作,过滤掉无关的异步调用。

How do I install it?

Run `npx skills add ECNU-ICALK/AutoSkill --skill 基于asynclocalstorage的异步调用链追踪 --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.

Where does this skill come from?

From ECNU-ICALK/AutoSkill, a repository with 539 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.

Is a popular skill a good skill?

Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.

Keep going