mirror of
https://github.com/nexu-io/open-design.git
synced 2026-09-20 06:15:06 +08:00
f1a0b60c6c
* chore: unify product name display to OpenDesign repo-wide Rename the user-facing product name from "Open Design" to "OpenDesign" across documentation, web/desktop UI strings, i18n locales, prompts, plugin/skill/design-system content, changelogs, and specs, matching the landing-page rename already in flight. Deliberately excluded so installed-app identity stays untouched: - packages/release PRODUCT_NAME and everything derived from it (app bundle names, installer/registry identity, updater feeds) - tools/pack, tools/release, apps/packaged, landing page (PR #6983) - mocks/ recorded traces and LICENSE - test fixtures and comments that encode real on-disk install paths (Open Design.app, Program Files\Open Design, AppData paths) Validated with pnpm guard, pnpm typecheck, and targeted web/desktop/host test runs over the renamed strings. * fix(web): keep two-letter author monogram for CamelCase brand names authorInitials split words on whitespace only, so the renamed single-token author name "OpenDesign" produced a one-letter monogram. Treat lower-to-upper CamelCase boundaries as word breaks so the avatar fallback stays "OD". * fix(release): restore spaced Windows source artifact names in win.ps1 tools/pack still derives builder outputs from the unchanged PRODUCT_NAME ("Open Design"), so the asset script must look for the spaced filenames. Matches the mac/mac-intel/linux asset scripts, which were already kept on the original names. --------- Co-authored-by: Joey <236967869+joeylee12629-star@users.noreply.github.com>
3.9 KiB
3.9 KiB
tools/AGENTS.md
Follow the root AGENTS.md first. This file only records module-level boundaries for tools/.
Active tools
tools/devprovides@open-design/tools-devand thetools-devbin. It is the only currently active local development lifecycle control plane.pnpm tools-devmanages daemon -> web -> desktop.pnpm tools-dev run webruns foreground daemon + web for the Playwright webServer flow.pnpm tools-dev inspect desktop ...inspects the desktop runtime through sidecar IPC.tools/packprovides@open-design/tools-packand thetools-packbin. The active slice is packaged artifact build/install/start/stop/logs/uninstall/cleanup/list/reset plus beta release artifact preparation for mac and Windows lanes, plus a Linux AppImage lane with optional containerized builds.tools/serveprovides@open-design/tools-serveand thetools-servebin. It owns local fixture services such astools-serve start updater.tools/releaseprovides@open-design/tools-releaseand thetools-releasebin. It owns release metadata, storage publishing, release reports, and notification-facing file/data contracts; artifact build, cache, installer, payload, and smoke work stays intools/pack.
Retired tools
tools/pr/@open-design/tools-pr/pnpm tools-prhas been retired from this repository. Maintainer PR-duty workflows now live outside the product workspace inPerishCode/duty; do not restore an OpenDesign-local PR-duty tool without a new explicit maintainer decision.
Packaging scope
- Keep
tools-packfocused on packaging/runtime control, release artifact preparation, and the packaged-updater acceptance harness. The updater product surface and launcher handoff live inapps/desktopandapps/packaged; do not duplicate that application logic in the tool. - Pack-specific Electron builder resources belong under
tools/pack/resources/; do not reference app/docs/download assets directly from pack logic. - Namespace controls packaged data/log/runtime/cache paths. Ports are transient transport details and must not participate in path decisions.
- There is no root
pnpm buildaggregate. Use package-scoped builds for source packages andpnpm tools-pack ...for packaged artifact build/install/release flows.
Orchestration boundary
- Tool tests live in each tool's
tests/directory, sibling tosrc/; keepsrc/source-only and do not add new*.test.tsor*.test.tsxfiles undersrc/. - Orchestration layers must consume primitives from
@open-design/sidecar-proto,@open-design/sidecar, and@open-design/platform. - Do not hand-build
--od-stamp-*args, process-scan regexes, runtime tokens, process roles, or duplicate namespace/source args intools/dev, futuretools/pack, or packaged launchers. - Port flags are authoritative inputs:
--daemon-portand--web-port. Internal env vars areOD_PORTandOD_WEB_PORT; do not introduceNEXT_PORT.
Common tools commands
pnpm --filter @open-design/tools-dev typecheck
pnpm --filter @open-design/tools-dev build
pnpm --filter @open-design/tools-pack typecheck
pnpm --filter @open-design/tools-pack build
pnpm --filter @open-design/tools-serve typecheck
pnpm --filter @open-design/tools-serve build
pnpm --filter @open-design/tools-release typecheck
pnpm --filter @open-design/tools-release build
pnpm --filter @open-design/tools-release test
pnpm tools-dev status --json
pnpm tools-dev logs --json
pnpm tools-dev check
pnpm tools-pack mac build --to all
pnpm tools-pack mac install
pnpm tools-pack mac cleanup
pnpm tools-pack win build --to nsis
pnpm tools-pack win install
pnpm tools-pack win inspect --expr "document.title"
pnpm tools-pack win cleanup
pnpm tools-pack linux build --to appimage
pnpm tools-pack linux install
pnpm tools-pack linux install --headless
pnpm tools-pack linux start --headless
pnpm tools-pack linux stop --headless
pnpm tools-pack linux build --containerized
pnpm tools-serve start updater