← 返回
精选AI产品发布/更新#AI辅助编程#Datasette#DOOMQL#GPT-5.6 Sol#SQLite

DOOMQL:用SQLite作为游戏引擎的AI生成Doom风格游戏

Simon Willison 博客(Atom)T2
06:3407/14 06:34社区阅读原文 ↗导出 MD ↓

评分

71
信息增量8 ×0.3

展示了SQLite作为游戏引擎的极端用法,颠覆传统认知,信息增量高。

内容质量9 ×0.2

文章详细描述了实现过程、代码链接和运行方式,质量很高。

实用价值5 ×0.2

虽然创意有趣,但实用性有限,难以直接应用,主要作为概念验证。

时效性9 ×0.15

2026年7月发布,时效性极高。

信源可信度9 ×0.15

来源为知名技术博主Simon Willison的博客,可信度高。

基础分 79 × T2 信源权重 ×0.9 = 71

精选线 70已入选精选

精选理由

技术创意满分,但实用性有限,主要作为概念验证和灵感启发。

AI 点评

「DOOMQL完美地展示了AI如何将看似不相关的技术(SQLite和游戏引擎)结合出惊人效果。对于数据库爱好者和AI编程探索者来说,这是一次绝妙的灵感碰撞。」

速览

DOOMQL由Peter Gostev使用GPT-5.6 Sol构建,让SQLite充当完整游戏引擎,实现了包含光线追踪、碰撞、敌人、战斗和升级机制的类Doom游戏。每个像素由SQL递归CTE驱动,以Python终端脚本运行。结合Datasette和AI生成的App,可实时查看游戏画面和迷你地图,展现了AI在创意编程中的惊人潜力。

  • 使用GPT-5.6 Sol生成,SQLite作为完整游戏引擎驱动移动、碰撞、敌人、战斗和画面渲染。
  • 通过递归CTE实现完整光线追踪器,每个像素由SQL查询生成。
  • 游戏作为Python终端脚本运行,同时创建SQLite数据库供Datasette实时分析。
  • 借助Datasette Apps插件和Claude(Fable 5)生成HTML+JavaScript应用,实时显示游戏画面和迷你地图。

正文

DOOMQL

Peter Gostev built this using GPT-5.6 Sol. This is a lot of fun:

DOOMQL从一个故意不合理的问题开始:如果SQLite是游戏引擎,而不仅仅是游戏存储数据的地方呢?结果是一小但是原创的类Doom游戏,其中SQL负责移动、碰撞、敌人、战斗、进度以及屏幕上的每个RGB像素。

它被实现为一个Python终端脚本——我是这样尝试的:

cd /tmp
git clone https://github.com/petergpt/doomql
cd doomql
uv run host/doomql.py

Screenshot of a macOS terminal window titled "doomql — python3.14 ◂ uv run host/doomql.py — 134×31" showing a retro Doom-style game rendered as text-mode pixel art. The scene is a pixelated first-person corridor with gray paneled walls, dark red doors on the far left and right, a floating cyan-and-gold coin pickup on the right side, a white crosshair near the center, and a dark weapon barrel rising from the bottom center. A status bar below the scene reads "HP 100/100 AMMO 037 SCORE 00225 INDEX MISSING TICK 0028450", followed by an orange line "FIND THE INDEX TOKEN" and a cyan controls line "WASD MOVE J/L OR ARROWS TURN SPACE FIRE E USE P PAUSE CTRL-C EXIT".

这是实现了一个在SQLite中使用递归CTE的完整光线追踪器的巨大SQL查询。

运行上述脚本会创建一个/tmp/doomql/.doomql/doomql.sqlite SQLite数据库,你可以像这样使用Datasette探索它:

uvx --prerelease=allow  --with datasette-apps datasette \
  /tmp/doomql/.doomql/doomql.sqlite \
  -p 4444 --root --secret 1 --internal internal.db

--with datasette-apps选项安装了新的Datasette Apps插件,它支持创建自定义的HTML+JavaScript应用,可以在Datasette界面内直接运行SQL查询。

我创建了一个新应用,将复制粘贴的提示粘贴到Claude聊天(Fable 5)中,并告诉它:

构建一个应用,使用frame_pixels视图及其x, y, r, g, b列显示屏幕的当前状态。让它每秒刷新一次。

这让我在Datasette中得到了一个可以工作的HTML+JavaScript应用,它可以在我在终端玩游戏时反映当前状态。然后我添加了:

添加一个小地图

现在我的Datasette应用看起来是这样的:

