闲社服务运行正常AI智能体自动化平台
d

Demo-Slap视频剪辑

技能标识:demo-slap

Generate CS2 highlights and fragmovies from demos using the Demo-Slap API, with optional Leetify integration and Demo-Slap match history fallback to select recent matches. Use when a user asks to record a highlight, render a clip, make a fragmovie, clip a round, or turn a CS2 demo into MP4 video.

作者:admin | 来源记录:ClawHub
登记来源
ClawHub
版本
V 0.1.4
检测标记
后台标记通过
免费
免费获取
1
收藏
来源与检测标记为平台登记信息,并不代表已展示可复核的检测报告。使用前请核对版本、依赖和所需权限,建议先在隔离环境中运行。
概述
安装方式
版本历史

Demo-Slap视频剪辑

Demo-Slap 高光片段技能

从CS2 Demo文件中生成MP4格式的高光片段和集锦视频。

该技能专为OpenClaw环境设计,支持后台任务、本地辅助脚本和基于聊天的交付功能。使用Python 3脚本和requests包进行HTTP API访问。

运行时输入要求:

  • - 必需:DEMOSLAPAPIKEY
  • 可选:LEETIFYAPIKEY
  • 可选部署辅助:DEMOSLAPWATCHDOGJOBID

脚本

在技能根目录下运行捆绑脚本,通常从scripts/目录执行。

Demo-Slap
脚本用途
demoslapmatches.py从Demo-Slap的/public-api/matches接口列出最近比赛
demoslapresolve.py
尝试通过索引从Demo-Slap比赛历史中解析回放/Demo URL;如果API仅暴露jobId则明确报错 |

| demoslapmatch_pick.py | 按索引选择Demo-Slap比赛,返回包含jobId的结构化比赛信息 | | demoslapanalyze.py | 提交Demo进行分析,轮询直至完成,输出高光片段JSON | | demoslaprender.py | 渲染一个或多个高光片段,轮询直至完成,输出剪辑URL | | demoslapcommon.py | 共享工具(配置、API调用、状态) |

Leetify
脚本用途
leetify/leetifymatches.py列出最近比赛
leetify/leetifyresolve.py
通过用户名+比赛索引解析回放URL |

| leetify/leetifysaveid.py | 保存用户名到Steam64 ID的映射 | | leetify/leetify_common.py | 共享Leetify工具 |

比赛源选择

  • - 当LEETIFYAPIKEY可用时,优先使用Leetify进行最近比赛发现。
  • 如果未配置LEETIFYAPIKEY但DEMOSLAPAPIKEY可用,则使用Demo-Slap的/public-api/matches比赛历史。
  • Swagger文档:https://api-doc.demo-slap.net/
  • 将Demo-Slap比赛历史作为备选发现路径,用于在分析/渲染前列出比赛并选择现有已分析比赛或回放上下文。

运行时文件

在执行过程中使用以下文件作为可选的本地运行时状态:

  • - data/state.json
  • data/highlights.json
  • data/history.log
  • data/steam_ids.json
  • data/config.json

这些文件是本地操作的运行时辅助文件,无需理解或检查技能包本身。

