OpenClaw/clawhub-security-signals huggingface dataset:
Skill: ssidharhubble/market-liquidity-map (version 1.0.1)

--- name: market-liquidity-map description: Identify institutional stop clusters and max pain zones. compatibility: OpenClaw, Zo Computer metadata: author: ssidharHubble --- # Liquidity Map & Max Pain Identify institutional stop clusters and max pain zones. ## Usage This skill connects to the Money Machine x402 API. Calls are free for basic health, but premium signals require a 402 payment proof. ```javascript import { execute } from "market-liquidity-map"; const signal = await execute({ ticker: "BTC" }); ```

path: index.js
content: 
export async function run({ ticker = "BTC" }) {
  const url = `https://money-machine-x402-ssyopros.zocomputer.io/api/liquidity/${ticker.toUpperCase()}`;
  const response = await fetch(url);
  if (response.status === 402) {
    return {
      error: "402 Payment Required",
      message: "Premium signal. Send 0.005 SOL to AKz1pZ8yxtFQLwTpDKJGZjLeBUX4rnobX7HdMF3uvK6W",
      payment_url: "https://ssyopros.zo.space/pricing"
    };
  }
  return await response.json();
}

/**
 * @tool
 * @description Identify institutional stop clusters and max pain zones.
 * @param {string} ticker - Asset ticker (e.g. SPY, BTC, TSLA)
 */
export async function execute(args) {
  return await run(args);
}


path: package.json
content: name: market-liquidity-map
version: 1.0.1
description: Identify institutional stop clusters and max pain zones.
author: ssidharHubble
license: MIT
main: index.js
type: module

Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (MEDIUM)
Skill: la1850/meta-skill (version 1.0.0)

--- name: meta-skill description: "Trajectory compiler that converts real OpenClaw session traces (or raw_trajectory_log) into a parameterized, reusable Skill via 4 stages: trace interception → DAG abstraction → schema+code synthesis → registration." --- # Meta‑Skill — Trajectory Compiler ## Overview Compile a concrete, parameter-filled execution trace into a reusable Skill with dynamic inputs. This skill implements a **4‑stage closed‑loop pipeline**: 1) Trace Interception → 2) DAG Abstraction → 3) Schema+Code Synthesis → 4) Registration. ## Stage 1 — Trace Interception (implemented) Use `scripts/trace-from-session.js` to generate a **real trace** from OpenClaw session JSONL, or `scripts/trace-interceptor.js` for JSONL tool event streams. ## Stage 2 — DAG Construction & Abstraction (implemented) Use `scripts/trajectory-compiler.js` to build a DAG and lift variables to inputs. ## Stage 3 — Code & Schema Synthesis (implemented) Compiler emits `references/schema.json`, `references/plan.json`, `references/run-flow.md`, and `scripts/run.js`. ## Stage 4 — Registration & Hot Reload (implemented) Compiler writes into the Skills directory and requires a skills refresh. ## Usage See `references/pipeline.md` and `references/compiler-spec.md`.


Security scan verdicts — ClawScan: suspicious | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (HIGH)
Skill: ckchzh/backuptool (version 2.0.4)

--- name: "backuptool" version: "2.0.3" description: "Reference tool for devtools — covers intro, quickstart, patterns and more. Quick lookup for Backuptool concepts, best practices, and implementation patterns." author: "BytesAgain" homepage: "https://bytesagain.com" source: "https://github.com/bytesagain/ai-skills" tags: [backuptool, reference] category: "devtools" --- # Backuptool Reference tool for devtools — covers intro, quickstart, patterns and more. Quick lookup for Backuptool concepts, best practices, and implementation patterns. No API keys or credentials required. ## Commands | Command | Description | |---------|-------------| | `intro` | intro reference | | `quickstart` | quickstart reference | | `patterns` | patterns reference | | `debugging` | debugging reference | | `performance` | performance reference | | `security` | security reference | | `migration` | migration reference | | `cheatsheet` | cheatsheet reference | ## Output Format All commands output plain-text reference documentation via heredoc. No external API calls, no credentials needed, no network access. --- *Powered by BytesAgain | bytesagain.com | [REDACTED_SECRET]*


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: kwokkwok/feishu-bitable-tasker (version 0.1.0)

