llm-coding-agent 0.1a0
Simon Willison 发布了 llm-coding-agent 0.1a0,这是一个基于其 LLM 库构建的简单编码代理实验。该代理具备文件读写、命令执行、搜索等工具集,支持通过 `uvx --prerelease=allow --with llm-coding-agent llm code` 命令运行,并提供了 Python API 接口。GPT-5.5 已成功使用该代理生成了一款 ASCII 艺术时钟的 SwiftUI CLI 应用。
谷歌在 I/O 大会上发布 Gemini 3.5 Flash,跳过预览版直接正式上线,并已大规模部署于搜索、Gemini 应用及开发者平台等核心产品。该模型知识截止于 2025 年 1 月,支持 104 万输入 token 和 6.5 万输出 token。价格方面显著上涨,为 3 Flash Preview 的 3 倍和 3.1 Flash-Lite 的 6 倍,逼近自家 3.1 Pro 的价位。谷歌还推出了尚处测试阶段的 Interactions API,类似 OpenAI Responses 的服务端对话管理机制。作者用该模型生成了一只骑着自行车的鹈鹕 SVG,效果惊艳——暱称"迈阿密参加加密大会的鹈鹕",花费约 13 美分。
谷歌在 I/O 大会上发布 Gemini 3.5 Flash,跳过预览版直接正式上线,并已大规模部署于搜索、Gemini 应用及开发者平台等核心产品。该模型知识截止于 2025 年 1 月,支持 104 万输入 token 和 6.5 万输出 token。价格方面显著上涨,为 3 Flash Preview 的 3 倍和 3.1 Flash-Lite 的 6 倍,逼近自家 3.1 Pro 的价位。谷歌还推出了尚处测试阶段的 Interactions API,类似 OpenAI Responses 的服务端对话管理机制。作者用该模型生成了一只骑着自行车的鹈鹕 SVG,效果惊艳——暱称"迈阿密参加加密大会的鹈鹕",花费约 13 美分。
Simon Willison 发布了 llm-coding-agent 0.1a0,这是一个基于其 LLM 库构建的简单编码代理实验。该代理具备文件读写、命令执行、搜索等工具集,支持通过 `uvx --prerelease=allow --with llm-coding-agent llm code` 命令运行,并提供了 Python API 接口。GPT-5.5 已成功使用该代理生成了一款 ASCII 艺术时钟的 SwiftUI CLI 应用。
Simon Willison在AIE主题演讲的启发下,尝试使用DSPy框架来评估和优化Datasette Agent的SQL系统提示词。他通过Claude Code和Claude Fable 5发起异步研究任务,Fable选用GPT 4.1 mini和nano进行测试,发现了多个改进方向。其中一个关键发现是:当前提示词中只列出了表名而未包含列名,加上"已掌握信息就不要调用describe_table"的建议,导致模型猜测列名(如page_count、o.order_id、first_name)并陷入错误重试循环。解决方案是在提示词的模式描述中直接包含列名,或软化相关建议。
一个令人尴尬的小版本更新。pyproject.toml 文件中错误地将 datasette 锁定为 1.0a27 版本,导致该插件意外地与所有其他 Datasette 版本不兼容。现已修复为 datasette>=1.0a27。
这条内容还没有深度解读,点下方按钮生成。
受 Mozilla 新版 MDN MCP 服务启发,作者将 mdn/browser-compat-data 仓库中全面的浏览器兼容性数据转换为 SQLite 数据库。利用 Claude Code 和 Codex Desktop 生成的脚本及 GitHub Actions 工作流,构建了约 66MB 的数据库文件,并通过托管在 GitHub 仓库中的孤儿分支提供开放 CORS 头访问,用户可直接下载或通过 Datasette Lite 在线探索。
datasette 1.0a35 发布,这是一个重大更新。新增了“创建表”界面(支持定义列、主键、自定义列类型、NOT NULL 约束、默认值及单列外键)和“修改表”功能(支持添加、重命名、重排和删除列,更改列类型、默认值、约束、主键和外键,以及重命名表)。同时新增了模板上下文文档,将核心页面中可用的模板变量列为稳定 API(直至 Datasette 2.0),并通过数据类定义和测试确保文档与实际渲染上下文一致。
作者正在探索 Datasette Lite(一款完全在浏览器中通过 Pyodide 和 WebAssembly 运行的 Python Datasette 应用)能否利用 OPFS(源私有文件系统)编辑存储在用户电脑上的持久化 SQLite 文件。为此,他让 Claude Code for web 构建了这个交互式 UI,以便在不同浏览器中测试该功能。
sqlite-utils 4.0rc1 是 v4 的第一个候选发布版,新增两大特性:数据库迁移(基于已有的 sqlite-migrate 包)和 db.atomic() 嵌套事务支持。此外包含若干不兼容变更,如 upsert 改用 INSERT...ON CONFLICT SET 语法、弃用 Python 3.8、FLOAT 改为 REAL 类型、类型检测默认开启等。欢迎通过 pip 或 uvx 试用,并在 Discord 或 GitHub Issues 反馈问题。
sqlite-utils 4.0rc1 发布,新增数据库迁移与嵌套事务支持。详见发布说明。
Datasette-apps 是一个让开发者直接在 Datasette 内部构建和运行应用程序的框架。它将 Datasette 从数据浏览工具扩展为轻量级应用平台,支持插件化开发和数据驱动的交互应用,无需额外部署独立的 Web 服务。
Datasette Apps 是一个新插件,允许用户在 Datasette 中托管自包含的 HTML+JavaScript 应用。这些应用运行在严格受限的 iframe 沙盒中,通过 postMessage 和 MessageChannel 进行只读 SQL 查询,并可配置存储查询实现写入操作。采用 CSP 头、沙盒属性与权限控制的多层安全机制,防止数据泄露。项目受 Claude Artifacts 和作者多年构建 HTML 工具的经验启发,现已支持 AI 辅助生成应用代码。
该版本将 datasette-acl 从仅限表的权限控制扩展为通用的资源共享系统。Alex Garcia 完成了本次发布的大部分工作,我们正在完善这个插件,以实现对 Datasette 多用户实例中谁能访问哪些资源的精细控制。
一个渐进增强的 Web 组件,能将包含 GIF 链接和首帧图片的标记代码转换为带有“点击播放”按钮的静态画面。用户只有在点击按钮后才会加载完整的 GIF 动画,避免大体积 GIF 文件在页面加载时自动下载。
此Alpha版本为Datasette界面引入了行级插入、编辑和删除功能,可在表格页面及行页面的操作项中使用。该功能的灵感来源于Datasette Agent——此前用户可通过聊天界面操作数据,但常规UI反而缺失这些基本能力,现在终于补齐了这一短板。
一个非常实验性的 alpha 插件,可通过 Tailscale sidecar 将 Datasette 连接到你的 Tailnet。使用命令 `datasette tailscale mydata.db --ts-authkey tskey-auth-xxxx --ts-hostname datasette-preview` 启动本地 Datasette 服务器,并通过 Tailscale 绑定使其可通过 `http://datasette-preview/` 访问。该插件基于实验性的 tailscale-rs 库的 Python 绑定开发,作者已就代理机制的更优实现方案提交了 issue。
datasette-apps 0.1a3 发布。修复了无 create-app 权限的用户仍可创建应用的漏洞(#27)。同时修复了无法授予非所有者用户编辑应用权限的问题,现编辑/删除规则与查看规则一致:若应用为私密,仅所有者可修改;否则权限由 Datasette 常规权限系统控制(#29)。
datasette-apps 0.1a2 发布,新增了由 apps-set-csp 权限管控的自定义网络/CSP 源功能,并为非特权用户提供可选的 allowed_csp_origins 插件白名单;存储查询选择器现在支持键盘导航,聚焦时会显示最近三个可访问的存储查询;应用内的 #fragment 链接不再被外部链接确认弹窗拦截;修复了 ?full=1 全屏模式下的链接确认弹窗和日志面板问题。
作者多年来一直在探索代码沙盒方案,最新尝试是通过MicroPython与WebAssembly实现。他发布了alpha包micropython-wasm,利用wasmtime运行Python代码,支持持久化解释器状态、宿主函数暴露、内存和CPU限制(通过燃料机制控制操作数),并严格控制文件与网络访问。该方案已用于Datasette Agent插件datasette-agent-micropython,可通过uvx快速体验,但作者强调目前仍是alpha版本,不建议用于生产环境。
本次 Alpha 版本最大的亮点是全新的可定制"跳转到……"菜单,详情可查阅 Datasette 博客上的介绍文章。用户可在 latest.datasette.io 上按下 / 键体验该功能。此外,新的 jump_items_sql() 插件钩子允许插件向菜单搜索项中添加自定义条目。
datasette-agent 0.1a4 版本发布。该版本利用 Datasette 1.0a30 新增的 makeJumpSections() JavaScript 插件钩子,在"跳转菜单"中集成了"开启新的 Agent 对话"界面。用户只需按下 / 键即可调出菜单,输入查询内容即可启动 Agent 对话。可通过 GitHub 账号登录 agent.datasette.io 立即体验。
datasette-fixtures 0.1a0 发布。该插件利用 Datasette 1.0a30 新增的 datasette.fixtures.populate_fixture_database(conn) API,帮助插件测试套件快速创建 Datasette 自身测试所用的固定数据库表。用户甚至可以通过 uvx 无需安装 Datasette 即可体验,例如查询 roadside_attractions 表获取加州路边景点数据。
HtmlUnit 5.0.0 正式发布,最低要求 JDK 17。该版本在 JavaScript 引擎(如正则表达式和作用域处理)上进行了重大改进,实现了完整的 Web Crypto API(SubtleCrypto),增加了 Java 模块系统支持(module-info.java),并对 WebSocket、Neko HTML 解析器、Web Speech API 进行了多项修复和增强,同时更新了对 Firefox 150 及 Chrome/Edge 148 的兼容性。
JsPlumb 近期发布了重大新版本,带来了现代化的 API 和专用的图表/二维图形引擎(并启用了新名称)。团队决定将其免费开放给非商业用途使用。React、Angular、Vue、Svelte 及原生 JavaScript 的包已发布在公共 NPM 仓库中。
Libomemo.js 0.0.1 发布,这是首个为 JavaScript 环境提供的 OMEMO 加密协议库。OMEMO 是一种端到端加密协议,常用于即时通讯应用中的消息加密。该库使得在 JavaScript 项目中集成 OMEMO 加密成为可能,支持浏览器和 Node.js 环境。
datasette-agent-sprites 0.1a0 发布。这是一个 Datasette Agent 插件,用于在 Fly Sprites 沙箱中运行命令。
datasette-agent-charts 0.1a2 版本发布,新增在渲染图表下方显示"查看 SQL 查询"按钮的功能,方便用户查看生成图表所用的 SQL 语句。
datasette-agent 0.1a3 版本发布,新增了可见数据表及折叠 SQL 结果工具调用的“查看 SQL 查询”按钮,不再显示空的推理片段,并改进了截断响应的处理——即使在向 agent 显示 SQL 结果时发生截断,数据表仍能正常展示给用户。
datasette-agent-charts 0.1a1 发布:新增更多色彩支持,无颜色列的条形图和华夫饼图将根据数值大小使用顺序配色方案着色;包含文本值的颜色列采用 observable10 分类方案。现在在执行查询前会检查 execute-sql 权限。图表新增交互式工具提示,并修复了 waffleY 图表未向代理描述的错误。
这是 datasette-llm-accountant 的 0.1a4 版本发布。该版本修复了在追踪多轮响应链时出现的一个bug,相关问题可参考 datasette-llm 仓库的 issue #7。
datasette-llm 0.1a8 发布,修复了 llm_prompt_context() 钩子未能完整收集响应链的 bug。#7
datasette-agent 0.1a2 发布。该版本新增功能:工具可用性现在可以关联到 required_permission(所需权限)。默认的后台代理工具现在需要新的 datasette-agent-background 权限。#10
datasette-agent 0.1a1 发布。此版本更改了权限机制,现在在决定向用户列出哪些表时,使用 execute-sql 权限来判断。#8