<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
  <title>Amp News</title>
  <link>https://aggr.aymericbeaumet.com/sources/ampcode.com/</link>
  <description>Browse aymeric&#39;s, an independent, searchable archive of readable snapshots from followed feeds, preserved in Git with aggr.</description>
  <language>en</language>
  <atom:link href="https://aggr.aymericbeaumet.com/sources/ampcode.com/rss.xml" rel="self" type="application/rss+xml"/>
  <lastBuildDate>Mon, 19 Oct 2026 00:00:00 +0000</lastBuildDate>
  <generator>aggr</generator>
  <item>
    <title>Assign It To Amp</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-10-19-assign-it-to-amp/</link>
    <guid isPermaLink="false">urn:aggr:item:23e5ca2f2a3fb3992008276444bff556b3e28d09</guid>
    <atom:link href="https://ampcode.com/news/assign-it-to-amp" rel="via" type="text/html"/>
    <pubDate>Mon, 19 Oct 2026 00:00:00 +0000</pubDate>
    <description>Amp is now an agent in Linear. Assigning an issue to Amp starts a new Agent Session in Linear and spawns a new orb. You can also mention @Amp to kick off a session. Amp sends its response back to the same session and replies to messages…</description>
    <content:encoded>&lt;p&gt;Amp is now an agent in Linear.&lt;/p&gt;
&lt;p&gt;Assigning an issue to Amp starts a new &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://linear.app/developers/agent-interaction#agent-session&quot;&gt;Agent Session&lt;/a&gt; in Linear and spawns a new orb. You can also mention @Amp to kick off a session. Amp sends its response back to the same session and replies to messages sent along the way. The Agent Session also appears in your Amp sidebar and is fully viewable in Amp.&lt;/p&gt;
&lt;p&gt;Assign Amp an issue in Linear.&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://static.ampcode.com/news/linear-assign.png&quot; alt=&quot;Assign an issue to Amp from Linear&quot; loading=&quot;eager&quot; decoding=&quot;async&quot; fetchpriority=&quot;high&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;p&gt;Follow its progress in the Agent Session.&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://static.ampcode.com/news/linear-session.png&quot; alt=&quot;Follow progress and reply in the Agent Session&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;low&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;p&gt;Then open the same conversation in Amp.&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://static.ampcode.com/news/amp-thread-linear-row.png&quot; alt=&quot;Open the same session as a thread in Amp&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;low&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;p&gt;To get started, install the Amp agent in your Linear workspace and connect your Amp account to the Linear MCP in Settings → MCP &amp;amp; Integrations.&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://static.ampcode.com/news/linear-settings.png&quot; alt=&quot;Connect your Linear account and install Amp in Linear from Settings&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;low&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;p&gt;Read the &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/docs/integrations#linear&quot;&gt;docs&lt;/a&gt; to learn more.&lt;/p&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>See Your Runner&#39;s Desktop</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-10-16-see-your-runner-s-desktop/</link>
    <guid isPermaLink="false">urn:aggr:item:6486481159f9d2546f307611e9168a8d89c3de4f</guid>
    <atom:link href="https://ampcode.com/news/runner-desktop" rel="via" type="text/html"/>
    <pubDate>Fri, 16 Oct 2026 00:00:00 +0000</pubDate>
    <description>You can now see and control your macOS or Linux runner&#39;s desktop. This is nice for trying native apps that Amp builds for you, such as iOS apps: Turn on Share This Mac&#39;s Display under Settings › Runner in the macOS app, or start your…</description>
    <content:encoded>&lt;p&gt;You can now see and control your macOS or Linux runner&#39;s desktop. This is nice for trying native apps that Amp builds for you, such as iOS apps:&lt;/p&gt;
&lt;p&gt;Turn on &lt;strong&gt;Share This Mac&#39;s Display&lt;/strong&gt; under Settings › Runner in the &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/app&quot;&gt;macOS app&lt;/a&gt;, or start your runner with &lt;code&gt;amp --no-tui --desktop&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://static.ampcode.com/news/runner-desktop-settings-light.png&quot; alt=&quot;The Runner tab in the Amp macOS app&amp;#39;s settings, with Share This Mac&amp;#39;s Display turned on and its Sharing status highlighted.&quot; loading=&quot;eager&quot; decoding=&quot;async&quot; fetchpriority=&quot;high&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt; &lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://static.ampcode.com/news/runner-desktop-settings-dark.png&quot; alt=&quot;The Runner tab in the Amp macOS app&amp;#39;s settings, with Share This Mac&amp;#39;s Display turned on and its Sharing status highlighted.&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;low&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;p&gt;Your Amp client connects directly to the runner, so it&#39;s nearly instant when the runner is on your local network or nearby.&lt;/p&gt;
&lt;p&gt;Read &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/docs/cli/runners#see-and-control-the-runners-desktop&quot;&gt;See and Control the Runner&#39;s Desktop&lt;/a&gt; for more details.&lt;/p&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>Take Puck with You</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-10-13-take-puck-with-you/</link>
    <guid isPermaLink="false">urn:aggr:item:a5edab181c3d615fb33f5bd676176490008e940f</guid>
    <atom:link href="https://ampcode.com/news/take-puck-with-you" rel="via" type="text/html"/>
    <pubDate>Tue, 13 Oct 2026 00:00:00 +0000</pubDate>
    <description>You can now talk to Puck from ChatGPT, Claude, and other agents via MCP. After developing an idea with ChatGPT&#39;s voice mode on a walk, send it directly to Puck for implementation. Puck knows your projects in Amp and routes it to the right…</description>
    <content:encoded>&lt;p&gt;You can now talk to Puck from ChatGPT, Claude, and other agents via MCP.&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://static.ampcode.com/news/puck-mcp-in-chatgpt.avif&quot; alt=&quot;ChatGPT opens Puck MCP and shows an Orbs card with one running orb, then lists what Puck can do: find previous work, delegate coding, inspect repositories, track development, coordinate agents, automate workflows, manage Amp, and communicate through connected services.&quot; loading=&quot;eager&quot; decoding=&quot;async&quot; fetchpriority=&quot;high&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;p&gt;After developing an idea with ChatGPT&#39;s voice mode on a walk, send it directly to Puck for implementation. Puck knows your projects in Amp and routes it to the right orb. In the same conversation, you can check in on your work in Amp directly from ChatGPT.&lt;/p&gt;
&lt;p&gt;Puck MCP offers two tools: &lt;code&gt;puck&lt;/code&gt; for interacting with your Puck in Amp, and &lt;code&gt;orbs&lt;/code&gt; for showing an interactive view of your running orbs with links to their portals.&lt;/p&gt;
&lt;p&gt;You&#39;re talking to the same Puck you use in Amp. It can look through your threads, find earlier work, and coordinate your agents.&lt;/p&gt;
&lt;p&gt;To connect, open &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/settings/puck&quot;&gt;Settings &amp;gt; Puck&lt;/a&gt;. Click &lt;strong&gt;Add to Claude&lt;/strong&gt;, or copy &lt;code&gt;https://ampcode.com/mcp&lt;/code&gt; into ChatGPT or another MCP client, then sign in with your Amp account.&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://static.ampcode.com/news/puck-mcp-settings.avif&quot; alt=&quot;The Puck in Other Apps card in Amp&amp;#39;s Puck settings, with an Add to Claude button, a Copy URL button for ChatGPT, and the https://ampcode.com/mcp server URL for other MCP clients.&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;low&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;p&gt;See &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/docs/puck#use-puck-in-other-apps&quot;&gt;Use Puck in Other Apps&lt;/a&gt; for details.&lt;/p&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>You&#39;ve Got Comments</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-10-12-you-ve-got-comments/</link>
    <guid isPermaLink="false">urn:aggr:item:a0f21978c85977e8afc69f451767da7e0cc7101b</guid>
    <atom:link href="https://ampcode.com/news/github-listeners" rel="via" type="text/html"/>
    <pubDate>Mon, 12 Oct 2026 00:00:00 +0000</pubDate>
    <description>Amp now follows up on GitHub pull requests it opens. Comments, reviews, and CI results show up in the same thread. When Amp opens a PR, the agent can now subscribe to the PR&#39;s comments, reviews, and CI for its latest commit. A failing…</description>
    <content:encoded>&lt;p&gt;Amp now follows up on GitHub pull requests it opens. Comments, reviews, and CI results show up in the same thread.&lt;/p&gt;
&lt;p&gt;When Amp opens a PR, the agent can now subscribe to the PR&#39;s comments, reviews, and CI for its latest commit. A failing check or a reviewer&#39;s question shows up in the same thread, and Amp already has the context to deal with it.&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://ampcode.com/news/github-listeners-pr-followup.avif&quot; alt=&quot;Amp opening a pull request, subscribing to its updates, then receiving the CI results and a review in the same thread&quot; loading=&quot;eager&quot; decoding=&quot;async&quot; fetchpriority=&quot;high&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;p&gt;This is enabled by our new first-class support for &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/docs/github#github-webhooks&quot;&gt;GitHub Webhooks&lt;/a&gt;. In contrast to our existing, more generic &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/docs/orbs/event-driven&quot;&gt;webhook support&lt;/a&gt;, the new GitHub Webhook integration centrally handles all requests on the Amp side and then lets you (and your agent) decide whether to forward them to a single orb or to a new one each time. An agent can subscribe to certain events or can set up a subscription that spawns new orbs.&lt;/p&gt;
&lt;h2&gt;A New Orb for Every New GitHub Issue or PR&lt;/h2&gt;
&lt;p&gt;Ask Amp to start a new orb for every new issue or PR in a repository. You can also limit it to ones opened with a certain label. You don&#39;t need to keep the thread where you set it up.&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://ampcode.com/news/github-listeners-spawner.avif&quot; alt=&quot;A request to start a new orb for every new issue in acme/website, the subscription tool call, and Amp noting that the thread can be archived&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;low&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;p&gt;Each new issue or PR gets its own orb, which reads it and has a summary waiting when you open the thread. Later comments on that issue or PR go to the same thread, so the conversation stays in one place.&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://ampcode.com/news/github-listeners-new-pr-v2.avif&quot; alt=&quot;A new Amp thread started for a newly opened pull request, summarizing what the pull request changes&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;low&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;p&gt;You manage these in &lt;strong&gt;Settings → Integrations &amp;amp; MCP → GitHub&lt;/strong&gt;, where you can edit or pause them and see the orbs each one started.&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://ampcode.com/news/github-listeners-settings-v3.avif&quot; alt=&quot;The GitHub Event Subscriptions table in Settings with two orb spawners and a pull request subscription&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;low&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;p&gt;Read the &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/docs/github#github-listeners&quot;&gt;docs&lt;/a&gt; to find out how to watch CI when you push to &lt;code&gt;main&lt;/code&gt;, follow an existing issue or PR, and ask Puck what Amp is following.&lt;/p&gt;
&lt;p&gt;&lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/docs/github#connect-github&quot;&gt;Install the Amp GitHub App&lt;/a&gt; on your repository to get started.&lt;/p&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>First Things First, Faster</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-10-12-first-things-first-faster/</link>
    <guid isPermaLink="false">urn:aggr:item:6b2bd647eb07de40d8964021a9f6f8717245f975</guid>
    <atom:link href="https://ampcode.com/news/first-things-first-faster" rel="via" type="text/html"/>
    <pubDate>Mon, 12 Oct 2026 00:00:00 +0000</pubDate>
    <description>The Changes pane now automatically puts files in an intelligent order. Amp reads the diff, identifies the files that are essential to the change, and puts them first. If the diff changes, Amp computes an updated order without rearranging…</description>
    <content:encoded>&lt;p&gt;The Changes pane now automatically puts files in an intelligent order. Amp reads the diff, identifies the files that are essential to the change, and puts them first.&lt;/p&gt;
&lt;p&gt;If the diff changes, Amp computes an updated order without rearranging the files while you’re reviewing them. Instead, a blue dot will appear over the intelligent ordering button, which you can click to apply the updated order.&lt;/p&gt;
&lt;p&gt;The new automatic intelligent ordering is computed much more rapidly. Here is a comparison of the same diff ordered by both the old and new method:&lt;/p&gt;
&lt;p&gt;You can optionally go back to alphabetical file ordering by clicking the ordering button.&lt;/p&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>Use Your Claude Plan in Amp</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-10-10-use-your-claude-plan-in-amp/</link>
    <guid isPermaLink="false">urn:aggr:item:ac3b36535161cb0ca1e3e91a6ec9a219f6d168e3</guid>
    <atom:link href="https://ampcode.com/news/use-your-claude-plan" rel="via" type="text/html"/>
    <pubDate>Sat, 10 Oct 2026 00:00:00 +0000</pubDate>
    <description>You can now use your Claude Pro/Max subscription in Amp. It&#39;s free and available for everyone now. When creating a new thread, just pick Mode &gt; Claude Code. It&#39;ll ask to link your Claude sub if you haven&#39;t already done that. Under the…</description>
    <content:encoded>&lt;p&gt;You can now use your Claude Pro/Max subscription in Amp. It&#39;s free and available for everyone now.&lt;/p&gt;
&lt;p&gt;When creating a new thread, just pick &lt;strong&gt;Mode &amp;gt; Claude Code&lt;/strong&gt;. It&#39;ll ask to link your Claude sub if you haven&#39;t already done that.&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://static.ampcode.com/news/use-your-claude-plan-dial-light.avif&quot; alt=&quot;The web mode dial with the Claude Code position selected, using a Claude Pro/Max plan. The model is Opus 5.5 and the effort is High.&quot; loading=&quot;eager&quot; decoding=&quot;async&quot; fetchpriority=&quot;high&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;p&gt;Under the hood, this mode uses the &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://support.claude.com/en/articles/15036540-use-the-claude-agent-sdk-with-your-claude-plan&quot;&gt;Claude Agent SDK&lt;/a&gt; instead of Amp&#39;s own agent. But we made it all work: orbs and runners, thread sharing, portals, multiplayer, thread-to-thread messaging and orchestration, etc.&lt;/p&gt;
&lt;p&gt;See the &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/docs/the-dial#use-your-claude-subscription&quot;&gt;Claude sub docs&lt;/a&gt; for more information.&lt;/p&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>Many, Many Pucks</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-10-06-many-many-pucks/</link>
    <guid isPermaLink="false">urn:aggr:item:c434a9f516be5ddd0f454c7b24890be5dc242a29</guid>
    <atom:link href="https://ampcode.com/news/many-many-pucks" rel="via" type="text/html"/>
    <pubDate>Tue, 6 Oct 2026 00:00:00 +0000</pubDate>
    <description>You can now have multiple separate conversations with Puck. We know you love Puck. We also know you&#39;ve been asking Puck about your recent orbs, a bug fix, and dinner plans, all in the same conversation. Now each of those can be its own…</description>
    <content:encoded>&lt;p&gt;You can now have multiple separate conversations with Puck.&lt;/p&gt;
&lt;p&gt;We know you love Puck. We also know you&#39;ve been asking Puck about your recent orbs, a bug fix, and dinner plans, all in the same conversation. Now each of those can be its own conversation, and each one gets its own Puck.&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://static.ampcode.com/news/many-many-pucks-dark.png&quot; alt=&quot;The Puck window with the conversation menu open under the title. It lists five conversations, each with a differently colored Puck: Rebase vs merge, Watch the iOS release build, Draft Thursday&amp;#39;s changelog, My review queue this week, and Ramen for six on Friday. Below them is an Inactive Last 72h group with two older conversations.&quot; loading=&quot;eager&quot; decoding=&quot;async&quot; fetchpriority=&quot;high&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;p&gt;Press &lt;strong&gt;+&lt;/strong&gt; to start a new conversation. Click the conversation&#39;s name at the top to switch between them. Conversations you haven&#39;t touched in three days move into &lt;strong&gt;Inactive&lt;/strong&gt; so the list stays short.&lt;/p&gt;
&lt;p&gt;Read more about &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/docs/puck#conversations&quot;&gt;Puck conversations&lt;/a&gt; in the docs.&lt;/p&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>Plaid Speed</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-09-29-plaid-speed/</link>
    <guid isPermaLink="false">urn:aggr:item:b5213e4066cf9162fbea7728765ed25bc83ae55c</guid>
    <atom:link href="https://ampcode.com/news/plaid-mode" rel="via" type="text/html"/>
    <pubDate>Tue, 29 Sep 2026 00:00:00 +0000</pubDate>
    <description>Amp now supports Plaid speed for modes that use GPT-6 Astra. Plaid uses OpenAI&#39;s ultrafast speed tier, which enables inference requests to run up to 6× faster, with 6× cost per token. Open the mode picker in the new thread dialog, choose a…</description>
    <content:encoded>&lt;p&gt;Amp now supports Plaid speed for modes that use GPT-6 Astra. Plaid uses OpenAI&#39;s ultrafast speed tier, which enables inference requests to run up to 6× faster, with 6× cost per token.&lt;/p&gt;
&lt;p&gt;Open the mode picker in the new thread dialog, choose a mode that uses GPT-6 Astra (e.g., the default High mode), and move the speed switch past &lt;strong&gt;Fast&lt;/strong&gt; to &lt;strong&gt;Plaid&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://static.ampcode.com/news/plaid-new-thread-toggle-6x-final-20260929.avif&quot; alt=&quot;The mode dial with high selected and the speed switch set to Plaid, showing the red 6× cost indicator&quot; loading=&quot;eager&quot; decoding=&quot;async&quot; fetchpriority=&quot;high&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;p&gt;Plaid currently works with Amp-provided inference only, as OpenAI does not yet support ultrafast for linked ChatGPT subscriptions. When Plaid is activated, subagents and non-Plaid-enabled model inference will fall back to fast or standard speed. Like fast mode, Plaid can be toggled on or off for an existing thread.&lt;/p&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>Opus 5.5</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-09-28-opus-5-5/</link>
    <guid isPermaLink="false">urn:aggr:item:2ebd2659bf92f67764cf05a06f34f725ff85778b</guid>
    <atom:link href="https://ampcode.com/news/opus-5.5" rel="via" type="text/html"/>
    <pubDate>Mon, 28 Sep 2026 00:00:00 +0000</pubDate>
    <description>Claude Opus 5.5 now powers Amp&#39;s medium mode by default, replacing GPT-5.6 Sol. If you use a ChatGPT subscription with the ChatGPT Only preset, medium stays pinned to GPT-5.6 Sol, billed to your subscription. To switch to Opus 5.5, change…</description>
    <content:encoded>&lt;p&gt;Claude Opus 5.5 now powers Amp&#39;s &lt;code&gt;medium&lt;/code&gt; mode by default, replacing GPT-5.6 Sol. If you use a ChatGPT subscription with the &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/docs/the-dial#use-a-chatgpt-subscription&quot;&gt;ChatGPT Only preset&lt;/a&gt;, &lt;code&gt;medium&lt;/code&gt; stays pinned to GPT-5.6 Sol, billed to your subscription. To switch to Opus 5.5, change &lt;code&gt;medium&lt;/code&gt; in &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/docs/the-dial#tune-the-modes&quot;&gt;Tune Modes&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;In our internal evals, Opus 5.5 solved &lt;strong&gt;65%&lt;/strong&gt; of tasks, up from GPT-5.6 Sol&#39;s &lt;strong&gt;61%&lt;/strong&gt; and Opus 5&#39;s &lt;strong&gt;56%&lt;/strong&gt;. And it did that for &lt;strong&gt;10% less&lt;/strong&gt; than GPT-5.6 Sol and &lt;strong&gt;25% less&lt;/strong&gt; than Opus 5.&lt;/p&gt;
