typescript
Default TypeScript stack for Lambda: pnpm workspaces + Turbo, strict TS, and sensible DX helpers.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Default TypeScript stack for Lambda: pnpm workspaces + Turbo, strict TS, and sensible DX helpers.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Use the local pr-watch CLI/daemon to watch GitHub pull request activity, wait for PR changes, and fetch normalized event deltas without manually managing webhook forwarding or event subscriptions.
One lifecycle for Lambda repos: choose a bd task, start work, land the PR, and watch GitHub via Dumbwaiter MCP until it merges.
Default Python stack for Lambda: uv + Astral tools, typed code, schemas, and Hypothesis.
How to use bd (beads) for issue tracking, ready work, status updates, and comments in this repo.
Zero Framework Cognition Principles
Provider-agnostic wait-for-change skill that uses the Dumbwaiter MCP server to wait on PR events (GitHub first) via wait.start/status/cancel/await, with progress notifications and durable state.
| name | typescript |
| description | Default TypeScript stack for Lambda: pnpm workspaces + Turbo, strict TS, and sensible DX helpers. |
Baseline setup to reuse across projects. We standardize on pnpm workspaces and Turborepo for task orchestration.
package.json:
{ "packageManager": "pnpm@9.x", "private": true }
pnpm-workspace.yaml with your package globs (e.g., packages/*).pnpm -r lint, pnpm -r test, pnpm -r build.turbo.json:
{
"pipeline": {
"lint": { "outputs": [] },
"test": { "dependsOn": ["^build"], "outputs": [] },
"build": { "dependsOn": ["^build"], "outputs": ["dist/**"] }
}
}
pnpm turbo lint test build (or shorter aliases).lint, test, build, typecheck so Turbo and pnpm can compose them."type": "module"), target: ES2022+, moduleResolution: node16|bundler, strict: true, resolveJsonModule: true, skipLibCheck: true, sourceMap: true.tsconfig.base.json; each package extends it and sets rootDir: src, outDir: dist. Use composite: true + project references for multi-package builds and tsc -b.typecheck: tsc --noEmitlint: ESLint with @typescript-eslint/*build: tsc -b for libs/services; use tsup when you need bundled ESM+CJS + d.tstest: Vitest or Jest; keep typecheck separate so test runners don’t hide TS errorspnpm -r typecheck, pnpm -r lint, pnpm -r build, pnpm -r test; Turbo can wrap these when you want caching.tsx for local scripts (pnpm add -D tsx), avoid ts-node unless necessary.zod) to turn unknown into typed data.unknown over any; explicit return types on exports; keep strict green by fixing code, not loosening config.src/; never import from build outputs. Prefer ESM; use CJS only if the target requires it.Error subclasses with context; avoid silent catches. Use Promise.allSettled for fan-out when partial failure is acceptable.@typescript-eslint/parser and recommended configs; set parserOptions.project when rules need type info.lint-staged + simple-git-hooks, or enforce in CI.env.ts that validates and types process.env.