dsh-wikipali-plugins
Đã xác minhdsh-wikipali-plugins · v0.1.1 · MIT
WikiPali Pali corpus research & write skills for DeepSeek Harness (dsh): pali-research + pali-write skill providers backed by the upstream wikipali CLI.
Cài đặt
dsh plugin add dsh-wikipali-plugins Xác nhận layer đã áp bằng dsh --profile default --dump-config — xem hướng dẫn cài plugin.
Mã nguồn
Thẻ
Tác giả
Readme
dsh-wikipali-plugins
WikiPali 巴利语料库研究与写入 skills,为 DeepSeek Harness (dsh) 标准 npm 插件形态。
/pali-research(skill) — 用 WikiPali 语料做巴利文献研究:定位 → 取证 → 展开 → 交叉验证 → 成文。/pali-write(skill) — 把句子、术语和批注写入 WikiPali,以 AI 模型身份署名。
skills 适配自 iapt-platform/wikipali-plugins
(Claude Code marketplace 插件 plugins/wikipali)——原 research / write 重命名为
pali-research / pali-write,避免与 dsh 其他指令冲突;${CLAUDE_PLUGIN_ROOT} 在
加载时替换为本插件 assets 绝对路径。CLI 二进制(纯 Python 标准库)以 git submodule
(vendor/wikipali-plugins) 引用,构建时同步为 assets/wikipali。
安装
dsh plugin --profile web add dsh-wikipali-plugins
或从 GitHub 安装:
dsh plugin --profile web add github:<owner>/dsh-wikipali-plugins
使用
- 输入
/pali-research或提及巴利文献研究 — 加载研究 skill(只读,无需登录)。 - 输入
/pali-write或提出写入/登录/术语/批注需求 — 加载写入 skill。 - 或直接让模型做巴利语料研究,模型会按 skill 描述择优调用。
skill 内容中的 CLI 命令如 wikipali whoami 以运行时绝对路径执行(bin 位于
<plugin>/assets/wikipali/bin/wikipali),读写坐标、引用格式、文献层次规则见
skill 加载后的正文与 references/。
配置
无插件级配置。运行时环境变量(由包装脚本读取):
WIKIPALI_HOME— 状态目录(凭据 + 缓存)。缺省顺序:WIKIPALI_HOME>XDG_CACHE_HOME/wikipali>$TMPDIR/wikipali>$HOME/.wikipali-dsh。 沙箱环境 HOME 不可写时,设置它即可(否则 fallback 到 TMPDIR,自动可写)。WIKIPALI_API_URL— API 地址,默认next.cc(大陆服务器,与.org同一数据库/密钥,凭据通用;大陆直连 ~2.3s vs .org ~3.2s)。可选www.cc(稳定版)/next/www/staging(独立库)/local。- 代理:查询语料不需要代理,直连即可(代理反而更慢)。
注:
.cc/.org四个线上地址共享同一数据库与 jwt 密钥,凭据完全通用; 仅staging与local是另一套库。
开发
git clone --recurse-submodules https://github.com/<owner>/dsh-wikipali-plugins.git
pnpm install
pnpm build # scripts/sync-vendor.sh 同步 vendor → assets/wikipali + tsc
vendor/wikipali-plugins:上游插件 git submodule,更新先git submodule update --remote,再pnpm build重新同步。scripts/sync-vendor.sh:拷贝plugins/wikipali到assets/wikipali,重命名 skill 目录与 frontmatter(research→pali-research、write→pali-write), 并替换${CLAUDE_PLUGIN_ROOT}→{{WIKIPALI_ROOT}}占位符。
结构
assets/wikipali/ # vendored 上游插件(构建同步)
bin/wikipali # bash 包装(固定状态目录 + 默认 next.cc)
bin/wikipali-upstream # 上游 Python CLI 入口(勿直接调用)
bin/wikipali-login # 包装后的登录脚本
lib/ # Python 库
references/ # conventions/api-read/api-write
skills/pali-research/SKILL.md
skills/pali-write/SKILL.md
scripts/wrappers/ # 包装脚本源(sync-vendor 生成到 bin/)
src/index.ts # skill provider 注册(context.skills)
lib/ # tsc 产物
cordis.patch.yml # dsh bundle patch(profile 装配)
CI / 发布
- CI(
.github/workflows/ci.yml):push main / PR 时submodules: recursive检出 →pnpm install --frozen-lockfile→pnpm build同步 vendor → 校验assets/无漂移 →pnpm verify→npm pack --dry-run。 - 发布(
.github/workflows/release.yml):push tagv*时构建 + 校验 后npm publish --provenance(依赖NPM_TOKENsecrets),并创建 GitHub Release。 仓库需配置Settings → Secrets and variables → Actions中的NPM_TOKEN。