&lt;p&gt;It&#39;s still behind &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/news/fable-5.1&quot;&gt;Fable 5.1&lt;/a&gt;, which solved &lt;strong&gt;71%&lt;/strong&gt;, but it costs &lt;strong&gt;40% less&lt;/strong&gt;.&lt;/p&gt;
&lt;h2&gt;More Steerable&lt;/h2&gt;
&lt;p&gt;Opus 5.5 responds much better to messages you send while it works. Add a constraint you forgot, point out a wrong turn, or correct its approach, and it folds that into the work instead of arguing or carrying on with its old plan. It doesn&#39;t drop what it was doing, either.&lt;/p&gt;
&lt;p&gt;So don&#39;t stop it to edit your prompt and start over. Send the correction. &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/news/steer-dont-queue&quot;&gt;Enter steers by default&lt;/a&gt;, so your message reaches it right away.&lt;/p&gt;
&lt;h2&gt;High Effort, Not Max&lt;/h2&gt;
&lt;p&gt;Opus 5.5 runs at high reasoning effort. Past high, it starts to overthink. At xhigh and max it burns through tokens, scores lower than at high, and costs several times as much. So we stop at high.&lt;/p&gt;
&lt;h2&gt;Why Not GPT-6 Sol?&lt;/h2&gt;
&lt;p&gt;OpenAI shipped GPT-6 Sol an hour after Opus 5.5. We ran both.&lt;/p&gt;
&lt;p&gt;In our evals, GPT-6 Sol scores about the same as GPT-5.6 Sol, at half the cost. In real work, though, it&#39;s much more jagged: strong on one task, off on the next. &lt;code&gt;medium&lt;/code&gt; carries most threads, so it needs a model you can count on across all of them.&lt;/p&gt;
&lt;h2&gt;When To Turn the Dial Up&lt;/h2&gt;
&lt;p&gt;&lt;code&gt;medium&lt;/code&gt; is the right place for most work now. Two kinds of task still belong higher:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Lots of unknowns.&lt;/strong&gt; Use &lt;code&gt;ultra&lt;/code&gt; with Fable 5.1 when nobody knows the path yet. &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/@kemper&quot;&gt;Alex&lt;/a&gt; had to move more than 5,000 users of an enterprise customer&#39;s SSO to new email addresses. He started the thread with:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;We&#39;ve never migrated… from one set of email addresses to the next before… and we don&#39;t really have a way to test it.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;It mapped how sign-in works today, planned the switch, and watched production afterward. The first 41 sign-ins after the switch all worked.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Taste and judgment.&lt;/strong&gt; Use &lt;code&gt;high&lt;/code&gt; with GPT-6 Astra or &lt;code&gt;ultra&lt;/code&gt; with Fable 5.1 when the hard part is deciding what good looks like. Ask for options, not one answer. &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/@hamish&quot;&gt;Hamish&lt;/a&gt; wanted a better transition out of the iOS image viewer:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Right now it&#39;s a hard cut, so can you please give me some options for animations and record them and show me them in line in the transcript here.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;It recorded four options on the simulator. He replied &amp;quot;Ship B to main.&amp;quot;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Turn the dial up when a miss costs more than the wait, not because the task is long.&lt;/p&gt;
&lt;h2&gt;How To Use It&lt;/h2&gt;
&lt;p&gt;Opus 5.5 is persistent. It keeps going until the job is done, which means it needs to know what done is, and it needs a way to see for itself. These are the habits we use, with prompts from our own threads:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Give it the whole app to run.&lt;/strong&gt; Models are very good at writing tests their own code passes. Running the app end to end is the best way to know it works. Make that one command with &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/docs/orbs/customizing#agents-setup&quot;&gt;&lt;code&gt;.agents/setup&lt;/code&gt;&lt;/a&gt;, &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/docs/orbs/portals#define-services&quot;&gt;services&lt;/a&gt;, and a &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/docs/customize/skills&quot;&gt;skill&lt;/a&gt;. &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/@tim&quot;&gt;Tim&lt;/a&gt; hit a sidebar bug in our Mac app and asked:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Repro it in preflight then we can look at fixing it.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;It launched our Mac app, dragged the sidebar closed, and measured the bug before touching any code.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Tell it what done looks like, including the evidence it should deliver.&lt;/strong&gt; Our bug fix prompts include:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Implement the simplest correct fix, verify it, then explain the bug, the fix, and the evidence that the fix resolves it.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;That evidence is usually a failing test plus before and after videos.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Raise the bar when the check is too easy.&lt;/strong&gt; If it verified against an emulator or a mock, send it to the real thing. When it checked an iPad fix in an emulator, &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/@sqs&quot;&gt;Quinn&lt;/a&gt; replied:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;test all of this in the Buildkite iOS preflight and use an iPad simulator&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;The simulator caught two bugs the emulator had missed.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Hand it the bigger task and go hands off.&lt;/strong&gt; It holds up well over long threads. Tell it what evidence to deliver, then go do something else. You shouldn&#39;t babysit a capable model: &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/news/less-noise&quot;&gt;if you have the patience to watch it work step by step&lt;/a&gt;, you&#39;re giving it too short a leash.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>Less Noise</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-09-25-less-noise/</link>
    <guid isPermaLink="false">urn:aggr:item:b4e4465cd6db03e7d079b48bf7a0e27e5103c954</guid>
    <atom:link href="https://ampcode.com/news/less-noise" rel="via" type="text/html"/>
    <pubDate>Fri, 25 Sep 2026 00:00:00 +0000</pubDate>
    <description>Amp now collapses your agent&#39;s step-by-step work even more, since you care about what the agent did, not how it got there. (You can still expand the steps when needed.) A year ago, watching your agent&#39;s every step sometimes helped, and you…</description>
    <content:encoded>&lt;p&gt;Amp now collapses your agent&#39;s step-by-step work even more, since you care about what the agent did, not how it got there. (You can still expand the steps when needed.)&lt;/p&gt;
&lt;p&gt;A year ago, watching your agent&#39;s every step sometimes helped, and you probably were only running one agent.&lt;/p&gt;
&lt;p&gt;Now? You have lots of agents. You should be giving them harder, deeper work and verification demands. They should run for longer on their own, without you watching them from up close. If you have the patience to watch your agents work, you&#39;re giving them too short a leash.&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://static.ampcode.com/news/less-noise-dark.avif&quot; alt=&quot;Ten separate rows of commands, reads, searches, and edits become one expandable summary. Both are followed by the same assistant reply, fading at the second line.&quot; loading=&quot;eager&quot; decoding=&quot;async&quot; fetchpriority=&quot;high&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>The Mac App Is Your Runner</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-09-24-the-mac-app-is-your-runner/</link>
    <guid isPermaLink="false">urn:aggr:item:74980308ade1695e2d3e48bee8aaefd2808b5e9e</guid>
    <atom:link href="https://ampcode.com/news/the-mac-app-is-your-runner" rel="via" type="text/html"/>
    <pubDate>Thu, 24 Sep 2026 00:00:00 +0000</pubDate>
    <description>The Amp app for macOS now starts a runner for you. You no longer need amp --no-tui open in a terminal to run threads on your Mac. Open App Settings… (⌘⇧,), go to Runner, and click + to add a folder or one of your projects. Start a thread…</description>
    <content:encoded>&lt;p&gt;The &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/app&quot;&gt;Amp app for macOS&lt;/a&gt; now starts a &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/docs/cli/runners&quot;&gt;runner&lt;/a&gt; for you. You no longer need &lt;code&gt;amp --no-tui&lt;/code&gt; open in a terminal to run threads on your Mac.&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://static.ampcode.com/news/mac-app-runner-settings.png&quot; alt=&quot;The Runner tab in the Amp app&amp;#39;s settings on macOS. Use This Mac as a Runner is switched on, the status says Running with 3 folders and 2 threads, the runner name is hamishs-macbook-pro, Keep This Mac Awake is switched on, and the Folders list shows amp, sandcastle, and marketing-site.&quot; loading=&quot;eager&quot; decoding=&quot;async&quot; fetchpriority=&quot;high&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;p&gt;Open &lt;strong&gt;App Settings…&lt;/strong&gt; (⌘⇧,), go to &lt;strong&gt;Runner&lt;/strong&gt;, and click &lt;strong&gt;+&lt;/strong&gt; to add a folder or one of your projects. Start a thread and your Mac is right there in the picker, marked &lt;strong&gt;This Mac&lt;/strong&gt;. You can also pick it when you start a thread from ampcode.com, your phone, or Puck.&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://static.ampcode.com/news/your-mac-is-now-a-runner-composer-dark.png&quot; alt=&quot;The new thread composer in the Amp app with the prompt Make amp an iPhone Duo app and the ultra mode. The runner picker is open, and hamishs-macbook-pro is selected with a This Mac capsule and a MacBook icon. Below it is hamishs-dgx-spark, another runner, with no capsule.&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;low&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;h2&gt;No More Sleeping on the Job&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Keep This Mac Awake&lt;/strong&gt; stops your Mac from going to sleep while the runner is on and the Mac is plugged in, so you can still start threads on it after you walk away. The screen still turns off and locks. On battery, or when you close the lid, your Mac sleeps as usual.&lt;/p&gt;
&lt;p&gt;Read more in the &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/docs/macos-and-ios/runner&quot;&gt;runner docs&lt;/a&gt;.&lt;/p&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>Shared Runners</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-09-24-shared-runners/</link>
    <guid isPermaLink="false">urn:aggr:item:a3f7cd25e366ec00a9b31b99130161857cdbf08a</guid>
    <atom:link href="https://ampcode.com/news/shared-runners" rel="via" type="text/html"/>
    <pubDate>Thu, 24 Sep 2026 00:00:00 +0000</pubDate>
    <description>You can now share a runner with your workspace. Start it with --share and everyone in your workspace can start threads on that machine from ampcode.com. If you have a machine with GPUs, a Mac that&#39;s used to build and sign the iOS app, or a…</description>
    <content:encoded>&lt;p&gt;You can now share a &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/docs/cli/runners&quot;&gt;runner&lt;/a&gt; with your workspace. Start it with &lt;code&gt;--share&lt;/code&gt; and everyone in your workspace can start threads on that machine from ampcode.com.&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://static.ampcode.com/news/shared-runners-picker-dark.png?v=2&quot; alt=&quot;The new thread composer on ampcode.com with the location picker open. Under Runners is your own devbox. Under Shared Runners are gpu-runner, shared by Allison, and macos-builder, shared by Monty, each with its owner&amp;#39;s avatar and running-thread count.&quot; loading=&quot;eager&quot; decoding=&quot;async&quot; fetchpriority=&quot;high&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;p&gt;If you have a machine with GPUs, a Mac that&#39;s used to build and sign the iOS app, or a dev box in a specific network, you can now set it up and the whole team can spawn agents on it:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-shell-session&quot;&gt;&lt;span class=&quot;code-snippet&quot; data-language=&quot;Shell-session&quot;&gt;$ amp --no-tui --runner-id macos-builder --share
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Everyone in your workspace now sees it in the picker under &lt;strong&gt;Shared Runners&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;With &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/docs/cli/runners#secrets-env-vars&quot;&gt;&lt;code&gt;--amp-env&lt;/code&gt;&lt;/a&gt;, a shared runner gets the workspace and project Secrets &amp;amp; Env Vars, but never your personal ones. That applies to your own threads on it too.&lt;/p&gt;
&lt;p&gt;We need to offer a word of warning, though: everyone you share with runs code on your machine as you, with your files, your credentials, and your logins. Their threads can also work in the same directories at the same time. So only share a runner with people you&#39;d trust with a shell on that machine. Even better, give the runner a machine of its own. (Better still: use &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/what-are-orbs&quot;&gt;orbs&lt;/a&gt;, so that every thread gets its own machine.)&lt;/p&gt;
&lt;p&gt;Workspace admins can &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/docs/cli/runners#turn-off-runner-sharing-for-a-workspace&quot;&gt;turn off runner sharing&lt;/a&gt; in &lt;strong&gt;Member Settings&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Read more about &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/docs/cli/runners#share-a-runner-with-your-workspace&quot;&gt;sharing a runner&lt;/a&gt; in the runner docs.&lt;/p&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>One Runner, Many Worktrees</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-09-22-one-runner-many-worktrees/</link>
    <guid isPermaLink="false">urn:aggr:item:1a8097ab868a8b27b2b8f174cca1795d0ea44d61</guid>
    <atom:link href="https://ampcode.com/news/one-runner-many-worktrees" rel="via" type="text/html"/>
    <pubDate>Tue, 22 Sep 2026 00:00:00 +0000</pubDate>
    <description>A runner can now create Git worktrees. Pick a repository the runner serves, hit Tab, name the branch, and the thread starts in a fresh checkout. Your main checkout stays untouched. In the directory picker, every Git checkout on the runner…</description>
    <content:encoded>&lt;p&gt;A &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/docs/cli/runners&quot;&gt;runner&lt;/a&gt; can now create Git worktrees. Pick a repository the runner serves, hit Tab, name the branch, and the thread starts in a fresh checkout. Your main checkout stays untouched.&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://static.ampcode.com/news/one-runner-many-worktrees-picker-dark.png&quot; alt=&quot;The new thread composer on ampcode.com with the runner mac-mini selected and the directory picker open. The amp repository is highlighted and offers Current or New Worktree.&quot; loading=&quot;eager&quot; decoding=&quot;async&quot; fetchpriority=&quot;high&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;p&gt;In the directory picker, every Git checkout on the runner gets a &lt;strong&gt;New Worktree&lt;/strong&gt; option next to it. Choose it and you get a small form:&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://static.ampcode.com/news/one-runner-many-worktrees-form-dark.png&quot; alt=&quot;The worktree form in the new thread composer: New worktree of amp, name fix-flaky-login-test, directory ~/code/amp-fix-flaky-login-test, branch fix-flaky-login-test, from current HEAD, and a Create Worktree button&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;low&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;p&gt;The name you chose becomes the branch name and the folder name. The runner then creates the worktree as a sibling of the repository: &lt;code&gt;~/code/amp&lt;/code&gt; gets &lt;code&gt;~/code/amp-fix-flaky-login-test&lt;/code&gt;, checked out on a new branch &lt;code&gt;fix-flaky-login-test&lt;/code&gt; off the current &lt;code&gt;HEAD&lt;/code&gt;. Uncommitted changes stay where they are, in the original checkout. The new directory shows up in the picker right away, marked with a branch icon, and the thread starts in it.&lt;/p&gt;
&lt;p&gt;&lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/docs/puck&quot;&gt;Puck&lt;/a&gt; can do this too: ask it to start a thread on your runner in a new worktree and it passes a &lt;code&gt;worktree&lt;/code&gt; name to &lt;code&gt;create_thread&lt;/code&gt;.&lt;/p&gt;
&lt;h2&gt;Clean Up When You&#39;re Done&lt;/h2&gt;
&lt;p&gt;A thread that runs in a worktree the runner created gets a new action: &lt;strong&gt;Archive and Remove Worktree&lt;/strong&gt;. It archives the thread, runs &lt;code&gt;git worktree remove&lt;/code&gt;, and deletes the branch.&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://static.ampcode.com/news/one-runner-many-worktrees-menu-dark.png&quot; alt=&quot;The thread actions menu on ampcode.com with a new entry, Archive and Remove Worktree, between Archive and Delete&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;low&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;h2&gt;New Folders and Projects Too&lt;/h2&gt;
&lt;p&gt;The picker can also create things. Type the name of a directory that doesn&#39;t exist yet and you get &lt;strong&gt;New Directory&lt;/strong&gt; or &lt;strong&gt;New Project&lt;/strong&gt;. &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/docs/cli/runners#create-a-directory-or-project&quot;&gt;Read more.&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://static.ampcode.com/news/one-runner-many-worktrees-create-dark.png&quot; alt=&quot;The directory picker in the new thread composer with a name typed that doesn&amp;#39;t exist yet, offering New Directory and New Project&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;low&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;h2&gt;Oh, They Understand Secrets Now Too&lt;/h2&gt;
&lt;p&gt;Runners can also use the &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/docs/orbs/handling-secrets&quot;&gt;Secrets &amp;amp; Env Vars&lt;/a&gt; you configure on ampcode.com. Same variables that orbs get. It&#39;s off by default; opt in with &lt;code&gt;--amp-env&lt;/code&gt;:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-shell-session&quot;&gt;&lt;span class=&quot;code-snippet&quot; data-language=&quot;Shell-session&quot;&gt;$ amp --no-tui --runner-id mac-mini --discover-dirs --amp-env
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Every time a thread starts, the runner fetches the variables that apply to it (personal, then project, then workspace) and adds them to the environment of the thread&#39;s shell commands, MCP servers, and plugins. Change a variable on ampcode.com and the next thread gets the new value. No restart, no SSH.&lt;/p&gt;
&lt;p&gt;Both need a runner on the current Amp version. If yours has been running for a while, it has &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/docs/cli/runners#keep-a-runner-updated&quot;&gt;updated itself&lt;/a&gt; already.&lt;/p&gt;
&lt;p&gt;Read more about &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/docs/cli/runners#create-a-worktree&quot;&gt;worktrees&lt;/a&gt; and &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/docs/cli/runners#secrets-env-vars&quot;&gt;Secrets &amp;amp; Env Vars&lt;/a&gt; in the runner docs.&lt;/p&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>One Runner Is Now Enough</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-09-17-one-runner-is-now-enough/</link>
    <guid isPermaLink="false">urn:aggr:item:12a56344fc8c5727c833ddce4f1235be9b9f3c9b</guid>
    <atom:link href="https://ampcode.com/news/one-runner-is-now-enough" rel="via" type="text/html"/>
    <pubDate>Thu, 17 Sep 2026 00:00:00 +0000</pubDate>
    <description>A runner can now serve many directories, not just the one it was started in. You can point it at specific projects and directories or let it find your Git repositories. Start a runner and tell it which directories to serve with --dir.…</description>
    <content:encoded>&lt;p&gt;A &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/docs/cli/runners&quot;&gt;runner&lt;/a&gt; can now serve many directories, not just the one it was started in. You can point it at specific projects and directories or let it find your Git repositories.&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://static.ampcode.com/news/one-runner-is-now-enough-picker-dark.png&quot; alt=&quot;The new thread composer on ampcode.com with the runner mac-mini selected and a picker listing its projects and folders&quot; loading=&quot;eager&quot; decoding=&quot;async&quot; fetchpriority=&quot;high&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;p&gt;Start a runner and tell it which directories to serve with &lt;code&gt;--dir&lt;/code&gt;. Repeat the flag for each one:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-shell-session&quot;&gt;&lt;span class=&quot;code-snippet&quot; data-language=&quot;Shell-session&quot;&gt;$ amp --no-tui --runner-id mac-mini --dir ~/code/amp --dir ~/code/sandcastle
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Or start it in the directory that holds your checkouts and let it find them:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-shell-session&quot;&gt;&lt;span class=&quot;code-snippet&quot; data-language=&quot;Shell-session&quot;&gt;$ cd ~/code
$ amp --no-tui --runner-id mac-mini --discover-dirs
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;code&gt;--discover-dirs&lt;/code&gt; serves every Git checkout up to two levels beneath the current directory and picks up new ones as you clone them.&lt;/p&gt;
&lt;p&gt;Checkouts somewhere else, or deeper than two levels? Give &lt;code&gt;--discover-dirs&lt;/code&gt; a path, repeat it for more, and set &lt;code&gt;--discover-depth&lt;/code&gt; to look further down:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-shell-session&quot;&gt;&lt;span class=&quot;code-snippet&quot; data-language=&quot;Shell-session&quot;&gt;$ amp --no-tui --discover-dirs=~/work --discover-dirs=~/code --discover-depth 4
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Add or remove directories while the runner is running, without restarting it:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-shell-session&quot;&gt;&lt;span class=&quot;code-snippet&quot; data-language=&quot;Shell-session&quot;&gt;$ amp runner dirs add ~/code/new-repo
$ amp runner dirs list
$ amp runner dirs remove ~/code/dotfiles
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;The runner remembers the directories you add this way and serves them again the next time you start it from the same directory.&lt;/p&gt;
&lt;h2&gt;Oh, They Can Update Themselves Too&lt;/h2&gt;
&lt;p&gt;Runners now update themselves too. If you leave an &lt;code&gt;amp --no-tui&lt;/code&gt; runner running, it keeps checking for new releases about once an hour and installs them. Once no thread is running on it, it restarts into the new version, at most once every 12 hours. It keeps its runner ID, its directories, and the rest of its flags.&lt;/p&gt;
&lt;p&gt;Turn it off with &lt;code&gt;amp.runner.autoUpdate.enabled: false&lt;/code&gt; in your settings.&lt;/p&gt;
&lt;p&gt;Read more about &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/docs/cli/runners#serve-multiple-directories&quot;&gt;serving multiple directories&lt;/a&gt; and &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/docs/cli/runners#keep-a-runner-updated&quot;&gt;runner updates&lt;/a&gt; in the runner docs.&lt;/p&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>Free Agent</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-09-13-free-agent/</link>
    <guid isPermaLink="false">urn:aggr:item:ec63e66a9f339ae0e5f4ac38076442eed44927da</guid>
    <atom:link href="https://ampcode.com/news/free-agent" rel="via" type="text/html"/>
    <pubDate>Sun, 13 Sep 2026 00:00:00 +0000</pubDate>
    <description>Amp is now free to use when you bring your own compute and model subscriptions/keys. No monthly plan is required anymore to use your ChatGPT subscription with Amp. No BYOK token fees or limits for anyone (except our Enterprise tier). You…</description>
    <content:encoded>&lt;p&gt;Amp is now free to use when you bring your own compute and model subscriptions/keys.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;No monthly plan is required anymore to use your ChatGPT subscription with Amp.&lt;/li&gt;
