---
title: "💭 Building Python tools with a one-shot prompt using uv run and ..."
description: "!https://simonwillison.net/2024/Dec/19/one-shot-python-tools/"
date: 2024-12-25
published: true
tags:
  - python
  - uv
  - thought
template: link
---


<div class="embed-card embed-card-external">
  <a href="https://simonwillison.net/2024/Dec/19/one-shot-python-tools/" class="embed-card-link" target="_blank" rel="noopener noreferrer">
    <div class="embed-card-image">
      <img src="https://static.simonwillison.net/static/2024/s3-debug-social-media-card.jpg" alt="Building Python tools with a one-shot prompt using uv run and Claude Projects — I’ve written a lot about how I’ve been using Claude to build one-shot HTML+JavaScript applications via Claude Artifacts. I recently started using a similar pattern to create one-shot Python utilities, …" loading="lazy">
    </div>
    <div class="embed-card-content">
      <div class="embed-card-title">Building Python tools with a one-shot prompt using uv run and Claude Projects</div>
      <div class="embed-card-description">I’ve written a lot about how I’ve been using Claude to build one-shot HTML+JavaScript applications via Claude Artifacts. I recently started using a similar pattern to create one-shot Python uti...</div>
      <div class="embed-card-meta">Simon Willison’s Weblog &middot; simonwillison.net</div>
    </div>
  </a>
</div>


This is really interesting, the lazy uv scripts are really becoming quite appealing, especially for something like this to just pop out of an llm ready to run.  The article features several examples of these one-shot prompt ideas that I suggest you give a try, and a prompt for creating them.

!!! note

    This post is a <a href="/thoughts/" class="wikilink" data-title="Thoughts" data-description="These are generally my thoughts on a web page or some sort of url, except a rare few don&#39;t have a link. These are dual published off of my..." data-date="2024-04-01">thought</a>. It's a short note that I make
    about someone else's content online <a href="/tags/thoughts/" class="hashtag-tag" data-tag="thoughts" data-count=2 data-reading-time=3 data-reading-time-text="3 minutes">#thoughts</a>
