Rename the product brand from "Open Knowledge" to "OpenKnowledge" (one…#293
Merged
Conversation
* Rename brand from "Open Knowledge" to "OpenKnowledge" Renames the product brand across the desktop app, CLI output, MCP and skill copy, and docs. The macOS app, helper bundle, DMG artifact, and userData directory are renamed. Adds a one-time, identity-verified migration that relocates existing app state from the old "Open Knowledge" Application Support directory to "OpenKnowledge" on the first launch of a renamed build, after confirming the legacy directory is ours (its state.json parses as our schema). It copies, verifies, then removes the legacy directory; any failure degrades to a clean first run. Technical identifiers are unchanged: the npm package @inkeep/open-knowledge, the appId com.inkeep.open-knowledge, the openknowledge:// scheme, the openknowledge.ai domain, and the open-knowledge MCP server name. "Open Knowledge Format" (Google's external standard) is preserved. Adds a PRODUCT_NAME constant in core for runtime display surfaces. The process-scan matcher accepts both old and new bundle names so ok stop/ps still find a running pre-rename build. * Address review: DMG asset name, migration logging, shim hardening Fix the DMG artifact filename across the docs download infrastructure (download-links.ts, site.ts, the route/splash tests, the quickstart download button, and the public README): all referenced Open-Knowledge-arm64.dmg, but productName OpenKnowledge produces OpenKnowledge-arm64.dmg via the artifactName template, which would 404 every download link after the first renamed release. Route userData migration events to the pino file logger and surface a failed migration via the result, instead of discarding the result and only writing to console.warn. Restore the migration wiring comment the sweep over-applied (the source side of the arrow is the legacy spaced name). Harden the shim: copy asynchronously via fs.promises.cp so a large legacy dir never blocks the main process at startup; let OS-level read errors in the identity gate surface as failed instead of being misreported as an unrecognized directory. Add tests for the failed path and for matching a pre-rename Open Knowledge process name. * Rename brand in moved MCP_SERVER_NAME doc comment * Keep docs DMG download link hyphenated until a renamed release ships electron-builder now produces OpenKnowledge-arm64.dmg, but every release currently published on GitHub is still Open-Knowledge-arm64.dmg. Pointing the docs download links at the renamed asset before it exists would 404 every download between this PR merging (docs deploy) and the first renamed release. Keep the hyphenated name (matches published releases) and flip it once a renamed DMG is confirmed published. The flip sites are documented in download-links.ts. * Centralize the DMG download URL on a single constant site.ts's DOWNLOAD_URL, the quickstart DownloadButton, the beta route, and the download tests now all derive from DMG_ASSET_NAME / STABLE_DMG_URL in download-links.ts instead of duplicating the literal. The future rename flip is now a one-line change to DMG_ASSET_NAME (plus the public overlay README, a static markdown file that can't import the constant). * Fix lint import order and align committed .okignore with renamed template biome organizeImports sorts the STABLE_DMG_URL import in share-splash.test.ts (biome format alone doesn't run the assist). The committed root .okignore now matches the renamed OK_OKIGNORE_TEMPLATE byte-for-byte (the comment renamed to OpenKnowledge in the server template by the sweep, but the dotfile wasn't included). GitOrigin-RevId: c5338f18ba565d29d642edfe42c1f898e83ad30f
Contributor
There was a problem hiding this comment.
Automated approval from agents-private public-mirror-sync (run: https://github.com/inkeep/agents-private/actions/runs/28207077906). Source of truth is the monorepo; direct edits on inkeep/open-knowledge are overwritten on next sync.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Rename the product brand from "Open Knowledge" to "OpenKnowledge" (one word) across the desktop app, CLI output, MCP/skill copy, and docs.
The macOS app, its helper bundle, the DMG artifact, and the userData directory are renamed. A one-time, identity-verified migration runs on the first launch of a renamed build: it relocates an existing user's app state (recent projects, window restore, auto-update cache) from
~/Library/Application Support/Open Knowledge/to.../OpenKnowledge/, but only after verifying the legacy directory is ours (itsstate.jsonparses as our schema), so another vendor's identically-named directory is never touched. It copies, verifies, then removes the legacy directory; any failure degrades to a clean first run.Technical identifiers are unchanged: the npm package
@inkeep/open-knowledge, the macOS appIdcom.inkeep.open-knowledge, theopenknowledge://deep-link scheme, theopenknowledge.aidomain, and theopen-knowledgeMCP server name. "Open Knowledge Format" (Google's external standard) is also preserved.