&lt;li&gt;No BYOK token fees or limits for anyone (except our Enterprise tier).&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;You pay us for &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/docs/orbs&quot;&gt;orbs&lt;/a&gt;, our remote computers where your agents run independently and in parallel. Or you can use &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/docs/cli/runners&quot;&gt;runners&lt;/a&gt; on your own computers to run your Amp agents for free.&lt;/p&gt;
&lt;p&gt;You &lt;em&gt;can&lt;/em&gt; still pay for model inference through Amp if you want, with no markup.&lt;/p&gt;
&lt;p&gt;Here&#39;s our new free Hobby tier and no-extra-charge Teams tier, which make it easier to get started with Amp and to get your whole team on it:&lt;/p&gt;
&lt;p&gt;See &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/pricing&quot;&gt;Pricing&lt;/a&gt; for full details, but let&#39;s walk through what changes and what doesn&#39;t.&lt;/p&gt;
&lt;h2&gt;For Amp Megawatt &amp;amp; Gigawatt Members&lt;/h2&gt;
&lt;p&gt;On average, Megawatt members get a 60% discount and Gigawatt members get a 65% discount on their Amp usage. It&#39;s a great deal.&lt;/p&gt;
&lt;p&gt;You&#39;ll keep getting the same heavily discounted orb usage and model usage each month, plus you can now feed your orbs with tokens from more places.&lt;/p&gt;
&lt;p&gt;With this change, you&#39;re no longer effectively bound by the limits of your ChatGPT sub. You can tap other model providers or your company&#39;s preferred AI gateway/provider (more on that below), all without any Amp token fees or limits.&lt;/p&gt;
&lt;h2&gt;For Teams&lt;/h2&gt;
&lt;p&gt;We&#39;ve eliminated the biggest sources of friction you might hit when spreading Amp, cost-wise and security-wise.&lt;/p&gt;
&lt;p&gt;Now, you can invite everyone to your &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/workspace&quot;&gt;Amp workspace&lt;/a&gt; for free and feel the magic of Amp&#39;s &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/docs/collaborate/workspaces&quot;&gt;shared threads&lt;/a&gt;, &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/docs/orbs/portals&quot;&gt;shared portals&lt;/a&gt;, and &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/docs/collaborate/multiplayer&quot;&gt;multiplayer&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Everyone can use Amp with ChatGPT subs or your company&#39;s preferred AI gateway via BYOK, with no monthly fees.&lt;/p&gt;
&lt;p&gt;Power users can upgrade to paid tiers for big orb discounts, while everyone else in the workspace can remain on the free Hobby tier and consume your pooled workspace credits for orbs pay-as-you-go.&lt;/p&gt;
&lt;p&gt;Also, you get free SAML/OIDC SSO for the whole workspace if at least one member is on a paid tier.&lt;/p&gt;
&lt;p&gt;Finally, we&#39;re now formally extending our &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/docs/enterprise/minimal-data-retention&quot;&gt;zero and minimal data retention policy&lt;/a&gt; to all Amp users and workspaces, not just to our Enterprise tier. (Everyone was always covered by it for all Amp usage since we started, but until now we could only contractually guarantee that to our Enterprise customers.)&lt;/p&gt;
&lt;h2&gt;One More Thing: More BYOK Options&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Update (September 30, 2026):&lt;/strong&gt; These are now available to all Amp users on every tier. Set them up in &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/settings/model-routing&quot;&gt;Model Routing&lt;/a&gt;. Thank you so much to our Megawatt and Gigawatt members who got early access and gave us valuable feedback!&lt;/p&gt;
&lt;p&gt;Today, Amp Megawatt and Gigawatt members are also getting early access to more BYOK providers:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;OpenRouter&lt;/li&gt;
&lt;li&gt;Amazon Bedrock&lt;/li&gt;
&lt;li&gt;Google Cloud Agent Platform (f/k/a Vertex AI)&lt;/li&gt;
&lt;li&gt;Azure Foundry&lt;/li&gt;
&lt;li&gt;Vercel AI Gateway&lt;/li&gt;
&lt;li&gt;Cloudflare AI Gateway&lt;/li&gt;
&lt;li&gt;Ollama Cloud&lt;/li&gt;
&lt;li&gt;OpenCode Go&lt;/li&gt;
&lt;li&gt;Custom endpoint URLs&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;To try these, configure them in &lt;strong&gt;Model Routing&lt;/strong&gt; in &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/settings/model-routing&quot;&gt;personal settings&lt;/a&gt; or &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/workspace/model-routing&quot;&gt;workspace settings&lt;/a&gt;.&lt;/p&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>Restack Your Changes</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-09-11-restack-your-changes/</link>
    <guid isPermaLink="false">urn:aggr:item:a869b94a598c7ab472e5e4b5b531b46a0114da19</guid>
    <atom:link href="https://ampcode.com/news/restack-your-changes" rel="via" type="text/html"/>
    <pubDate>Fri, 11 Sep 2026 00:00:00 +0000</pubDate>
    <description>We&#39;ve added a Restack button that organizes all of your thread&#39;s changes into a cleaner set of commits. Use it to split a large diff into logical pieces for review, clean up an agent&#39;s intermediate commits before merging, or combine small…</description>
    <content:encoded>&lt;p&gt;We&#39;ve added a Restack button that organizes all of your thread&#39;s changes into a cleaner set of commits. Use it to split a large diff into logical pieces for review, clean up an agent&#39;s intermediate commits before merging, or combine small related commits. The final file contents stay the same.&lt;/p&gt;
&lt;p&gt;Read how to &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/docs/orbs/shipping#restack-changes&quot;&gt;restack and review your changes&lt;/a&gt; in the docs.&lt;/p&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>Customize Your Dial</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-09-10-customize-your-dial/</link>
    <guid isPermaLink="false">urn:aggr:item:29516f7302083265c55ce65f7c15d9fd51edcb57</guid>
    <atom:link href="https://ampcode.com/news/build-your-own-dial" rel="via" type="text/html"/>
    <pubDate>Thu, 10 Sep 2026 00:00:00 +0000</pubDate>
    <description>You can now choose the models behind Amp&#39;s builtin modes and put your own agents on the Dial. There are two tabs in Settings → Mode Dial. Tune Your Modes In Tune Modes, choose the model and reasoning effort for a builtin mode&#39;s main agent,…</description>
    <content:encoded>&lt;p&gt;You can now choose the models behind Amp&#39;s builtin modes and put your own agents on &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/news/the-dial&quot;&gt;the Dial&lt;/a&gt;. There are two tabs in &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/settings/dial&quot;&gt;Settings → Mode Dial&lt;/a&gt;.&lt;/p&gt;
&lt;h2&gt;Tune Your Modes&lt;/h2&gt;
&lt;p&gt;In &lt;strong&gt;Tune Modes&lt;/strong&gt;, choose the model and reasoning effort for a builtin mode&#39;s main agent, Oracle, or subagents. Use it to run those models through your own API key or ChatGPT subscription. The mode keeps its prompt and tools.&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://static.ampcode.com/news/dial-tune-modes-20260910.png?v=2&quot; alt=&quot;Tune Modes with high selected, the Oracle pinned to GPT-6 Astra, and the main agent and subagents left on Auto&quot; loading=&quot;eager&quot; decoding=&quot;async&quot; fetchpriority=&quot;high&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;p&gt;Connect your key or subscription in &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/settings/model-routing&quot;&gt;Model Routing&lt;/a&gt;, then choose models it supports. You can change just the Oracle, or all three roles. Anything left on Auto follows Amp&#39;s choices as models improve.&lt;/p&gt;
&lt;p&gt;Billing follows your provider connections.&lt;/p&gt;
&lt;h2&gt;Build Your Own Dial&lt;/h2&gt;
&lt;p&gt;If you often find yourself using custom agents you built with &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/docs/customize/plugins#define-a-custom-agent-mode&quot;&gt;plugins&lt;/a&gt;, like a dedicated code reviewer or a security agent, you can place them on the dial too. &lt;strong&gt;Build Dial&lt;/strong&gt; lets you combine the builtin modes with your agents:&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://static.ampcode.com/news/dial-build-dial-20260910.png?v=2&quot; alt=&quot;Build Dial with Medium, High, and the Grok 4.6 plugin mode in three slots, one vacant slot, and a catalog of available modes&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;low&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;p&gt;Keep &lt;code&gt;medium&lt;/code&gt; and &lt;code&gt;high&lt;/code&gt; for building, and add a reviewer with your team&#39;s review instructions. A plugin agent can extend a builtin mode, so you only need to describe what it should do differently.&lt;/p&gt;
&lt;p&gt;Drag two to four modes onto the dial, put them in order, and hold to save. Use the mode picker in the app or press &lt;code&gt;Ctrl+S&lt;/code&gt; in the CLI to switch between them. Workspace admins can set a shared dial too. Your personal choices take precedence.&lt;/p&gt;
&lt;p&gt;&lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/settings/dial&quot;&gt;Make the dial yours&lt;/a&gt;. The &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/docs/the-dial#customize-your-dial&quot;&gt;docs&lt;/a&gt; cover both tabs.&lt;/p&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>Steer, Don&#39;t Queue</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-09-08-steer-don-t-queue/</link>
    <guid isPermaLink="false">urn:aggr:item:c5825bfa63e878f35bfb30dff0c6d57689bcde32</guid>
    <atom:link href="https://ampcode.com/news/steer-dont-queue" rel="via" type="text/html"/>
    <pubDate>Tue, 8 Sep 2026 00:00:00 +0000</pubDate>
    <description>When you send a message while the agent is working, it&#39;s now delivered at the next possible opportunity, instead of being queued until the agent finishes its turn. This means the agent acts on your feedback sooner and doesn&#39;t waste time on…</description>
    <content:encoded>&lt;p&gt;When you send a message while the agent is working, it&#39;s now delivered at the next possible opportunity, instead of being queued until the agent finishes its turn.&lt;/p&gt;
&lt;p&gt;This means the agent acts on your feedback sooner and doesn&#39;t waste time on unnecessary verification steps.&lt;/p&gt;
&lt;p&gt;Most people won&#39;t need to change how they use Amp.&lt;/p&gt;
&lt;p&gt;If you do find Amp steering too abruptly, we&#39;ve found that it works well to phrase your prompts like &amp;quot;When done, then ...&amp;quot; instead of &amp;quot;Now, ...&amp;quot;.&lt;/p&gt;
&lt;p&gt;&lt;code&gt;Ship&lt;/code&gt;, &lt;code&gt;Review&lt;/code&gt;, and other builtin actions still queue, because usually you want to wait until the agent is done before shipping or getting a review.&lt;/p&gt;
&lt;p&gt;If needed, you can still &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/docs/prompting#queueing-messages&quot;&gt;queue from Amp&lt;/a&gt; or &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/docs/cli/keybindings#writing-prompts&quot;&gt;queue in the Amp CLI&lt;/a&gt;.&lt;/p&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>Desktop</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-09-04-desktop/</link>
    <guid isPermaLink="false">urn:aggr:item:0be671610ac4a485e68b3f268832f577ea34ff86</guid>
    <atom:link href="https://ampcode.com/news/desktop" rel="via" type="text/html"/>
    <pubDate>Fri, 4 Sep 2026 00:00:00 +0000</pubDate>
    <description>Your orb now has a desktop you can see and control. Use the Desktop tab in any orb thread to get a high-resolution interactive Linux desktop. It&#39;s useful for verifying the agent&#39;s work when developing for Linux, Android, or the Chrome…</description>
    <content:encoded>&lt;p&gt;Your orb now has a &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/docs/orbs/desktop&quot;&gt;desktop you can see and control&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Use the Desktop tab in any orb thread to get a high-resolution interactive Linux desktop.&lt;/p&gt;
&lt;p&gt;It&#39;s useful for verifying the agent&#39;s work when developing for Linux, Android, or the Chrome extension API, or when working with file formats that need to be opened in desktop applications. It&#39;s also useful for computer use, CAD, and anytime you just want a desktop in the cloud.&lt;/p&gt;
&lt;p&gt;&lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://x.com/dilika&quot;&gt;Modibo Sissoko&lt;/a&gt;, an Amp user, sent in a video of how he tests &lt;code&gt;.docx&lt;/code&gt; files exported by his application in LibreOffice to make sure they look right:&lt;/p&gt;
&lt;p&gt;And if you&#39;re curious what Puck does for fun when not helping you, turn on &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/settings/experimental-features#desktop-fun-games&quot;&gt;Fun Games in Desktop&lt;/a&gt;:&lt;/p&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>Intelligently Ordered Diffs</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-09-01-intelligently-ordered-diffs/</link>
    <guid isPermaLink="false">urn:aggr:item:60e2e4e5a559c5cefbfc761f724873357f75a635</guid>
    <atom:link href="https://ampcode.com/news/intelligently-ordered-diffs" rel="via" type="text/html"/>
    <pubDate>Tue, 1 Sep 2026 00:00:00 +0000</pubDate>
    <description>The first challenge in code review is figuring out which files to read first. Amp now orders diffs intelligently and highlights which files contain the essential changes. Click the file order button to toggle between alphabetical and…</description>
    <content:encoded>&lt;p&gt;The first challenge in code review is figuring out which files to read first. Amp now orders diffs intelligently and highlights which files contain the essential changes.&lt;/p&gt;
&lt;p&gt;Click the file order button to toggle between alphabetical and intelligent order. Amp reads the diff, finds the files that best explain the change, and moves them to the top.&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://static.ampcode.com/news/changes-intelligent-order-20260831-v3.avif&quot; alt=&quot;The Changes pane with intelligent file ordering enabled, important files first, and less important files muted&quot; loading=&quot;eager&quot; decoding=&quot;async&quot; fetchpriority=&quot;high&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;p&gt;Less relevant files, such as tests, fixtures, and generated code, will be shown in muted colors below the important ones.&lt;/p&gt;
&lt;p&gt;If the diff changes while you&#39;re reviewing it, a blue dot over the button will indicate that there is an updated ordering. Clicking it will update the diff with the new order.&lt;/p&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>Fable 5.1</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-09-01-fable-5-1/</link>
    <guid isPermaLink="false">urn:aggr:item:e0d24d9ded96e5ea5826c64ead6487f08607cde3</guid>
    <atom:link href="https://ampcode.com/news/fable-5.1" rel="via" type="text/html"/>
    <pubDate>Tue, 1 Sep 2026 00:00:00 +0000</pubDate>
    <description>Claude Fable 5.1 now powers Amp&#39;s ultra mode, replacing Fable 5. It&#39;s very good at writing, very good at taking direction mid-task, and very good at working on its own. And it costs less to run. Long Tasks and Proof of Work What won us…</description>
    <content:encoded>&lt;p&gt;Claude Fable 5.1 now powers Amp&#39;s &lt;code&gt;ultra&lt;/code&gt; mode, replacing Fable 5.&lt;/p&gt;
