页:1
机型有意识的TypeScript/JavaScript代码智能作为CLI. 环绕 兹戈 (Microsoft的原产地去tserver港)并暴露其LSP能力—— references, (中文(简体) ), definition, (中文(简体) ), rename, (中文(简体) ), rename-file, (中文(简体) ), hover, (中文(简体) ), outline, (中文(简体) ), diagnostics, (中文(简体) ), call-hierarchy, (中文(简体) ), code-action ——作为一套小型的方便特工的命令.
重点是给编码剂一个替代grep/find-and-取而代之/mv 关于标识级别的工作. rename 更新每个引用. rename-file 重写每次导入 . outline 返回 LSP 的结构视图,而不是200行来源.
每秒一个 tsconfig.json懒惰发作 可选 --daemon 保持tsgo温暖 通过呼叫.
安装
两个客户端是一等:克洛德代码(通过捆绑的插件市场)和克洛德克思(通过CLI+) AGENTS.md) (中文(简体) ).
克劳德代码
/plugin marketplace add 0xdeafcafe/tslsp-cli
/plugin install tslsp@0xdeafcafe-tslsp
插件捆绑了指示克洛德使用的路由技巧 tslsp-cli 而非 grep / 字符串编辑 / mv 用于任何TS/JS标识工作——无 CLAUDE.md 需要编辑。 技术驱动CLI,所以安装这个:
npm i -g @0xdeafcafe/tslsp-cli
该技能指示克洛德 验证CLI PATH 在每次会话开始时; 缺失的安装表面立即而非中值。 更新技能为 /plugin marketplace update 0xdeafcafe-tslsp。 。 。 .
代码
代码读取 AGENTS.md 克劳德也是这样写的 CLAUDE.md。安装 CLI 并让它写入路由块:
npm i -g @0xdeafcafe/tslsp-cli
tslsp-cli install --skills --project --with-agents-md # writes ./AGENTS.md
tslsp-cli install --skills --with-agents-md # writes ~/.codex/AGENTS.md (user-wide)
同上文——由标注评论来守护,所以再运行是无操作. --with-claude-md 是非市场Claude代码安装的等同旗帜;两种旗帜可以一起相传.
其他代理人
Cursor, Cline, Aider, 其它任何运行 shell并读取指令文件: 安装 CLI(npm i -g @0xdeafcafe/tslsp-cli然后粘贴身体 skills/tslsp/SKILL.md 输入主机的等同文件.
从源
git clone https://github.com/0xdeafcafe/tslsp-cli.git
cd tslsp-cli && pnpm install && pnpm run build
./dist/cli.js --help
命令
| 命令 | 目的 |
|---|---|
find-symbol | 工作空间符号搜索. 多克或多克位置 --queries a,b,c。 。 。 . --kind, (中文(简体) ), --container。 。 。 . |
references | 每参参. 定位器或 --symbols 批号. --summary 页:1 path (N): lines。 。 。 . |
definition | 跳到定义符号的地方. --symbols 批号. |
type-definition | 跳转到值的 类型 声明(vs.值). --symbols 批号. |
implementation | 具体实施接口/抽象成员. --symbols 批号. |
rename | 每个文件都重命名类型 . --dry-run 预览. |
rename-file | 移动文件或文件夹; 更新每次导入 。 文件夹递归行走. |
hover | 类型签名+JSDoc. --symbols 批号. |
outline | 缩入声明大纲. 文件, 缩写( G) ('src/**/*.ts'),目录. --depth, (中文(简体) ), --kind。 。 。 . |
diagnostics | 类型错误。 档案 词汇 目录 每一个打开的文件都无参数 = 汇总 . |
call-hierarchy | 召相与所请. --direction incoming 编号 : outgoing 编号 : both。 。 。 . |
code-action | 列出快取/重构/组织-进口; --apply N 应用. |
tslsp-cli --help 财务报告和审定财务报表 tslsp-cli <command> --help 具有权威性.
定位器
需要位置的指令接受三种表格,按优先顺序排列:
--file F --line L --character C explicit LSP position
--file F --line L --symbol NAME scan line L of F for NAME
--symbol NAME workspace search; exit 2 with candidates if ambiguous
特工通常知道符号名称和行,而不是栏. 模式2和3弥补了差距.
批次
每个只读命令接受一个列表. 一个CLI呼叫 – 没有平行的LSP查询 – 一个标签的回:
tslsp-cli find-symbol add double sum # multi-positional
tslsp-cli hover --symbols User,Account,Session
tslsp-cli references --symbols add,sum,double
tslsp-cli outline 'src/**/*.ts' # quote the glob
tslsp-cli diagnostics src/api/ # directory walk
块被标记 === name ===。 。 。 . find-symbol 内部序列化( tsgo) workspace/symbol 比赛在冷起步时进行;其他一切球迷都出道.
通过源扩展集过滤Glob和目录输入(.ts/.tsx/.mts/.cts/.js/.jsx/.mjs/.cjs和一个被忽略的集合(node_modules, (中文(简体) ), .git, (中文(简体) ), dist, (中文(简体) ), build, (中文(简体) ), out, (中文(简体) ), .next, (中文(简体) ), coverage。在图案本身(例如:. node_modules/**/*.ts包括这些点击.
断接输出被挤压: 干净的物品丢弃 === file === 信头,所有干净的批次倒入一行,和 references --summary 交换片断 path (N): l1, l2, l3 ——~15KB ——在被大量引用的符号上有几百字节.
守护进程
tslsp-cli <cmd> fresh tsgo per invocation; disposed after the call
tslsp-cli --daemon <cmd> RPC into a per-workspace daemon
Fresh-process model 对一次性通话来说是好的. 对于一个循环 与许多电话, --daemon 在第一次使用时自动喷出每个工作空间守护进程,然后重复使用。 套接字路径 : $CACHE/tslsp/daemon/<sha1(tsconfig-dir)>/<session>.sock (主要内容) ~/Library/Caches时, Linux $XDG_CACHE_HOME窗口 %LOCALAPPDATA%; 覆盖到 TSLSP_DAEMON_DIR) (中文(简体) ).
tslsp-cli --daemon references --symbol User
tslsp-cli daemon list # running daemons
tslsp-cli daemon restart # after upgrading tslsp-cli
tslsp-cli daemon stop # graceful stop for this workspace
tslsp-cli daemon kill-all # SIGKILL every daemon
守护进程在闲置了30分钟后自行退出( M)TSLSP_DAEMON_IDLE_MS); 10分钟后在内部的个人tsgos收获(TSLSP_TSGO_IDLE_MS。 版本扭曲守护进程拒绝新调用 – 运行 daemon restart 升级后.
来了
@typescript/native-preview被固定在一个特定的dev建筑。 tsgo动作快;故意撞倒.rename财务报告和审定财务报表rename-file写入磁盘.--dry-run先预览.- 总是引用光彩图案. 一个未引用
src/**/*.ts匹配您 shell 中的任何内容 成为字面参数和 LSP 错误, 而不是扩展器查找零文件 . - 每秒一个
tsconfig.json树根。 Monorepos支付项目荷载的成本是每个项目第一次被击中(~50ms小,更多在大. --daemon保持文件对调。 两次守护进程调用之间的外部编辑可能短暂地滞后到下次文件打开或didChangeWatchedFiles活动.- 守护进程住在那里
$CACHE/tslsp/daemon/<hash>/<session>.err-第一个看产卵失败的地方. TSLSP_VERBOSE=1将 tsgo 的 stderr 转发到前景进程 .- 安装了土生土长机
tsgo打开PATH被忽略;tslsp-cli总是使用 npm 钉住的.