--- name: feishu-bitable-tasker description: 基于飞书知识库多维表格和文档能力的任务管理技能。提供创建任务、创建任务关联文档、修改任务状态等功能，可与外部工具灵活集成。 --- # 飞书任务管理 Skill ## 路径约定 **所有命令路径均相对于本 skill 目录。** 执行命令前必须先 `cd` 到 skill 所在目录。 确定 skill 目录：从当前工作目录查找 `.agents/skills/feishu-bitable-tasker/` 或 `.claude/skills/feishu-bitable-tasker/`，以该目录为基准执行所有命令。 ## 调用流程 ### 1. 检查配置 ```bash cd <SKILL_DIR> && ls config/credentials.json config/.configured ``` - 两个文件都存在 → 跳到「可用命令」 - 不存在 → 进入「首次配置」 > **多应用支持：** `config/` 下可存放多个凭证文件（如 `team-a.json`、`team-b.json`）。检查配置时，如果默认的 `credentials.json` 不存在但有其他凭证文件，列出可用文件让用户选择。所有命令中的 `config/credentials.json` 均可替换为其他凭证文件路径。 ### 2. 首次配置 > **注意：** 本 skill 纯 Node.js 原生模块实现，无需运行 `npm install`。 用一次 AskUserQuestion 收集以下信息（跳过已有有效值的部分）。**每个问题直接要求用户输入数据，不要提供"有/没有"之类的选择项**。引导提示放在问题描述中即可： - **飞书应用凭证** — 要求输入 App ID 和 App Secret（用空格或逗号分隔）。问题中提示：如果还没有飞书应用，请先到飞书开放平台创建企业自建应用。 - **知识库多维表格链接** — 要求粘贴知识库中的多维表格 URL，格式 `https://xxx.feishu.cn/wiki/<node_token>`。问题中提示：**必须是知识库中的多维表格链接**（/wiki/ 格式），不支持独立的多维表格（/base/ 格式）。如果还没有，请先在飞书知识库中创建多维表格。 - **数据表名称（可选）** — 在多维表格中创建的数据表名称。问题中提示：留空则使用多维表格自身的名称作为默认值。 - **凭证文件名（可选）** — 如果用户需要管理多个飞书应用，可指定凭证文件名（如 `team-a`）。问题中提示：留空则使用默认的 `credentials`。最终写入 `config/<名称>.json`。 > 提醒用户：需要在知识库中的多维表格上添加应用（"..." → "更多" → "添加文档应用"），并将权限设置为**"可管理"**（默认"可编辑"权限不足） 收集完成后，写入 `config/credentials.json`（如果用户指定了凭证文件名，则写入 `config/<用户指定的名称>.json`），然后执行配置： **执行配置** ```bash cd <SKILL_DIR> && node scripts/admin.js config-from-links config/credentials.json "<知识库多维表格链接>" ["<数据表名称>"] ``` 成功后自动创建数据表、添加字段、创建任务文档根节点、写入配置。 如果报权限错误（`permission denied` / `RolePermNotAllow`），提示用户去多维表格中添加应用权限后重试。 **第三步：验证** ```bash cd <SKILL_DIR> && echo "n" | node scripts/validate.js config/credentials.json ``` 全部通过即配置完成。 ## 可用命令 > 以下所有命令均需先 `cd <SKILL_DIR>`。 ### 创建任务 ```bash node scripts/task-manager.js config/credentials.json create "<标题>" [type=值] [status=值] [url=值] ``` - 所有参数均为可选，调用者按需指定 - 创建后返回 `record_id`，可用于后续创建文档 ### 创建文档 ```bash node scripts/task-manager.js config/credentials.json create-doc "<record_id>" ``` 在知识库中按「{表名}-任务文档 → 年月 → 日期 → 任务名」层级创建文档，自动复用已有的月/日节点。 ### 查看统计 ```bash node scripts/task-manager.js config/credentials.json list ``` ### 验证配置 ```bash echo "n" | node scripts/validate.js config/credentials.json ``` ## 管理命令 ```bash # 列出表格字段 node scripts/admin.js list-fields config/credentials.json # 检查权限 node scripts/admin.js check-permissions config/credentials.json ``` ## 故障排查 遇到错误时先查阅 FAQ.md，其中记录了实际调试中验证过的解决方案。 快速参考： | 错误 | 原因 | 解决 | | ------------------------------------ | ------------------------------ | ---------------------------------------------- | | 认证失败 | app_id/app_secret 错误 | 检查凭证，确认是企业自建应用 | | permission denied / RolePermNotAllow | 应用未添加到多维表格或权限不足 | 在知识库的多维表格中添加应用，权限设为"可管理" | | NOTEXIST (91402) | app_token 或 table_id 无效 | 重新运行 config-from-links | | 链接格式不正确 | 提供了独立多维表格链接 | 必须使用知识库中的多维表格链接（/wiki/ 格式） | 更多问题详见 FAQ.md。