&lt;p&gt;It&#39;s very good at writing, very good at taking direction mid-task, and very good at working on its own. And it costs less to run.&lt;/p&gt;
&lt;h3&gt;Long Tasks and Proof of Work&lt;/h3&gt;
&lt;p&gt;What won us over is how much better it got at long horizon work, at giving proof of its work, and at iterating on that proof. It runs for hours on its own, and when the proof doesn&#39;t hold up, it goes back and fixes the work, then proves it again.&lt;/p&gt;
&lt;p&gt;Some examples:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/@hamish&quot;&gt;Hamish&lt;/a&gt; told it key presses felt laggy in our &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/news/amp-on-ios-and-macos&quot;&gt;iOS app&lt;/a&gt; and asked it to find out why. Two hours later it had a side-by-side video of the old and new builds typing the same sentence on an iPhone simulator. Along the way it caught a two-pixel height difference in its own comparison, corrected it, and re-recorded. Typing latency in Safari went from 85 ms to 8 ms.&lt;/li&gt;
&lt;li&gt;&lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/@mrnugget&quot;&gt;Thorsten&lt;/a&gt; recorded his screen creating a new thread on ampcode.com and asked it to make that twice as fast, however long that may take. Fable 5.1 pulled every frame out of the recording to time each step, then found the biggest delay was waiting for the server to finish creating the thread. &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://x.com/thorstenball/status/2093396923684131324&quot;&gt;Creating a thread&lt;/a&gt; got 45% faster.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Writing&lt;/h3&gt;
&lt;p&gt;Writing is where it impressed us the most. So far we haven&#39;t been big fans of using AI for prose. Fable 5.1 changed that. The text it produces reads more like it was written by a person. It explains the idea behind a change instead of every technical detail, and draws a diagram when that&#39;s clearer than a paragraph. We ended up using it for our new &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/docs/projects&quot;&gt;docs pages&lt;/a&gt;, where it not only surprised us by writing concise prose but also by running the features on a dev server, executing them end to end, and documenting them with screenshots and demo videos.&lt;/p&gt;
&lt;h3&gt;Steering&lt;/h3&gt;
&lt;p&gt;We steer it a lot more now. Fable 5 would sometimes ignore an instruction sent mid-task and carry on with the work it already had. Fable 5.1 does both: it finishes the original task, does what you just asked, and reports on each separately. It addresses every instruction you give it, even several at once. It works great now that &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/news/steer-dont-queue&quot;&gt;Enter steers by default&lt;/a&gt;.&lt;/p&gt;
&lt;h3&gt;Cheaper&lt;/h3&gt;
&lt;p&gt;And it costs less: &lt;code&gt;ultra&lt;/code&gt; threads are about 35% cheaper than before. Cache reads are 75% cheaper than on Fable 5, and in a typical Amp thread, over 90% of tokens are cache reads.&lt;/p&gt;
&lt;h3&gt;How To Use It&lt;/h3&gt;
&lt;p&gt;&lt;code&gt;ultra&lt;/code&gt; is for the work where the outcome is clear and the path is not. Fable 5.1 is at its best there. A few habits help:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Tell it what done looks like, and how to prove it.&lt;/strong&gt; Example: &amp;quot;The sidebar stutters when scrolling through a few hundred threads. Find out why and fix it. Show me a video of scrolling before and after on the same thread list, and frame times measured in Safari, not Chrome.&amp;quot;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Steer it while it works.&lt;/strong&gt; If it&#39;s heading somewhere you don&#39;t want, say so in the moment. You can also hand it new tasks while it&#39;s busy; it addresses all of them without dropping the one it&#39;s on.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;What the Team Says&lt;/h3&gt;
&lt;blockquote&gt;
&lt;p&gt;Very impressed by Fable 5.1. It&#39;s very good at writing, it&#39;s very good at... everything really? I&#39;m in a thread where I constantly reply to 2-3 different things and it perfectly keeps them apart. It&#39;s like having two conversations at once.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;I&#39;ve also been impressed with Fable 5.1. Feels less hand-wringy than Fable did.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;In my code reviews I agree with its changes more than I agree with the previous Fable&#39;s. And I steer it a lot more, because it handles multiple requests at once.&lt;/p&gt;
&lt;/blockquote&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>Space to Talk</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-08-31-space-to-talk/</link>
    <guid isPermaLink="false">urn:aggr:item:323d322c6428aef92427ec4b31bdb08d69d6b64a</guid>
    <atom:link href="https://ampcode.com/news/space" rel="via" type="text/html"/>
    <pubDate>Mon, 31 Aug 2026 00:00:00 +0000</pubDate>
    <description>Every thread in Amp now comes with its own space to talk. Hit Enter and you&#39;re in. Turn on your camera, share your screen, and talk it over with your team while the agent works. No links to paste, no calendar invite, no other app. The call…</description>
    <content:encoded>&lt;p&gt;Every thread in Amp now comes with its own space to talk.&lt;/p&gt;
&lt;p&gt;Hit Enter and you&#39;re in. Turn on your camera, share your screen, and talk it over with your team while the agent works.&lt;/p&gt;
&lt;p&gt;No links to paste, no calendar invite, no other app. The call lives where the work lives.&lt;/p&gt;
&lt;p&gt;In the future, we see the space becoming a place to talk freely, alone or with others: brainstorm, whiteboard, talk with Puck or other agents, discuss the thread or spawn new ones... who knows?&lt;/p&gt;
&lt;p&gt;We&#39;re leaving it open. For now, it&#39;s just a space. What you do with it is up to you.&lt;/p&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>No Mailmap Required</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-08-28-no-mailmap-required/</link>
    <guid isPermaLink="false">urn:aggr:item:8599ddf09fb9e38a77d1333fe02fea2072735c18</guid>
    <atom:link href="https://ampcode.com/news/no-mailmap-required" rel="via" type="text/html"/>
    <pubDate>Fri, 28 Aug 2026 00:00:00 +0000</pubDate>
    <description>Amp can now use a Git identity that is separate from the email on your Amp account. Pick the name and verified email that should appear on commits made in orbs. You can ask Puck to set it for you: If you have not added the identity yet,…</description>
    <content:encoded>&lt;p&gt;Amp can now use a Git identity that is separate from the email on your Amp account. Pick the name and verified email that should appear on commits made in orbs.&lt;/p&gt;
&lt;p&gt;You can ask Puck to set it for you:&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://static.ampcode.com/news/git-identity-puck-20260826.png?v=3&quot; alt=&quot;Puck setting Tim Culverhouse and tim@culver.house as the personal default Git identity&quot; loading=&quot;eager&quot; decoding=&quot;async&quot; fetchpriority=&quot;high&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;p&gt;If you have not added the identity yet, Puck sends a verification link to the email address. Once you click it, Puck gets notified and can make the identity your personal default if you asked it to.&lt;/p&gt;
&lt;p&gt;You can also manage identities under &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/settings/keys#git-identities&quot;&gt;Signing Keys&lt;/a&gt;. Your personal default applies to personal projects unless you choose another identity in a project&#39;s settings. Workspace admins choose one rule for the whole workspace:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Amp&lt;/strong&gt; uses the Amp identity.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Amp Account&lt;/strong&gt; uses each member&#39;s Amp account.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;User Choice&lt;/strong&gt; lets each member choose.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;When Amp starts an orb, it sets &lt;code&gt;GIT_AUTHOR_*&lt;/code&gt; and &lt;code&gt;GIT_COMMITTER_*&lt;/code&gt; from the selected identity. If commit signing is on, Amp only signs for an email you have verified.&lt;/p&gt;
&lt;p&gt;Your Amp login can stay &lt;code&gt;tfc@ampcode.com&lt;/code&gt; while your commits use &lt;code&gt;tim@culver.house&lt;/code&gt;.&lt;/p&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>Amp on iOS &amp; macOS</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-08-28-amp-on-ios-macos/</link>
    <guid isPermaLink="false">urn:aggr:item:8ccabf66bc5a05b7b7c6f4094dfca0e97038d009</guid>
    <atom:link href="https://ampcode.com/news/amp-on-ios-and-macos" rel="via" type="text/html"/>
    <pubDate>Fri, 28 Aug 2026 00:00:00 +0000</pubDate>
    <description>Control your orbs from anywhere. Install the iOS app through TestFlight[^1], and the macOS app through direct download. Download at ampcode.com/app. It&#39;s orbin&#39; time no matter where you are.</description>
    <content:encoded>&lt;p&gt;Control your orbs from anywhere.&lt;/p&gt;
&lt;p&gt;Install the iOS app through TestFlight, and the macOS app through direct download.&lt;/p&gt;
&lt;p&gt;Download at &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/app&quot;&gt;ampcode.com/app&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;It&#39;s orbin&#39; time no matter where you are.&lt;/p&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>So Long, TUI Sidebar</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-08-27-so-long-tui-sidebar/</link>
    <guid isPermaLink="false">urn:aggr:item:4d197739695d5cac88c5cb86cedadbe645ed8c61</guid>
    <atom:link href="https://ampcode.com/news/so-long-tui-sidebar" rel="via" type="text/html"/>
    <pubDate>Thu, 27 Aug 2026 00:00:00 +0000</pubDate>
    <description>We are removing the sidebar from the Amp TUI. Why? Because orbs, runners, and cross-agent messages means that there are more threads than ever. We believe the best place to keep track of all those threads is in the Amp native and web apps,…</description>
    <content:encoded>&lt;p&gt;We are removing the sidebar from the &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/news/look-ma-no-flicker&quot;&gt;Amp TUI&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Why? Because &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/news/agents-in-orbs&quot;&gt;orbs&lt;/a&gt;, &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/news/agents-anywhere&quot;&gt;runners&lt;/a&gt;, and &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/news/from-agent-to-agent&quot;&gt;cross-agent messages&lt;/a&gt; means that there are more threads than ever. We believe the best place to keep track of all those threads is in the &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/news/agents-everywhere&quot;&gt;Amp native and web apps&lt;/a&gt;, with their more powerful sidebars.&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://static.ampcode.com/news/tui-sidebar-web-app.gif&quot; alt=&quot;The Amp web app with the sidebar open while several threads run&quot; loading=&quot;eager&quot; decoding=&quot;async&quot; fetchpriority=&quot;high&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;p&gt;The TUI is still great at what it does best: local, interactive threads in a single environment. It already comes with its own very powerful multiplexing functionality, complete with tabs, panes, and more; the humble terminal. Adding our own layer of multi-environment multiplexing on top proved to be a less-than-optimal user experience.&lt;/p&gt;
&lt;p&gt;But when you need scale, running multiple orbs in parallel, across your team, the best way to manage this complexity is in the web and native app.&lt;/p&gt;
&lt;hr /&gt;
&lt;p&gt;Perhaps some of you are asking &amp;quot;Why do you &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/news/the-coding-agent-is-dead&quot;&gt;keep&lt;/a&gt; &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/news/stick-a-fork-in-it&quot;&gt;ripping&lt;/a&gt; &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/news/slashing-custom-commands&quot;&gt;out&lt;/a&gt; the &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/news/todos-are-done&quot;&gt;stuff&lt;/a&gt; I &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/news/tab-tab-dead&quot;&gt;love&lt;/a&gt;?&amp;quot;.&lt;/p&gt;
&lt;p&gt;Because we believe that this is the best way to use Amp, and the best way to develop software with agents, and we think it&#39;s our responsibility to push you in that direction.&lt;/p&gt;
&lt;p&gt;Using orbs in the web and native app is how to get the most leverage from the most powerful models.&lt;/p&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>Projects with Multiple Repositories</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-08-27-projects-with-multiple-repositories/</link>
    <guid isPermaLink="false">urn:aggr:item:543c520b85e13ce6559b38a1f6ec389a93cc8f63</guid>
    <atom:link href="https://ampcode.com/news/multi-repo-projects" rel="via" type="text/html"/>
    <pubDate>Thu, 27 Aug 2026 00:00:00 +0000</pubDate>
    <description>Projects in Amp can now include more than one repository. Additional repositories are checked out to an adjacent directory in the orb and the agent is made aware of them. The changes panel will show the diff across all repositories in the…</description>
    <content:encoded>&lt;p&gt;Projects in Amp can now include more than one repository.&lt;/p&gt;
&lt;p&gt;Additional repositories are checked out to an adjacent directory in the orb and the agent is made aware of them. The changes panel will show the diff across all repositories in the project.&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://static.ampcode.com/news/multi-repo-diff.png&quot; alt=&quot;The Changes panel showing changes in primary and dependency repositories&quot; loading=&quot;eager&quot; decoding=&quot;async&quot; fetchpriority=&quot;high&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;p&gt;To add additional repositories, specify them when creating the project or later in project settings. You can add up to 20 additional repositories per project.&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://static.ampcode.com/news/multi-repo-project-picker.png&quot; alt=&quot;The New Project dialog with an arrow pointing to Add Additional Repositories&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;low&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;p&gt;Only the primary repository&#39;s &lt;code&gt;.agents/setup&lt;/code&gt; script runs automatically on orb setup. If an additional repository requires initialization, you should update the primary&#39;s setup script to include this, or ask an Amp agent to make this update for you.&lt;/p&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>Setup Without a Commit</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-08-25-setup-without-a-commit/</link>
    <guid isPermaLink="false">urn:aggr:item:5a4a30fa0e31b4cc9a9f530947d1762dc5e18a35</guid>
    <atom:link href="https://ampcode.com/news/setup-without-a-commit" rel="via" type="text/html"/>
    <pubDate>Tue, 25 Aug 2026 00:00:00 +0000</pubDate>
    <description>You can now store scripts to set up orbs outside of your repository. Amp can store pre-clone and pre-setup scripts in your project settings and access them when spawning an orb. The pre-clone setup script gives Amp anything it needs before…</description>
    <content:encoded>&lt;p&gt;You can now store scripts to set up orbs outside of your repository. Amp can store pre-clone and pre-setup scripts in your project settings and access them when spawning an orb.&lt;/p&gt;
&lt;p&gt;The pre-clone setup script gives Amp anything it needs before it clones the repository:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Install Git extensions that fetch files during checkout.&lt;/li&gt;
&lt;li&gt;Configure certificates for an internal Git server.&lt;/li&gt;
&lt;li&gt;Configure a network proxy needed to reach the Git server.&lt;/li&gt;
&lt;li&gt;Connect the orb to a private network with Tailscale (known issue: use &lt;code&gt;TAILSCALE_API_KEY&lt;/code&gt;, OIDC is not yet working with pre-clone scripts).&lt;/li&gt;
&lt;li&gt;Install a credential helper required by the Git server.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://static.ampcode.com/news/pre-clone-puck-working-final-cropped-20260825.png&quot; alt=&quot;Puck working on a request to set up a pre-clone script that installs Git LFS&quot; loading=&quot;eager&quot; decoding=&quot;async&quot; fetchpriority=&quot;high&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;p&gt;The pre-setup script lets you work with orbs when you aren&#39;t ready to commit setup files to the repository. Amp agents and Puck can access the scripts and set them for you. Give Puck this prompt, or start a thread for the project with this prompt:&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://static.ampcode.com/news/pre-setup-amp-thread-20260826.png&quot; alt=&quot;An Amp thread starting setup without committing files to the repository&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;low&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;p&gt;Amp will then inspect the repository and decide which work belongs before or after the clone. It will write and test the scripts, then save them in the project settings.&lt;/p&gt;
&lt;p&gt;The scripts are also available on the project settings page, where you can review or edit them by hand.&lt;/p&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>Friendly URLs for Sharing Orbs</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-08-23-friendly-urls-for-sharing-orbs/</link>
    <guid isPermaLink="false">urn:aggr:item:6be5411475a0fc051be11accf221f34fb1905282</guid>
    <atom:link href="https://ampcode.com/news/friendly-urls-for-sharing-orbs" rel="via" type="text/html"/>
    <pubDate>Sun, 23 Aug 2026 00:00:00 +0000</pubDate>
    <description>We use orb portals all the time to share what we&#39;re builing and get feedback. But the URLs were ugly and auto-generated. So, we made them nice and friendly. Now, instead of sharing t-01a0095e-9568-whatever-p1234.onamp.dev, you can share…</description>
    <content:encoded>&lt;p&gt;We use &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/manual/orbs#portals&quot;&gt;orb portals&lt;/a&gt; all the time to share what we&#39;re builing and get feedback.&lt;/p&gt;
&lt;p&gt;But the URLs were ugly and auto-generated. So, we made them nice and friendly. Now, instead of sharing &lt;code&gt;t-01a0095e-9568-whatever-p1234.onamp.dev&lt;/code&gt;, you can share &lt;code&gt;foo--yourname.onamp.dev&lt;/code&gt; or even use your own domain like &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://park.mixfox.org/&quot;&gt;park.mixfox.org&lt;/a&gt; (which is on an orb, basically).&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://static.ampcode.com/news/friendly-orb-slack-preview-20260823.png&quot; alt=&quot;Sharing an orb portal in Slack with a rich preview and an Open Portal button&quot; loading=&quot;eager&quot; decoding=&quot;async&quot; fetchpriority=&quot;high&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;p&gt;This is especially nice when a portal is a long-lived application, not just a preview of changes to your local dev server. And that&#39;s increasingly how teams are using portals.&lt;/p&gt;
&lt;p&gt;Click the in the Portal tab to set the hostname, or ask Amp to do it for you in an orb. You can set up a &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/settings/domains&quot;&gt;personal custom domain&lt;/a&gt; or a &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/workspace/domains&quot;&gt;workspace custom domain&lt;/a&gt;, or just customize the hostname prefix before &lt;code&gt;--yourname.onamp.dev&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://static.ampcode.com/news/friendly-orb-hostname-dialog-20260823.png?v=2&quot; alt=&quot;The Portal Hostname dialog with a friendly onamp.dev hostname&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;low&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>Explain Usage</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-08-21-explain-usage/</link>
    <guid isPermaLink="false">urn:aggr:item:98309843d2e45e3dd70e82939dfc476e8577195e</guid>
    <atom:link href="https://ampcode.com/news/explain-usage" rel="via" type="text/html"/>
    <pubDate>Fri, 21 Aug 2026 00:00:00 +0000</pubDate>
    <description>You can now ask Puck about your token, credit, and orb usage. Try questions like: Which threads used the most tokens today? Orb time? Which models did I use the most in my 5 most expensive threads today? In my monorepo, based on my latest…</description>
    <content:encoded>&lt;p&gt;You can now &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/puck&quot;&gt;ask Puck&lt;/a&gt; about your token, credit, and orb usage.&lt;/p&gt;