state.json跟踪当前操作:
json
{
status: idle|analyzing|rendering|done|error,
job_id: ...,
renderjobid: ...,
chat_id: telegram:182314856,
clipurls: {highlightid: https://...},
progress: polling 3/30,
lastcompletedop: analyze|render,
notification: {
sent: false,
sent_at: null,
lastattemptat: null,
error: null
},
updated_at: ISO timestamp
}

工作流程

1. 查找比赛

当LEETIFYAPIKEY可用时的首选路径: bash python3 scripts/leetify/leetify_matches.py [--limit 10]

当LEETIFYAPIKEY缺失但DEMOSLAPAPIKEY可用时的备选路径:
bash
python3 scripts/demoslapmatches.py [] [--limit 10]

  • - 使用Demo-Slap的/public-api/matches接口
  • 如需架构详情,请参考https://api-doc.demo-slap.net/上的Demo-Slap Swagger文档
  • 如果提供了且已映射,则尽可能按该玩家的Steam ID过滤比赛
  • 用户选择比赛后,运行:
bash python3 scripts/demoslapmatch_pick.py [] --match-index
  • - 将返回的jobId作为下游Demo-Slap操作的主要句柄

2. 解析回放URL

使用Leetify时的首选路径: bash python3 scripts/leetify/leetify_resolve.py --match-index

使用Demo-Slap备选方案时:
bash
python3 scripts/demoslapmatch_pick.py [] --match-index

  • - 使用返回的jobId作为所选比赛标识符
  • 如果存在demoUrl,仍可使用按URL分析
  • 如果demoUrl不存在,跳过URL解析,继续使用接受现有分析jobId的API端点
  • 使用GET /public-api/analyze/{jobId}/status和GET /public-api/analyze/{jobId}/data检查现有高光片段
  • 如果用户需要剪辑且高光片段已存在,直接从该jobId渲染

3. 后台分析

bash python3 -u scripts/demoslapanalyze.py --url URL> --username --chat-id ID>

使用exec(background: true)运行并保留返回的进程/会话ID。

OpenClaw环境的可选部署特定看门狗模式:

  • - 仅当后台分析/渲染工作需要定期交付检查时才使用看门狗。
  • 尽可能重用现有部署看门狗,而不是假设始终需要新的持久调度器条目。
  • 如果部署选择通过内置的cron工具创建或启用看门狗,请将其范围限定在活动运行中,并在终端交付后再次禁用它。
  • 2分钟间隔是合理的默认值。
  • 仅将scripts/demoslapwatchdog.sh status|tail|job用作检查运行时状态、日志或部署特定作业引用的本地辅助工具。
  • 在运行时将data/state.json和data/highlights.json视为事实来源。

代理工作流程:

  1. 1. 选择比赛源:

- 如果存在LEETIFYAPIKEY则使用Leetify
- 如果LEETIFYAPIKEY缺失且DEMOSLAPAPIKEY存在,则使用Demo-Slap的/public-api/matches
  1. 2. 如果使用Leetify,解析回放URL并运行分析
  2. 如果使用Demo-Slap备选方案,选择比赛并检查返回的jobId
  3. 如果所选Demo-Slap比赛已有分析数据,则按jobId继续,而不是强制按URL分析
  4. 仅当长时间运行的分析/渲染工作受益时才使用或启用部署看门狗
  5. 启动分析或渲染,并在适用时保存返回的进程/会话ID
  6. 当部署使用看门狗时,让其交付结果
  7. 终端交付后再次禁用看门狗

4. 后台渲染

bash

单个高光片段

python3 -u scripts/demoslaprender.py ID> ID> --chat-id

集锦视频

python3 -u scripts/demoslaprender.py ID> ... --fragmovie --chat-id ID>

使用exec(background: true)运行并保留返回的进程/会话ID。

OpenClaw环境的可选部署特定看门狗模式:

  • - 仅当后台分析/渲染工作需要定期交付检查时才使用看门狗。
  • 尽可能重用现有部署看门狗,而不是假设始终需要新的持久调度器条目。
  • 如果部署选择通过内置的cron工具创建或启用看门狗,请将其范围限定在活动运行中,并在终端交付后再次禁用它。
  • 2分钟间隔是合理的默认值。
  • 仅将scripts/demoslapwatchdog.sh status|tail|job用作检查运行时状态、日志或部署特定作业引用的本地辅助工具。
  • 在运行时将data/state.json和data/highlights.json视为事实来源。

代理工作流程:

  1. 1. 仅在活动运行需要时启用或重用部署看门狗
  2. 启动渲染并保存返回的进程/会话ID
  3. 轮询进程输出中的Estimated finish:行,如果存在则告知用户预计完成时间
  4. 当使用看门狗时,让其交付结果
  5. 终端交付后再次禁用看门狗

关键: 从原始请求的入站元数据中设置。将硬编码的聊天标识符仅视为本地示例,而非可重用的默认值。

5. 检查状态

标签

skill ai

通过对话安装

以下为平台配置的接入选项,并非逐项实测通过。能否安装取决于客户端支持、技能来源和运行环境:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 demo-slap-1776294252 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 demo-slap-1776294252 技能

通过命令行安装

skillhub install demo-slap-1776294252

下载

⬇ 下载 demo-slap v0.1.4(免费)

文件大小: 18.16 KB | 发布时间: 2026-4-16 17:22

v0.1.4 最新 2026-4-16 17:22
Metadata/docs cleanup: documented optional Leetify and watchdog env inputs explicitly, clarified deployment-provided watchdog job id, and polished runtime requirements text.
返回顶部