Workbuddy 工作空间克隆大师

SKILLAI 工具
AI 工具 未标注权限 许可证不明确
安装这个技能

备份 WorkBuddy 工作空间及对话记录,并在新设备恢复。当用户需要迁移工作空间、备份对话历史、或在另一台电脑继续使用 WorkBuddy 时使用此技能。

一句话选型结论

按资料字段整理

Workbuddy 工作空间克隆大师是AI 工具类的 Agent Skill,安装方式未标注,权限级别未标注,许可证不明确,有可直接复制的安装命令。技能本质是给模型读的说明书,效果取决于模型与客户端;装完先用一个小任务验证,再放进正式流程。

分类AI 工具 安装方式未标注 权限级别未标注权限 许可证许可证不明确
累计安装 未标注 本周 未标注
GitHub 星标 未标注 仓库 未标注
下载量 未标注 技能市场下载数
权限级别 未标注权限 安装前请确认风险范围
许可证 许可证不明确 未说明

安装

未标注
在支持 Skills 的客户端里执行,装完问一句「你有哪些技能」验证
skillhub install user_7cf770a3/workbuddy-backup-restore
  1. 1
    确认客户端支持

    确认你的客户端支持 Skills(Claude、Codex、Cursor 等),并升级到较新的版本。

  2. 2
    拿到技能文件

    执行上面的命令安装;也可以把仓库里的 SKILL.md 手动放进客户端的 skills 目录。

  3. 3
    刷新技能列表

    重新打开客户端,或刷新技能列表,让新放进来的技能被加载。

  4. 4
    验证是否生效

    问一句「你有哪些技能」,确认列表里出现它,再拿一个小任务试跑。

技能档案

AI 工具
字段来自技能仓库与公开索引,中文说明由本站标注
作者 / 维护方user_7cf770a3仓库 未标注 · 版本 未标注
宿主客户端未标注技能可被这些客户端加载
安装方式未标注安装包 community
权限级别未标注权限安装前请确认风险范围
许可证未说明许可证不明确,商用前请自行确认条款
仓库可用性available技能仓库当前是否可访问
最近核验未标注上游最后核验时间 · 数据更新 1791622718
正文体量10.5 KBSKILL.md 原文大小,越大说明说明书写得越细

典型使用场景

3 类
按分类整理的常见用法,具体以 SKILL.md 为准
组合多个 AI 能力

把写作、检索、总结串成一条流程。

搭工作流

把固定流程做成可重复调用的步骤。

做提示词与评测

整理提示词并对比输出效果。

选择建议

装之前先看这几条
按条目字段给出的判断,不替你决定用不用

值得选的地方

  • 有可直接复制的安装命令,不用自己翻文档找入口。

先想清楚的地方

  • 没有标注权限级别,实际能做什么要装好后确认。
  • 许可证不明确,商用或二次分发前先到仓库确认条款。
  • 没有做站内核验,内容以作者仓库为准。
  • 技能只是说明书,实际效果取决于模型与客户端,装完先用小任务试一遍。

更适合

  • 需要在AI 工具场景里给模型补一套做法的人。
  • 愿意先读一遍 SKILL.md、确认它会让模型做什么的人。

不太适合

  • 对许可证要求很严、必须明确可商用的人。
  • 只想装完就自动变强、不打算看说明书的人。

同类对比

6 个同类
同分类里挑最接近的几条,字段以各自详情页为准
技能权限级别安装方式累计安装宿主客户端安装命令
Workbuddy 工作空间克隆大师当前 未标注权限 未标注 未标注 未标注 有
执行计划 只读 GitHub 仓库 151.5 万 Codex、Claude、Cursor 有
Playwright MCP 测试 浏览器控制 ClawHub 市场 136.5 万 OpenClaw 有
完成前的验证 未标注权限 GitHub 仓库 131.9 万 Codex、Claude、Cursor 有
子 Agent 驱动开发 只读 GitHub 仓库 131.2 万 Codex、Claude、Cursor 有
前端设计 执行命令 GitHub 仓库 125.6 万 Codex、Claude、Cursor 有

SKILL.md 全文