&lt;p&gt;Try questions like:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Which threads used the most tokens today? Orb time?&lt;/li&gt;
&lt;li&gt;Which models did I use the most in my 5 most expensive threads today?&lt;/li&gt;
&lt;li&gt;In my monorepo, based on my latest threads, can I use a smaller orb size or would that make stuff too slow?&lt;/li&gt;
&lt;li&gt;Is it orbin&#39; time? To the millisecond, how much orbin&#39; time have I had in my threads from the last 3 hours?&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Puck reads your &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/settings/usage&quot;&gt;personal usage&lt;/a&gt; and per-thread usage to answer these questions for you. Just ask Puck, or click &lt;strong&gt;Explain Usage&lt;/strong&gt; on those pages.&lt;/p&gt;
&lt;p&gt;You can also run &lt;code&gt;amp usage --details&lt;/code&gt; and &lt;code&gt;amp threads usage &amp;lt;thread-id&amp;gt; --details&lt;/code&gt; to get the data yourself, or to make a cool visualization of your Amp usage in an &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/manual/orbs#portals&quot;&gt;orb portal&lt;/a&gt;.&lt;/p&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>Pass the Orb to the Left Hand Side</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-08-19-pass-the-orb-to-the-left-hand-side/</link>
    <guid isPermaLink="false">urn:aggr:item:7c737a4473e379e542dacd2a0c763f0b35cfc148</guid>
    <atom:link href="https://ampcode.com/news/pass-the-orb-to-the-left-hand-side" rel="via" type="text/html"/>
    <pubDate>Wed, 19 Aug 2026 00:00:00 +0000</pubDate>
    <description>You can now bring your team into your orb. Use @ to tag members of your team, and they&#39;ll be able to view, drive, and send chat messages to the thread. We&#39;ve been having a lot of fun with this feature recently. Here are a few examples: ← 1…</description>
    <content:encoded>&lt;p&gt;You can now bring your team into your orb.&lt;/p&gt;
&lt;p&gt;Use &lt;code&gt;@&lt;/code&gt; to tag members of your team, and they&#39;ll be able to view, drive, and send chat messages to the thread.&lt;/p&gt;
&lt;p&gt;We&#39;ve been having a lot of fun with this feature recently. Here are a few examples:&lt;/p&gt;
&lt;p&gt;1 / 9&lt;/p&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>MCP in Orbs</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-08-19-mcp-in-orbs/</link>
    <guid isPermaLink="false">urn:aggr:item:66c6d75917ba3fb2b9037504646854a884354bc7</guid>
    <atom:link href="https://ampcode.com/news/mcp-in-orbs" rel="via" type="text/html"/>
    <pubDate>Wed, 19 Aug 2026 00:00:00 +0000</pubDate>
    <description>You can now connect remote MCP servers on ampcode.com and use them in orbs, the TUI, and with Puck. To add an MCP server: Visit ampcode.com/settings/mcp-servers, Select a pre-configured server or click &quot;Add MCP Server&quot; Log into the server…</description>
    <content:encoded>&lt;p&gt;You can now connect remote MCP servers on &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/settings/mcp-servers&quot;&gt;ampcode.com&lt;/a&gt; and use them in orbs, the TUI, and with Puck.&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://static.ampcode.com/news/mcp-settings.png&quot; alt=&quot;The MCP settings screen showing preconfigured MCP servers&quot; loading=&quot;eager&quot; decoding=&quot;async&quot; fetchpriority=&quot;high&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;p&gt;To add an MCP server:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Visit &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/settings/mcp-servers&quot;&gt;ampcode.com/settings/mcp-servers&lt;/a&gt;,&lt;/li&gt;
&lt;li&gt;Select a pre-configured server or click &amp;quot;Add MCP Server&amp;quot;&lt;/li&gt;
&lt;li&gt;Log into the server using OAuth,&lt;/li&gt;
&lt;li&gt;Start a thread in an orb, the TUI, a runner, or talk to Puck:&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Amp supports connecting hosted MCP servers using Streamable HTTP with OAuth or Bearer tokens, personal and workspace configuration of MCP servers, and the use of MCP-provided tools.&lt;/p&gt;
&lt;p&gt;MCP Apps, Resources, and Prompts are not supported.&lt;/p&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>Talk to Puck</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-08-18-talk-to-puck/</link>
    <guid isPermaLink="false">urn:aggr:item:65558579e68277a81193b9d901729f0e0fcbd3b1</guid>
    <atom:link href="https://ampcode.com/news/talk-to-puck" rel="via" type="text/html"/>
    <pubDate>Tue, 18 Aug 2026 00:00:00 +0000</pubDate>
    <description>You can now talk with Puck in realtime: Realtime chat with Puck is powered by gpt-realtime-2.1. It delegates work to the Puck agent you already know, powered by GPT-5.6 Sol. Once the agent responds, gpt-realtime-2.1 summarizes the answer…</description>
    <content:encoded>&lt;p&gt;You can now talk with &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/news/meet-puck&quot;&gt;Puck&lt;/a&gt; in realtime:&lt;/p&gt;
&lt;p&gt;Realtime chat with Puck is powered by &lt;code&gt;gpt-realtime-2.1&lt;/code&gt;. It delegates work to the Puck agent you already know, powered by &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/modes&quot;&gt;GPT-5.6 Sol&lt;/a&gt;. Once the agent responds, &lt;code&gt;gpt-realtime-2.1&lt;/code&gt; summarizes the answer out loud while the full response appears in the thread.&lt;/p&gt;
&lt;p&gt;You can now have a proper back-and-forth conversation with Puck without waiting for text responses to stream in. Just talk. That makes it easier to coordinate parallel work, get progress updates, send follow-up instructions, or talk through big ideas without typing, whether you are sitting in front of your computer or on the go.&lt;/p&gt;
&lt;p&gt;Here are some conversation starters we have used:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&amp;quot;Check my active threads and tell me which ones need input.&amp;quot;&lt;/li&gt;
&lt;li&gt;&amp;quot;Review the messages in the #issues Slack channel where I am tagged. Read them to me one by one so we can talk through how to fix each one.&amp;quot;&lt;/li&gt;
&lt;li&gt;&amp;quot;Start an agent to fix the CI failure, tell me what caused it, and keep me updated on the fix.&amp;quot;&lt;/li&gt;
&lt;li&gt;&amp;quot;The executor lease reconciliation pipeline broke. Tell me about the changes made to it yesterday.&amp;quot;&lt;/li&gt;
&lt;/ul&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>Education Discount</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-08-18-education-discount/</link>
    <guid isPermaLink="false">urn:aggr:item:48bf009f68c5032da2a658a22c10494c207000e2</guid>
    <atom:link href="https://ampcode.com/news/edu-discount" rel="via" type="text/html"/>
    <pubDate>Tue, 18 Aug 2026 00:00:00 +0000</pubDate>
    <description>Students and teachers can now subscribe to Amp for $10/month, half the usual price. What do you get for $10? Quite a lot! You get to use the best frontier agent. You get orbs, our remote machines that let you run agents from anywhere…</description>
    <content:encoded>&lt;p&gt;Students and teachers can now subscribe to Amp for $10/month, half the usual price.&lt;/p&gt;
&lt;p&gt;What do you get for $10? Quite a lot!&lt;/p&gt;
&lt;p&gt;You get to use the best frontier agent. You get &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/what-are-orbs&quot;&gt;orbs&lt;/a&gt;, our remote machines that let you run agents from anywhere without supervision.&lt;/p&gt;
&lt;p&gt;You get code hosting for unlimited public/private repositories.&lt;/p&gt;
&lt;p&gt;And you get to use great models, through &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/settings/model-routing?add=chatgpt&quot;&gt;linking your ChatGPT sub&lt;/a&gt; for GPT-6/GPT-5.6 or 𝕏 Premium+/SuperGrok subscription for Grok 4.6. Plus $10 in credits each month for use on any other model.&lt;/p&gt;
&lt;p&gt;Get it at &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/edu&quot;&gt;ampcode.com/edu&lt;/a&gt;.&lt;/p&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>Global Plugins and Skills</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-08-11-global-plugins-and-skills/</link>
    <guid isPermaLink="false">urn:aggr:item:2827aff26b3abc5045b8b519908f5be24fa49b19</guid>
    <atom:link href="https://ampcode.com/news/global-plugins-and-skills" rel="via" type="text/html"/>
    <pubDate>Tue, 11 Aug 2026 00:00:00 +0000</pubDate>
    <description>With so much work happening in orbs there needed to be a new place to store Amp plugins and skills. So we added global plugins and skills. They&#39;re Amp-hosted, built for agents, and work everywhere Amp runs. You can now tell Amp to: &quot;Create…</description>
    <content:encoded>&lt;p&gt;With so much work happening in &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/manual/orbs&quot;&gt;orbs&lt;/a&gt; there needed to be a new place to store Amp plugins and skills. So we added &lt;strong&gt;global plugins and skills&lt;/strong&gt;. They&#39;re Amp-hosted, built for agents, and work everywhere Amp runs.&lt;/p&gt;
&lt;p&gt;You can now tell Amp to:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&amp;quot;Create a personal plugin that runs our formatter on every file the agent edits.&amp;quot;&lt;/li&gt;
&lt;li&gt;&amp;quot;Import the browser-testing skill from this repo into my personal skills so I can use it on all my projects.&amp;quot;&lt;/li&gt;
&lt;li&gt;&amp;quot;Does anyone on my team share a skill for writing release notes?&amp;quot;&lt;/li&gt;
&lt;li&gt;&amp;quot;Check if any of my imported plugins are out of date.&amp;quot;&lt;/li&gt;
&lt;li&gt;If you&#39;re a workspace admin: &amp;quot;Copy Thorsten&#39;s plain-writing plugin into our workspace plugins.&amp;quot;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;You can find them in your &lt;strong&gt;User Settings&lt;/strong&gt; and &lt;strong&gt;Workspace Settings&lt;/strong&gt;:&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://static.ampcode.com/news/global-plugins-personal.png&quot; alt=&quot;Personal plugins settings showing plugins with their source&quot; loading=&quot;eager&quot; decoding=&quot;async&quot; fetchpriority=&quot;high&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://static.ampcode.com/news/global-skills-workspace.png&quot; alt=&quot;Workspace skills settings showing shared skills&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;low&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;h2&gt;Personal vs. Workspace&lt;/h2&gt;
&lt;p&gt;Personal plugins and skills are good place to experiment and try things out. You can have your agent build something and reload the plugins live within the same thread.&lt;/p&gt;
&lt;p&gt;Workspace plugins and skills are pushable by workspace admins, and are loaded by default for everyone, so we recommend only publishing there once you&#39;ve tested out something yourself. And if you want to make big changes to an existing workspace plugin, import it into your personal one, give it a test, and then publish it back up.&lt;/p&gt;
&lt;h2&gt;Remix and Share&lt;/h2&gt;
&lt;p&gt;Personal plugin and skills are much more than a replacement for &lt;code&gt;~/.config&lt;/code&gt;—they can be shared with your workspace too, letting people discover, import and remix them.&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://static.ampcode.com/news/global-skills-share.png&quot; alt=&quot;Share dialog with Private and Workspace visibility&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;low&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://static.ampcode.com/news/global-plugin-page.png&quot; alt=&quot;A shared plugin&amp;#39;s page showing its source files and where it was imported from&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;low&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;p&gt;If there&#39;s upstream updates you&#39;d like to pull into your version, or just update your version, you can run &lt;code&gt;amp skill update &amp;lt;name&amp;gt;&lt;/code&gt;, &lt;code&gt;amp plugins update &amp;lt;name&amp;gt;&lt;/code&gt;, or just ask Amp:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&amp;quot;Update the browser-testing skill to the latest version.&amp;quot;&lt;/li&gt;
&lt;li&gt;&amp;quot;Check if any of my imported skills are out of date.&amp;quot;&lt;/li&gt;
&lt;/ul&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>A Dial for You</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-08-10-a-dial-for-you/</link>
    <guid isPermaLink="false">urn:aggr:item:1a85d49817f0f6d2c3ad947cbc3cfca3b2d6187f</guid>
    <atom:link href="https://ampcode.com/news/a-dial-for-you" rel="via" type="text/html"/>
    <pubDate>Mon, 10 Aug 2026 00:00:00 +0000</pubDate>
    <description>We changed the Dial. Link a ChatGPT subscription and low, medium, and high only use OpenAI models: as the main agent, as the oracle, as the thread reader, as code review. Every model behind those modes is an OpenAI model, billed to your…</description>
    <content:encoded>&lt;p&gt;We changed &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/news/the-dial&quot;&gt;the Dial&lt;/a&gt;. &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/settings/model-routing?add=chatgpt&quot;&gt;Link a ChatGPT subscription&lt;/a&gt; and &lt;code&gt;low&lt;/code&gt;, &lt;code&gt;medium&lt;/code&gt;, and &lt;code&gt;high&lt;/code&gt; only use OpenAI models: as the main agent, as the oracle, as the thread reader, as code review. Every model behind those modes is an OpenAI model, billed to your subscription.&lt;/p&gt;
&lt;p&gt;Before this change, you&#39;d still pay for tokens with a subscription linked, because parts of the work ran on other models: &lt;code&gt;low&lt;/code&gt; and the thread reader on GLM-5.2, the &lt;code&gt;high&lt;/code&gt; oracle on Claude Fable, code review on Haiku — all billed to Amp credits. That confused people, and we get why.&lt;/p&gt;
&lt;p&gt;With a subscription connected:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;low&lt;/code&gt; runs GPT-5.6 Terra instead of GLM-5.2.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;medium&lt;/code&gt; runs GPT-5.6 Sol, as before.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;high&lt;/code&gt; runs GPT-5.6 Sol as both agent and oracle. The oracle used to be Fable.&lt;/li&gt;
&lt;li&gt;The thread reader and code review move to GPT-5.6 Terra.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://static.ampcode.com/news/chatgpt-green-light.png?v=7&quot; alt=&quot;The mode picker with the dial on medium, showing GPT-5.6 Sol as agent and oracle and a green ChatGPT subscription LED&quot; loading=&quot;eager&quot; decoding=&quot;async&quot; fetchpriority=&quot;high&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;p&gt;Doesn&#39;t this make the modes worse? Barely, and less every month. &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/news/who-cares-about-the-model&quot;&gt;The frontier models have converged&lt;/a&gt;: any of them gets you to a good result with a good harness. We swapped the default model for most users overnight and nobody complained. So the modes stay at the frontier, and the tokens come out of a subscription you already pay for.&lt;/p&gt;
&lt;p&gt;&lt;code&gt;high&lt;/code&gt; also drops its credit minimum when your subscription is active. There&#39;s no Fable call left to pay for.&lt;/p&gt;
&lt;p&gt;&lt;code&gt;ultra&lt;/code&gt; doesn&#39;t change. It runs Claude Fable on credits, because &lt;code&gt;ultra&lt;/code&gt; is for the tasks where you want the strongest model, whatever it costs.&lt;/p&gt;
&lt;p&gt;If you don&#39;t have a subscription, nothing changes. The modes run as before, on Amp credits.&lt;/p&gt;
&lt;p&gt;&lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/settings/model-routing?add=chatgpt&quot;&gt;Link your subscription&lt;/a&gt; and turn the dial.&lt;/p&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>Size the Orbs of Production!</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-08-07-size-the-orbs-of-production/</link>
    <guid isPermaLink="false">urn:aggr:item:89b80c1a74b2bf74fb899ab802432c0e51d653a5</guid>
    <atom:link href="https://ampcode.com/news/size-the-orbs-of-production" rel="via" type="text/html"/>
    <pubDate>Fri, 7 Aug 2026 00:00:00 +0000</pubDate>
    <description>People are using a lot of orbs. We love to see that. We&#39;ve shipped a lot of things so that Amp subscriptions keep covering the whole month of orb usage for almost everyone, even as orb usage grows quickly. Way back on July 27, we cut orb…</description>
    <content:encoded>&lt;p&gt;People are using a lot of &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/manual/orbs&quot;&gt;orbs&lt;/a&gt;. We love to see that. We&#39;ve shipped a lot of things so that &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/pricing&quot;&gt;Amp subscriptions&lt;/a&gt; keep covering the whole month of orb usage for almost everyone, even as orb usage grows quickly.&lt;/p&gt;
&lt;p&gt;Way back on July 27, we &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://x.com/sqs/status/2081807392040452225&quot;&gt;cut orb prices by 20% for everyone&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;This week, we shipped a lot more improvements.&lt;/p&gt;
&lt;p&gt;We added a new &lt;code&gt;a1.medium&lt;/code&gt; size with 4 CPUs and 8 GB of memory. It is 50% cheaper and a better fit for most projects than the previous &lt;code&gt;a0.medium&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;Orbs now auto-pause after 5 minutes of inactivity, down from 15 minutes.&lt;/p&gt;
&lt;p&gt;We&#39;ve sped up orb startup time considerably, especially when another team member has recently created an orb in the same Amp project.&lt;/p&gt;
&lt;p&gt;You can now choose which orb size to use per-thread, so you can pick a smaller default to save money but go big for especially resource-intensive work.&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://static.ampcode.com/news/size-the-orbs-of-production-dark.png?v=2&quot; alt=&quot;The new thread dialog with the five a1 orb sizes&quot; loading=&quot;eager&quot; decoding=&quot;async&quot; fetchpriority=&quot;high&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;p&gt;When starting new orb threads from the Amp CLI with &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/manual/orbs#amp-ox&quot;&gt;&lt;code&gt;amp -ox &#39;...&#39;&lt;/code&gt;&lt;/a&gt;, the new flag &lt;code&gt;--orb-size &amp;lt;size&amp;gt;&lt;/code&gt; lets you specify which orb size to use (instead of the project&#39;s default).&lt;/p&gt;
&lt;p&gt;When asking the agent to create other threads, you can now tell it to use smaller (or larger) orbs, which lets you use smaller orbs for simpler fan-out tasks on projects.&lt;/p&gt;
&lt;p&gt;&lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/manual/orbs#pricing&quot;&gt;Prices for orbs&lt;/a&gt; have gone down or stayed the same at every level and for every compute/memory combination. The new set of orb sizes is:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;a1.tiny&lt;/code&gt;: 1 CPU · 2 GB memory · $0.08/hour&lt;/li&gt;
&lt;li&gt;&lt;code&gt;a1.small&lt;/code&gt;: 2 CPUs · 4 GB memory · $0.17/hour&lt;/li&gt;
&lt;li&gt;&lt;code&gt;a1.medium&lt;/code&gt;: 4 CPUs · 8 GB memory · $0.33/hour&lt;/li&gt;
&lt;li&gt;&lt;code&gt;a1.large&lt;/code&gt;: 8 CPUs · 16 GB memory · $0.66/hour&lt;/li&gt;
&lt;li&gt;&lt;code&gt;a1.xxlarge&lt;/code&gt;: 16 CPUs · 32 GB memory · $1.32/hour&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;We&#39;ve automatically upgraded projects to the equivalent new orb sizes. If you want to use a different orb size, you can update your projects&#39; settings on the web, or ask Amp to do so using the &lt;code&gt;amp projects&lt;/code&gt; subcommands.&lt;/p&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>Portals into Orbs</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-08-06-portals-into-orbs/</link>
    <guid isPermaLink="false">urn:aggr:item:1c31946027856df952bd12a4847b610b9b7a584c</guid>
    <atom:link href="https://ampcode.com/news/portals" rel="via" type="text/html"/>
    <pubDate>Thu, 6 Aug 2026 00:00:00 +0000</pubDate>
    <description>For remote development in orbs to be better than local dev, you need to be able to easily try out the agent&#39;s changes in your app, with live reloading. No VPN, no port juggling, and no waiting for preview deployments. Today, we&#39;re shipping…</description>
    <content:encoded>&lt;p&gt;For remote development in &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/manual/orbs&quot;&gt;orbs&lt;/a&gt; to be better than local dev, you need to be able to easily try out the agent&#39;s changes in your app, with live reloading. No VPN, no port juggling, and no waiting for preview deployments.&lt;/p&gt;
