CLI 参考

本页汇总三个 CLI(ttsc/ttsx/ttscserver)的命令与选项。内容取自 launcher 的 printHelp 与 Go 入口的 help 文本,是面向维护者的速查,不替代 ttsc.dev 的使用者文档。

ttsc

ttsc                       # 默认 lane: 构建当前 tsconfig
ttsc -p tsconfig.json      # 指定 tsconfig
ttsc --watch               # 文件变更重建
ttsc --noEmit              # 只分析不写文件
ttsc fix                   # 应用 lint + format autofix, 再 check
ttsc format                # 只应用 format 类 edit (write-only, 不类型检查)
ttsc prepare [options]     # 把源插件二进制构建进缓存
ttsc clean [options]       # 删源插件缓存目录
ttsc version
ttsc --help

子命令分派在 runTtscsrc/launcher/internal/runTtsc.ts:32)。build/check/fix/format/clean/prepare/demo 显式;裸 flag(- 开头)或 .ts/.json 路径视作 build 别名。

ttsc 选项

选项作用
-p, --project <file> / --tsconfig <file>从此 tsconfig 解析项目
--cwd <dir>从此目录解析相对路径
--emit强制 emit(覆盖 tsconfig noEmit)
--noEmit强制只分析不写
-w, --watch文件变更重建
--preserveWatchOutputwatch 重建间不清屏
--outDir <dir>覆盖本次 outDir
--quiet(默认)/ --verbose输出详略
--binary <path>显式 tsgo 二进制
--cache-dir <dir>源插件构建缓存根
--singleThreadedtsgo 单线程(一个 checker)
--checkers <n>类型检查器池大小

其他 flag 原样转发给 tsgo(--strict--target 等直接生效)。见 flag 解析器

子命令语义

  • build:同 ttsc [options] 项目构建 lane。
  • check:同 ttsc --noEmit [options]
  • fix:应用 check 插件的 lint + format edit,再跑 ttsc check。拒绝 --watch、单文件、--emit
  • format:只应用 check 插件的 format 类 edit(write-only,不类型检查)。
  • prepare:构建配置的源插件二进制进缓存。
  • clean:删源插件缓存目录。

ttsx

ttsx [options] <entry.ts> [-- <argv...>]
选项作用
-P, --project <file>显式 tsconfig(-P 大写,避免与 ttsc -p 冲突)
--cwd <dir>从此目录解析 entry/project
--cache-dir <dir>覆盖 runner 与源插件缓存根
--binary <path>显式 tsgo 二进制
--no-plugins不带 ttsc 插件构建项目(config 加载器用)
-r, --require <module>入口前预加载模块
--singleThreadedtsgo 单线程
--checkers <n>类型检查器池大小

入口前的其他 flag 转发给 tsgo(ttsx --strict src/index.ts)。入口后的 token(或 -- 后)是用户程序 argv,到 tsgo。见 ttsx 运行时

例子:

ttsx src/index.ts
ttsx --project tsconfig.json src/index.ts -- --port 3000
ttsx typia.ts generate --input src/input    # generate ... 是程序 argv

ttscserver

ttscserver --stdio
ttscserver --version
ttscserver --help
选项作用
--stdio经 stdin/stdout 与编辑器通信(唯一支持的传输)
--cwd <dir>项目根(上游 tsgo 进程的 cwd)
--tsconfig <path>ttsc 插件旁车用的项目 config
--tsgo <path>绝对 tsgo 二进制路径(默认 TTSC_TSGO_BINARY
--suppress-execute-command-providerinitialize 时不广告 ttsc executeCommand id
--suppress-execute-command-ids <ids>逗号分隔的要省略的命令 id
--execute-command-id-prefix <prefix>给广告的命令 id 加前缀(多客户端宿主)
--progress-delay D兼容性接受,当前被外部 tsgo LSP 进程忽略

编辑器经 JS launcher spawn ttscserver(解析平台二进制并传项目 tsgo 路径),经 stdio 交换 LSP 消息。见 LSP 代理

退出码语义

含义
0成功
1二进制未找到(ttsc)/ LSP 运行时错误(ttscserver)
2用户错误 / 构建失败 / 非法调用
3emit / manifest 失败(Go 侧)

接下来