使用 uv 运行和 Claude 项目通过一次性提示构建 Python 工具

主要观点:作者介绍了使用 Claude 构建一次性 HTML+JavaScript 应用及类似模式创建一次性 Python 实用工具的经验,通过自定义 Claude 项目结合 uv 的依赖管理能力来实现。关键信息:

  • 利用“one-shot”提示(首次尝试产生完整所需结果)创建工具,如为解决无法访问 Amazon S3 中文件的问题,通过提示 Claude 写出调试 Python CLI 工具的脚本。
  • 脚本可通过特定魔法注释声明内联依赖,如“# /// script”开头,指定所需 Python 版本及依赖库(如 click、boto3 等),运行时 uv 会创建临时虚拟环境安装依赖,即使脚本由 URL 指定也可运行。
  • 建立名为“Python app”的 Claude 项目,用于“教导”Claude 利用内联脚本依赖,如给出 Python 工具编写规范及依赖示例,让 Claude 可靠地生成全功能 Python 工具脚本。
  • 还通过 Claude 项目创建单页 HTML 和 JavaScript 工具的自定义指令,如禁止使用 React,规定 CSS 和 JavaScript 的格式等,其工具.simonwillison.net 上的多数工具由此创建。
    重要细节:
  • 给出调试 S3 访问的脚本及运行示例,展示终端输出及详细 S3 信息。
  • 提供创建 Starlette Web 应用的聊天记录及生成的代码,可直接在本地运行测试。
  • uv 运行脚本前会填充缓存,依赖安装过程仅需几毫秒。
  • Claude 会自行决定在某些脚本中使用 rich 库等。
阅读 13
0 条评论