npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

claude-rpg

v1.3.2

Published

Simulation-grounded narrative RPG where worlds are generated live, but truth remains coherent

Readme

Claude RPG

这是一款以模拟为基础的角色扮演游戏,Claude负责构建故事,引擎负责维护真实性,而世界则通过传闻、压力、派系、关系、经济和剧情系统不断演变,最终导向有意义的结局。您可以体验它,也可以在此基础上进行开发。

什么是Claude RPG?

Claude RPG建立在AI RPG 引擎之上,这是一个具有29个模块的确定性模拟运行时,涵盖战斗、认知、感知、派系、传闻、信念来源、NPC行为、同伴、玩家影响力、战略地图、物品识别、装备来源、新兴机会、剧情检测和游戏结束触发器。Claude的任务是进行解释、叙述和对话。引擎的任务是维护真实性。

黄金法则:Claude提出,引擎执行。

玩家输入自由文本。Claude解释意图,引擎以确定性的方式执行操作,感知过滤器决定玩家实际看到的内容,然后Claude仅叙述角色感知到的内容,并配有声音、音效和环境音效,由沉浸式运行时提供。

NPC不会背诵剧本。他们根据信念、记忆、派系忠诚度和传闻进行对话。他们有原因才会撒谎。他们有原因才会犹豫不决。他们有原因才会拒绝。导演模式允许您查看确切的原因。

创建您自己的

Claude RPG不仅仅是一个游戏,它还是AI RPG 引擎生态系统的参考实现。将其用作您自己基于模拟的叙事体验的起点。

| 想... | 使用 | |------------|-----| | Play right now | npx claude-rpg play --world fantasy | | Create a new world | npx claude-rpg new "your world concept" | | Author worlds visually | World Forge — 具有地图编辑器、NPC构建器和验证功能的2D创作工作室。 | | Validate world data | Cannon Archive — 模式验证、故事板测试、导出流水线。 | | Build a custom runtime | 直接导入@ai-rpg-engine包 — 可以将Claude替换为任何LLM,并添加您自己的UI。 | | Add new game modules | 分叉引擎,添加模块到流水线,并进行注册。 |

该引擎不依赖于特定的LLM。Claude RPG使用Anthropic模型,但核心引擎不依赖于任何LLM,您可以将其连接到任何模型,甚至可以在完全确定性的模式下运行,而无需叙述。

安装

npm install claude-rpg

或者直接运行:

npx claude-rpg play --world fantasy

快速开始

# Play the built-in Chapel Threshold scenario
npx claude-rpg play --world fantasy

# Generate a new world from a prompt
npx claude-rpg new "A flooded gothic trade city ruled by three merchant houses"

# Use the engine in your own project
npm install @ai-rpg-engine/core @ai-rpg-engine/modules

设置您的Anthropic API密钥(仅在需要Claude叙述时才需要):

export ANTHROPIC_API_KEY=sk-ant-...

它与众不同之处

| 是什么 | 如何 | |------|-----| | 模拟的真实性与叙述分离 | 引擎负责处理战斗、移动、对话,Claude仅负责叙述结果。没有虚构的结果。 | | NPC对话基于认知 | NPC的每一句对话都基于他们的信念、记忆、士气、怀疑、派系和传闻。 | | 感知驱动的呈现 | Claude仅接收玩家角色感知到的内容。低清晰度的实体会显示为模糊的人物,而不是命名目标。 | | 音频/语音沉浸式运行时 | 结构化的叙述计划驱动语音合成、音效、环境音效和音乐,通过语音-音效板实现。 | | 导演模式可查看隐藏的真相 | /inspect pilgrim 显示信念。/trace 显示来源。/divergences 显示您认为发生的事情与实际发生的事情之间的差异。 | | 具有连锁后果的NPC行为 | NPC会根据目标行动,跟踪义务,并在忠诚度达到临界点时进行反击。/npc/people 显示临界点、利用角度和主动的连锁后果。 | | Living districts | 地区拥有商业、士气和安全等要素,这些要素会受到玩家行为、派系行动以及NPC事件链的影响。士气会影响叙事,并影响游戏进程。/districts/district 命令可以查看区域的动态情况。 | | 有离队风险的同伴 | 队伍成员拥有士气、忠诚度,并且存在离队触发条件。如果过度刺激他们,他们可能会离开——引擎会记录离队的原因。 | | 玩家的影响力和政治行动 | 使用影响力、人情和情报来进行社交、传播谣言、外交和破坏等行动。/leverage 命令可以查看您的政治资本。 | | 装备的来源和遗物 | 物品带有历史。一把杀戮足够多的剑会变成带有称号的遗物。NPC会识别装备的物品,并做出反应。/item 命令可以查看物品的来源和历史。 | | Emergent opportunities | 合同、赏金、人情、补给任务和调查任务会根据世界状况产生——例如压力、稀缺、NPC目标、义务。您可以接受、拒绝、放弃或背叛。/jobs/accepted 命令可以跟踪可用的和正在进行的任务。 | | 剧情发展和结局 | 引擎会检测到10种叙事发展类型(例如:崛起、被追捕、幕后操纵、抵抗等),以及8种结局类型(例如:胜利、流放、推翻、殉道等),这些都基于积累的状态。/arcs 命令可以查看发展轨迹。/conclude 命令会生成一个结构化的尾声,并可以选择使用LLM进行叙述。 |

架构

Player types freeform text
    |
[1] ACTION INTERPRETATION (Claude)
    Input: player text + verbs + entities + exits
    Output: { verb, targetIds, confidence }
    |
[2] ENGINE RESOLUTION (deterministic)
    engine.submitAction() -> ResolvedEvent[]
    |
[3] PERCEPTION FILTERING (deterministic)
    presentForObserver() -> what the player saw
    |
