A Terminal Protocol for Program Status (OSC 7501)
a day ago
- 米切尔·桥本介绍了OSC 7501,一种新的终端转义序列,用于程序报告其状态(空闲、工作中、完成、阻塞、错误)。
- 现有的解决方案如启发式方法(读取屏幕标题)和非终端API是不够的,特别是对于需要传达状态变化的编码代理。
- 该协议使用键值对(例如STATE、APP、MSG)通过PTY发送;它简单、安全,并且可以处理层次化任务。
- 实现非常简单(例如使用printf的shell脚本),并且已经在Ghostty、Rex中部署,以及在Terraform、Claude Code和Homebrew中的概念验证。
- 目标是让程序直接告诉终端其状态,从而无需通过读取输出或窗口标题来猜测。