Token导航 LogoToken导航

Agent Skill · 研究检索

create-evlog-adapter(创建 evlog 适配器)

create-evlog-adapter 用于记录任务执行中的错误、用户纠正、经验和能力缺口,适合在 Codex、Claude、Cursor、Gemini CLI 中希望让 Agent 持续沉淀问题、修正和最佳实践时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

create-evlog-adapter 是研究检索类 Agent Skill,可用宿主为 Codex、Claude、Cursor、Gemini CLI,通过GitHub 仓库获取,权限为接触敏感数据;许可证信息还不明确,第三方扫描已通过,按安装量在研究检索类的 73,675 个 Skill 里排第 8,937。

总安装 15,271周安装 630GitHub Stars 1,202下载 4,990核验 2026-05-01

安装说明

本站只整理中文说明,不托管安装包,也不代用户安装。
GitHub
许可证
unknown

安装方式

通过对话安装

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

请帮我安装这个 Agent Skill:create-evlog-adapter(创建 evlog 适配器)
来源仓库:https://github.com/hugorcd/evlog
仓库路径:skills/create-evlog-adapter
安装命令:
npx skills add https://github.com/hugorcd/evlog --skill create-evlog-adapter
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

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

skills.shnpx skills
npx skills add https://github.com/hugorcd/evlog --skill create-evlog-adapter

这个 Skill 是做什么的

研究检索类 Skill 主要解决「找资料、核对事实、把来源整理清楚」的问题,通常会让助手先检索再总结。

创建一个新的内置 evlog 适配器,用于将事件发送到外部可观测平台。

需要完成所有 8 个强制性接触点:适配器源、构建配置、包导出、测试、文档页面、概述更新、技能注册表条目和文件重新编号 适配器架构包括配置接口、工厂函数、发送函数、使用 try/catch 进行错误处理以及通过 AbortController 进行配置的超时 配置优先级遵循四级层次结构:函数覆盖、运行时配置嵌套路径、带有 NUXT_{NAME}_* 的环境变量 和{NAME}_* 前缀 需要多框架文档以及 Nuxt/Nitro、Hono、Express、Fastify、Elysia、NestJS 和独立使用的代码示例

来源仓库内路径:skills/create-evlog-adapter

上手步骤

4 步
  1. 1

    确认自己的宿主工具

    公开资料标注支持 Codex、Claude、Cursor、Gemini CLI;先确认自己用的是其中之一,再按对应工具的 Skills 目录放置。

  2. 2

    拿到安装命令

    可以直接复制的命令是 npx skills add https://github.com/hugorcd/evlog --skill create-evlog-adapter;命令里的占位符换成自己的路径或密钥再执行。

  3. 3

    安装后重启宿主

    命令执行完要完全退出宿主工具再打开,让新装的 Skill 被重新扫描到,否则列表里可能看不到。

  4. 4

    按最小权限试用

    它需要接触敏感数据,先在测试目录或测试账号里跑,确认没问题再放到正式项目。

常见问题

6 条

create-evlog-adapter 怎么安装?

在终端执行 npx skills add https://github.com/hugorcd/evlog --skill create-evlog-adapter。装完完全退出宿主工具再打开,让它重新扫描本地 Skill。

create-evlog-adapter 支持哪些 AI 工具?

公开资料标注支持 Codex、Claude、Cursor、Gemini CLI。其他工具只要能读取本地 Skill 目录,一般也能手动放进去,但要自己确认触发方式是否一致。

create-evlog-adapter 需要什么权限?

权限级别是接触敏感数据。该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

create-evlog-adapter 是免费的吗?

公开资料没有标注明确许可证,收费和商用限制都无法确认。正式使用前请到来源仓库核对授权说明。

create-evlog-adapter 用的人多吗?

公开数据是累计安装 15,271 次,近一周安装 630 次,下载 4,990 次,GitHub 1,202 星。这些数字来自第三方目录统计,只能当作热度参考,不代表质量或安全性。