path: package.json
content: private: yes

Security scan verdicts — ClawScan: suspicious | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (CRITICAL)
Skill: c7934597/akashic-knowledge-base (version 1.0.0)

--- name: akashic-knowledge-base version: 1.0.0 description: Query your knowledge base using AI-powered search. Combines web search with chat AI for comprehensive answers. tags: - knowledge - search - qa - chat - web-search triggers: - search for - find information - look up - what is - tell me about - knowledge base tools: - mcp:akashic:rag_query - mcp:akashic:web_search - mcp:akashic:chat_completion - mcp:akashic:translate_content requires: mcp: - akashic --- # Akashic Knowledge Base You are a knowledge assistant powered by the Akashic platform. You help users find information through web search and AI-powered analysis. ## Capabilities - **RAG Query**: Search the internal knowledge base using hybrid vector + BM25 search - **Web Search**: Real-time search using SerpApi (Google) with Tavily fallback - **Chat AI**: Multi-model AI for answering questions and analyzing search results - **Translation**: Multilingual support for queries and answers ## Workflow 1. **Understand the question**: Determine if this needs an internal knowledge base query, a web search, or can be answered directly 2. **Knowledge Base Search** (preferred for internal data): Use `rag_query` to search the internal knowledge base - Set `include_answer: true` for AI-synthesized answers - Use `max_results: 5` for comprehensive retrieval 3. **Web Search** (for external/real-time info): Use `web_search` to find relevant information - Use `search_depth: "basic"` for simple factual queries - Use `search_depth: "advanced"` for complex topics needing more context - Set `include_answer: true` for AI-summarized search results 4. **Synthesize**: Use `chat_completion` to combine search results into a clear answer 5. **Translate** (if needed): Use `translate_content` when the user needs answers in a different language ## Rules - For questions about internal/proprietary data, always try `rag_query` first - For questions about real-time or external information, use `web_search` - For complex questions, combine both `rag_query` and `web_search`, then synthesize with `chat_completion` - Always cite sources when presenting information from search - If the user asks in a non-English language, respond in the same language - For follow-up questions, build on previous search context ## Examples User: "What does our company policy say about data retention?" → Use `rag_query` with query="data retention policy", include_answer=true User: "What is the current market cap of NVIDIA?" → Use `web_search` with query="NVIDIA current market cap 2026", include_answer=true User: "Compare our internal ESG metrics with industry benchmarks" → Use `rag_query` for internal metrics, `web_search` for industry benchmarks, then `chat_completion` to synthesize User: "Translate the search results about AI regulations into Japanese" → First search, then use `translate_content` with target_lang="ja"


Security scan verdicts — ClawScan: suspicious | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (MEDIUM)
Skill: ljseeking/geo-analysis-doubao (version 1.0.2)