&lt;p&gt;Today, we&#39;re shipping &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/manual/orbs#portals&quot;&gt;portals&lt;/a&gt;, which let you access anything running in an orb that listens on a port and speaks HTTP.&lt;/p&gt;
&lt;p&gt;All you need to do is ask Amp: &lt;em&gt;show me in a portal&lt;/em&gt;. Or words to that effect.&lt;/p&gt;
&lt;p&gt;Obviously, you can use portals to try out the features or fixes made by the agent:&lt;/p&gt;
&lt;p&gt;You can also annotate and comment on anything:&lt;/p&gt;
&lt;p&gt;But you can also have the agent build ad-hoc web apps for you to debug or understand the system:&lt;/p&gt;
&lt;p&gt;Portals are accessible to anyone with access to the thread. They go to sleep and wake along with your orb. Use the gear icon in the Portal address bar to change the hostname or check who has access.&lt;/p&gt;
&lt;p&gt;Make a thread &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/news/multiplayer&quot;&gt;multiplayer&lt;/a&gt; with on the web, and your team members can &lt;em&gt;also&lt;/em&gt; make changes and see them live in the portal.&lt;/p&gt;
&lt;h2&gt;Services&lt;/h2&gt;
&lt;p&gt;When you say &lt;em&gt;show me in a portal&lt;/em&gt;, the agent knows to create or look for a &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/manual/orbs#portals&quot;&gt;&lt;code&gt;.amp/services.yaml&lt;/code&gt;&lt;/a&gt; file and then run &lt;code&gt;amp orb services &amp;lt;ensure|start&amp;gt;&lt;/code&gt; to run your app and expose it via HTTPS. Your app needs to respect the &lt;code&gt;PORT&lt;/code&gt; and &lt;code&gt;PUBLIC_URL&lt;/code&gt; env vars it&#39;s given.&lt;/p&gt;
&lt;p&gt;Amp will handle all of this for you; agents are really good at that kind of stuff. Commit the &lt;code&gt;.amp/services.yaml&lt;/code&gt; file and Amp&#39;s changes to your dev server config so it&#39;s faster next time.&lt;/p&gt;
&lt;h2&gt;What about my app&#39;s sign-in flow? What about ...?&lt;/h2&gt;
&lt;p&gt;You don&#39;t want to waste time signing into your dev server each time. We recommend adding a way for humans and agents to bypass sign-in flows (such as username/password or OAuth) in your dev server, by visiting a URL like:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;&lt;span class=&quot;code-snippet&quot;&gt;https://localhost:2000/__dev/log-me-in/{email}?returnTo={path}
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;We&#39;ve documented this pattern and more in the &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/manual/orbs#portals&quot;&gt;portals documentation&lt;/a&gt;. Also see &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/notes/putting-an-agent-in-an-orb&quot;&gt;Putting an Agent in an Orb&lt;/a&gt; for more about how we&#39;re using portals. Tell us how else you and your agents are using portals!&lt;/p&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>Attach Anything</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-08-04-attach-anything/</link>
    <guid isPermaLink="false">urn:aggr:item:d050f9abe68a89742346dfd0ec113ee47da059ff</guid>
    <atom:link href="https://ampcode.com/news/attach-anything" rel="via" type="text/html"/>
    <pubDate>Tue, 4 Aug 2026 00:00:00 +0000</pubDate>
    <description>You can now upload any file to your orbs for Amp to see and use: videos, logs, PDFs, spreadsheets, datasets, and more. What new stuff can you do? Here&#39;s what we&#39;ve found useful so far: Screen-record your app and ask Amp to fix or improve…</description>
    <content:encoded>&lt;p&gt;You can now upload any file to your &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/manual/orbs&quot;&gt;orbs&lt;/a&gt; for Amp to see and use: videos, logs, PDFs, spreadsheets, datasets, and more.&lt;/p&gt;
&lt;p&gt;What new stuff can you do? Here&#39;s what we&#39;ve found useful so far:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Screen-record your app and ask Amp to fix or improve what it sees.&lt;/li&gt;
&lt;li&gt;Debug issues from log files.&lt;/li&gt;
&lt;li&gt;Turn presentations and spreadsheets into interactive websites.&lt;/li&gt;
&lt;li&gt;Generate videos and CAD files from media inputs.&lt;/li&gt;
&lt;li&gt;Transcribe video and audio.&lt;/li&gt;
&lt;/ul&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>Who Cares About the Model?</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-07-29-who-cares-about-the-model/</link>
    <guid isPermaLink="false">urn:aggr:item:83fc48e0740dc7a139e529a123ec51b863ee42c3</guid>
    <atom:link href="https://ampcode.com/news/who-cares-about-the-model" rel="via" type="text/html"/>
    <pubDate>Wed, 29 Jul 2026 00:00:00 +0000</pubDate>
    <description>Two weeks ago we shipped the Dial and quietly did something that&#39;s supposed to be traumatic: we changed the default model. Before the Dial, Amp&#39;s default mode was smart, running Claude Opus 4.8 and carrying more than half of all new…</description>
    <content:encoded>&lt;p&gt;Two weeks ago &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/news/the-dial&quot;&gt;we shipped the Dial&lt;/a&gt; and quietly did something that&#39;s supposed to be traumatic: we changed the default model.&lt;/p&gt;
&lt;p&gt;Before the Dial, Amp&#39;s default mode was &lt;code&gt;smart&lt;/code&gt;, running Claude Opus 4.8 and carrying more than half of all new threads. The Dial made &lt;code&gt;medium&lt;/code&gt; the default, and &lt;code&gt;medium&lt;/code&gt; runs GPT-5.6 Sol.&lt;/p&gt;
&lt;p&gt;Most Amp users switched from Anthropic to OpenAI overnight.&lt;/p&gt;
&lt;p&gt;We braced for the outcry. Every model swap in every coding tool comes with one. We prepared migration docs, packaged the old modes as &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/modes&quot;&gt;installable plugins&lt;/a&gt;, and waited.&lt;/p&gt;
&lt;p&gt;Nothing happened. Not a single complaint.&lt;/p&gt;
&lt;p&gt;Here&#39;s what the switch looked like in production:&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://static.ampcode.com/news/who-cares-about-the-model-mode-share.svg&quot; alt=&quot;Stacked area chart of new threads by agent mode, June 29 to July 26. Smart (Opus 4.8) holds around 55% until July 9, when the Dial ships, then collapses to near zero within days as medium (GPT-5.6) takes over.&quot; loading=&quot;eager&quot; decoding=&quot;async&quot; fetchpriority=&quot;high&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;p&gt;The day before the Dial shipped, &lt;code&gt;smart&lt;/code&gt; carried 55% of new threads. A week later: zero. Last week, the four Dial modes carried 93% of all new threads, and &lt;code&gt;medium&lt;/code&gt; alone carried two-thirds. Of the users on the Dial, 69% never set it to anything but &lt;code&gt;medium&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;And the Amp plugins we shipped to bring the old modes back — exact prompts, exact models, one command to get &lt;code&gt;smart&lt;/code&gt; again? Almost nobody installed them.&lt;/p&gt;
&lt;h2&gt;What This Tells Us&lt;/h2&gt;
&lt;p&gt;The differences between frontier models are now small. Small enough that for one engineer on one task, switching models won&#39;t visibly change the result.&lt;/p&gt;
&lt;p&gt;But they still matter to us, here at Amp: across every thread on every tier, small differences compound, so we keep benchmarking and swapping models. That&#39;s the trade. The default is good because someone is paid to care about it, and it doesn&#39;t have to be you.&lt;/p&gt;
&lt;p&gt;What does change your output are three things, none of which is a model: how hard the task is, what context you put in, and how closely you review what comes out. All three have more impact on the outcome than whether you use this or that latest frontier model.&lt;/p&gt;
&lt;p&gt;The Dial covers the first one: how hard the task is. You tell it how hard the task is and the corresponding setting on the Dial uses whichever model wins it right now, re-tested constantly. You know your tasks, we know the models.&lt;/p&gt;
&lt;p&gt;And for the other two — the context and the review — the rest of Amp lets you do the best job with that.&lt;/p&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>Banking on the Frontier</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-07-29-banking-on-the-frontier/</link>
    <guid isPermaLink="false">urn:aggr:item:3adfa0539e3e02970c9b415a61e52742783dccdb</guid>
    <atom:link href="https://ampcode.com/news/amp-labs-westpac" rel="via" type="text/html"/>
    <pubDate>Wed, 29 Jul 2026 00:00:00 +0000</pubDate>
    <description>Amp Labs has partnered with Westpac, one of Australia&#39;s oldest and most respected companies, a fixture of Australian business for more than two centuries, to transform how the bank builds and delivers technology. Amp Labs operates on the…</description>
    <content:encoded>&lt;p&gt;&lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://amplabs.com&quot;&gt;Amp Labs&lt;/a&gt; has partnered with &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://www.westpac.com.au&quot;&gt;Westpac&lt;/a&gt;, one of Australia&#39;s oldest and most respected companies, a fixture of Australian business for more than two centuries, to transform how the bank builds and delivers technology.&lt;/p&gt;
&lt;p&gt;Amp Labs operates on the thesis that the biggest impact comes from working with carefully selected customers with deep mutual trust and a shared ambition to explore the frontier together.&lt;/p&gt;
&lt;p&gt;The frontier isn&#39;t just the models and the agent, it&#39;s putting them to work on real enterprise problems, like migrating and modernizing data systems that millions of people rely on every day. Being on the front lines and doing the work inside these companies is how we keep Amp on the frontier for everyone.&lt;/p&gt;
&lt;p&gt;We are building a team to work side-by-side with Westpac engineers, on site in Sydney.&lt;/p&gt;
&lt;h2&gt;The Founding Team&lt;/h2&gt;
&lt;h2&gt;Join Us&lt;/h2&gt;
&lt;p&gt;We&#39;re hiring. If you are Sydney-based and want to work on the frontier inside Australia&#39;s first company: &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;mailto:join@amplabs.com&quot;&gt;join@amplabs.com&lt;/a&gt;.&lt;/p&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>Event Driven Orbs</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-07-23-event-driven-orbs/</link>
    <guid isPermaLink="false">urn:aggr:item:a16f84e309c67271c116139fbe1ee9122f467610</guid>
    <atom:link href="https://ampcode.com/news/event-driven-orbs" rel="via" type="text/html"/>
    <pubDate>Thu, 23 Jul 2026 00:00:00 +0000</pubDate>
    <description>Amp&#39;s orbs can now receive requests and react to events outside Amp. That means an orb can wake up when CI fails on GitHub, when someone opens a Linear issue, when a monitor raises an alert, or when an event arrives from Discord. If it can…</description>
    <content:encoded>&lt;p&gt;Amp&#39;s orbs can now receive requests and react to events outside Amp.&lt;/p&gt;
