Part of Phase 1 — Core skeleton (tasks.md Task 1.1).
Summary
Set up the Bun workspaces monorepo that every later task builds on: four packages, shared strict TypeScript config, ESLint, bun test wiring, and a minimal CLI entry point.
Details
- Initialize a Bun workspace with
packages/api, packages/core, packages/builtin, packages/cli (names @tecode/api, @tecode/core, @tecode/builtin, @tecode/cli). - Shared
tsconfig with strict: true, consistent module/target settings for Bun. - ESLint configured workspace-wide (the layering rule itself lands in Task 1.2).
bun test runs across all packages from the repo root.packages/cli entry (src/main.ts) parses --version and prints the version, exits 0.
Completion requirements
References
- requirements.md: Req 1.2
- design.md: §2 (Repository and Package Layout)
Dependencies
None (first task).
Part of Phase 1 — Core skeleton (tasks.md Task 1.1).
Summary
Set up the Bun workspaces monorepo that every later task builds on: four packages, shared strict TypeScript config, ESLint,
bun testwiring, and a minimal CLI entry point.Details
packages/api,packages/core,packages/builtin,packages/cli(names@tecode/api,@tecode/core,@tecode/builtin,@tecode/cli).tsconfigwithstrict: true, consistent module/target settings for Bun.bun testruns across all packages from the repo root.packages/clientry (src/main.ts) parses--versionand prints the version, exits 0.Completion requirements
bun installat the root resolves all four workspace packagesbun run packages/cli/src/main.ts --versionprints a version and exits 0bun testat the root runs (with at least one placeholder test per package) and passesbun lint(or equivalent script) passes workspace-wideReferences
Dependencies
None (first task).