# Doubao GEO Audit Skill (豆包 GEO 效果评估 Skill) ## 0. Skill 基本信息 - **Skill 名称**: Doubao GEO Audit Skill - **标识符**: `doubao-geo-audit-skill` - **建议入口**: 优先读取根目录 `manifest.json` - **默认调用模式**: `report_mode=compact` - **编码要求**: 程序化调用统一使用 UTF-8 JSON ## 1. Skill 描述 这个 Skill 用于评估一个品牌、产品或文章内容，是否容易被豆包大模型理解、总结、引用和推荐。它的核心目标是输出一份简洁、清楚、可执行的 GEO（生成式引擎优化）评估报告，帮助品牌快速了解其当前内容在豆包体系内的友好度。 ## 2. 适用场景 - 评估品牌官网介绍或品牌手册； - 评估产品说明书、产品宣发文案； - 评估公众号文章、知乎回答、今日头条文章、小红书文案等自媒体内容； - 评估销售话术、客服 FAQ 等对外话术材料； - 想要了解当前品牌内容在豆包中推荐概率的品牌方、营销人员或内容创作者。 ## 3. 不适用场景 - 自动化批量爬取和评估全网数据； - 深度行业报告、竞品对比分析； - 后端数据存储与月度监测； - 需要复杂交互、账号系统或付费系统支持的长期项目。 *(当前 Skill 仅为快速评估内容的极简版本，不涉及后端工程或数据长期留存)* ## 4. 输入要求 用户可以通过任意文本形式输入以下类型之一的资料： - 品牌名称 + 简介 - 官网介绍 - 产品介绍 - 文章/文案内容（如公众号、知乎、小红书等） - FAQ、销售话术等 如果输入的资料过少，将评估并在报告中标记“资料不足”。 建议的程序化参数如下： - `content`: 必填，待评估原文； - `content_type`: 选填，资料类型，如 `website_intro`、`article`、`faq`； - `report_mode`: 选填，`compact` 或 `standard`，默认 `compact`。 ## 5. 评分维度 总分 100 分，划分为 6 个维度： 1. **品牌定义清晰度** (20 分): 判断内容是否清楚说明“这个品牌是什么”。 2. **目标用户清晰度** (15 分): 判断内容是否清楚说明“给谁用”。 3. **问题与场景清晰度** (15 分): 判断内容是否清楚说明“解决什么问题、适合什么场景”。 4. **内容结构化程度** (20 分): 判断内容是否有标题、列表、FAQ、流程、对比、总结等结构。 5. **可引用性** (15 分): 判断内容中是否有适合豆包直接引用的清晰句子。 6. **推荐触发度** (15 分): 判断内容是否能让豆包在用户提问相关问题时想到这个品牌。 ## 6. 评级标准 - **A (90-100)**：豆包非常容易理解和推荐； - **B (80-89)**：豆包较容易理解，但仍可优化； - **C+ (70-79)**：有基础，但结构化不足； - **C (60-69)**：豆包可以理解一部分，但推荐概率较低； - **D (50-59)**：内容分散，豆包难以形成稳定认知； - **E (50 以下)**：豆包很难准确理解和推荐。 ## 7. 输出格式 报告固定输出 10 个章节（参见 `templates/doubao_geo_audit_report.md`）： 1. 基础信息 2. 总体评分 3. 分项评分 4. 豆包可能如何理解这个品牌 5. 当前最大问题 6. 豆包推荐概率判断 7. 可引用句评估 8. 优先优化建议 9. 建议补充的 FAQ 10. 最终结论 输出风格：简洁、直接，不要写成长篇大论，避免复杂目录，不要编造未提供的信息。 默认采用 `compact` 模式，以减少自动评测和裁判阶段的耗时： - 每个章节只保留最关键的信息； - “当前最大问题”控制在 3 条以内； - “优先优化建议”控制在 5 条以内； - “建议补充的 FAQ”默认 5 条； - 不复述用户原文，不输出思维过程。 ## 8. 注意事项 - Skill 工作流程必须严格依据用户提供的文本进行评估，不随意联想。 - 若信息不足，“分项评分”与“可能存在的误解”需要明确标出。 - 可引用句推荐必须符合句式：“XXX 是面向 ______ 的 ______，帮助 ______ 通过 ______ 解决 ______ 问题。” - 程序化调用时优先使用 JSON，不建议再用 XML 包裹输入。 - 如果上游系统会把文本塞进 JSON 字符串，必须正确转义 `\\`、`\"` 和换行符 `\n`。 ## 9. 示例调用方式 ```json { "skill": "doubao-geo-audit-skill", "action": "audit", "parameters": { "content": "OpenClaw 是一个面向 AI 开发者和产品经理的 Agentic 平台，帮助他们通过无缝对接底层模型能力和工作流，解决复杂任务自动化编排的问题。", "content_type": "brand_intro", "report_mode": "compact" } } ```


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal:  | SkillSpector: clean (LOW)
Skill: dhrxy/psd-automator-skill-command (version 1.0.0)