create-evlog-adapter 安全吗?

第三方扫描结果为通过,但这只覆盖已知的静态检查项,不能替代自己读一遍源码和安装命令。

值得选的地方和要先想清楚的地方

值得选的地方

  • 同时适配 4 种工具,换客户端不用重新找替代品。
  • 第三方扫描已通过,常见的高风险行为没有命中。
  • 来源仓库有 1,202 星,维护活跃度相对可查。

先想清楚的地方

  • 需要接触敏感数据,装到常用环境前要先评估影响面。
  • 许可证没有明确标注,能不能商用、能不能再分发都不确定。
  • 第三方目录整理,版本更新和行为细节以来源仓库为准。

适不适合你

更适合

  • 已经在用 Codex,想直接扩展它能力的人。
  • 需要处理研究检索类任务、又不想每次都手写提示词的人。

不太适合

  • 环境里有大量密钥、凭证,不方便给第三方 Skill 读取的人。
  • 需要明确授权才能用到公司项目里的场景。
  • 需要厂商级技术支持和 SLA 的生产系统。

研究检索类 Skill 对比

6 个同类
Skill总安装GitHub 星权限许可证扫描
find-skills

寻找技能 · Codex、Claude

31,199,81316,486操作浏览器MIT有提醒
self-improving-agent

自我改进 Agent · OpenClaw

16,464,0023,396接触敏感数据MIT-0通过
soultrace

灵魂追踪 · Codex、Claude

7,588,94412需要联网未明确有提醒
self-improving

自我完善 · OpenClaw

6,829,2841,046需要联网MIT-0通过
microsoft-foundry

微软代工厂 · Codex、Claude

6,614,144764调用外部服务未明确有提醒
create-evlog-adapter

创建 evlog 适配器 · 本页

15,2711,202接触敏感数据未明确通过

按安装量取同分类前几名;数字来自第三方目录统计,只作热度参考,不代表质量结论。

SKILL.md 原文

Create evlog Adapter

Add a new built-in adapter to evlog. Every adapter follows the same architecture. This skill walks through all 8 touchpoints. Every single touchpoint is mandatory -- do not skip any.

PR Title

Recommended format for the pull request title:

feat: add {name} adapter

The exact wording may vary depending on the adapter (e.g., feat: add OTLP adapter, feat: add Axiom drain adapter), but it should always follow the feat: conventional commit prefix.

Touchpoints Checklist

#FileAction
1packages/evlog/src/adapters/{name}.tsCreate adapter source
2packages/evlog/tsdown.config.tsAdd build entry
3packages/evlog/package.jsonAdd exports + typesVersions entries
4packages/evlog/test/adapters/{name}.test.tsCreate tests
5apps/docs/content/5.adapters/{n}.{name}.mdCreate adapter doc page (before custom.md)
6apps/docs/content/5.adapters/1.overview.mdAdd adapter to overview (links, card, env vars)
7skills/review-logging-patterns/SKILL.mdAdd adapter row in the Drain Adapters table
8Renumber custom.mdEnsure custom.md stays last after the new adapter

Important: Do NOT consider the task complete until all 8 touchpoints have been addressed.

Naming Conventions

Use these placeholders consistently:

PlaceholderExample (Datadog)Usage
{name}datadogFile names, import paths, env var suffix
{Name}DatadogPascalCase in function/interface names
{NAME}DATADOGSCREAMING_CASE in env var prefixes

Step 1: Adapter Source

Create packages/evlog/src/adapters/{name}.ts.

Read references/adapter-template.md for the full annotated template.

Key architecture rules:

  1. Config interface -- service-specific fields (API key, endpoint, etc.) plus optional timeout?: number
  2. getRuntimeConfig() -- import from ./_utils (shared helper, do NOT redefine locally)
  3. Config priority (highest to lowest):

