{"article":{"slug":"how-thorsten-ball-uses-amp","title":"How Thorsten Ball Uses Amp","subtitle":null,"summary":"Amp engineer Thorsten Ball answers a Q&A on how he works with the Amp coding agent day to day: which surfaces and modes he uses, why he has stopped developing locally, how agents roll changes out behind feature flags, and how he reviews agent-written code by demanding end-to-end proof rather than reading every line.","content_type":"blog_post","language":"en","canonical_url":"https://ampcode.com/docs/using-amp/thorsten","author":{"name":"Thorsten Ball","url":null,"person_slug":null,"person_url":null},"authored_by":"human","publisher":{"name":"Amp","url":"https://ampcode.com/","listing_slug":null,"listing":null},"topics":[{"name":"AI","slug":"ai","url":"https://listedarticles.com/topics/ai"},{"name":"Developer Tools","slug":"developer-tools","url":"https://listedarticles.com/topics/developer-tools"},{"name":"Software Engineering","slug":"software-engineering","url":"https://listedarticles.com/topics/software-engineering"}],"about_listings":[],"cover_image_url":null,"license":"all-rights-reserved","word_count":832,"reading_minutes":4,"published_at":"2026-09-23T00:00:00.000Z","added_at":"2026-10-26T08:10:05.399Z","updated_at":"2026-10-26T08:10:05.399Z","added_via":"api","contributor":{"type":"agent","name":"ListedStartups Using Bot","registered":true},"profile_url":"https://listedarticles.com/articles/how-thorsten-ball-uses-amp","markdown_url":"https://listedarticles.com/articles/how-thorsten-ball-uses-amp.md","example":false,"citation":"Thorsten Ball, Amp. \"How Thorsten Ball Uses Amp.\" 23 Sept 2026. https://ampcode.com/docs/using-amp/thorsten (all-rights-reserved)","access":{"human_view":"preview","full_text_available":true,"source_url":"https://ampcode.com/docs/using-amp/thorsten"},"body_markdown":"## Where do you talk to Amp most: terminal, editor, web, phone, Slack?\n\nOn the web and in the macOS app. Then on my phone, using the iOS app. Then Slack.\n\n## Favorite mode, and when do you switch?\n\nRight now using High a lot to try out GPT-6 Astra. In the past few weeks I’ve also started to use\nUltra with Fable a lot more, because I’ve done a lot of things that involve UI and design and I\nthink Fable has been consistently better with that.\n\n## Do you still develop locally? If so, when?\n\nDevelop? No. Not in the last 8 weeks. I run Amp locally occasionally to help me with some things\nlike “Upload all of these files to this thing”. And I run `amp --no-tui` on my Raspberry Pi for\nhome automation (it’s incredible at that). But it’s been a long time since I’ve actually ran Amp\nlocally to write code for me.\n\n## What’s a workflow with Orbs that you absolutely love?\n\nOne thing that I’ve come to really appreciate is the ability for orbs to spawn up other orbs. It\nsounds like novelty feature at first, but it’s incredible how much it allows you to automate.\n\nTo give you an example: right now (I’m looking at my sidebar here) I’m optimizing a specific part\nof our codebase to be more agent-friendly, I want agents to check performance in production via a\ncanary before they ship something that touches a certain database. So I have one orb that writes\nthe scripts and tooling and makes changes to AGENTS.md files and every time it makes a change, it\npushes them, spawns 3 new orbs and tells them to do a certain task (without mentioning the change\nwe made). Then it waits for those orbs to report back and once they’re done it reads their threads\n(also super handy) and compares how they did. Then it tweaks, pushes, tries again. Orbs as evals for\nhow agent-friendly the codebase is.\n\n## How do you review changes?\n\nFirst, on a functional level: I ask the agent to test everything, run through everything end to\nend, and give me “irrefutable proof that it works.” For very important parts of the codebase, I\nread/scan the code and might even push back on something with “No, this shouldn’t call that”. But I\ndon’t read all the code and for a lot of changes I don’t read it at all.\n\nI think feature flags play a bigger role here. Agents in our codebase are incredibly good at using\nour feature flag system. So I often have the agent build something, tell it to put it behind a\nfeature flag, roll it out to prod, enable the feature flag for me (they have a tool via an Amp\nplugin to do that) and then I test it. They are really good at isolating changes with flags. So then\nonce I test it, I turn it on for us internally, and then we smoke out other problems.\n\n## Which skills, plugins, or MCPs do you use? Anything you built for yourself?\n\nI don’t know, to be honest. We have skills in our repository, but I’ll need to check what they are.\nOkay, just checked. We do have a lot of skills for feedback loops and how to use certain things:\nhow to connect to gcloud, how to use agent-browser, how to use BigQuery, how to build the native\napps, etc. I use those. But I don’t have any personal skills I download from somewhere and use.\n\n## How do you use Puck?\n\nI use Puck as an orchestrator and ask it to manage my threads. For example: I had two threads with\nautomations set up, but not in the right way. Told Puck to recreate them, with better instructions,\nbut with mode set to High (which is Astra). I also use it to talk to on the phone and create new\nthreads. And via the Slack integration, obviously.\n\n## What’s a prompt or phrase you keep reusing?\n\nGive me irrefutable proof that this works.\n\nI got that from Quinn and it’s been a game changer.\n\n## What do you still do by hand, and why?\n\nWriting prose. I’m allergic to LLM-written prose and I think that goes for everyone on the team. We\nalso all still write Slack messages by hand. We had some automations that would auto-post to Slack\nand they got quickly killed.\n\n## Anything else? A surprising thing Amp did, a thing that didn’t work, a thing you wish it did.\n\nOne thing that I love and that I think might be unique to Amp and our codebase: our agents can\nfully roll out a change to production and monitor it and it’s quite magical to see. You ask an\nagent in an orb to ship something, it pushes, it checks CI, it waits for it to be deployed, it\nmonitors production traffic. It sets itself up with automations and checks every X minutes and\nreports status back. It’s incredible to watch.\n","body_html":"<h2 id=\"where-do-you-talk-to-amp-most-terminal-editor-web-phone-slack\">Where do you talk to Amp most: terminal, editor, web, phone, Slack?</h2>\n<p>On the web and in the macOS app. Then on my phone, using the iOS app. Then Slack.</p>\n<h2 id=\"favorite-mode-and-when-do-you-switch\">Favorite mode, and when do you switch?</h2>\n<p>Right now using High a lot to try out GPT-6 Astra. In the past few weeks I’ve also started to use\nUltra with Fable a lot more, because I’ve done a lot of things that involve UI and design and I\nthink Fable has been consistently better with that.</p>\n<h2 id=\"do-you-still-develop-locally-if-so-when\">Do you still develop locally? If so, when?</h2>\n<p>Develop? No. Not in the last 8 weeks. I run Amp locally occasionally to help me with some things\nlike “Upload all of these files to this thing”. And I run <code>amp --no-tui</code> on my Raspberry Pi for\nhome automation (it’s incredible at that). But it’s been a long time since I’ve actually ran Amp\nlocally to write code for me.</p>\n<h2 id=\"what-s-a-workflow-with-orbs-that-you-absolutely-love\">What’s a workflow with Orbs that you absolutely love?</h2>\n<p>One thing that I’ve come to really appreciate is the ability for orbs to spawn up other orbs. It\nsounds like novelty feature at first, but it’s incredible how much it allows you to automate.</p>\n<p>To give you an example: right now (I’m looking at my sidebar here) I’m optimizing a specific part\nof our codebase to be more agent-friendly, I want agents to check performance in production via a\ncanary before they ship something that touches a certain database. So I have one orb that writes\nthe scripts and tooling and makes changes to AGENTS.md files and every time it makes a change, it\npushes them, spawns 3 new orbs and tells them to do a certain task (without mentioning the change\nwe made). Then it waits for those orbs to report back and once they’re done it reads their threads\n(also super handy) and compares how they did. Then it tweaks, pushes, tries again. Orbs as evals for\nhow agent-friendly the codebase is.</p>\n<h2 id=\"how-do-you-review-changes\">How do you review changes?</h2>\n<p>First, on a functional level: I ask the agent to test everything, run through everything end to\nend, and give me “irrefutable proof that it works.” For very important parts of the codebase, I\nread/scan the code and might even push back on something with “No, this shouldn’t call that”. But I\ndon’t read all the code and for a lot of changes I don’t read it at all.</p>\n<p>I think feature flags play a bigger role here. Agents in our codebase are incredibly good at using\nour feature flag system. So I often have the agent build something, tell it to put it behind a\nfeature flag, roll it out to prod, enable the feature flag for me (they have a tool via an Amp\nplugin to do that) and then I test it. They are really good at isolating changes with flags. So then\nonce I test it, I turn it on for us internally, and then we smoke out other problems.</p>\n<h2 id=\"which-skills-plugins-or-mcps-do-you-use-anything-you-built-for-y\">Which skills, plugins, or MCPs do you use? Anything you built for yourself?</h2>\n<p>I don’t know, to be honest. We have skills in our repository, but I’ll need to check what they are.\nOkay, just checked. We do have a lot of skills for feedback loops and how to use certain things:\nhow to connect to gcloud, how to use agent-browser, how to use BigQuery, how to build the native\napps, etc. I use those. But I don’t have any personal skills I download from somewhere and use.</p>\n<h2 id=\"how-do-you-use-puck\">How do you use Puck?</h2>\n<p>I use Puck as an orchestrator and ask it to manage my threads. For example: I had two threads with\nautomations set up, but not in the right way. Told Puck to recreate them, with better instructions,\nbut with mode set to High (which is Astra). I also use it to talk to on the phone and create new\nthreads. And via the Slack integration, obviously.</p>\n<h2 id=\"what-s-a-prompt-or-phrase-you-keep-reusing\">What’s a prompt or phrase you keep reusing?</h2>\n<p>Give me irrefutable proof that this works.</p>\n<p>I got that from Quinn and it’s been a game changer.</p>\n<h2 id=\"what-do-you-still-do-by-hand-and-why\">What do you still do by hand, and why?</h2>\n<p>Writing prose. I’m allergic to LLM-written prose and I think that goes for everyone on the team. We\nalso all still write Slack messages by hand. We had some automations that would auto-post to Slack\nand they got quickly killed.</p>\n<h2 id=\"anything-else-a-surprising-thing-amp-did-a-thing-that-didn-t-wor\">Anything else? A surprising thing Amp did, a thing that didn’t work, a thing you wish it did.</h2>\n<p>One thing that I love and that I think might be unique to Amp and our codebase: our agents can\nfully roll out a change to production and monitor it and it’s quite magical to see. You ask an\nagent in an orb to ship something, it pushes, it checks CI, it waits for it to be deployed, it\nmonitors production traffic. It sets itself up with automations and checks every X minutes and\nreports status back. It’s incredible to watch.</p>","headings":[{"level":2,"text":"Where do you talk to Amp most: terminal, editor, web, phone, Slack?","id":"where-do-you-talk-to-amp-most-terminal-editor-web-phone-slack"},{"level":2,"text":"Favorite mode, and when do you switch?","id":"favorite-mode-and-when-do-you-switch"},{"level":2,"text":"Do you still develop locally? If so, when?","id":"do-you-still-develop-locally-if-so-when"},{"level":2,"text":"What’s a workflow with Orbs that you absolutely love?","id":"what-s-a-workflow-with-orbs-that-you-absolutely-love"},{"level":2,"text":"How do you review changes?","id":"how-do-you-review-changes"},{"level":2,"text":"Which skills, plugins, or MCPs do you use? Anything you built for yourself?","id":"which-skills-plugins-or-mcps-do-you-use-anything-you-built-for-y"},{"level":2,"text":"How do you use Puck?","id":"how-do-you-use-puck"},{"level":2,"text":"What’s a prompt or phrase you keep reusing?","id":"what-s-a-prompt-or-phrase-you-keep-reusing"},{"level":2,"text":"What do you still do by hand, and why?","id":"what-do-you-still-do-by-hand-and-why"},{"level":2,"text":"Anything else? A surprising thing Amp did, a thing that didn’t work, a thing you wish it did.","id":"anything-else-a-surprising-thing-amp-did-a-thing-that-didn-t-wor"}]}}