--- name: psd-automator-skill-command description: "Dispatch PSD automation tasks through skill command entry while reusing the same /psd orchestrator. Requires psd-automator core." metadata: openclaw: userInvocable: true commandDispatch: tool commandTool: psd_automator_skill_command commandArgMode: raw --- # psd-automator-skill-command This skill command provides a skill-entry equivalent of `/psd` without changing existing `/psd` behavior. ## Usage ```text /psd-automator-skill-command <agentId> <taskJsonPath|中文需求> [--dry-run] [--index <indexPath>] ``` Example: ```text /psd-automator-skill-command design-mac-01 帮我找到20260302工位名牌.psd，把姓名改成小一，并保存成png放到桌面 ``` ## Notes - This command reuses the same PSD orchestration pipeline as `/psd`. - It keeps DINGTALK image marker behavior consistent with existing PSD workflow. - It contributes to the same skills usage statistics store with `entrypoint=skill_command`.


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: moltiumv2-lite (version 2.0.2)

--- name: MoltiumV2 description: Lightweight Clawhub bootstrap skill for MoltiumV2. Downloads the full RPC-first local toolkit from https://moltium.fun and runs init/doctor. --- # MoltiumV2 (Clawhub Lite Bootstrap) This Clawhub upload is intentionally **small** (text-only) to avoid upload limits. It bootstraps the full MoltiumV2 toolkit from the canonical website: - Index / docs: https://moltium.fun/skill.md - Skillpack artifacts: - https://moltium.fun/MoltiumV2-skillpack-latest.zip - https://moltium.fun/MoltiumV2-skillpack-latest.tar.gz ## Quick start From the folder where you installed/uploaded this Clawhub skill, run: ```bash node scripts/bootstrap.mjs ``` Optional environment variables: - `MOLTIUMV2_DIR` — install target folder (default: `MoltiumV2`) - `MOLTIUMV2_BASE_URL` — override download base (default: `https://moltium.fun`) What it does: - downloads `MoltiumV2-skillpack-latest.tar.gz` - extracts to `MOLTIUMV2_DIR` - runs `npm install` - runs `ctl.mjs init --pretty` (auto-generates wallet if missing) - runs `ctl.mjs doctor --pretty` Then fund the printed wallet pubkey before sending real transactions. ## Safety rules (must) - Never paste seed phrases into chats. - Start with `--simulate` before real trades.


Security scan verdicts — ClawScan: suspicious | static analysis: suspicious | VirusTotal: suspicious | SkillSpector: suspicious (MEDIUM)
Skill: tt-u/bmp-avatar-generator (version 0.1.2)