- Overrides passed to create{Name}Drain() - runtimeConfig.evlog.{name} - runtimeConfig.{name} - Environment variables: NUXT_{NAME}_* then {NAME}_*

  1. Factory function -- create{Name}Drain(overrides?: Partial<Config>) returns (ctx: DrainContext) => Promise<void>
  2. Exported send functions -- sendTo{Name}(event, config) and sendBatchTo{Name}(events, config) for direct use and testability
  3. Error handling -- try/catch with console.error('[evlog/{name}]...'), never throw from the drain
  4. Timeout -- AbortController with 5000ms default, configurable via config.timeout
  5. Event transformation -- if the service needs a specific format, export a to{Name}Event() converter

Step 2: Build Config

Add a build entry in packages/evlog/tsdown.config.ts alongside the existing adapters:

'adapters/{name}': 'src/adapters/{name}.ts',

Place it after the last adapter entry in tsdown.config.ts (follow existing ordering in that file).

Step 3: Package Exports

In packages/evlog/package.json, add two entries:

In exports (after the last adapter, currently ./posthog):

"./{name}": {
  "types": "./dist/adapters/{name}.d.mts",
  "import": "./dist/adapters/{name}.mjs"
}

**In typesVersions["*"]** (after the last adapter):

"{name}": [
  "./dist/adapters/{name}.d.mts"
]

Step 4: Tests

Create packages/evlog/test/adapters/{name}.test.ts.

Read references/test-template.md for the full annotated template.

Required test categories:

  1. URL construction (default + custom endpoint)
  2. Headers (auth, content-type, service-specific)
  3. Request body format (JSON structure matches service API)
  4. Error handling (non-OK responses throw with status)
  5. Batch operations (sendBatchTo{Name})
  6. Timeout handling (default 5000ms + custom)

Step 5: Adapter Documentation Page

Create apps/docs/content/4.adapters/{n}.{name}.md where {n} is the next number before custom.md (custom should always be last).

Use the existing Axiom adapter page (apps/docs/content/5.adapters/2.axiom.md) as a reference for frontmatter structure, tone, and sections. Key sections: intro, quick setup, configuration (env vars table + priority), advanced usage, querying in the target service, troubleshooting, direct API usage, next steps.

Important: multi-framework examples. The Quick Start section must include a ::code-group with tabs for all supported frameworks (Nuxt/Nitro, Hono, Express, Fastify, Elysia, NestJS, Standalone). Do not only show Nitro examples. See any existing adapter page for the pattern.

Step 6: Update Adapters Overview Page

Edit apps/docs/content/4.adapters/1.overview.md to add the new adapter in three places (follow the pattern of existing adapters):

  1. Frontmatter links array -- add a link entry with icon and path
  2. ::card-group section -- add a card block before the Custom card
  3. Zero-Config Setup .env example -- add the adapter's env vars

Step 7: Update skills/review-logging-patterns/SKILL.md

In skills/review-logging-patterns/SKILL.md (the public skill distributed to users), find the Drain Adapters table and add a new row:

| {Name} | `evlog/{name}` | `{NAME}_TOKEN`, `{NAME}_DATASET` (or equivalent) |

Follow the pattern of the existing rows (Axiom, OTLP, PostHog, Sentry, Better Stack). No additional usage example block is needed — the table entry is sufficient.

Step 8: Renumber custom.md

If the new adapter's number conflicts with custom.md, renumber custom.md to be the last entry. For example, if the new adapter is 5.{name}.md, rename 5.custom.md to 6.custom.md.

Verification

After completing all steps, run:

cd packages/evlog
bun run build    # Verify build succeeds with new entry
bun run test     # Verify tests pass

平台分布

Codex

34.99%
按下载量换算1,746

Claude

30.48%
按下载量换算1,521

Cursor

19.82%
按下载量换算989

Gemini CLI

9.18%
按下载量换算458

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

接触敏感数据

该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

安装前确认

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

继续浏览同类 Skills