openclaw 网盘下载
OpenClaw

技能详情(站内镜像,无评论)

首页 > 技能库 > skill everyday

每天抓取 Clawhub 热门技能,深入分析并生成报告。每次执行获取一个未分析过的热门技能,避免重复。

开发与 DevOps

作者:do_while_true @autoxj

许可证:MIT-0

MIT-0 ·免费使用、修改和重新分发。无需归因。

版本:v1.0.0

统计:⭐ 0 · 21 · 0 current installs · 0 all-time installs

0

安装量(当前) 0

🛡 VirusTotal :良性 · OpenClaw :良性

Package:autoxj/skill-everyday

安全扫描(ClawHub)

  • VirusTotal :良性
  • OpenClaw :良性

OpenClaw 评估

代码与说明文件在功能上自洽:脚本使用 Playwright 抓取 Clawhub 热门技能、在本地生成报告并记录已分析项;没有请求外部凭据或隐蔽的网络回传。

目的

技能名/描述与实现基本一致:定期抓取热门技能并生成本地报告。唯一超出直觉的点是脚本会尝试访问宿主环境中上一级的 skills/ 目录(targetSkillDir),列出本地技能文件名以便把本地代码作为额外上下文纳入报告——这与“深入分析”可以解释得通,但会读取并展示本地文件列表(不读文件内容)。

说明范围

SKILL.md 与 runner.mjs 的指示一致:用 Playwright 打开 clawhub.ai、拦截并读取 Convex API 响应以获取榜单,打开技能详情页抓取标题/描述,并在本地写入 data/reports 和 data/analyzed.json。没有看到把本地或抓取到的数据发往未经申明的远端服务;唯一硬编码的外部端点是 Convex 的请求 URL(wry-manatee-359.convex.cloud),用于从网页拦截榜单数据。

安装机制

无安装规范(instruction-only),但仓内包含 package.json(声明 playwright 依赖)和运行脚本;README 明确建议 npm install + npx playwright install chromium。风险/影响可见:Playwright 会下载 Chromium 等大文件,且需在运行环境中安装 Node.js 与浏览器二进制。

证书

不要求任何环境变量或外部凭据(primaryEnv: none),这是合理且比例适当。但脚本会访问文件系统:创建 data/、写入 reports 与 analyzed.json,并尝试列出父目录下目标技能目录的文件名(可能暴露本地项目结构)。没有看到要求或使用不相关的密钥/令牌。

持久

没有设置 always:true;技能仅在自身目录下持久化状态(data/、data/reports/LATEST.md、data/analyzed.json)。没有修改其他技能配置或系统范围设置,agent-autonomy 保持默认(可被 agent 调用)。

scripts/runner.mjs:169

Dynamic code execution detected.

scripts/runner.mjs:183

File read combined with network send (possible exfiltration).

综合结论

该技能总体一致且用途明确,但在安装/运行前请注意: - 此脚本会在本地创建 data/ 并写入报告(包括固定的 LATEST.md),若不希望将生成内容保存在某路径请调整或在隔离目录运行。 - 脚本会尝试访问父级的 skills/ 目录并列出目标技能的文件名(不会读取文件内容),如果宿主机上有敏感工程或私有代码,建议在隔离环境(容器或干净目录)中运行。 - 运行前需安装 Node.js 与 Playwright,并执行 npx playwright install chromium(会下载浏览器二进制,占用下载/磁盘资源)。 - 源自 unknown(未提供 homepage/作者信任信息),若你信任该来源则可以使用;否则建议先人工审阅 runner.mjs 并在受控环境中试运行,或直接把脚本拷贝到受控目录并禁用本地目录检查(注释掉读取父目录相关代码)。 总结:功能与所需操作相符、未见隐蔽外发或凭据窃取行为;主要注意点是本地文件列表访问和 Playwright/Chromium 的安装成本。Static analysis: 2 patterns detectedDetails ▾✗scripts/runner.mjs:169Dynamic code execution detected.!scripts/runner.mjs:183File read combined with network send (possible exfiltration).Patterns worth reviewingThese patterns may indicate risky behavior. Check the VirusTotal and OpenClaw results above for context-aware analysis before installing.

安装(复制给龙虾 AI)

将下方整段复制到龙虾中文库对话中,由龙虾按 SKILL.md 完成安装。

请把本段交给龙虾中文库(龙虾 AI)执行:为本机安装 OpenClaw 技能「skill everyday」。简介:每天抓取 Clawhub 热门技能,深入分析并生成报告。每次执行获取一个未分析过的热门技能,避免重复。。
请 fetch 以下地址读取 SKILL.md 并按文档完成安装:https://raw.githubusercontent.com/openclaw/skills/refs/heads/main/skills/autoxj/skill-everyday/SKILL.md
(来源:yingzhi8.cn 技能库)

SKILL.md

打开原始 SKILL.md(GitHub raw)