--- name: bmp-avatar-generator version: 0.1.2 description: Generate a deterministic pixel-art avatar SVG from a seed string using the @bitmappunks/avatar-generator npm package (version 0.0.5, run via npx), and save it to a specified file path. Use this whenever the user asks to create, generate, make, or produce an avatar from a seed, name, or ID, including requests like "avatar for user X", "generate an avatar", "make me an avatar", "bitmappunks", or any mention of avatar generation tied to a deterministic input string. author: BitmapPunks license: MIT homepage: https://github.com/bitmappunks-com/avatar-generator-skill --- # Avatar Generator > [English](SKILL.md) · [中文](SKILL-zh.md) Generate a deterministic SVG avatar by running `@bitmappunks/avatar-generator@0.0.5` via `npx`. Same seed → same avatar. **Version is locked to `0.0.5`.** Do not upgrade or drop the version pin without explicit user instruction. ## Inputs required 1. **seed** — the string that deterministically produces the avatar. Optional: if omitted, default to the current Unix timestamp in seconds so the result changes each time, and report the exact seed used back to the user. 2. **output path** — where the `.svg` file is saved. If the user gave a directory, join it with `<seed>.svg`. If no path was given, default to `./<seed>.svg` in the current working directory and tell the user what path you used. Ask only if the output path is ambiguous. ## Run ```bash npx -y @bitmappunks/avatar-generator@0.0.5 --out "<output-path>" --seed "<seed>" ``` - `-y` auto-accepts the npx install prompt. - The `@0.0.5` pin is required — never run it unpinned (`@latest` or bare). - Resolve `<seed>` to the user-provided seed, otherwise use the current Unix timestamp in seconds. ## Preview Render the generated SVG inline in the terminal using the bundled `scripts/svg-tui.js` (resolve its path from this skill's base directory, shown in the skill-load message): ```bash node "<skill-base-dir>/scripts/svg-tui.js" "<output-path>" ``` It parses the avatar's pixel stripes and prints them as ANSI truecolor blocks — works in any terminal transcript that supports 24-bit color, with no external dependency beyond `node` (already required by `npx`). ## Confirm Tell the user the absolute output path and the seed. One sentence. ## Notes - Output is SVG only. For PNG or resizing, convert separately (e.g. `rsvg-convert`, `sharp`) — don't silently change format. - One seed per invocation. For multiple seeds, loop the command. - If `npx` errors (network, registry, install), surface the error — don't retry silently or fall back to a different version.


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (HIGH)
Skill: mikeclaw007/brawl-stars (version 0.1.0)

--- name: brawl-stars description: 注册“荒野乱斗”技能；用于游戏公开页面、版本活动、赛事内容与社区规则整理。 homepage: `https://supercell.com/en/games/brawlstars/` metadata: {"clawdbot":{"emoji":"🎮"}} --- # 荒野乱斗 用途与边界 - 面向公开官网、活动页、赛事页、公告页与社区规则页的信息整理 - 不提供代练、外挂、作弊、账号交易、充值绕过或风控规避能力 - 仅处理公开可见的版本活动、玩法说明、赛事信息与规则公告 关键入口 - 主页：https://supercell.com/en/games/brawlstars/ - 活动与公告：官网中的公告、版本更新、活动中心或赛事入口 - 规则与帮助：未成年人规则、处罚公告、客服与帮助中心入口 常见任务 - 版本更新、活动时间、奖励结构与参与方式整理 - 赛事信息、社区活动、联动内容与公告汇总 - 账号安全、违规处罚、健康系统与帮助信息提取 数据字段 - 活动名称、上线时间、奖励说明、参与入口、链接 - 版本更新、赛事入口、规则页、公告链接 - 处罚说明、健康系统、客服入口、帮助页链接 自动化要点 - 活动与版本频繁变化，输出时保留日期与来源链接 - 不得输出任何作弊、绕过防沉迷、绕过充值限制或账号交易建议 - 不处理玩家私密数据、战绩接口、登录态资产或未公开测试内容 示例流程 - 活动整理：访问 Brawl Stars 活动与公告页 → 提取时间与奖励 → 输出表格 - 版本摘要：进入更新公告 → 提取新内容与调整点 → 输出摘要 - 规则汇总：访问帮助与处罚页 → 提取风险点与申诉入口 → 输出清单 合规提示 - 遵守平台规则、版权要求与账号安全要求 - 只整理公开信息，不输出敏感数据或非公开内容


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: abigale-cyber/wechat-collect (version 1.0.0)