&lt;p&gt;That means an orb can wake up when CI fails on GitHub, when someone opens a Linear issue, when a monitor raises an alert, or when an event arrives from Discord. If it can send an HTTP request, it can wake an orb.&lt;/p&gt;
&lt;h2&gt;More Ways to Wake an Orb&lt;/h2&gt;
&lt;p&gt;GitHub issues are just one example. You can use the same pattern to:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Investigate every CI failure on &lt;code&gt;main&lt;/code&gt; and post the findings to Slack.&lt;/li&gt;
&lt;li&gt;Watch for new releases of your dependencies, then review the changes and open an upgrade PR.&lt;/li&gt;
&lt;li&gt;Start a fresh thread when someone opens a Linear issue, then comment with a fix or report.&lt;/li&gt;
&lt;li&gt;Turn a bug report from Discord into a reproduction and pull request.&lt;/li&gt;
&lt;li&gt;Resume a rollout when a deployment or security scan reports back.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The event decides when the orb wakes up. You decide what it does next.&lt;/p&gt;
&lt;h2&gt;From a GitHub Event to an Orb&lt;/h2&gt;
&lt;p&gt;Here is the whole setup. Start a thread in an orb for your repository and tell Amp which events to watch and what to do with them:&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://ampcode.com/news/webhook-automations-github-prompt.png&quot; alt=&quot;Prompt asking Amp to monitor GitHub issues and pull requests with a webhook&quot; loading=&quot;eager&quot; decoding=&quot;async&quot; fetchpriority=&quot;high&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;p&gt;Amp turns that request into a project-specific plugin. It scopes the listener to the repository and events you asked for, verifies GitHub&#39;s signature, deduplicates deliveries, and starts a read-only orb thread with trusted event metadata.&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://ampcode.com/news/webhook-automations-plugin-plan.png&quot; alt=&quot;Amp describing the GitHub webhook plugin it will build&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;low&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;p&gt;Then Amp loads the plugin and registers its durable endpoint:&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://ampcode.com/news/webhook-automations-plugin-loaded.png&quot; alt=&quot;Amp registering the plugin&amp;#39;s durable webhook endpoint&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;low&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;p&gt;If the orb&#39;s GitHub token can administer repository webhooks, Amp connects the endpoint for you. In this case it could not, so Amp gave us one manual step without printing the private URL or signing secret into the thread:&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://ampcode.com/news/webhook-automations-github-setup.png&quot; alt=&quot;Amp explaining the manual GitHub webhook configuration step&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;low&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;h2&gt;A Wild Issue Appears&lt;/h2&gt;
&lt;p&gt;Once the webhook is active, someone opens issue #57:&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://ampcode.com/news/webhook-automations-github-issue.png&quot; alt=&quot;GitHub issue 57 reporting a typo in a completion description&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;low&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;p&gt;GitHub sends the signed event to Amp. Amp verifies it and starts a fresh orb thread with the trusted repository, event, issue, and actor metadata. The issue itself remains untrusted input, not agent instructions:&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://ampcode.com/news/webhook-automations-spawned-thread.png&quot; alt=&quot;A new Amp thread created from a verified GitHub issue webhook&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;low&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;p&gt;The new thread inspects the current issue and relevant code, then reports what it found:&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://ampcode.com/news/webhook-automations-investigation-report.png&quot; alt=&quot;Amp report confirming issue 57 as a low-impact UI typo&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;low&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;p&gt;The typo is real, appears once, and only affects secondary menu text. Now the same workflow runs for every issue and pull request event while the original orb sleeps.&lt;/p&gt;
&lt;h2&gt;How It Works&lt;/h2&gt;
&lt;p&gt;Webhooks work through the &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/manual/plugin-api&quot;&gt;Amp Plugin API&lt;/a&gt;. When you ask Amp to listen for an event, it creates a plugin in the orb and calls &lt;code&gt;amp.createWebhook&lt;/code&gt; to register a durable endpoint for that thread. Then it loads the plugin and gives you the URL to connect to GitHub, Linear, Discord, or another service. If the orb already has access, Amp can connect it for you.&lt;/p&gt;
&lt;p&gt;When a request arrives, Amp stores the event and wakes the orb. The plugin validates and filters the payload, then handles it using the instructions you gave Amp. The URL stays the same across plugin reloads and orb restarts, so the orb does not need to keep running while it waits.&lt;/p&gt;
&lt;h2&gt;React to Events However You Want&lt;/h2&gt;
&lt;p&gt;&lt;code&gt;amp.createWebhook&lt;/code&gt; gives the plugin a handler, not a fixed workflow. That handler is ordinary TypeScript with access to the rest of the Plugin API. The handler can:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Continue the owning thread with its context intact by appending the event to &lt;code&gt;ctx.thread&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Start a fresh thread in an orb with &lt;code&gt;amp.getBuiltinAgent(...).createThread({ executor: &#39;orb&#39; })&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Keep durable state so it can react every time, or handle one matching event and then stop listening.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;That is where the flexibility comes from. Tell Amp how you want to handle an event and it writes the handler that way. It can also call external APIs to post results back to Slack, Linear, GitHub, or wherever the work began. Return to the owning thread whenever you want to change the behavior.&lt;/p&gt;
&lt;p&gt;The webhook URL is a credential. Keep it private, and tell Amp to remove it when you no longer need it.&lt;/p&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>Multiplayer</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-07-22-multiplayer/</link>
    <guid isPermaLink="false">urn:aggr:item:88f4773f93aff43a19a05121c66cbfda7d288dce</guid>
    <atom:link href="https://ampcode.com/news/multiplayer" rel="via" type="text/html"/>
    <pubDate>Wed, 22 Jul 2026 00:00:00 +0000</pubDate>
    <description>Three weeks ago, we shipped agents in orbs. Today, more and more of our work happens inside orbs. In fact, the orbs are quickly becoming the de facto &quot;unit of work.&quot; They contain not just the code of the solution, but also the description…</description>
    <content:encoded>&lt;p&gt;Three weeks ago, we shipped &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/news/agents-in-orbs&quot;&gt;agents in orbs&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Today, more and more of our work happens inside orbs. In fact, the orbs are quickly becoming the de facto &amp;quot;unit of work.&amp;quot; They contain not just the code of the solution, but also the description of the problem, and often they are the running, executing solution itself. The lines between description, solution, code, and computation are all blurring and merging into the orb.&lt;/p&gt;
&lt;p&gt;As more of our work moves into orbs, we need better ways to share, control, and collaborate on those orbs and the artifacts they create.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Multiplayer&lt;/strong&gt; now lets you do just that.&lt;/p&gt;
&lt;p&gt;Turn any of your orbs into a multiplayer environment from the thread&#39;s menu on the web.&lt;/p&gt;
&lt;p&gt;Anyone in your workspace can then join the thread, send messages to the agent, and access the orb&#39;s portal, file changes, and shared terminal until multiplayer mode expires.&lt;/p&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>Right on Schedule</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-07-21-right-on-schedule/</link>
    <guid isPermaLink="false">urn:aggr:item:76174256915275694d7a64b3adcc05538d44f328</guid>
    <atom:link href="https://ampcode.com/news/schedule" rel="via" type="text/html"/>
    <pubDate>Tue, 21 Jul 2026 00:00:00 +0000</pubDate>
    <description>Agents in Amp can now set their own schedules and wake themselves up. When a schedule fires, the agent wakes up with its saved prompt and continues right where it left off, with all of its context and history. Works great with Slack, Puck,…</description>
    <content:encoded>&lt;p&gt;Agents in Amp can now set their own schedules and wake themselves up. When a schedule fires, the agent wakes up with its saved prompt and continues right where it left off, with all of its context and history. Works great with &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/news/slack-integration&quot;&gt;Slack&lt;/a&gt;, &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/news/meet-puck&quot;&gt;Puck&lt;/a&gt;, and &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/news/from-agent-to-agent&quot;&gt;spawning other agents&lt;/a&gt;, too.&lt;/p&gt;
&lt;p&gt;You can now say things like:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&amp;quot;Every morning, dig up the five slowest database queries of the past 24 hours, investigate with an orb in ultra mode, and DM me the list on Slack.&amp;quot;&lt;/li&gt;
&lt;li&gt;&amp;quot;Merge this, and remind me on Slack in two days to clean up the feature flag and roll it out to everyone.&amp;quot;&lt;/li&gt;
&lt;li&gt;&amp;quot;My recent backfill job thread, check on it every ten minutes and ping me if it stalls or starts outputting errors. Let me know when it&#39;s done.&amp;quot;&lt;/li&gt;
&lt;li&gt;&amp;quot;Every hour, use the inference-error-triage skill to inspect errors from the last hour and group related ones. For each newly discovered group, spin up a new thread to fix the errors and report back in the #bugs Slack channel.&amp;quot;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Here&#39;s a real schedule at work: &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/threads/T-019f6d8e-844f-73c2-a73a-1fc2e5e63a39&quot;&gt;a thread watching a long-running job until it&#39;s done&lt;/a&gt;.&lt;/p&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>Meet Puck</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-07-20-meet-puck/</link>
    <guid isPermaLink="false">urn:aggr:item:94a382cd63d51eaf14c28654afc4e32d5695fc7e</guid>
    <atom:link href="https://ampcode.com/news/meet-puck" rel="via" type="text/html"/>
    <pubDate>Mon, 20 Jul 2026 00:00:00 +0000</pubDate>
    <description>Say Hello to Puck, your new assistant in Amp: Open it up from anywhere on ampcode.com: Puck is always available and has access to many different tools to help you manage your agents in Amp. Here are some examples of things you can ask Puck…</description>
    <content:encoded>&lt;p&gt;Say Hello to Puck, your new assistant in Amp:&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://static.ampcode.com/news/puck-icon-light.webp?v=2&quot; alt=&quot;Puck in Amp&quot; loading=&quot;eager&quot; decoding=&quot;async&quot; fetchpriority=&quot;high&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;p&gt;Open it up from anywhere on ampcode.com:&lt;/p&gt;
&lt;p&gt;Puck is always available and has access to many different tools to help you manage your agents in Amp.&lt;/p&gt;
&lt;p&gt;Here are some examples of things you can ask Puck to do:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&amp;quot;Spawn a new agent in an orb to fix this bug the user reported in the screenshot.&amp;quot;&lt;/li&gt;
&lt;li&gt;&amp;quot;Start an agent in ampcode/amp to investigate why CI is failing.&amp;quot;&lt;/li&gt;
&lt;li&gt;&amp;quot;Find me that massive thread I had where I was investigating that 500 server issue.&amp;quot;&lt;/li&gt;
&lt;li&gt;&amp;quot;Once this thread is done, archive it.&amp;quot;&lt;/li&gt;
&lt;li&gt;&amp;quot;Create a new project and start setting up a 2026 Rust development toolchain in it.&amp;quot;&lt;/li&gt;
&lt;li&gt;&amp;quot;For each script in our ./scripts folder, spawn an agent in an orb to try and run it again dev server. Then compile their feedback about what worked/didn&#39;t work.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Think of Puck as a quick assistant and a home base for launching and coordinating other agents. It&#39;s an experiment, too. Puck is flexible, and we&#39;ve already found more ways to use it than we expected. We&#39;re excited to see what you come up with.&lt;/p&gt;
&lt;p&gt;Time to open Puck and put it to work.&lt;/p&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>Amp Is Now In Slack</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-07-20-amp-is-now-in-slack/</link>
    <guid isPermaLink="false">urn:aggr:item:a096fe5b4b5faa894b4bd2c954328c8b5571256c</guid>
    <atom:link href="https://ampcode.com/news/slack-integration" rel="via" type="text/html"/>
    <pubDate>Mon, 20 Jul 2026 00:00:00 +0000</pubDate>
    <description>You can now summon Amp in Slack. Connect your workspace from Amp&#39;s settings, then mention @Amp in any channel or thread. Amp sends your message to your personal Puck, which can initiate bug fixes, spike new features, answer questions about…</description>
    <content:encoded>&lt;p&gt;You can now summon Amp in Slack.&lt;/p&gt;
&lt;p&gt;Connect your workspace from &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/workspace/integrations&quot;&gt;Amp&#39;s settings&lt;/a&gt;, then mention &lt;code&gt;@Amp&lt;/code&gt; in any channel or thread. Amp sends your message to your personal &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/news/meet-puck&quot;&gt;Puck&lt;/a&gt;, which can initiate bug fixes, spike new features, answer questions about your codebase, and find and manipulate existing threads.&lt;/p&gt;
&lt;p&gt;Here are a few examples of how we&#39;ve been using it:&lt;/p&gt;
&lt;p&gt;1 / 4&lt;/p&gt;
&lt;h2&gt;Fix a User Bug Report&lt;/h2&gt;
&lt;p&gt;A user reported a bug with a screenshot. Amp read the screenshot, reproduced the issue, and posted back a fix.&lt;/p&gt;
&lt;figure class=&quot;article-figure&quot;&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://static.ampcode.com/news/slack/user-bug.png&quot; alt=&quot;Using Amp in Slack to investigate and fix a user bug report&quot; loading=&quot;eager&quot; decoding=&quot;async&quot; fetchpriority=&quot;high&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;h2&gt;Resolve a Production Incident&lt;/h2&gt;
&lt;p&gt;A production alert posted to a Slack channel, Amp identified the likely culprit commit, pulled production logs to verify, and pushed a fix to the production Terraform config.&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://static.ampcode.com/news/slack/resolve-incident-magical.png&quot; alt=&quot;Using Amp in Slack to root-cause and resolve a production incident&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;low&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;figcaption&gt;&lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://static.ampcode.com/news/slack/resolve-incident-detail.png&quot;&gt;See full investigation thread.&lt;/a&gt;&lt;/figcaption&gt;&lt;/figure&gt;
&lt;h2&gt;Close the Loop with Your Team&lt;/h2&gt;
&lt;p&gt;Two teammates investigated the same issue. One resolved it and asked Amp to ping the other user from their investigation thread. The other user then archived their ongoing threads from Slack.&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://static.ampcode.com/news/slack/notifying-a-teammate.png&quot; alt=&quot;Puck notifying a teammate in Slack that an issue has been resolved&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;low&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;h2&gt;Search Slack for Context&lt;/h2&gt;
&lt;p&gt;Amp can also search through Slack to pull discussions relevant to its current task. The Amp Slack integration compiled the examples used in this post.&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://static.ampcode.com/news/slack/search-slack.png&quot; alt=&quot;Using Amp to search Slack messages for context&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;low&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;h2&gt;Install the Slack Integration&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;&lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/workspace/integrations&quot;&gt;Open Workspace Integrations&lt;/a&gt; as an Amp workspace admin, select &lt;strong&gt;Connect a Slack Workspace&lt;/strong&gt;, and authorize the Amp app in Slack. (If you don&#39;t yet have an Amp workspace, &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/workspace&quot;&gt;create one&lt;/a&gt;.)&lt;/li&gt;
&lt;li&gt;Individual users should link their Amp user directly with their Slack user in &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/settings/integrations&quot;&gt;Personal Settings&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Mention &lt;code&gt;@Amp&lt;/code&gt; in any Slack channel or thread.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/manual#slack&quot;&gt;Read the Amp manual for more details.&lt;/a&gt;&lt;/p&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>Subscriptions, At Last</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-07-18-subscriptions-at-last/</link>
    <guid isPermaLink="false">urn:aggr:item:d467c6b10a9b715f058d6dda546e599278ba0824</guid>
    <atom:link href="https://ampcode.com/news/subscriptions" rel="via" type="text/html"/>
    <pubDate>Sat, 18 Jul 2026 00:00:00 +0000</pubDate>
    <description>Today we&#39;re launching Amp Subscriptions in Beta. You can now subscribe monthly to Amp and explore the frontier with us, with cheaper and more predictable pricing. See current tiers and pricing. Tier FAQs Amp Is Not (Necessarily) Expensive…</description>
    <content:encoded>&lt;p&gt;Today we&#39;re launching Amp Subscriptions in &lt;strong&gt;Beta&lt;/strong&gt;. You can now subscribe monthly to Amp and explore the frontier with us, with cheaper and more predictable pricing. &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/pricing&quot;&gt;See current tiers and pricing&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/pricing#tier-faqs&quot;&gt;Tier FAQs&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;Amp Is Not (Necessarily) Expensive Anymore&lt;/h2&gt;
&lt;p&gt;Amp just got a &lt;em&gt;lot&lt;/em&gt; cheaper for many of you, especially if you &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/settings/model-routing?add=chatgpt&quot;&gt;link your ChatGPT subscription&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;We know you&#39;ve been asking for this for a long time. Until now, Amp&#39;s pricing model has been pay-as-you-go for tokens at API prices, no subscription. Compared to other agents on monthly subscriptions, this made Amp more expensive—&lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://lucumr.pocoo.org/2025/12/22/a-year-of-vibes/#:~:text=Amp%20feels%20like%20the%20Apple%20or%20Porsche%20of%20agentic%20coding%20tools&quot;&gt;&amp;quot;the Apple or Porsche of agentic coding tools&amp;quot;&lt;/a&gt;, to put it nicely.&lt;/p&gt;
&lt;p&gt;But everything is changing. Great tokens are reasonably priced. Good-enough tokens are downright cheap (like GLM-5.2 in our &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/news/the-dial&quot;&gt;new low mode&lt;/a&gt;). Being on the frontier no longer requires using the most expensive models.&lt;/p&gt;
&lt;p&gt;You &lt;em&gt;can&lt;/em&gt; still pay-as-you-go in Amp; monthly subscriptions aren&#39;t required.&lt;/p&gt;
&lt;p&gt;And, to be clear, to use Amp beyond your subscription&#39;s included monthly limits, you need to &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/settings/model-routing?add=chatgpt&quot;&gt;link your ChatGPT subscription&lt;/a&gt; or add paid credits.&lt;/p&gt;
&lt;h2&gt;The Frontier Runs in &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/news/agents-in-orbs&quot;&gt;Orbs&lt;/a&gt;, Not Your Laptop&lt;/h2&gt;
&lt;p&gt;The frontier is now about agents working for you in parallel, without your supervision, on remote machines. We call these &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/news/agents-in-orbs&quot;&gt;&amp;quot;orbs&amp;quot;&lt;/a&gt;, and Amp&#39;s monthly subscriptions include so much orbs usage you don&#39;t need to worry about counting the minutes.&lt;/p&gt;
&lt;p&gt;We want you to finally be able to (and want to) kill your singleton local dev environment.&lt;/p&gt;
&lt;p&gt;We want you to make your agents go further to prove to you their work is correct, with videos and screenshots and local dev portals, and much less manual code review.&lt;/p&gt;
&lt;p&gt;Remember last year, when other agents asked you to approve the agent&#39;s work step-by-step, edit-by-edit? Amp users realized before anyone else that was dumb and slow, and Amp never did that.&lt;/p&gt;
&lt;p&gt;This shift feels similar to us. It&#39;s inevitable, and we want it to go as fast as possible. We hope this subscription makes it easy for you to explore this new frontier with us.&lt;/p&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>From Agent to Agent</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-07-17-from-agent-to-agent/</link>
    <guid isPermaLink="false">urn:aggr:item:6071bfd6e05aaf721fd6676b7d8657925421cbd8</guid>
    <atom:link href="https://ampcode.com/news/from-agent-to-agent" rel="via" type="text/html"/>
    <pubDate>Fri, 17 Jul 2026 00:00:00 +0000</pubDate>
    <description>You can now ask your agents in Amp to spawn other agents. In orbs, your local machine [^1], or on any other machine. They can send messages and files to each other, too. You can have agents in orbs work on side quests while you continue…</description>
    <content:encoded>&lt;p&gt;You can now ask your agents in Amp to spawn other agents. In &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/news/agents-in-orbs&quot;&gt;orbs&lt;/a&gt;, your local machine , or on &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/news/agents-anywhere&quot;&gt;any other machine&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;They can send messages and files to each other, too.&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://static.ampcode.com/news/from-agent-to-agent-handoff.png&quot; alt=&quot;An Amp agent creating a new thread in an orb and uploading the changed news post&quot; loading=&quot;eager&quot; decoding=&quot;async&quot; fetchpriority=&quot;high&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;p&gt;You can have agents in orbs work on side quests while you continue your work:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;&lt;span class=&quot;code-snippet&quot;&gt;Spin up an orb thread with what you know about this unrelated bug,
ask it to fix it, then keep working here.
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Or fan out work:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;&lt;span class=&quot;code-snippet&quot;&gt;Run four low-mode threads in parallel to test this flow in Chrome
at four screen sizes and report back with screenshots.
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Find and continue old work by pulling in the important files:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;&lt;span class=&quot;code-snippet&quot;&gt;Pull the files from my abandoned prototype thread into this workspace
and integrate the useful parts into our current approach.
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Offload work to another machine:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;&lt;span class=&quot;code-snippet&quot;&gt;Start a new thread on cloud-dev-box and upload this test matrix
we created. Ask it to run through each row at least 10 times.
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Coordinate cross-project work:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;&lt;span class=&quot;code-snippet&quot;&gt;Spawn an agent in the docs project, send it what it needs to
document this API change, and ask it to report back.
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Agents running locally, or in orbs, or anywhere else, and sending messages and files to each other? It&#39;s a whole new world.&lt;/p&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>Secrets of the Orb</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-07-14-secrets-of-the-orb/</link>
    <guid isPermaLink="false">urn:aggr:item:2944b4b967fa4c792afa9db90ee325bf76632945</guid>
    <atom:link href="https://ampcode.com/news/secrets-of-the-orb" rel="via" type="text/html"/>
    <pubDate>Tue, 14 Jul 2026 00:00:00 +0000</pubDate>
    <description>Orbs can now prove their identity using OIDC, so you can use Amp for ops and infrastructure tasks more safely. Service providers that support OIDC authentication can be configured to trust the identity provided by Amp and grant permissions…</description>
    <content:encoded>&lt;p&gt;Orbs can now prove their identity using &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://openid.net/developers/how-connect-works/&quot;&gt;OIDC&lt;/a&gt;, so you can use Amp for ops and infrastructure tasks more safely.&lt;/p&gt;
&lt;p&gt;Service providers that support OIDC authentication can be configured to trust the identity provided by Amp and grant permissions to your orb based on that identity, &lt;em&gt;without&lt;/em&gt; having to inject any secrets into orbs.&lt;/p&gt;
&lt;p&gt;For example, we&#39;ve configured GCP to grant orbs in our workspace read access to our production logs. This requires zero config from any of our devs, any operations are fully auditable because they include claims like user ID and thread ID, and the tokens are all short-lived and tightly scoped to the operations that project needs.&lt;/p&gt;
&lt;p&gt;To mint a token, run &lt;code&gt;amp orb id-token --audience &amp;lt;aud&amp;gt;&lt;/code&gt; in your orb:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;&lt;span class=&quot;code-snippet&quot; data-language=&quot;Shell&quot;&gt;&lt;span class=&quot;syntax-source syntax-shell syntax-bash&quot;&gt;&lt;span class=&quot;syntax-meta syntax-function-call syntax-shell&quot;&gt;&lt;span class=&quot;syntax-variable syntax-function syntax-shell&quot;&gt;&lt;span class=&quot;syntax-meta syntax-group syntax-expansion syntax-tilde&quot;&gt;&lt;span class=&quot;syntax-variable syntax-language syntax-tilde syntax-shell&quot;&gt;~&lt;/span&gt;&lt;/span&gt;/workspace/repo$&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;syntax-meta syntax-function-call syntax-arguments syntax-shell&quot;&gt; jwt decode&lt;span class=&quot;syntax-variable syntax-parameter syntax-option syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-parameter syntax-shell&quot;&gt; -&lt;/span&gt;j&lt;/span&gt; &lt;span class=&quot;syntax-meta syntax-group syntax-expansion syntax-command syntax-parens syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-variable syntax-shell&quot;&gt;$&lt;/span&gt;&lt;span class=&quot;syntax-punctuation syntax-section syntax-parens syntax-begin syntax-shell&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;syntax-meta syntax-function-call syntax-shell&quot;&gt;&lt;span class=&quot;syntax-variable syntax-function syntax-shell&quot;&gt;amp&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;syntax-meta syntax-function-call syntax-arguments syntax-shell&quot;&gt; orb id-token&lt;span class=&quot;syntax-variable syntax-parameter syntax-option syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-parameter syntax-shell&quot;&gt; --&lt;/span&gt;audience&lt;/span&gt; test&lt;/span&gt;&lt;span class=&quot;syntax-punctuation syntax-section syntax-parens syntax-end syntax-shell&quot;&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;syntax-punctuation syntax-definition syntax-compound syntax-braces syntax-begin syntax-shell&quot;&gt;{&lt;/span&gt;
	&lt;span class=&quot;syntax-meta syntax-function-call syntax-shell&quot;&gt;&lt;span class=&quot;syntax-variable syntax-function syntax-shell&quot;&gt;&lt;span class=&quot;syntax-string syntax-quoted syntax-double syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-begin syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;header&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-end syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;:&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;syntax-meta syntax-function-call syntax-arguments syntax-shell&quot;&gt; &lt;span class=&quot;syntax-meta syntax-group syntax-expansion syntax-brace syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-section syntax-expansion syntax-brace syntax-begin syntax-shell&quot;&gt;{&lt;/span&gt;
		&lt;span class=&quot;syntax-string syntax-quoted syntax-double syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-begin syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;typ&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-end syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;: &lt;span class=&quot;syntax-string syntax-quoted syntax-double syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-begin syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;JWT&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-end syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;syntax-punctuation syntax-separator syntax-shell&quot;&gt;,&lt;/span&gt;
		&lt;span class=&quot;syntax-string syntax-quoted syntax-double syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-begin syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;alg&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-end syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;: &lt;span class=&quot;syntax-string syntax-quoted syntax-double syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-begin syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;RS256&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-end syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;syntax-punctuation syntax-separator syntax-shell&quot;&gt;,&lt;/span&gt;
		&lt;span class=&quot;syntax-string syntax-quoted syntax-double syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-begin syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;kid&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-end syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;: &lt;span class=&quot;syntax-string syntax-quoted syntax-double syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-begin syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;5A4Ie1hntIuzu4KtaDPXr2HhnButOliWxM9ncVsct1s&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-end syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;
	&lt;span class=&quot;syntax-punctuation syntax-section syntax-expansion syntax-brace syntax-end syntax-shell&quot;&gt;}&lt;/span&gt;&lt;/span&gt;,&lt;/span&gt;
	&lt;span class=&quot;syntax-meta syntax-function-call syntax-shell&quot;&gt;&lt;span class=&quot;syntax-variable syntax-function syntax-shell&quot;&gt;&lt;span class=&quot;syntax-string syntax-quoted syntax-double syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-begin syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;payload&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-end syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;:&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;syntax-meta syntax-function-call syntax-arguments syntax-shell&quot;&gt; &lt;span class=&quot;syntax-meta syntax-group syntax-expansion syntax-brace syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-section syntax-expansion syntax-brace syntax-begin syntax-shell&quot;&gt;{&lt;/span&gt;
		&lt;span class=&quot;syntax-string syntax-quoted syntax-double syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-begin syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;aud&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-end syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;: &lt;span class=&quot;syntax-string syntax-quoted syntax-double syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-begin syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;test&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-end syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;syntax-punctuation syntax-separator syntax-shell&quot;&gt;,&lt;/span&gt;
		&lt;span class=&quot;syntax-string syntax-quoted syntax-double syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-begin syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;email&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-end syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;: &lt;span class=&quot;syntax-string syntax-quoted syntax-double syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-begin syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;user@example.com&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-end syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;syntax-punctuation syntax-separator syntax-shell&quot;&gt;,&lt;/span&gt;
		&lt;span class=&quot;syntax-string syntax-quoted syntax-double syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-begin syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;email_verified&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-end syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;: true&lt;span class=&quot;syntax-punctuation syntax-separator syntax-shell&quot;&gt;,&lt;/span&gt;
		&lt;span class=&quot;syntax-string syntax-quoted syntax-double syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-begin syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;exp&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-end syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;: 1784078965&lt;span class=&quot;syntax-punctuation syntax-separator syntax-shell&quot;&gt;,&lt;/span&gt;
		&lt;span class=&quot;syntax-string syntax-quoted syntax-double syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-begin syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;iat&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-end syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;: 1784078365&lt;span class=&quot;syntax-punctuation syntax-separator syntax-shell&quot;&gt;,&lt;/span&gt;
		&lt;span class=&quot;syntax-string syntax-quoted syntax-double syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-begin syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;iss&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-end syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;: &lt;span class=&quot;syntax-string syntax-quoted syntax-double syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-begin syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;https://ampcode.com/api/workload-identity&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-end syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;syntax-punctuation syntax-separator syntax-shell&quot;&gt;,&lt;/span&gt;
		&lt;span class=&quot;syntax-string syntax-quoted syntax-double syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-begin syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;jti&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-end syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;: &lt;span class=&quot;syntax-string syntax-quoted syntax-double syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-begin syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;78bceb61-4102-4973-8bec-d05d65be4b67&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-end syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;syntax-punctuation syntax-separator syntax-shell&quot;&gt;,&lt;/span&gt;
		&lt;span class=&quot;syntax-string syntax-quoted syntax-double syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-begin syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;project_id&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-end syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;: &lt;span class=&quot;syntax-string syntax-quoted syntax-double syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-begin syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;12038eda-75e9-46fa-b185-f67404f40b2f&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-end syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;syntax-punctuation syntax-separator syntax-shell&quot;&gt;,&lt;/span&gt;
		&lt;span class=&quot;syntax-string syntax-quoted syntax-double syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-begin syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;sub&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-end syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;: &lt;span class=&quot;syntax-string syntax-quoted syntax-double syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-begin syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;workspace:0284a29c-b50a-41f8-b83f-94e5c9b32f5f:project:12038eda-75e9-46fa-b185-f67404f40b2f:user:user_3V306PAAABM94KT1N05NSDQRBD:thread:T-6600f272-b20f-4652-bb6a-3a3c73099d31&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-end syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;syntax-punctuation syntax-separator syntax-shell&quot;&gt;,&lt;/span&gt;
		&lt;span class=&quot;syntax-string syntax-quoted syntax-double syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-begin syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;thread_id&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-end syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;: &lt;span class=&quot;syntax-string syntax-quoted syntax-double syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-begin syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;T-6600f272-b20f-4652-bb6a-3a3c73099d31&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-end syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;syntax-punctuation syntax-separator syntax-shell&quot;&gt;,&lt;/span&gt;
		&lt;span class=&quot;syntax-string syntax-quoted syntax-double syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-begin syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;token_use&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-end syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;: &lt;span class=&quot;syntax-string syntax-quoted syntax-double syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-begin syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;exchanged&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-end syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;syntax-punctuation syntax-separator syntax-shell&quot;&gt;,&lt;/span&gt;
		&lt;span class=&quot;syntax-string syntax-quoted syntax-double syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-begin syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;user_id&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-end syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;: &lt;span class=&quot;syntax-string syntax-quoted syntax-double syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-begin syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;user_3V306PAAABM94KT1N05NSDQRBD&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-end syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;syntax-punctuation syntax-separator syntax-shell&quot;&gt;,&lt;/span&gt;
		&lt;span class=&quot;syntax-string syntax-quoted syntax-double syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-begin syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;workspace_id&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-end syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;: &lt;span class=&quot;syntax-string syntax-quoted syntax-double syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-begin syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;0284a29c-b50a-41f8-b83f-94e5c9b32f5f&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-end syntax-shell&quot;&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;
	&lt;span class=&quot;syntax-punctuation syntax-section syntax-expansion syntax-brace syntax-end syntax-shell&quot;&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;syntax-punctuation syntax-definition syntax-compound syntax-braces syntax-end syntax-shell&quot;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Alongside standard claims like &lt;code&gt;iss&lt;/code&gt;, &lt;code&gt;aud&lt;/code&gt;, &lt;code&gt;sub&lt;/code&gt;, and &lt;code&gt;exp&lt;/code&gt;, Amp adds custom claims such as &lt;code&gt;workspace_id&lt;/code&gt;, &lt;code&gt;project_id&lt;/code&gt;, &lt;code&gt;user_id&lt;/code&gt;, &lt;code&gt;thread_id&lt;/code&gt;, and &lt;code&gt;email&lt;/code&gt;.&lt;/p&gt;
&lt;h2&gt;Okay, but what can I actually &lt;em&gt;do&lt;/em&gt; with that token?&lt;/h2&gt;
&lt;p&gt;Even after building OIDC into orbs, it wasn&#39;t immediately obvious to me how far we could push an OIDC-based dev env. So here are a few ideas to get the juices flowing, drawn from both internal usage and feedback from our early partners.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Configure &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://docs.cloud.google.com/iam/docs/workload-identity-federation&quot;&gt;workload identity federation&lt;/a&gt; in GCP and grant access to your production logs and metrics from all orbs in your workspace.&lt;/li&gt;
&lt;li&gt;Add OIDC &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://tailscale.com/docs/reference/trust-credentials&quot;&gt;trust credentials&lt;/a&gt; to your Tailscale workspace and grant users on your tailnet the ability to hit services running in orbs so you can share demo apps with your colleagues.&lt;/li&gt;
&lt;li&gt;Commit your &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://getsops.io/docs/usage/first-steps/&quot;&gt;SOPS-encrypted dev secrets&lt;/a&gt; to your repo, then grant your users&#39; orbs access to &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://getsops.io/docs/usage/identities/amazon-aws-kms/&quot;&gt;decrypt those secrets with AWS KMS&lt;/a&gt; so you don&#39;t need to maintain 50 secret environment variables in your project settings to run your dev environment.&lt;/li&gt;
&lt;li&gt;Create a &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://docs.cloud.google.com/iam/docs/pam-overview&quot;&gt;PAM entitlement&lt;/a&gt; that grants escalated privileges to this specific orb, and add a script to your repo that allows your Amp thread to request an escalation.&lt;/li&gt;
&lt;li&gt;Spin up an &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://github.com/oauth2-proxy/oauth2-proxy&quot;&gt;oauth2-proxy instance&lt;/a&gt; to inject credentials into requests to services that don&#39;t support OIDC auth.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Want more help getting started? Head over to &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/manual/orbs/oidc&quot;&gt;the manual&lt;/a&gt; for detailed recipes.&lt;/p&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>The Dial</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-07-09-the-dial/</link>
    <guid isPermaLink="false">urn:aggr:item:90f793c8666cdb29a0d062efceae7035b9e64bb4</guid>
    <atom:link href="https://ampcode.com/news/the-dial" rel="via" type="text/html"/>
    <pubDate>Thu, 9 Jul 2026 00:00:00 +0000</pubDate>
    <description>Amp&#39;s agent modes are now a dial: low, medium, high, ultra. They replace smart, deep, rush, and large. The old modes were models in disguise: each name hid a model, a prompt, a reasoning effort — and to pick one, you had to know what that…</description>
    <content:encoded>&lt;p&gt;Amp&#39;s agent modes are now a dial: &lt;code&gt;low&lt;/code&gt;, &lt;code&gt;medium&lt;/code&gt;, &lt;code&gt;high&lt;/code&gt;, &lt;code&gt;ultra&lt;/code&gt;. They replace &lt;code&gt;smart&lt;/code&gt;, &lt;code&gt;deep&lt;/code&gt;, &lt;code&gt;rush&lt;/code&gt;, and &lt;code&gt;large&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://static.ampcode.com/news/dial-release.png?v=20260709-2&quot; alt=&quot;Amp&amp;#39;s mode dial in the CLI showing low, medium, high, and ultra&quot; loading=&quot;eager&quot; decoding=&quot;async&quot; fetchpriority=&quot;high&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;p&gt;The old modes were models in disguise: each name hid a model, a prompt, a reasoning effort — and to pick one, you had to know what that model was like this month. That world is gone. The models converged, open-weight models got seriously good, and the only question left is capability against cost.&lt;/p&gt;
&lt;p&gt;The dial asks one question: how hard is this task?&lt;/p&gt;
&lt;p&gt;Missing in either direction costs you. Undershoot and the model churns: wrong fix, re-prompt, wrong fix again. You pay three times for a result you could have had once. Overshoot and you&#39;re using Fable to fix a typo. Set it right and you pay for exactly the intelligence the task needs.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;code&gt;ultra&lt;/code&gt;&lt;/strong&gt; — The outcome is clear, but the path is full of unknowns. Migrations, architecture, changes that span many files, systems, and decisions the model has to discover as it goes.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;code&gt;high&lt;/code&gt;&lt;/strong&gt; — You know where the change goes, but getting it right is hard: cross-cutting changes, concurrency, bugs where a subtle miss is expensive. You get diffs closer to reviewer-ready than &lt;code&gt;medium&lt;/code&gt; gets you — but plan on one round of feedback before merging, and about twice the wait.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;code&gt;medium&lt;/code&gt;&lt;/strong&gt; — You know roughly what you want. This should be your default. It handles messy, multi-part tasks, fuzzy requirements, the steps you didn&#39;t spell out. Strong enough for most work, fast enough to steer.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;code&gt;low&lt;/code&gt;&lt;/strong&gt; — You know exactly what you want. Bug fixes, tests, refactors, features you can describe precisely. There is less to figure out for the model, so &lt;code&gt;low&lt;/code&gt; builds it.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Turn the dial with &lt;code&gt;Ctrl+S&lt;/code&gt; in the CLI, or with the mode picker in the web app.&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://static.ampcode.com/news/dial-web.png?v=20260709-2&quot; alt=&quot;Amp&amp;#39;s mode picker in the web app showing low, medium, high, and ultra&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;low&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;h2&gt;Under the Hood&lt;/h2&gt;
&lt;p&gt;We want you to know exactly what you&#39;re getting, so here&#39;s what backs each mode today. This wiring will change as models improve. The dial won&#39;t.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;ultra&lt;/code&gt;: Claude Fable 5, with a system prompt written for it. GPT-5.6 Sol as the oracle.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;high&lt;/code&gt;: GPT-5.6 Sol at &lt;code&gt;xhigh&lt;/code&gt; reasoning effort. Claude Fable 5 as the oracle.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;medium&lt;/code&gt;: GPT-5.6 Sol at medium reasoning effort. GPT-5.6 Sol at high effort as the oracle.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;low&lt;/code&gt;: GLM-5.2, Z.ai&#39;s open-weight model, the strongest open model on agentic coding. GPT-5.6 Sol as the oracle. (Workspace admins can choose to use GPT-5.6 Terra low instead of GLM-5.2 here.)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Reasoning effort is part of the tier now. No more cycling &lt;code&gt;Opt+D&lt;/code&gt; through effort levels on top of picking a mode.&lt;/p&gt;
&lt;p&gt;Every mode has an oracle for second opinions. On the top tiers, it&#39;s the other frontier model: in &lt;code&gt;high&lt;/code&gt;, GPT-5.6 Sol writes and Fable reviews. In &lt;code&gt;ultra&lt;/code&gt;, Fable writes and GPT-5.6 Sol reviews.&lt;/p&gt;
&lt;h2&gt;Migrating&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;smart&lt;/code&gt;, &lt;code&gt;deep&lt;/code&gt; → &lt;code&gt;medium&lt;/code&gt; (same model and effort as &lt;code&gt;deep&lt;/code&gt;). Turn up for hard problems.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;rush&lt;/code&gt; → &lt;code&gt;low&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;deep**3&lt;/code&gt; -&amp;gt; &lt;code&gt;ultra&lt;/code&gt; or &lt;code&gt;high&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Want to Tune It Yourself?&lt;/h2&gt;
&lt;p&gt;The dial removes knobs from the default experience, not from Amp. &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/manual#define-a-custom-agent-mode&quot;&gt;Plugins can register their own agent modes&lt;/a&gt; with your model, your prompt, and your tools, and they show up right next to the built-in ones.&lt;/p&gt;
&lt;p&gt;We used that same plugin API to package up the deprecated modes — exact system prompts, exact tool lists, same models and reasoning efforts. If you want &lt;code&gt;smart&lt;/code&gt;, &lt;code&gt;deep&lt;/code&gt;, &lt;code&gt;rush&lt;/code&gt;, or &lt;code&gt;large&lt;/code&gt; back, install them:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;&lt;span class=&quot;code-snippet&quot;&gt;amp plugins add --auto-update @amp/smart-classic
amp plugins add --auto-update @amp/deep-classic
amp plugins add --auto-update @amp/rush-classic
amp plugins add --auto-update @amp/large-classic
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Then run &lt;code&gt;plugins: reload&lt;/code&gt; (or restart the CLI) and they appear in the mode picker as Smart (classic), Deep (classic), Rush (classic), and Large (classic) — the original names stay reserved for the built-ins. &lt;code&gt;--auto-update&lt;/code&gt; keeps them current when we update the plugins; drop it if you&#39;d rather pin. The full list of installable modes is on &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/modes&quot;&gt;ampcode.com/modes&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Start at &lt;code&gt;medium&lt;/code&gt;. Turn it down when the task is clear. Turn it up when a miss costs more than the wait.&lt;/p&gt;
&lt;p&gt;We&#39;ll follow up with posts on each mode and numbers on what each one can handle.&lt;/p&gt;
</content:encoded>
    <category>programming</category>
  </item>
  <item>
    <title>Agents, Anywhere</title>
    <link>https://aggr.aymericbeaumet.com/items/ampcode-com/2026-07-08-agents-anywhere/</link>
    <guid isPermaLink="false">urn:aggr:item:a08d91d0c9a002b7fbd7bd94219cab3767641824</guid>
    <atom:link href="https://ampcode.com/news/agents-anywhere" rel="via" type="text/html"/>
    <pubDate>Wed, 8 Jul 2026 00:00:00 +0000</pubDate>
    <description>You can now start new agents remotely from ampcode.com anywhere you can run amp: That means, in addition to running agents in orbs, you can now run agents on any machine you want: your laptop, your server, your cloud dev box, your…</description>
    <content:encoded>&lt;p&gt;You can now start new agents remotely from &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com&quot;&gt;ampcode.com&lt;/a&gt; anywhere you can run &lt;code&gt;amp&lt;/code&gt;:&lt;/p&gt;
&lt;p&gt;That means, in addition to running &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://ampcode.com/news/agents-in-orbs&quot;&gt;agents in orbs&lt;/a&gt;, you can now run agents on any machine you want: your laptop, your server, your cloud dev box, your Raspberry Pi. Your lawn mower even, if it has a shell.&lt;/p&gt;
&lt;p&gt;Enable it by using the command &lt;code&gt;amp: enable remote creation of threads&lt;/code&gt; or with the setting:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-json&quot;&gt;&lt;span class=&quot;code-snippet&quot; data-language=&quot;JSON&quot;&gt;&lt;span class=&quot;syntax-source syntax-json&quot;&gt;&lt;span class=&quot;syntax-comment syntax-line syntax-double-slash syntax-js&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-comment syntax-json&quot;&gt;//&lt;/span&gt; ~/.config/amp/settings.json
&lt;/span&gt;
&lt;span class=&quot;syntax-meta syntax-structure syntax-dictionary syntax-json&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-section syntax-dictionary syntax-begin syntax-json&quot;&gt;{&lt;/span&gt;
	&lt;span class=&quot;syntax-meta syntax-structure syntax-dictionary syntax-key syntax-json&quot;&gt;&lt;span class=&quot;syntax-string syntax-quoted syntax-double syntax-json&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-begin syntax-json&quot;&gt;&amp;quot;&lt;/span&gt;amp.remoteThreadCreation.enabled&lt;span class=&quot;syntax-punctuation syntax-definition syntax-string syntax-end syntax-json&quot;&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;syntax-meta syntax-structure syntax-dictionary syntax-value syntax-json&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-separator syntax-dictionary syntax-key-value syntax-json&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;syntax-constant syntax-language syntax-json&quot;&gt;true&lt;/span&gt;
&lt;/span&gt;&lt;span class=&quot;syntax-punctuation syntax-section syntax-dictionary syntax-end syntax-json&quot;&gt;}&lt;/span&gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Once enabled, every Amp client you start will accept and run new threads in its working directory.&lt;/p&gt;
&lt;h2&gt;Runner Mode&lt;/h2&gt;
&lt;p&gt;You can also use the new &lt;em&gt;runner&lt;/em&gt; mode with:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;&lt;span class=&quot;code-snippet&quot;&gt;amp --no-tui
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;That starts Amp in a headless mode in which it only waits to start and run new threads:&lt;/p&gt;
&lt;p&gt;You can start multiple runners on the same machine, as long as they&#39;re started in different directories. Each runner is uniquely identified by host and working directory. Directories don&#39;t have to be version controlled. They can be anything, even home directories.&lt;/p&gt;
&lt;p&gt;You can start agents &lt;em&gt;anywhere&lt;/em&gt; now.&lt;/p&gt;
&lt;h2&gt;Walkthrough&lt;/h2&gt;
&lt;p&gt;Here&#39;s Thorsten with a walkthrough:&lt;/p&gt;
</content:encoded>
    <category>programming</category>
  </item>
</channel>
</rss>