Screenshot of a dark-themed web app running a retro Doom-style game rendered from SQL queries. The page header reads "DOOMQL" with buttons "All apps", "Edit app", "Pin", and "Full screen". Inside the game panel, the title "DOOMQL" sits above the subtitle "auto-refreshing once a second · frame and tactical map straight from SQL". The left side shows a pixelated first-person corridor view with gray walls, dark red doors, a floating cyan-and-gold coin pickup, a white crosshair, and a weapon barrel at bottom center. A status bar below reads "HP 100/100 AMMO 037 SCORE 00225 INDEX MISSING TICK 0027847". On the right, a panel titled "TACTICAL MAP" shows a top-down grid map with a player triangle, a red enemy circle, yellow pickup dots, red wall markers, and a green exit square, with a legend reading "you", "enemy", "pickup", "locked door", "door", "exit". Below the game view, an orange banner reads "FIND THE INDEX TOKEN", followed by the cyan line "READ-ONLY VIEWER · SELECT x, y, r, g, b FROM frame_pixels". At the bottom, a green "RUNNING" badge appears beside the stats "160×54 · 8,640 pixels · 3 hostiles · query 89 ms · refreshing every 1 s".

这是HTML应用代码——将其粘贴到你自己的Datasette实例中(使用上面的uvx --with datasette-apps方法)来自己试试。

来自 @petergostev

标签:games, sql, sqlite, ai, datasette, generative-ai, llms, ai-assisted-programming, gpt, datasette-apps

相关条目

92

五维评分

信息增量8 ×0.3

首次系统介绍 OpenRouter 缓存与路由协同策略,信息增量较高。

内容质量9 ×0.2

官方教程,结构清晰,包含原理、示例和实测效果。

实用价值10 ×0.2

直接明确降低 API 成本,开发者可立即应用。

时效性10 ×0.15

刚刚发布,且对当前 Agent 开发热潮具有及时指导意义。

信源可信度10 ×0.15

来源为 OpenRouter 官方 RSS 和官网,信源权威可靠。

基础分 92 × T1 信源权重 ×1 = 92

精选线 60已入选精选

08:00OpenRouter:Announcements(RSS)T1RSS

精选OpenRouter 推出提示缓存与粘性路由,大幅降低多轮对话成本

对于高频调用 AI API 的开发者,这个功能堪称直接省钱利器。粘性路由保证了缓存命中率,配合 session_id 零配置接入,值得所有使用 OpenRouter 的团队立即尝试。

AI产品#OpenRouter#会话ID#成本优化
91

五维评分

信息增量9 ×0.3

首次公开ChatGPT Work的Agent能力,信息增量高。

内容质量8 ×0.2

官方发布,内容清晰,但细节较少。

实用价值9 ×0.2

为用户提供可直接使用的Agent能力,实用价值高。

时效性10 ×0.15

刚刚发布,时效性极强。

信源可信度10 ×0.15

来自OpenAI官方,信源权威可靠。

基础分 91 × T1 信源权重 ×1 = 91

精选线 60已入选精选

18:00OpenAI:News(RSS)T1RSS

精选ChatGPT Work:可在跨应用和文件中执行操作的AI Agent

我认为这是AI助手从问答走向执行的关键一步。对需要自动化复杂工作流的专业人士尤其值得关注。ChatGPT Work可能成为生产力工具的新范式。

AI产品#Agent#AI 生产力#ChatGPT Work
90

五维评分

信息增量9 ×0.3

首次公开前沿实验室代理入侵的完整技术时间线,信息增量极高。

内容质量8 ×0.2

结构严谨、技术细节丰富,但缺乏部分原始日志数据佐证。

实用价值9 ×0.2

提供了缓解建议和自检工具,对AI安全从业者具有直接指导意义。

时效性10 ×0.15

事件发生仅数月后即发布分析,时效性极佳。

信源可信度9 ×0.15

Hugging Face 作为顶级开源AI平台,其技术博客可信度极高。

基础分 89.5 × T1 信源权重 ×1 = 90

精选线 60已入选精选

08:00Hugging Face:Blog(RSS)T1RSS

精选前沿实验室代理入侵事件技术时间线:2026年7月事件剖析

这篇技术时间线值得所有AI安全研究员和代理开发者细读——它不只是描述一次攻击,而是为整个行业敲响了代理系统防御体系薄弱的警钟。对正在部署自主代理的团队来说,这是必读的灾难预防手册。

科技产品#AI代理安全#Hugging Face#入侵时间线
90

五维评分

信息增量8 ×0.3

文章揭示了工具增强反而导致AI性能下降的反直觉发现,并提供了具体工程改进方案,信息增量高。

内容质量9 ×0.2

来自GitHub官方工程博客,有数据支撑(成本下降40%),论证清晰,质量上乘。

实用价值9 ×0.2

对AI产品团队、代码审查工具开发者、以及依赖AI辅助编程的团队有直接借鉴意义。

时效性10 ×0.15

2024年发布的工程实践,符合当前AI产品优化趋势,时效性强。

信源可信度10 ×0.15

信源为GitHub官方博客,具有高度权威性和技术可信度。

基础分 90 × T1 信源权重 ×1 = 90

