现代化的 Windows 终端应用(支持标签页和 Unicode),同时包含经典 Windows 控制台宿主 conhost.exe 的源码。
chrisant996/clink
为 Windows 原生 cmd.exe 带来 Bash 式命令行编辑、补全、历史记录和 Lua 可编程提示符。
- Star
- 5,583
- Fork
- 211
- 未关闭 Issue
- 2
- 最近提交
- 5天前
这是什么?
Clink 将 GNU Readline 库的行编辑和补全功能引入 Windows 默认的命令提示符 cmd.exe。它通过将 DLL 注入 cmd.exe 进程,并拦截少量 Windows API 调用,让提示符和输入行由基于 Readline 的编辑器处理,取代原有的内置编辑功能。
开箱即用时,Clink 提供基于历史记录、文件和补全结果的输入建议,支持 Tab 和 Ctrl-Space 补全,并保存可搜索的历史记录供跨会话使用。补全和输入着色由 Lua 脚本驱动,提示符同样可以用 Lua 自定义,使 cmd.exe 用户也能使用类似其他 shell 的动态提示符。
Clink 可通过安装程序、winget、scoop 或 ZIP 压缩包安装,也可设置为 cmd.exe 启动时自动加载。项目使用 C++ 编写,通过 Premake 生成 Visual Studio 工程进行构建。
核心功能
- 01输入时基于历史、文件和补全结果给出自动建议。
- 02支持 Tab 和 Ctrl-Space 补全,并可显示交互式补全列表。
- 03命令历史可搜索,并在会话之间持久保存。
- 04通过 Lua 脚本实现上下文相关的输入着色。
- 05可用 Lua 脚本自定义提示符。
- 06支持可配置的按键绑定和额外的行编辑命令。
适用场景
- 经常在 cmd.exe 中工作、希望获得类似 Bash 编辑和历史体验的 Windows 开发者。
- 用 Lua 脚本动态自定义 cmd.exe 提示符。
- 为 Windows 上的命令行工具添加上下文感知的 Tab 补全。
快速上手
- 1
使用 winget 安装 Clink
winget install --id chrisant996.Clink -e - 2
使用 scoop 安装 Clink(备选)
scoop install clink - 3
启动 cmd.exe;若已开启自动运行,Clink 会自动注入,或从开始菜单运行 Clink 快捷方式
使用前须知
- 仅适用于 Windows,且只能配合 cmd.exe 使用。
- 采用 GPL-3.0 许可证,属于 Copyleft 许可。
标签
常见问题
- clink 是什么?
- 为 Windows 原生 cmd.exe 带来 Bash 式命令行编辑、补全、历史记录和 Lua 可编程提示符。 Clink 将 GNU Readline 库的行编辑和补全功能引入 Windows 默认的命令提示符 cmd.exe。它通过将 DLL 注入 cmd.exe 进程,并拦截少量 Windows API 调用,让提示符和输入行由基于 Readline 的编辑器处理,取代原有的内置编辑功能。
- clink 可以免费使用吗?用的什么许可证?
- clink 以 GPL-3.0 许可证开源。用于商业产品前,请先确认许可证条款。
- clink 还在维护吗?
- 活跃维护中。clink 最近一次提交是在 2026年11月2日。
- clink 适合用来做什么?
- 经常在 cmd.exe 中工作、希望获得类似 Bash 编辑和历史体验的 Windows 开发者。 用 Lua 脚本动态自定义 cmd.exe 提示符。 为 Windows 上的命令行工具添加上下文感知的 Tab 补全。
- clink 怎么安装和运行?
- 使用 winget 安装 Clink: winget install --id chrisant996.Clink -e 使用 scoop 安装 Clink(备选): scoop install clink 启动 cmd.exe;若已开启自动运行,Clink 会自动注入,或从开始菜单运行 Clink 快捷方式
- 在哪里获取 clink?
- 源代码和安装说明在 GitHub 上:https://github.com/chrisant996/clink
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
面向 macOS、Linux 等系统的交互式命令行 shell,开箱即用,无需额外配置。
面向 Bash、Zsh、Fish 等 shell 的命令模板与代码片段管理工具,像 IntelliSense 一样辅助终端输入。
一款 Fish 终端插件,借助大语言模型实现注释与命令互转、修复错误命令和智能补全。
一个 Java 命令行应用框架,支持注解和编程两种方式,提供子命令、ANSI 彩色帮助和 Tab 自动补全。
面向 Windows 的便携式控制台模拟器套件,基于 ConEmu,内置 Monokai 配色与增强提示符。