PR-1: rename ClawDnD→WorldOS (Wave 1+2 — plugin/app/docs/branding) - #296
Conversation
Wave 1 (load-bearing): - .claude-plugin/plugin.json + marketplace.json: name/owner/repo/homepage/ description → worldos / electricsheephq / WorldOS framing. - LICENSE: copyright 100yenadmin → electricsheephq (MIT unchanged). - script/build_and_run.sh: APP_NAME/DISPLAY_NAME → WorldOS, icon path; BUNDLE_ID kept dev.clawdnd.app (W0-B — changing it orphans installs). - macos/ClawDnDApp → macos/WorldOSApp (git mv, incl. Sources/ + App file); Package.swift + @main struct + display/log strings → WorldOS. Wave 2 (branding): - README/CHANGELOG/THIRD_PARTY_NOTICES/CLAUDE.md: name + URL updates, README + CLAUDE.md rewritten to WorldOS framing. - git mv ClawDnD-RUNBOOK/NORTH-STAR → WorldOS-*, clawdnd-*.command → worldos-*.command, assets/icon/ClawDnD.icns → WorldOS.icns (+ self-refs). Rename-consequence fixes (kept the build/CI/launchers working): - .github/workflows/macos-swift.yml + .gitignore → macos/WorldOSApp path. - scripts/install-desktop-shortcut.sh + launch_common.sh → worldos-*.command. Kept as live wire contracts (deferred to PR-2/PR-3): CLAWDND_* env vars, the 'clawdnd' WebView message channel + window.ClawDnDNative bridge (paired with out-of-scope JSX), the clawdnd-engine/rules/voice MCP server ids, the dev.clawdnd.app bundle id, and the /Users/lume/ClawDnD-val checkout dir. Part of #295.
📝 WalkthroughWalkthroughThis PR performs a complete rebranding of the ClawDnD project to WorldOS, renaming the plugin identity, macOS app executable structure, build configuration, shell launchers, and updating all project documentation and legal notices to reflect the new name and owner (electricsheephq). ChangesWorldOS Rebranding
Estimated code review effort🎯 2 (Simple) | ⏱️ ~12 minutes Possibly related issues
Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
Comment |
There was a problem hiding this comment.
Actionable comments posted: 2
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@README.md`:
- Line 7: Update the README's release status string so it matches the latest
changelog/release (replace the visible "**v1.0.1** (2026-05-28)" text with the
current release version/date, e.g., "**v1.0.2** (2026-05-29)"); locate the exact
token "**v1.0.1**" in README.md (the big status paragraph) and update the
version/date and any adjacent release link or reference if needed to point to
the v1.0.2 release URL so the README and changelog are consistent.
- Line 115: The fenced code block in README.md is missing a language tag which
triggers markdownlint MD040; update the backtick fence that contains the
commands "/plugin marketplace add ." and "/plugin install worldos@worldos" to
include an explicit language tag (e.g., text or bash) so the block becomes
```text (or ```bash) followed by the same lines and closing ``` to satisfy the
linter.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro
Run ID: 38a02aaf-24fc-49ac-94d5-d969a2bd0fc8
📒 Files selected for processing (43)
.claude-plugin/marketplace.json.claude-plugin/plugin.json.github/workflows/macos-swift.yml.gitignoreCHANGELOG.mdCLAUDE.mdLICENSEREADME.mdTHIRD_PARTY_NOTICES.mdWorldOS-NORTH-STAR.mdWorldOS-RUNBOOK.mdassets/icon/WorldOS.icnsmacos/WorldOSApp/Package.swiftmacos/WorldOSApp/RELEASE_CHECKLIST.mdmacos/WorldOSApp/Sources/WorldOSApp/App/WorldOSApp.swiftmacos/WorldOSApp/Sources/WorldOSApp/Models/AppSection.swiftmacos/WorldOSApp/Sources/WorldOSApp/Models/CampaignSummary.swiftmacos/WorldOSApp/Sources/WorldOSApp/Models/DependencyStatus.swiftmacos/WorldOSApp/Sources/WorldOSApp/Models/LocalEndpoint.swiftmacos/WorldOSApp/Sources/WorldOSApp/Models/ProviderModels.swiftmacos/WorldOSApp/Sources/WorldOSApp/Services/AppProcessService.swiftmacos/WorldOSApp/Sources/WorldOSApp/Services/CampaignStore.swiftmacos/WorldOSApp/Sources/WorldOSApp/Services/DependencyChecker.swiftmacos/WorldOSApp/Sources/WorldOSApp/Services/Diagnostics.swiftmacos/WorldOSApp/Sources/WorldOSApp/Services/PortFinder.swiftmacos/WorldOSApp/Sources/WorldOSApp/Services/ProviderAdapters.swiftmacos/WorldOSApp/Sources/WorldOSApp/Services/RepositoryLocator.swiftmacos/WorldOSApp/Sources/WorldOSApp/Services/Shell.swiftmacos/WorldOSApp/Sources/WorldOSApp/Views/CampaignsView.swiftmacos/WorldOSApp/Sources/WorldOSApp/Views/EmptyStateView.swiftmacos/WorldOSApp/Sources/WorldOSApp/Views/LogsView.swiftmacos/WorldOSApp/Sources/WorldOSApp/Views/MonitorView.swiftmacos/WorldOSApp/Sources/WorldOSApp/Views/PlayView.swiftmacos/WorldOSApp/Sources/WorldOSApp/Views/ProvidersView.swiftmacos/WorldOSApp/Sources/WorldOSApp/Views/RootView.swiftmacos/WorldOSApp/Sources/WorldOSApp/Views/SettingsView.swiftmacos/WorldOSApp/Sources/WorldOSApp/Views/WebView.swiftscript/build_and_run.shscripts/install-desktop-shortcut.shscripts/launch_common.shworldos-dashboard.commandworldos-monitor.commandworldos-play.command
| WorldOS is a Claude Code plugin. It simulates persistent, canon-anchored worlds whose standing threads move on their own — and lets you drop in and *play* a full D&D 5e adventure inside them. You don't play *against* the AI; you go on an adventure *with* it. A Dungeon Master narrates the world and voices every NPC, and a companion party member adventures alongside you — with its own character sheet, personality, voice, and agency. Dice and rules are deterministic (never hallucinated), worlds and campaigns persist across sessions, and every line is spoken aloud. | ||
|
|
||
| > **Status:** **v1.0.1** ([Release](https://github.com/100yenadmin/ClawDnD/releases/tag/v1.0.1), 2026-05-28). Tier-1 **plus a living-world generative engine plus a native macOS desktop app (OpenWorlds)** — built and green in CI: **engine 1385/1385 ✓, viewer 90/90 ✓**, license-check clean. The full deterministic stack (dice, characters, combat with tactical zones / monster Multiattack / Parry reactions / end-of-turn repeat saves, full SRD 5.2.1 spellcasting, rests, inventory/economy, NPC memory + companion dossiers, encounters, persistence, voice) runs under an AI DM that **generates epic, mature, Baldur's-Gate-caliber stories live inside persistent, canon-anchored worlds** — grounded by on-demand lore lookup, a searchable campaign memory, chronology, standing threads that move on their own, and a 2,076-record canon roster for the Sword Coast (the seven BG3 origin heroes carry full companion-dossier seeds for the engine's living-world systems). QA-scored on a story-craft lens (≥4.3/5, prestige-fantasy). The OpenWorlds desktop app renders 14 polished screens (Launcher / Table / Combat / Map / Character / Inventory / Relations / Dialogue / Forge / Merchant / Bestiary / Journal / Acts / World Seed / Create / Settings), all data-bound to live read-models; the Merchant BUY and Forge Craft buttons relay structured `/move` intents to the DM during a live session. Tier 2 (OpenClaw companion fork) remains the optional gateway milestone. See the [issues](https://github.com/100yenadmin/ClawDnD/issues) for the roadmap. | ||
| > **Status:** **v1.0.1** ([Release](https://github.com/electricsheephq/WorldOS/releases/tag/v1.0.1), 2026-05-28). Tier-1 **plus a living-world generative engine plus a native macOS desktop app (OpenWorlds)** — built and green in CI: **engine 1385/1385 ✓, viewer 90/90 ✓**, license-check clean. The full deterministic stack (dice, characters, combat with tactical zones / monster Multiattack / Parry reactions / end-of-turn repeat saves, full SRD 5.2.1 spellcasting, rests, inventory/economy, NPC memory + companion dossiers, encounters, persistence, voice) runs under an AI DM that **generates epic, mature, Baldur's-Gate-caliber stories live inside persistent, canon-anchored worlds** — grounded by on-demand lore lookup, a searchable campaign memory, chronology, standing threads that move on their own, and a 2,076-record canon roster for the Sword Coast (the seven BG3 origin heroes carry full companion-dossier seeds for the engine's living-world systems). QA-scored on a story-craft lens (≥4.3/5, prestige-fantasy). The OpenWorlds desktop app renders 14 polished screens (Launcher / Table / Combat / Map / Character / Inventory / Relations / Dialogue / Forge / Merchant / Bestiary / Journal / Acts / World Seed / Create / Settings), all data-bound to live read-models; the Merchant BUY and Forge Craft buttons relay structured `/move` intents to the DM during a live session. Tier 2 (OpenClaw companion fork) remains the optional gateway milestone. See the [issues](https://github.com/electricsheephq/WorldOS/issues) for the roadmap. |
There was a problem hiding this comment.
Update README status/version to match current release docs.
README still says v1.0.1 (2026-05-28), but the changelog already contains 1.0.2 dated 2026-05-29. This creates release-state ambiguity for users.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@README.md` at line 7, Update the README's release status string so it matches
the latest changelog/release (replace the visible "**v1.0.1** (2026-05-28)" text
with the current release version/date, e.g., "**v1.0.2** (2026-05-29)"); locate
the exact token "**v1.0.1**" in README.md (the big status paragraph) and update
the version/date and any adjacent release link or reference if needed to point
to the v1.0.2 release URL so the README and changelog are consistent.
|
|
||
| Then inside Claude Code, register the local marketplace and install the plugin: | ||
|
|
||
| ``` |
There was a problem hiding this comment.
Add a language tag to this fenced code block.
This block trips markdownlint MD040 and should be tagged (for example, text or bash depending on intent).
Suggested patch
-```
+```text
/plugin marketplace add .
/plugin install worldos@worldos</details>
<!-- suggestion_start -->
<details>
<summary>📝 Committable suggestion</summary>
> ‼️ **IMPORTANT**
> Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
```suggestion
🧰 Tools
🪛 markdownlint-cli2 (0.22.1)
[warning] 115-115: Fenced code blocks should have a language specified
(MD040, fenced-code-language)
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@README.md` at line 115, The fenced code block in README.md is missing a
language tag which triggers markdownlint MD040; update the backtick fence that
contains the commands "/plugin marketplace add ." and "/plugin install
worldos@worldos" to include an explicit language tag (e.g., text or bash) so the
block becomes ```text (or ```bash) followed by the same lines and closing ``` to
satisfy the linter.
…301) Final phase of #295 (PR-1 #296, PR-2 #299, PR-3 #300 merged): - plugin.json 1.0.2 -> 1.0.3 - CHANGELOG [1.0.3]: the rename across 4 phased PRs + non-breaking WORLDOS_*/CLAWDND_* env layer + preserved wire contracts + carried UI fixes - SCORECARD v1.0.3 release note (honest standing scores; Caelar fix = code+#162 invariant+GUI, not a fresh duo) Doc/JSON only - no engine logic change. Co-authored-by: Eva <eva@100yen.org>
…#982) First phase of the owner-approved full ClawDnD→WorldOS cutover (the v1.0.3 rename shipped #296/#299/#300/#301 but left brand-prose stragglers). This renames ONLY the brand token in prose/docs/flavor/command+skill descriptions and user-facing status strings — surgically PRESERVING every retained contract and historical record: KEPT (moved in later phases / immutable): clawdnd-engine/-rules/-voice/-player MCP ids, CLAWDND_* env vars, dev.clawdnd.app, ClawDnD-val path, ClawDnDNative web-bridge, lowercase clawdnd_* shell/py functions; and the historical/legal text (CHANGELOG, qa/SCORECARD.md, LICENSE trademark list, servers/*/_env.py "renamed from ClawDnD" explanation, docs/roadmap/SPRINT_MAP.md, qa/transcripts/*). Transform: collapse dual "WorldOS / ClawDnD" → "WorldOS", then ClawDnD→WorldOS with a negative lookahead preserving -val/Native suffixes; applied to an explicit allowlist of 30 brand-prose files only. Gates: license_check pass; bash -n clean on all touched scripts; both adventure.json still valid JSON; spot-checked that DM SKILL.md keeps clawdnd-engine/rules/voice and play.sh keeps CLAWDND_PLAY_* + clawdnd_write_provider_status. Co-authored-by: Eva <arncalso@gmail.com>
Part of #295. Wave 1 (plugin.json, marketplace, LICENSE, build script, macos/WorldOSApp Swift rename) + Wave 2 (README/CHANGELOG/CLAUDE.md/doc+script+icon renames). Bundle ID kept dev.clawdnd.app (W0-B). Engine refs + env vars deferred to PR-2/PR-3. Validation: swift build clean, plugin.json asserted, license clean, --axe PASS.
Also fixed three rename-consequence breakages so the build/CI/launchers keep working: .github/workflows/macos-swift.yml + .gitignore now point at macos/WorldOSApp; scripts/install-desktop-shortcut.sh + scripts/launch_common.sh now reference worldos-*.command.
Kept as live wire contracts (deferred to PR-2/PR-3): CLAWDND_* env vars, the 'clawdnd' WebView message channel + window.ClawDnDNative bridge (paired with out-of-scope viewer/openworlds JSX), the clawdnd-engine/rules/voice MCP server ids, and the /Users/lume/ClawDnD-val checkout dir.
Deferred (Wave 3 doc sweep, intentionally untouched): clawdnd-.command refs in commands/.md and viewer/dashboard.html (legacy dashboard); macos/ClawDnDApp path refs in docs/*.md; historical CHANGELOG body entries.
Summary by CodeRabbit
Chores