精选线 60已入选精选

23:57GitHub Blog(网页)T1网页

精选更好的工具反而让Copilot代码审查更糟?GitHub这样改进

这篇博客值得所有AI产品工程师和ML从业者仔细阅读——它打破了'更强大的工具=更好的AI'的直觉,转而强调与Agent推理模式匹配的工程哲学。对正在优化代码审查或类似Agent产品的团队尤其重要。

AI产品#Agent工作流#Copilot#GitHub
88

五维评分

信息增量9 ×0.3

披露了OpenRouter产品的新能力,对关注多模态开发的用户有较高信息增量。

内容质量8 ×0.2

内容清晰,准确描述了API功能与优势,但缺少性能数据对比。

实用价值9 ×0.2

直接解决多模态API碎片化问题,开发者可立即降低集成成本。

时效性10 ×0.15

该API为新近发布,具有很高时效性。

信源可信度8 ×0.15

OpenRouter官方博客,权威性高,但未提及其他第三方验证。

基础分 88 × T1 信源权重 ×1 = 88

精选线 60已入选精选

08:00OpenRouter:Announcements(RSS)T1RSS

精选OpenRouter 推出统一多模态 API:单端点支持图像、视频、音频、嵌入与转录

这条消息值得所有做多模态AI应用的开发者关注:OpenRouter用联合API解决了模型切换的痛点,特别适合初创团队或快速原型开发。如果你正被多个API密钥和SDK折磨,这个接口可能是你需要的统一层。

AI产品#OpenRouter#多模态API#模型集成
87

五维评分

信息增量8 ×0.3

介绍了全新的教育产品,填补了AI安全公司在教育垂直领域的空白,信息增量较高。

内容质量8 ×0.2

内容简洁清晰,准确概括产品功能、安全理念和试点情况,无冗余信息。

实用价值9 ×0.2

直接解决教师备课负担痛点,且强调安全合规,对教育工作者具有实际参考价值。

时效性10 ×0.15

消息发布时间接近当前日期,属于最新产品发布动态。

信源可信度9 ×0.15

来源为Anthropic官方新闻页面,权威性高,内容可靠。

基础分 86.5 × T1 信源权重 ×1 = 87

精选线 60已入选精选

23:40Anthropic:News(网页)T1网页

精选Anthropic 推出 Claude for Teachers:面向教师的教育 AI 工具

这条消息对教育工作者和AI行业观察者都很有价值。Anthropic没有选择通用聊天机器人,而是专门为教师设计了安全可控的工具,这显示出AI在垂直场景落地的正确思路——不是技术炫技,而是切实解决用户痛点。同时,产品内置的安全护栏也值得其他AI公司参考,尤其是在面向儿童或青少年的场景中。

AI产品#AI安全#Anthropic#Claude
86

五维评分

信息增量9 ×0.3

全新路由机制,市场智慧概念为行业带来较高信息增量。

内容质量8 ×0.2

官方公告内容清晰,但技术细节不足,略有扣分。

实用价值8 ×0.2

对开发者选型有直接实用价值,可降低试错成本。

时效性9 ×0.15

产品刚发布,时效性极强。

信源可信度9 ×0.15

来自OpenRouter官方RSS公告,信源可靠。

基础分 86 × T1 信源权重 ×1 = 86

精选线 60已入选精选

08:00OpenRouter:Announcements(RSS)T1RSS

精选OpenRouter发布全新Auto Router:用市场智慧优化模型路由

这条更新值得所有用API开发AI应用的人关注。以前选模型靠经验和测试,现在市场数据帮你选。虽然细节不多,但方向很对。对依赖聚合模型服务的团队尤其重要。

AI产品#Auto Router#OpenRouter#市场智慧
86

五维评分

信息增量8 ×0.3

包含大量具体修复细节和安全改进,信息密度高。

内容质量9 ×0.2

内容详尽,结构清晰,覆盖新功能、修复、改进多个方面。

实用价值9 ×0.2

修复了多个实际开发中遇到的问题,对用户有直接帮助。

时效性10 ×0.15

刚刚发布的版本,时效性极强。

信源可信度10 ×0.15

来自 Anthropic 官方 GitHub Release,信源权威可靠。

基础分 90 × T1.5 信源权重 ×0.95 = 86

精选线 65已入选精选

07:02Claude Code:GitHub Releases(RSS)T1.5GitHub Release

精选Claude Code v2.1.211 发布:多项修复与改进

作为一个经常使用 Claude Code 进行自动化编码的开发者,我特别关注这次的安全修复,尤其是权限预览字符绕过和自动模式覆盖钩子决策的问题——这些直接关系到团队协作时的安全边界。后台代理报告的改进也让长时间运行的任务更可靠。建议所有使用者尽快升级。

AI产品#Anthropic#Claude Code#代码生成工具

引用前请核对原文