10.5 KB
模型实际读到的说明书原文,来自技能仓库

WorkBuddy 工作空间备份与恢复

概述

此技能用于完整备份 WorkBuddy 的工作空间数据(包括工作空间文件和对话记录),并在新设备上恢复。WorkBuddy 的数据分布在三处存储位置,必须成套备份才能完整恢复。

数据结构

WorkBuddy 的一个工作空间涉及三处存储位置(workbuddy.db 里含两张必须一起处理的表):

数据 位置 内容
工作空间文件体 D:\WYX 2\workbuddy-working space\<空间名>\ 产物、.workbuddy\memory\ 日志
对话正文 C:\Users\<用户名>\.workbuddy\projects\<路径编码>\ <uuid>.jsonl 逐条消息 + <uuid>\tool-results\ 工具返回原文
会话元数据 C:\Users\<用户名>\.workbuddy\workbuddy.db sessions 表:id、cwd、标题、模型、时间戳
工作空间登记 C:\Users\<用户名>\.workbuddy\workbuddy.db workspaces 表:仅两列 path、last_opened_at——决定左侧工作空间列表,缺了它空间不会出现

> 两处数据都在同一个 db,恢复时 sessions 和 workspaces 必须一起写,只写 sessions 会导致会话存在但工作空间不显示。

路径编码规则

projects 下的目录名由工作空间绝对路径编码而来:

  • 盘符转小写、去掉冒号
  • 反斜杠 \ 换成连字符 -
  • 保留空格和中文

示例(参与编码的是不带尾斜杠的路径):

D:\WYX 2\workbuddy-working space\课题1
→ d-WYX 2-workbuddy-working space-课题1

关键: 路径编码决定了会话能否在新设备上显示。新机器路径必须一致,或复制成新编码名并修改数据库。

备份流程

前置条件

必须完全退出 WorkBuddy。数据库是 WAL 模式,开着程序复制会丢失最近数据。

步骤 1:确定工作空间列表

# 查看所有工作空间的 cwd
cd "C:/Users/<用户名>/.workbuddy"
python3 -c "
import sqlite3
src = sqlite3.connect('file:workbuddy.db?mode=ro', uri=True)
for r in src.execute('SELECT DISTINCT cwd FROM sessions WHERE cwd IS NOT NULL'):
    print(r[0])
"

步骤 2:创建备份目录

DEST="/d/backup/workbuddy-$(date +%Y%m%d)"
mkdir -p "$DEST"

步骤 3:备份工作空间文件

对每个工作空间执行:

# 工作空间1
cp -r "D:/WYX 2/workbuddy-working space/课题1/" "$DEST/课题1/workspace/"

# 工作空间2
cp -r "D:/WYX 2/workbuddy-working space/帕金森病黑质—.../" "$DEST/帕金森病黑质—.../workspace/"

步骤 4:备份会话记录

# 会话目录名 = 工作空间路径编码
cp -r "C:/Users/<用户名>/.workbuddy/projects/d-WYX 2-workbuddy-working space-课题1/" \
      "$DEST/课题1/sessions/"

步骤 5:导出会话元数据

import sqlite3, csv, os

src = sqlite3.connect('file:workbuddy.db?mode=ro', uri=True)
sessions_cols = [d[1] for d in src.execute('PRAGMA table_info(sessions)')]

# 按工作空间导出
for ws_name in ['课题1', '帕金森病黑质—...']:
    sessions = src.execute(f"SELECT * FROM sessions WHERE cwd LIKE '%{ws_name}%'").fetchall()
    csv_path = os.path.join(DEST, ws_name, 'sessions', 'sessions_export.csv')
    # 注意:还要导出 workspaces 表,见下方「导出工作空间登记」
    with open(csv_path, 'w', newline='', encoding='utf-8') as f:
        w = csv.writer(f)
        w.writerow(sessions_cols)
        w.writerows(sessions)

步骤 6:导出工作空间登记(workspaces 表,别漏)

# workspaces 表只有两列:path, last_opened_at
ws_cols = [d[1] for d in src.execute('PRAGMA table_info(workspaces)')]
with open(os.path.join(DEST, 'workspaces_export.csv'), 'w', newline='', encoding='utf-8') as f:
    w = csv.writer(f)
    w.writerow(ws_cols)
    w.writerows(src.execute('SELECT * FROM workspaces').fetchall())

