{"_id":"@ai4rpg/tavern-cards-forge","name":"@ai4rpg/tavern-cards-forge","dist-tags":{"latest":"0.1.0"},"versions":{"0.1.0":{"name":"@ai4rpg/tavern-cards-forge","version":"0.1.0","description":"CLI tool for offline packing/unpacking SillyTavern character cards and worldbooks","license":"MIT","type":"module","engines":{"node":">=22"},"bin":{"tavern-cards-forge":"dist/index.mjs"},"scripts":{"build":"tsup","dev":"tsup --watch","prepublishOnly":"npm run build"},"dependencies":{"commander":"^13","crc":"^4","fast-json-patch":"^3.1.1","jiti":"^2.7.0","jschardet":"^3.1.4","jsonpath-plus":"^10.4.0","lodash":"^4","png-chunk-text":"^1","png-chunks-extract":"^1","yaml":"^2.8.4","zod":"^4.4.3"},"devDependencies":{"@types/lodash":"^4","@types/node":"^22","tsup":"^8","typescript":"^5.7"},"gitHead":"0aab9ab40a3733d920420943c47e5b673b49d0d9","_id":"@ai4rpg/tavern-cards-forge@0.1.0","_nodeVersion":"24.14.0","_npmVersion":"11.9.0","dist":{"integrity":"sha512-vZ9i8ZapLdzMGQUeOMuVsLJdmnmxmIQNnU+xWo9Phv66xi+mbX44LNXc9bUPRajGJ2D02n89KUDvGAc+PQvEWg==","shasum":"2228af53b196e98457198bca9d56201b8bee0371","tarball":"https://registry.npmjs.org/@ai4rpg/tavern-cards-forge/-/tavern-cards-forge-0.1.0.tgz","fileCount":4,"unpackedSize":155834,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCICqgLVXIjhz4crHF7mQWclQmqpfUUT9Quz6MitMPIHxhAiA4q+aL94fkcHK6h15W63it60da8diwQfagDn5heUDapQ=="}]},"_npmUser":{"name":"ai4rpg","email":"ai4rpg@gmail.com"},"directories":{},"maintainers":[{"name":"ai4rpg","email":"ai4rpg@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/tavern-cards-forge_0.1.0_1787927881815_0.3755205962553789"},"_hasShrinkwrap":false}},"time":{"created":"2026-08-28T14:38:01.556Z","0.1.0":"2026-08-28T14:38:01.940Z","modified":"2026-08-28T14:38:02.234Z"},"maintainers":[{"name":"ai4rpg","email":"ai4rpg@gmail.com"}],"description":"CLI tool for offline packing/unpacking SillyTavern character cards and worldbooks","license":"MIT","readme":"# @ai4rpg/tavern-cards-forge\n\n`@ai4rpg/tavern-cards-forge`（CLI 命令仍为 `tavern-cards-forge`）是一个离线 CLI 工具，用于在 SillyTavern 角色卡 (PNG) / 世界书 (JSON) 与可编辑的项目目录之间互相转换。\n\n主要目的是作为 skill 的配合脚本: 把角色卡和世界书拆成稳定、可读的文件结构，让 AI 可以更可靠地批量创建、整理、校验和重打包卡片内容，并提供标准的JSON Patch和JSON Path 编辑、查询状态文件。\n\n## 特点\n\n- 离线处理: 不依赖 SillyTavern 服务、网络接口或运行中的前端环境。\n- 单一数据源: 项目目录中的状态文件 `tavern-cards-state.json` 记录卡片结构、条目元数据和打包配置。\n- 文件化编辑: 世界书条目、正则脚本、TavernHelper 脚本、开场白等内容可拆分为普通文本文件，便于人工编辑和 AI 修改。\n- 可自动推导: `configure` 可根据配置补齐 strategy、position、order、uid 等运行时字段。\n- 适合 JSON Patch 工作流: `patch` 支持预检查、备份和文件路径自动重命名，方便 skill 生成结构化变更。\n- 支持导入导出: 可从现有 PNG/JSON 解包，也可重新打包为角色 PNG、角色 JSON 或独立世界书 JSON。\n\n## 文档索引\n\n- [使用指导](docs/Usage.md) — 安装构建、命令参考、典型工作流\n- [数据说明](docs/DataReference.md) — 配置文件字段、数据模型、格式转换映射、目录结构\n- [机制原理](docs/Mechanisms.md) — configure 推导算法、patch 机制、格式检测\n\n## License\n\nThis project is licensed under the MIT License. See the [LICENSE](./LICENSE) file for details.\n","readmeFilename":"README.md","_rev":"1-b774983a3dff9935509ec479d64aba89"}