terminal-escape-room — 小型 CLI 逃脱游戏 (Python + Typer)

发布: (2026年2月11日 GMT+8 06:39)
2 分钟阅读
原文: Dev.to

Source: Dev.to

概览

这是 GitHub Copilot CLI 挑战的提交作品。
terminal-escape-room 是一个跨平台的 CLI 文本密室逃脱游戏。你可以通过 JSON 定义的房间进行游戏,每个房间最多请求两次提示,提交答案,获得积分(提示会扣分),并且进度会本地持久化到 .escape_state.json 保存文件中。

技术栈

  • Python 3.11+
  • Typer – CLI 框架
  • Rich – 格式化输出
  • Pytest – 测试套件

仓库

https://github.com/aisamposhen/terminal-escape-room

安装与快速运行

python3 -m venv .venv
source .venv/bin/activate
pip install -e .[test]

# 命令
escape start
escape status
escape hint
escape answer "kernel"
escape reset

90 秒演示大纲

escape start
escape status
escape hint
escape answer "kernel"
escape answer "^"
escape answer "git switch -c feature"

开发过程

我使用 GitHub Copilot CLI 作为终端优先的配对程序员,快速迭代以下内容:

  • Typer 命令结构(startstatushintanswerreset
  • 一个小型引擎层(房间进度 + 提示次数限制)
  • 稳定的 JSON 持久化模式(started_atfinished_at
  • 计分规则和测试

效果不错的做法:
将提示写得非常具体(输入/输出、边界情况、文件范围),随后立即使用 pytest 锁定更改。

示例工作流:

  1. 向 Copilot CLI 请求首次实现(一次聚焦一个模块)。
  2. 运行测试。
  3. 让 Copilot CLI 生成/调整测试以覆盖边界情况。
  4. 在行为确定后进行重构。

本地使用

该项目是自包含的,不依赖外部服务。只需按照上面的安装步骤操作,即可在本地尝试。

0 浏览
Back to Blog

相关文章

阅读更多 »

PQP语言

概览 名称:PQP Language 描述:它是一个用于演示语言构建过程的迷你编程语言。 !pichttps://med...

Unity 物理刚体类型

Static Bodies 静态体 完全不可移动的对象。一旦放置在场景中,它们的位置和旋转保持固定。它们不响应力或碰撞……