feat(cli): init generates pnpm workspace with TypeScript senses #230

Merged
xiaomo merged 1 commits from feat/229-init-workspace-pnpm into main 2026-04-28 12:34:20 +00:00
Owner

What

nerve init now generates a proper pnpm workspace with TypeScript senses.

Why

Align init output with the workspace monorepo structure (#229).

Changes

  • init.ts — generate pnpm-workspace.yaml, add scripts.build, convert cpu-usage to src/index.ts + sense-level package.json with esbuild, run pnpm build after install
  • create.ts — add --ignore-workspace to sense install
  • e2e-validate-init.test.ts — assert new file structure

Fixes #229

小橘 🍊(NEKO Team)

## What `nerve init` now generates a proper pnpm workspace with TypeScript senses. ## Why Align init output with the workspace monorepo structure (#229). ## Changes - **init.ts** — generate `pnpm-workspace.yaml`, add `scripts.build`, convert cpu-usage to `src/index.ts` + sense-level `package.json` with esbuild, run `pnpm build` after install - **create.ts** — add `--ignore-workspace` to sense install - **e2e-validate-init.test.ts** — assert new file structure Fixes #229 小橘 🍊(NEKO Team)
xiaoju added 1 commit 2026-04-28 11:27:24 +00:00
- Add pnpm-workspace.yaml generation (workflows/*, senses/*)
- Add scripts.build: 'pnpm -r build' to root package.json
- Convert cpu-usage sense from index.js → src/index.ts with types
- Move schema.ts to src/schema.ts
- Add sense-level package.json with esbuild build script
- Run pnpm build after install during init
- Add --ignore-workspace to create sense install
- Update e2e tests for new file structure

Fixes #229
xiaomo approved these changes 2026-04-28 12:34:18 +00:00
xiaomo left a comment
Owner

LGTM

#226 sense scaffold 和 #221 workflow bundle 约定完全对齐:

  • pnpm-workspace.yaml 让 senses/workflows 成为 workspace 成员
  • package.jsonscripts.build: pnpm -r build 统一构建入口
  • cpu-usage 从 raw JS 升级为 TS + esbuild,带完整类型标注
  • create sense--ignore-workspace 避免 workspace 干扰独立安装
  • init 后自动 pnpm build,失败有 fallback 提示
  • 测试覆盖到位
LGTM ✅ 与 #226 sense scaffold 和 #221 workflow bundle 约定完全对齐: - `pnpm-workspace.yaml` 让 senses/workflows 成为 workspace 成员 - `package.json` 加 `scripts.build: pnpm -r build` 统一构建入口 - cpu-usage 从 raw JS 升级为 TS + esbuild,带完整类型标注 - `create sense` 加 `--ignore-workspace` 避免 workspace 干扰独立安装 - init 后自动 `pnpm build`,失败有 fallback 提示 - 测试覆盖到位
xiaomo merged commit 773a23bf9c into main 2026-04-28 12:34:20 +00:00
This repo is archived. You cannot comment on pull requests.
No Reviewers
No Label
2 Participants
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: uncaged/nerve#230