Topics covered in this episode: dust - a better duHermes Agent: The AI agent that grows with youllm-coding-agent 0.1a0ExtrasJokeWatch on YouTube About the show Sponsored by us! Support our work through: Our courses at Talk PythonConsulting from Six Feet Up Connect with the hosts Michael: Mastodon / BlueSky / X / LinkedInCalvin: Mastodon / BlueSky / X / LinkedInShow: Mastodon / BlueSky / X Join us on YouTube at pythonbytes.fm/live to be part of the audience. Usually Tuesday at 7am PT. Older video versions available there too. Finally, if you want an artisanal, hand-crafted digest of every week of the show notes in email form? Add your name and email to our friends of the show list, we'll never share it. Michael #1: dust - a better du du + Rust = dust - a fast, visual, intuitive disk-usage CLIRun dust and immediately see the biggest directories and files without piping through sort, head, or awkSmart recursive output focuses on what matters instead of dumping every folderColored bars show relative size and parent/child hierarchy, making “where did the space go?” obviousPerfect for Python projects bloated by .venv, caches, Docker volumes, downloaded datasets, and local AI modelsInstall via brew, cargo install du-dust, conda-forge, Scoop, Snap, deb-get, or GitHub releases Calvin #2: A Way better ARchive format for Python packaging war - new archive format spec from Astral (same team as uv/ruff), v0.0.2, still no binary encoding defined yetHeader-Index-Store layout: header IDs the file, index maps names to store offsets, store holds compressed dataIndex uses a finite-state transducer (FST) to dedupe common path prefixes across entry namesSupports three entry types (file, directory, link) and three compression modes (store/DEFLATE/zstd), plus an "executable" metadata flagUnpacking is atomic - writes to a temp dir, then renames into place, so a failed extract never leaves a half-unpacked directoryStrict name-segment rules (no NUL/control chars, no leading/trailing whitespace, blocks Windows-reserved names like CON/PRN) to avoid path traversal and cross-platform footguns Michael #3: Hermes Agent: The AI agent that grows with you Hermes Agent is an open-source, Python-built AI agent framework from Nous Research - think ChatGPT-style assistant, but connected to your tools, files, shell, browser, calendar, memory, and messaging appsI’m using it in Discord as a long-running agent conversation, not just a one-off chatbot sessionHermes can connect through a gateway to platforms like Discord, Telegram, Slack, WhatsApp, email, webhooks, and more - so the same assistant can follow you across surfacesIn my setup, I can send Hermes voice/text from Discord, keep project context across turns as threads, and ask it to actually do things: read GitHub repos, run commands, edit files, schedule calendar events, generate drafts, and verify resultsA fun workflow: I can trigger one-shot actions from an Apple Watch shortcut - dictate a request, send it to Hermes, and have the agent execute it asynchronouslyHermes has persistent memory, so it can remember durable preferences and facts - for example, how I like my research formattedIt also has “skills,” which are reusable procedures the agent can load later, so Hermes can self-improve over time instead of rediscovering the same workflow repeatedlyIt supports scheduled jobs / cron-style automations, so it can proactively watch for releases, send summaries, run checks, or remind you about thingsIt’s provider-agnostic: OpenRouter, Anthropic, Google, xAI, local models, Nous Portal, and othersThe big idea: Hermes turns an LLM from “a chat box I visit” into “an agent I can reach from anywhere that knows my workflows and can take real actions and learns over time.” Calvin #4: llm-coding-agent 0.1a0 Simon Willison built a Claude/Codex-style coding agent on top of his llm library, using an alpha of the llm package plus his python-lib-template-repoBuilt almost entirely via prompted TDD - asked an agent to write a spec.md, then commit + implement with red/green tests, occasionally hitting a real OpenAI key to sanity-checkShipped to PyPI as an alpha: uvx --prerelease=allow --with llm-coding-agent llm codeTool set mirrors familiar coding-agent primitives: read_file, edit_file (exact string replace + diff), write_file, list_files, search_files, execute_commandAlso exposes a Python API - CodingAgent(model="gpt-5.5", root=..., approve=True).run(...) - which Simon didn't ask for but got anywayDemo: llm code --yolo told GPT-5.5 to build a SwiftUI CLI clock; model correctly noted SwiftUI isn't really CLI-friendly and still produced an ASCII-art time display Extras Calvin: Slides, but for developers https://sli.dev/Wanna reduce your token usage…. only issue is that its lossy https://github.com/teamchong/pxpipePEP 772 - Python Packaging Council inaugural election dates set, nominations open July 28, voting September 1-15 Michael: What the pls? revisited! Joke: Min requirements for ...
Show More
Show Less