---
name: skill-everyday
description: 每天抓取 Clawhub 热门技能,深入分析并生成报告。每次执行获取一个未分析过的热门技能,避免重复。
metadata:
  {
    "openclaw": {
      "emoji": "📊",
      "requires": { "modules": ["playwright"] }
    }
  }
---

# 技能分析日报 (skill-everyday)

每天执行一次,抓取 Clawhub 热门技能,深入分析并生成报告。

## 特性

- **无需平台账号或 API Key**:榜单与详情来自公开页面;运行期状态只写在本地 `data/`。
- **去重**:按 `data/analyzed.json` 记录已分析 slug,每次只取「当前榜单中、未分析过的第一个」热门技能。
- **依赖需先行安装**:本技能依赖 **Node.js**、**Playwright** 与 **Chromium**(见下方「依赖」)。装好后再执行脚本即可,无需编辑配置文件。

## 目录结构

```
skill-everyday/
├── SKILL.md              # 本文件
├── README.md             # 安装与运行(给人看的简要说明)
├── package.json          # 可选:声明 playwright 依赖,便于 npm install
├── data/
│   ├── analyzed.json     # 已分析技能列表(自动管理)
│   └── reports/          # 每日报告
│       └── YYYY-MM-DD-<slug>.md
└── scripts/
    └── runner.mjs        # 执行脚本
```

首次运行 `scripts/runner.mjs` 时会自动创建 `data/`、`data/reports/`(若不存在),并初始化 `data/analyzed.json`。

## 使用方法

在**本技能根目录**(`SKILL.md` 所在目录)执行:

```bash
node scripts/runner.mjs
```

或在 OpenClaw 中按触发语调用本技能后,由 Agent 执行上述命令。

## 工作流程

### 1. 获取热门技能列表

使用 Playwright 访问 `clawhub.ai/skills` 并拦截页面请求的 Convex `api/query` 响应以取得榜单数据:

```javascript
import { chromium } from 'playwright';

let apiData = null;
const browser = await chromium.launch({ headless: true });
const page = await browser.newPage();

await page.route('https://wry-manatee-359.convex.cloud/api/query', async route => {
  const response = await route.fetch();
  const data = await response.json();
  apiData = data;
  route.continue();
});

await page.goto('https://clawhub.ai/skills', { waitUntil: 'networkidle' });
await page.waitForTimeout(3000);

const result = apiData?.status === 'success' ? apiData.value : apiData;
const skills = result?.page || [];
// 按下载量排序
skills.sort((a, b) => (b.skill?.stats?.downloads || 0) - (a.skill?.stats?.downloads || 0));
```

### 2. 避免重复分析

从技能根目录下的 `data/analyzed.json` 读取已分析列表(路径以 `SKILL.md` 为锚:`path.join(skillRoot, 'data', 'analyzed.json')`)。

```javascript
// 与 scripts/runner.mjs 一致:SKILL_DIR = dirname(scripts),再拼 data/analyzed.json
const analyzedFile = path.join(SKILL_DIR, 'data', 'analyzed.json');
if (!analyzedData.analyzed.includes(skillSlug)) {
  // 分析该技能
}
```

### 3. 获取技能详情

打开技能详情页 `https://clawhub.ai/skill/{slug}`,读取标题、描述与页面正文(与榜单接口分离,非单独「完整信息」REST 文档)。

### 4. 尝试读取本地技能源码

在常见 OpenClaw 布局下,技能根目录的上一级为 `skills/`,据此拼接目标技能目录:

```javascript
const skillsRoot = path.join(SKILL_DIR, '..');
const targetSkillDir = path.join(skillsRoot, skillSlug);
```

### 5. 生成报告

按模板生成报告,保存到 `data/reports/YYYY-MM-DD-<slug>.md`(同日多次运行不会互相覆盖)。

### 6. 更新状态

自动更新 `data/analyzed.json` 添加新技能。

## 报告模板

- **内置深度模板的技能**(如 `self-improving-agent`):标题行 + **核心原理** + Clawhub 简介 + 元数据表 + **一、核心工作原理(OpenClaw 主流实现)**(1~4 小节)+ **二、为什么受欢迎** + 可选榜单数据补充;不插入通用「技术/设计亮点」占位段落。
- **其他技能**:排名/名称/标识/分类/下载与点赞 + Clawhub 功能介绍 + **核心流程与特点**(默认模板)+ 可选榜单数据补充。

报告保存到 `data/reports/YYYY-MM-DD-<slug>.md`。

## 依赖

- **Node.js**:执行 `scripts/runner.mjs`(ESM)。
- **Playwright + Chromium**:若目录内有 `package.json`,可在技能根目录执行 `npm install`,再 `npx playwright install chromium`;否则全局或上级环境已安装 `playwright` 亦可。仅声明 `metadata.openclaw.requires` 不会自动安装浏览器。

## 触发方式

用户发送 "分析一个 Clawhub 技能" 或 "skill-everyday" 时执行。