[4] HOOKS: pre-narration
    Zone ambient, combat alerts, death effects
    |
[5] NARRATION PLAN (Claude)
    Input: filtered scene + presentation state
    Output: NarrationPlan { text, sfx, ambient, music, UI }
    |
[6] AUDIO DIRECTOR
    Priority, ducking, cooldowns -> AudioCommand[]
    |
[7] PRESENTATION
    Voice synthesis + SFX + ambient via voice-soundboard
    Text rendering to terminal
    |
[8] NPC DIALOGUE (Claude, if speaking)
    Grounded in cognition: beliefs, memories, faction, rumors
    Voice-cast per NPC

Immersion Runtime (v0.2)

叙述器不会直接输出文本,而是会生成一个叙述计划 (NarrationPlan):这是一个结构化的配方,描述了文本、音效、环境音、音乐提示和语音参数。

| 模块 | 目的 | |--------|---------| | 表现状态机 (Presentation State Machine) | 跟踪探索/对话/战斗/战后情况,并驱动音频层选择。 | | Hook Lifecycle | enter-room(进入房间)、combat-start(战斗开始)、combat-end(战斗结束)、death(死亡)、npc-speaking(NPC说话)——注入上下文相关的音频。 | | Voice Caster | 根据类型、性别、派系自动将NPC映射到语音音效库中的声音。 | | Audio Director | 安排音效提示,包括优先级、静音、冷却时间和防止垃圾信息。 | | Sound Registry | 内容可寻址的音频条目——通过标签、情绪、强度进行查询。 | | MCP Bridge | 将AudioCommands翻译为语音音效库工具的调用。 |

三种模式

| 模式 | 作用 | |------|-------------| | Play | 沉浸式叙事RPG。Claude进行叙述,NPC根据自己的信念说话,行动通过引擎解决。 | | Director | 检查隐藏的真相:/inspect <npc>/faction <id>/trace <belief>/divergences/npc <name>/people/districts/district <id>/item <name>/leverage/moves/jobs/accepted | | Replay | 展示事件时间线,将客观事实与玩家的感知并排显示。 |

生态系统

Claude RPG是构建基于模拟的叙事游戏的一个更大工具链中的一部分:

| 项目 | 作用 | |---------|-------------| | AI RPG Engine | 确定性模拟运行时——29个模块,不依赖于LLM。 | | World Forge | 2D世界创作工作室——地图编辑器、NPC构建器、渲染器、导出功能。 | | Cannon Archive | 模式验证、故事板测试、AI RPG导出流水线。 | | Claude RPG (this repo) | 参考运行时——Claude叙述、沉浸式音频、导演工具。 |

引擎包

Claude RPG依赖于以下@ai-rpg-engine包:

| 包 | 目的 | |---------|---------| | @ai-rpg-engine/core | 状态、实体、行动、事件、规则、随机数生成。 | | @ai-rpg-engine/modules | 29个模块——战斗、认知、感知、派系、谣言、NPC自主性、同伴、影响力、战略地图、物品识别、新兴机会。 | | @ai-rpg-engine/character-profile | 角色成长、伤病、声誉 | | @ai-rpg-engine/equipment | 装备、物品来源、遗物成长、编年史 | | @ai-rpg-engine/campaign-memory | 跨会话记忆、关系影响 | | @ai-rpg-engine/presentation | 叙述计划(NarrationPlan)结构、渲染合约 | | @ai-rpg-engine/audio-director | 音频提示调度、优先级、静音 | | @ai-rpg-engine/soundpack-core | 音效包注册 + 核心包 | | @ai-rpg-engine/content-schema | 世界内容验证 | | @ai-rpg-engine/starter-fantasy | Chapel Threshold 初始世界 | | @ai-rpg-engine/starter-cyberpunk | Neon Lockbox 初始世界 | | @ai-rpg-engine/starter-detective | Gaslight Detective 初始世界 | | @ai-rpg-engine/starter-pirate | Black Flag Requiem 初始世界 | | @ai-rpg-engine/starter-zombie | Ashfall Dead 初始世界 | | @ai-rpg-engine/starter-weird-west | Dust Devil's Bargain 初始世界 | | @ai-rpg-engine/starter-colony | Signal Loss 初始世界 | | @ai-rpg-engine/starter-gladiator | Iron Colosseum 初始世界 | | @ai-rpg-engine/starter-ronin | Jade Veil 初始世界 | | @ai-rpg-engine/starter-vampire | Crimson Court 初始世界 |

令牌预算

| 步骤 | 输入 | 输出 | |------|-------|--------| | 动作解释 | 约 800 个令牌 | 约 100 个令牌 | | 场景叙述(NarrationPlan) | 约 1400 个令牌 | 约 300 个令牌 | | NPC 对话 | 约 1400 个令牌 | 约 100 个令牌 | | Total per turn | 约 3600 个令牌 | 约 500 个令牌 |

默认模型:claude-sonnet-4-20250514。 世界生成使用 Opus 以获得更高的质量。

安全性

Claude RPG 是一个本地 CLI 应用程序,它会向 Anthropic 发送 API 请求。

  • 访问的数据: 玩家存档文件位于 ~/.claude-rpg/saves/ 目录中,以及 Anthropic API(仅限出站 HTTPS 请求)。
  • 未访问的数据: 不收集任何遥测数据,不进行任何分析,也不访问存档目录以外的文件系统。
  • API 密钥: 从环境变量 ANTHROPIC_API_KEY 中读取,永不存储、记录或传输到 Anthropic API 之外。
  • 源代码中不包含任何敏感信息: 不包含任何嵌入的令牌、凭据或 API 密钥。

请参阅 SECURITY.md 以获取完整的安全策略和漏洞报告。

许可证

MIT


MCP Tool Shop 构建。