恢复流程

前置条件

在新机器上:
1. 安装 WorkBuddy 并登录一次(生成 ~\.workbuddy\ 目录)
2. 完全退出 WorkBuddy

方案 A:路径完全一致(推荐)

如果新机器的用户名和目录结构与原机相同:

步骤 1:恢复工作空间文件

# 从备份复制到原位置
cp -r "<备份>/课题1/workspace/课题1/" "D:/WYX 2/workbuddy-working space/课题1/"

步骤 2:恢复会话记录

# 会话目录必须放在 projects 下,名称为路径编码
cp -r "<备份>/课题1/sessions/d-WYX 2-workbuddy-working space-课题1/" \
      "C:/Users/<用户名>/.workbuddy/projects/"

步骤 3:启动验证

  • 工作空间出现在左侧列表
  • 点击历史会话,能看到完整对话
  • 工具调用结果正常显示

方案 B:路径不一致(需要改名)

如果新机器的路径不同,需要调整:

步骤 1:确定新路径

旧: D:\WYX 2\workbuddy-working space\课题1
新: D:\NewPath\workbuddy-working space\课题1

步骤 2:重新编码会话目录名

新编码: d-NewPath-workbuddy-working space-课题1

步骤 3:以新编码名复制 sessions 目录

# 直接以「新编码名」复制到 projects 下,一步完成改名 + 就位
cp -r "<备份>/课题1/sessions/d-WYX 2-workbuddy-working space-课题1/" \
      "C:/Users/<用户名>/.workbuddy/projects/d-NewPath-workbuddy-working space-课题1"

> 用 cp 不要用 mv:mv 会把备份包里的目录也改名,
> 下次再恢复或换一台机器时备份就废了。

步骤 4:修改数据库记录

-- 更新 sessions 表的 cwd 字段
UPDATE sessions 
SET cwd = 'D:\NewPath\workbuddy-working space\课题1'
WHERE cwd LIKE '%课题1%';

-- 同时登记 workspaces 表,否则左侧列表里看不到这个空间
INSERT OR REPLACE INTO workspaces (path, last_opened_at)
VALUES ('D:\NewPath\workbuddy-working space\课题1', <原 last_opened_at>);

> cwd 一律不带尾部反斜杠。 实测 sessions.cwd 和 workspaces.path 存的值
> 都是 D:\...\课题1 这种形式。写成 '...\课题1\' 会导致
> 与 projects 目录编码不一致,会话加载不到。

步骤 5:改写 jsonl 内部的旧路径(关键,容易漏)

改目录名和数据库只解决了「会话归属」,但 jsonl 每条记录里还自带 cwd 字段,
工具返回原文里也硬编码了旧路径。不改写的话,打开会话会去访问已不存在的旧目录。

OLD = r"c:\Users\OldName\WorkBuddy\空间名"      # 旧绝对路径(raw string,避免 \U 转义报错)
NEW = r"D:\NewPath\workbuddy-working space\空间名"

# JSON 里反斜杠是双写的,所以要替换「转义形式」和「原始形式」两种
txt = txt.replace(OLD.replace("\\", "\\\\"), NEW.replace("\\", "\\\\")).replace(OLD, NEW)

只替换工作空间路径本身。不要动 C:\Users\<旧用户名>\.workbuddy\... 这类用户级目录引用——
那是历史文本,属于旧机器的环境,改了反而失真。

步骤 6:用列名映射写库,不要按位置写

CSV 导出的列数/列序可能和当前 db 的 sessions 表不一致(实测:CSV 28 列、表 30 列,
缺 buddy_snapshot_id、buddy_binding_json,且 deleted_at/mode 位置不同)。
所以必须按列名构造记录再 INSERT OR REPLACE:

row = {c: raw.get(c) for c in db_cols}   # db_cols 来自 PRAGMA table_info(sessions)
cur.execute("INSERT OR REPLACE INTO sessions ({}) VALUES ({})".format(
    ", ".join(db_cols), ", ".join("?" * len(db_cols))), [row[c] for c in db_cols])