--- name: wechat-collect description: Fetch a public WeChat article URL, archive the raw HTML, and convert the article into a stage-1 compatible brief in `content-production/inbox/`. Use when Codex needs to collect公众号文章素材 or start the Stage 2 collect-to-create pipeline from a public `mp.weixin.qq.com` URL. --- # WeChat Collect Collect a public WeChat article and transform it into a brief that can be passed directly to `case-writer-hybrid`. ## Quick Start Run the default command: ```bash .venv/bin/python -m skill_runtime.cli run-skill wechat-collect --input content-production/inbox/20260403-wechat-collect-url.txt ``` ## Prepare Input Pass a text file containing at least one URL. The first detected URL is used. Example input file: ```text content-production/inbox/20260403-wechat-collect-url.txt ``` ## Follow Collection Workflow 1. Fetch the public article HTML from the first detected URL. 2. Extract title, author, date, and candidate正文段落 from the page. 3. Build a stage-1 compatible brief that downstream writing steps can reuse. 4. Archive the raw HTML for traceability and later extraction tuning. ## Write Output Write the brief to: ```text content-production/inbox/<date>-<slug>-gzh-brief.md ``` Write the raw archive to: ```text content-production/inbox/raw/wechat/<date>-<slug>.html ``` ## Respect Constraints - Only works for publicly reachable article URLs - Deleted articles or anti-crawl variants may produce reduced-quality extraction or fail explicitly - Current extraction is usable for pipeline intake, but still needs quality tuning for cleaner argument mining ## Read Related Files - Shared runtime: `skills/wechat-collect/runtime.py` - Pipeline entry: `skill_runtime/engine.py` - Stage 2 workflow: `workflows/stage2-wechat-pipeline.json` - Planning reference: `docs/content-skills-implementation-plan.md`


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (MEDIUM)
Skill: 1kalin/afrexai-postmortem (version 1.0.0)

# Incident Postmortem Generator Generate blameless incident postmortems from raw notes, Slack threads, or bullet points. ## What It Does Takes messy incident details and produces a structured postmortem document following Google/Atlassian SRE best practices. ## Usage Provide incident details in any format — timeline bullets, Slack copy-paste, verbal notes — and the agent will produce: 1. **Executive Summary** — What happened, impact, duration, severity 2. **Timeline** — Minute-by-minute from detection to resolution 3. **Root Cause Analysis** — 5 Whys format, no finger-pointing 4. **Impact Assessment** — Users affected, revenue impact, SLA breach 5. **Action Items** — Prioritized fixes with owners and deadlines 6. **Lessons Learned** — What worked, what didn't, what was lucky 7. **Prevention Measures** — Systemic changes to prevent recurrence ## Instructions When the user provides incident details: 1. Ask clarifying questions ONLY if critical info is missing (severity, duration, or resolution are the minimum) 2. Generate the full postmortem in markdown 3. Flag any gaps the team should fill in before publishing 4. Suggest 3-5 specific, actionable prevention measures ranked by effort/impact ### Formatting Rules - Use ISO timestamps in timeline - Bold severity level (SEV1-SEV4) - Action items must have: description, owner placeholder, deadline placeholder, priority (P0-P3) - Keep language blameless — "the deploy process" not "Bob deployed" ### Severity Guide - **SEV1**: Revenue-impacting, all users affected, >1hr - **SEV2**: Major feature down, >30% users, >30min - **SEV3**: Degraded performance, <30% users - **SEV4**: Minor issue, workaround available ## Example Input ``` prod went down at 2pm, bad deploy, rolled back at 2:45, ~500 users couldn't checkout, lost maybe $12k revenue ``` ## Example Output Structure ```markdown # Incident Postmortem: Checkout Service Outage **Date:** 2026-02-22 | **Severity:** SEV1 | **Duration:** 45 minutes **Author:** [Team Lead] | **Status:** Draft ## Executive Summary ... ``` ## Pro Tip Run this after every incident, even small ones. The pattern recognition across postmortems is where the real value lives. Teams that write postmortems for SEV3+ incidents catch systemic issues 3x faster. --- Need help building incident response processes from scratch? Check out the [AfrexAI Context Packs](https://afrexai-cto.github.io/context-packs/) — pre-built operational frameworks for SaaS, healthcare, legal, and 7 more industries. Starting at $47.


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)