feat(cli): scaffold sense as TypeScript + esbuild bundle #226

Merged
xiaomo merged 1 commits from feat/225-sense-typescript-scaffold into main 2026-04-28 08:37:53 +00:00
Owner

What

nerve create sense now generates TypeScript source + esbuild bundle, matching the workflow convention.

Why

Senses were scaffolded as raw .js, inconsistent with workflows. After #224 migrated existing senses to TS + esbuild, the scaffold needs to match.

Changes

  • packages/cli/src/commands/create.ts — new buildSenseIndexTs(), buildSensePackageJson(), writes to src/, runs pnpm install && pnpm build
  • packages/skills/nerve-dev/SKILL.md — updated sense file structure docs
  • packages/cli/src/__tests__/create-sense.test.ts — updated for new structure
  • packages/cli/src/__tests__/e2e-create.test.ts — updated for new structure

Tests

198 tests passed (22 test files)

Fixes #225

## What `nerve create sense` now generates TypeScript source + esbuild bundle, matching the workflow convention. ## Why Senses were scaffolded as raw `.js`, inconsistent with workflows. After #224 migrated existing senses to TS + esbuild, the scaffold needs to match. ## Changes - `packages/cli/src/commands/create.ts` — new `buildSenseIndexTs()`, `buildSensePackageJson()`, writes to `src/`, runs `pnpm install && pnpm build` - `packages/skills/nerve-dev/SKILL.md` — updated sense file structure docs - `packages/cli/src/__tests__/create-sense.test.ts` — updated for new structure - `packages/cli/src/__tests__/e2e-create.test.ts` — updated for new structure ## Tests 198 tests passed (22 test files) Fixes #225
xiaoju added 1 commit 2026-04-28 07:42:33 +00:00
- nerve create sense now generates src/index.ts and src/schema.ts
- Adds package.json with esbuild build script
- Runs pnpm install && pnpm build after scaffolding
- Updates nerve-dev skill docs with new sense structure
- Updates tests for new TypeScript scaffold

Fixes #225
xiaomo approved these changes 2026-04-28 08:37:51 +00:00
xiaomo left a comment
Owner

LGTM

#221 workflow 约定对齐,sense 也走 TS + esbuild 了:

  • scaffold 生成 src/index.ts + src/schema.ts + package.json,结构清晰
  • 自动 pnpm install && pnpm build,失败有 fallback 提示
  • 生成的 TS 带完整类型标注(LibSQLDatabaseSenseResult
  • nerve-dev SKILL.md 同步更新

小提醒:sense 输出到根目录 index.js,workflow 输出到 dist/index.js — 风格略有不同,不过 file-watcher 的 regex 已经分别处理了,不影响功能。后续如果想统一可以再调。

LGTM ✅ 与 #221 workflow 约定对齐,sense 也走 TS + esbuild 了: - scaffold 生成 `src/index.ts` + `src/schema.ts` + `package.json`,结构清晰 - 自动 `pnpm install && pnpm build`,失败有 fallback 提示 - 生成的 TS 带完整类型标注(`LibSQLDatabase`、`SenseResult`) - nerve-dev SKILL.md 同步更新 小提醒:sense 输出到根目录 `index.js`,workflow 输出到 `dist/index.js` — 风格略有不同,不过 file-watcher 的 regex 已经分别处理了,不影响功能。后续如果想统一可以再调。
xiaomo merged commit 984389eb2b into main 2026-04-28 08:37:53 +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#226