空字符串要转成 NULL,时间戳等整数字段要 int() 转换。

注意事项

  1. 退出 WorkBuddy 再操作:WAL 模式下开着程序复制会丢失数据
  2. 路径编码是关键:会话能否显示取决于目录名与 cwd 字段匹配
  3. 登录态不需复制:AppData\Roaming\WorkBuddy 的登录态重新登录即可
  4. 无法退出程序时的折中:恢复任务本身就是由 WorkBuddy 执行的,不可能先退出自己。
    此时写库前先把 workbuddy.db、-wal、-shm 三个文件一起复制到安全目录,
    再用 sqlite3.connect(db, timeout=30) 写入(WAL 模式支持并发连接,多进程写安全)。
    写完必须重启 WorkBuddy,因为会话列表通常有内存缓存,不重启看不到新恢复的空间。
  5. Python 脚本里的 Windows 路径:含 \Users、\WYX 这类片段的字符串
    必须写成 raw string(r"..."),否则触发 unicodeescape 语法错误——文档字符串同理。
  6. jsonl 含敏感信息:工具调用里的 API key 会明文存储,备份包注意保密
  7. 大目录注意:如果工作空间有大型数据(如 data/results),复制需要时间

快速参考

常用命令

# 查看工作空间会话数
sqlite3 ~/.workbuddy/workbuddy.db "SELECT cwd, COUNT(*) FROM sessions GROUP BY cwd"

# 查看特定工作空间的会话
sqlite3 ~/.workbuddy/workbuddy.db "SELECT id, title FROM sessions WHERE cwd LIKE '%课题1%'"

# 编码路径示例
# D:\WYX 2\workbuddy-working space\课题1 → d-WYX 2-workbuddy-working space-课题1
# D:\WYX\WorkBuddy Space\人格模拟        → d-WYX-WorkBuddy Space-人格模拟

备份清单

  • [ ] 工作空间目录(workspace/)
  • [ ] 会话记录(sessions/,含 <uuid>.jsonl 与 <uuid>/tool-results|subagents/)
  • [ ] 会话元数据(sessions 表导出 CSV)
  • [ ] 工作空间登记(workspaces 表导出 CSV,最容易被漏掉)
  • [ ] 用户级配置(skills/、mcp.json、settings.json)
  • [ ] 记忆文件(MEMORY.md、SOUL.md 等)

恢复清单

  • [ ] 工作空间文件落到目标路径,且与备份源逐项 diff 过文件清单
  • [ ] sessions 目录以新路径编码放进了 projects/
  • [ ] db 里 sessions.cwd 与 workspaces.path 都改成新路径(无尾斜杠)
  • [ ] jsonl 内部旧路径已重写(用户级目录引用除外)
  • [ ] 写库前已备份 workbuddy.db + -wal + -shm
  • [ ] 重启 WorkBuddy 后确认:空间出现在列表、历史会话可正常打开

常见问题

5 问
答案由本站依据条目字段整理
Workbuddy 工作空间克隆大师怎么安装?

在支持 Skills 的客户端里执行:skillhub install user_7cf770a3/workbuddy-backup-restore。安装方式为未标注。装完刷新技能列表或重开客户端。

Workbuddy 工作空间克隆大师支持哪些客户端?

资料没有标注宿主客户端,但只要客户端支持 Skills(Claude、Codex、Cursor 等),一般都能加载。

Workbuddy 工作空间克隆大师权限高吗,安全吗?

权限级别为未标注权限。安装前先看它会读取或写入哪些内容。

Workbuddy 工作空间克隆大师收费吗?

本站不代收费用,也没有标注具体价格。是否收费取决于技能本身和所用的模型或客户端,正式使用前按作者说明确认。

Workbuddy 工作空间克隆大师用什么许可证?

许可证标注为 未说明(许可证不明确)。商用或二次分发前请到仓库确认条款原文。

热门专题

按场景挑技能
全部专题 →

技能内容以作者仓库为准;分类、权限级别与许可证状态的中文说明为中文整理,最近核验 未标注。