com um clique
project
What ttsc is, the workspace layout, and the canonical commands.
Instalar com Codex ou Claude Copie este prompt, cole no Codex, Claude ou outro assistente e deixe que ele revise a página da skill e instale para você.
Menu
What ttsc is, the workspace layout, and the canonical commands.
Instalar com Codex ou Claude Copie este prompt, cole no Codex, Claude ou outro assistente e deixe que ele revise a página da skill e instale para você.
Baseado na classificação ocupacional SOC
Benchmark runner, fixture repos, and publication. Read before running, modifying, or publishing benchmark results.
Pull request submission flow. Read only when the user explicitly asks for a pull request.
Work rules, testing, validation, and change integrity. Read before writing or modifying code.
Self-Review, Review Cycle, Discussion, and Research Review Round workflows. Read the Exhaustive rounds and Stop condition rules before any review round (solo or team); read the Briefing subagents rule before delegating to any subagent; read in full when the user asks for a named mode.
READMEs and website guides. Read before writing or modifying docs.
Keeping packages/ttsc/shim/* synced with typescript-go and complete for plugin authors. Read before adding a re-export, bumping the pinned typescript-go version, or chasing a missing AST/transform/printer/emit API a plugin needs.
| name | project |
| description | What ttsc is, the workspace layout, and the canonical commands. |
ttsc is a standalone TypeScript-Go compiler, runtime, plugin host, and LSP host. It ships three CLIs and a plugin protocol:
ttsc: build, check, watch, and source-to-source transform on top of typescript (the native TypeScript-Go compiler).ttsx: run a TypeScript entrypoint after a real type-check (a typed tsx/ts-node).ttscserver: LSP host wrapping tsc --lsp --stdio and proxying JSON-RPC so ttsc plugin diagnostics, code actions, and workspace/executeCommand handlers reach the editor through one stream.package main sources build as sidecars; non-main transform packages link into a native host. ttsc builds plugin source on demand and caches the binary.The contract is general-purpose. Downstream projects like typia and nestia are compatibility fixtures, not the product definition.
Graph MCP work has an additional contract in .codex/skills/project/graph.md. Read it before changing packages/graph, graph benchmark prompts, graph benchmark runners, or the graph benchmark website.
packages/ttsc: JS launcher/API plus Go host (cmd/*, driver, internal, utility, shim/). driver.PluginSource is the public seam embedders implement; NativePluginSource adapts capabilities.lsp sidecars. internal/lspserver is the byte-level LSP proxy ttscserver uses.packages/{banner,paths,strip}: utility transform plugins with package-owned driver/ logic linked into a generic native host.packages/lint: @ttsc/lint with its own native engine, exposing LSP verbs from linthost/lsp.go so ttscserver and packages/vscode call them through the language client. Rules may consult the TypeScript-Go Checker directly via ctx.Checker; third-party rules ship through the public rule package and may use the rule/astutil helpers.packages/wasm: @ttsc/wasm, Go host helper plus JS boot scaffolding for in-browser ttsc playgrounds. host.Expose binds globalThis[apiName] with the standard verbs (build/check/transform/plugin/plugins/version) plus fountain verbs (snapshot/getDiagnostics/getNodeAtPosition/...) over a snapshot handle table.packages/playground: @ttsc/playground, reusable Web Worker + React shell built on @ttsc/wasm. Exports createWorkerCompiler (worker-side ICompilerService factory), PlaygroundShell (Tailwind 4 React component), runtime npm dependency installer, typia source/runtime pack helpers, and Monaco editor wrappers. Consumed by website/ and typia/website/.packages/factory: @ttsc/factory, a hand-written, zero-dependency TypeScript AST factory and width-aware printer (no typescript import) for source-code generation that survives the tsgo migration. Standalone published library; nothing else in the workspace depends on it yet.packages/unplugin: bundler adapters.packages/vscode: VS Code extension that wires vscode-languageclient to ttscserver, exposes the built-in lint/format command bridge, and lets other plugin command ids execute through the language client with editor-applied WorkspaceEdits.packages/ttsc-*: per-platform packages (native helper + bundled Go SDK). Each ships both the ttsc helper and the ttscserver binary.tests/projects: project-shaped fixtures copied into temp dirs by TestProject.copyProject.tests/test-*: feature-test packages (run via pnpm test:features).tests/utils: shared helpers (@ttsc/testing).tests/<plugin-name>: workspace packages that need to be require.resolve-able from a fixture's node_modules (e.g. tests/lint-contributor-demo). Built by scripts/build-current.cjs before tests run.website: Nextra-based docs site (src/content/docs/**/*.mdx) that is the canonical home for guides, shipped to https://ttsc.dev.config, scripts: shared tsconfig and workspace scripts.pnpm install
pnpm format
pnpm build
pnpm test:go
pnpm test