围棋打谱工具

SGF围棋棋谱转HTML打谱工具 - 将棋谱文件生成可在浏览器中交互回放的网页,支持多级变化分支、试下功能、真实音效。当用户需要"SGF转网页"、"打谱"、"棋谱查看"、"变化图浏览"时使用此技能。

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "围棋打谱工具" with this command: npx skills add zhangbin2025/weiqi-sgf

SGF 围棋打谱网页生成器

将 SGF 格式的围棋棋谱转换为单文件 HTML 网页,支持本地浏览器打开进行交互式打谱。

功能亮点

  • 🎯 多级变化分支 - 支持任意深度的嵌套变化图,可自由切换主分支和变化分支
  • 🔊 真实音效系统 - 落子声、提子声、撤销声各有不同,Web Audio API 实时生成
  • 试下功能 - 在任意局面下自由试下,支持提子判断
  • 📱 响应式设计 - 手机/平板/桌面端自适应,触屏滑动支持
  • 🌳 树状结构解析 - 完整支持 SGF 树状结构,支持 MultiGo、野狐等多种格式

安全说明 🔒

本技能是纯本地离线工具,无任何网络依赖:

安全项说明
网络访问❌ 无任何网络请求
文件系统仅读写用户指定路径
第三方依赖❌ 零依赖,仅用 Python 标准库
XSS防护html.escape() 转义所有 SGF 元数据
JSON注入防护json.dumps() + html.escape() + DOM解码三重保护

代码审计路径

  • replay.py:43-48 - 所有用户输入的 HTML 转义
  • replay.py:58 - JSON 数据的安全编码
  • replay.html - JSON 解码使用 textarea.innerHTML 安全解码

功能描述

根据 SGF 格式的围棋棋谱数据,生成一个单文件 HTML 网页,支持本地浏览器打开进行交互式打谱。

依赖

无第三方依赖 - 使用 Python 标准库(sys, re, os, json, html)

核心文件

文件功能
scripts/replay.pySGF 转 HTML 主脚本
scripts/sgf_parser.pySGF 树状解析模块
scripts/templates/replay.htmlHTML 页面模板

使用方法

# 基本用法
python3 scripts/replay.py <输入.sgf> [输出.html]

# 示例
python3 scripts/replay.py game.sgf                    # 输出到 /tmp/sgf-viewer/
python3 scripts/replay.py game.sgf mygame.html        # 指定输出文件名
python3 scripts/replay.py game.sgf -o /path/to/dir    # 指定输出目录

直接用浏览器打开生成的 HTML 文件即可打谱。

快捷操作

平台操作
桌面端/ 上一手/下一手,空格 播放/暂停
移动端左滑下一手,右滑上一手

功能详解

变化图浏览

当棋谱包含 AI 变化图(如野狐围棋棋谱)时:

  • 显示变化图按钮(带胜率信息,如"黑62%")
  • 点击进入变化图,自动显示手数标记
  • 支持多级嵌套变化分支

试下功能

在棋盘任意空点点击可进入试下模式:

  • 自由放置棋子,支持提子判断
  • 可撤销/前进试下着法
  • 点击 ✕ 退出试下,恢复原局面

音效系统

使用 Web Audio API 实时生成,无需加载音频文件:

  • 落子声 - 清脆的"嗒"
  • 提子声 - 短促的"啪"
  • 撤销声 - 低沉的反馈

SGF 格式支持

格式说明
标准格式(;GM[1];B[pd];W[pp]...)
MultiGo多分支嵌套格式
野狐格式平面格式、带AI变化图
MULTIGOGM定式库多向变化

API 接口

from sgf_parser import parse_sgf, parse_sgf_file

# 解析 SGF 字符串
result = parse_sgf(sgf_content)
# 返回: {"game_info": {...}, "tree": {...}, "stats": {...}, "errors": [...]}

# 解析 SGF 文件
result = parse_sgf_file("game.sgf")

更新日志

v2.0.1 (2026-04-09)

  • 修复 JosekiDB 格式棋谱解析错误(支持分支起始处属性)
  • 修复打谱网页滑条在主分支模式下无法跳转的问题
  • 新增变化分支注释显示功能
  • 新增快速返回上级按钮(⬅)
  • 非主分支时自动隐藏音效按钮
  • 使用棋局名称作为网页标题

v2.0.0 (2026-04-08)

  • 重构打谱工具,支持嵌套变化图

使用指令示例

"把 xxx.sgf 生成打谱网页" "查看这盘棋的变化图" "生成一个围棋打谱页面"

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

围棋定式数据库

weiqi-joseki v2.1.1 围棋定式数据库 - 基于KataGo棋谱构建。重构版采用多级时序连通性过滤,性能大幅提升。模块化设计,数据完全本地存储。

Registry SourceRecently Updated
General

MenuVision

Build beautiful HTML photo menus from restaurant URLs, PDFs, or photos using Gemini Vision and AI image generation

Registry SourceRecently Updated
5830Profile unavailable
General

HTML Report Slides

生成深蓝科技风的 HTML 单页汇报稿(PPT 风格)。适用于技术汇报、成本汇报、战略规划、架构全景图等单文件演示场景。触发词:汇报页面、汇报 PPT、HTML 汇报、科技风汇报、PPT 页面、单文件演示、战略汇报、成本汇报、架构全景图、故事线规划、领导汇报稿、深蓝风汇报、产品规划汇报、slide html。

Registry SourceRecently Updated
990Profile unavailable
General

原型设计技能

通用页面原型设计技能。基于 58种设计风格(默认Figma 风格) UI 的复杂业务系统 HTML 原型开发, 包括标准页面结构、统计卡片、筛选条件、数据表格、弹窗设计。 适用场景:(1) 创建新的管理页面原型 (2) 对照业务文档实现功能模块 (3) 设计弹窗和详情页 (4) 构建带看板和列表视图的页面。 **...

Registry SourceRecently Updated
1101Profile unavailable