Skip to content

Release v0.2.0 and first npm publish - #1

Merged
KingEmma7 merged 4 commits into
mainfrom
npm-publish-prep
Jun 12, 2026
Merged

Release v0.2.0 and first npm publish#1
KingEmma7 merged 4 commits into
mainfrom
npm-publish-prep

Conversation

@KingEmma7

Copy link
Copy Markdown
Owner

No description provided.

realpathSync-normalize both sides of the entry-point comparison so the
CLI still runs main() when invoked through a symlinked path (e.g. macOS
/tmp -> /private/tmp). Verified with npm test (112 checks passing).
… defaults, CI hardening

- Fix doctor never reaching "installed and localized": template
  instruction notes no longer contain the literal word TODO, and the
  localization prompt instructs deleting them when done (counts 5/12 -> 4/10).
- Require an explicit command: bare invocation prints help and writes
  nothing; args without a command error out (breaking, pre-publish).
- init now runs an automatic post-install health check with placeholder
  count, next step, and a Cursor CLI tip for running localization.
- doctor reports version drift between the installed marker and the
  current package version.
- Harden CI: Node 20/22 x Ubuntu/Windows matrix plus a checks job
  (node --check, package.json parse, npm pack --dry-run).
- Raise engines to Node >=20 (18 is EOL).
- Polish: lstat in listFiles (symlink-cycle safe), hoist TODO_FILES,
  remove dead smoke-test variable, absolute-path display for external
  targets, dynamic README version badge, vX.Y.Z example outputs.
- Record decisions in docs/decision-log.md; update README, CHANGELOG,
  RELEASE_CHECKLIST, examples, and root AGENTS.md accordingly.

Verified: npm test (126 checks passing), npm run pack:dry-run,
package.json parse, manual CLI walkthrough of init/doctor/bare/drift.
- Bump version to 0.2.0; date the changelog
- Switch README/examples install instructions to npx cursor-os
- Add exports field for programmatic import { install, doctor }
- Add runtime Node >= 20 guard with a clear error message
- Add .gitattributes (LF enforcement) and gitignore *.tgz
- CI: e2e test installs the packed tarball and runs the bin
- Dogfood: cursor-os installed and localized on this repo
- Add no-auto-commit rule for agent sessions

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Prepares Cursor OS for the v0.2.0 release and first npm publish by hardening the CLI defaults (read-only by default), adding packaging/import support, and tightening release/CI verification so the published tarball is exercised end-to-end.

Changes:

  • Publishes via npm (npx cursor-os <command>), adds exports, raises Node floor to 20, and adds a runtime Node version guard.
  • Makes CLI safer by requiring an explicit subcommand and adding a post-install “health check” plus version-drift reporting in doctor.
  • Expands smoke/CI coverage and adds repo-level docs (decision log, quality rubric, repo memory) to support release operations.

Reviewed changes

Copilot reviewed 17 out of 18 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
template/prompts/localize-cursor-os.md Updates localization instructions to remove install-time notes after localization.
template/docs/repo-memory.md Adjusts install-time guidance to avoid non-placeholder “TODO” usage and to remove the note after localization.
template/AGENTS.md Adjusts install-time guidance wording to avoid non-placeholder “TODO” usage and to remove the note after localization.
scripts/smoke-test.mjs Adds smoke coverage for localized success, version drift, post-install messaging, and safer CLI behavior.
scripts/init.mjs Hardens CLI parsing, adds Node>=20 guard, post-install check, version-drift reporting, and symlink-safe file listing behavior.
RELEASE_CHECKLIST.md Adds packaging integrity and pre-publish checklist items for tarball/bin/import verification.
README.md Updates install/docs to the npm (npx) flow, updates examples and roadmap, and removes “not published yet” language.
package.json Bumps to 0.2.0, raises engines to Node>=20, adds exports, and tightens published files list.
examples/localization-example.md Updates example commands/output to match npx cursor-os and localized success messaging.
docs/repo-memory.md Adds repo-level “durable facts” documentation for maintainers.
docs/quality-rubric.md Adds a repo-level quality gate checklist for verification/release discipline.
docs/decision-log.md Adds an append-only decision record for v0.2.0 behavioral changes.
CHANGELOG.md Documents v0.2.0 additions/breaking changes/fixes for the npm release.
AGENTS.md Updates repo layout section to include the new docs/ directory purpose.
.gitignore Ignores npm pack artifacts and local dogfooded install output.
.github/workflows/ci.yml Adds a “checks” job (syntax/package/pack/e2e tarball) and expands smoke testing matrix.
.gitattributes Enforces LF line endings repo-wide to protect the published shebang.
.cursor/rules/no-auto-commit.mdc Adds a Cursor rule preventing accidental git/publish write operations.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread docs/repo-memory.md Outdated
Comment thread docs/repo-memory.md Outdated
Comment thread scripts/init.mjs
Comment thread .github/workflows/ci.yml Outdated
@KingEmma7
KingEmma7 merged commit 0f25f6a into main Jun 12, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants