<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Claude on Margrop Blog</title>
    <link>https://blog.margrop.net/en/tag/claude/</link>
    <description>Recent content in Claude on Margrop Blog</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en-US</language>
    <lastBuildDate>Mon, 13 Jul 2026 15:30:00 +0800</lastBuildDate>
    <atom:link href="https://blog.margrop.net/en/tag/claude/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Superpowers 6: What Actually Changed, and Why Your Agent Got Harder to Fool</title>
      <link>https://blog.margrop.net/en/post/superpowers-6-whats-new/</link>
      <pubDate>Mon, 13 Jul 2026 15:30:00 +0800</pubDate>
      <guid>https://blog.margrop.net/en/post/superpowers-6-whats-new/</guid>
      <description>&lt;blockquote&gt;&#xA;&lt;p&gt;&lt;strong&gt;The short answer&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;If you already write code with Claude Code, OpenCode, or Codex, you have probably heard of Superpowers. It is not another &amp;ldquo;magic prompt.&amp;rdquo; It is a skill framework that makes your agent &lt;strong&gt;work by process&lt;/strong&gt; — turning the habits of a good engineer (&amp;ldquo;think before you act&amp;rdquo;, &amp;ldquo;write the test before the code&amp;rdquo;, &amp;ldquo;collect evidence before fixing the bug&amp;rdquo;) into operating procedures the agent must follow.&lt;/p&gt;&#xA;&lt;p&gt;From v6.0.0 to the latest v6.1.1, Superpowers shipped a dense run of upgrades: &lt;strong&gt;Subagent-Driven Development (SDD) lost half its reviewers but got stricter; plans gained a Global Constraints block and per-task Interfaces; the brainstorming companion got a one-time key; Codex can install from the marketplace; and Gemini CLI was dropped after Google EOLed it.&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;This article unpacks the wave, what you actually get, and why it makes your agent&amp;rsquo;s output steadier.&lt;/p&gt;&#xA;&lt;/blockquote&gt;</description>
    </item>
    <item>
      <title>One sentence let Claude upgrade Ubuntu 22.04 to 24.04: a near-zero-screen-time cross-LTS run</title>
      <link>https://blog.margrop.net/en/post/upgrade-ubuntu-via-agent/</link>
      <pubDate>Fri, 19 Jun 2026 10:58:00 +0800</pubDate>
      <guid>https://blog.margrop.net/en/post/upgrade-ubuntu-via-agent/</guid>
      <description>&lt;blockquote&gt;&#xA;&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;A remote home-lab box had been sitting on Ubuntu 22.04.4 LTS (jammy, kernel 5.15) for a long time. After one sentence — &amp;ldquo;upgrade the box at 192.168.103.182 to Ubuntu 24.04&amp;rdquo; — Claude opened a tmux session to babysit the run, brought up a fallback sshd on port 1022 so a mid-upgrade sshd restart would not strand me, then drove &lt;code&gt;do-release-upgrade -f DistUpgradeViewNonInteractive&lt;/code&gt; end to end. Twenty-five minutes later the host came back: kernel 6.8.0-124, every service still listening.&lt;/p&gt;&#xA;&lt;p&gt;This is not a tutorial on &lt;code&gt;do-release-upgrade&lt;/code&gt;; the Ubuntu docs already cover that. This is about what an Agent does once it gets an SSH handle on a box, why it does each step, and which pitfalls you have to clear out of the way before letting it loose.&lt;/p&gt;&#xA;&lt;/blockquote&gt;</description>
    </item>
    <item>
      <title>Stop Letting Agents Guess UI: Installing and Using UI UX Pro Max the Right Way</title>
      <link>https://blog.margrop.net/en/post/ui-ux-pro-max-agent-skill-guide/</link>
      <pubDate>Fri, 22 May 2026 22:50:00 +0800</pubDate>
      <guid>https://blog.margrop.net/en/post/ui-ux-pro-max-agent-skill-guide/</guid>
      <description>&lt;blockquote&gt;&#xA;&lt;p&gt;&lt;strong&gt;The short version&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;UI UX Pro Max is not a magic prompt that suddenly gives an agent taste. It is a searchable UI/UX design intelligence Skill for AI coding assistants such as Claude Code, Codex, Cursor, Windsurf, Gemini, OpenCode, and similar tools. It packages product patterns, UI styles, color palettes, typography pairings, landing page structures, chart recommendations, UX guidelines, and stack-specific implementation advice into files and scripts that an agent can actually query.&lt;/p&gt;&#xA;&lt;p&gt;The right way to use it is not to install it and keep asking for “a beautiful page.” The right way is to make the agent generate a design system first, then query UX, chart, web, or stack-specific guidance, and only then implement the page. That workflow reduces generic AI gradients, weak contrast, crowded mobile layouts, decorative dashboards, missing focus states, and many other common agent-generated UI problems.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;This article uses only public references, a public repository, and a clean temporary verification directory. Commands, paths, project names, and examples are generic. No private addresses, credentials, internal project names, account names, or personal configuration are included. Screenshots are taken from public reference pages and sanitized verification work.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Upgrading PVE 8 to 9 Without Brute Force: Let an Agent Drive It, or Follow This Manual Checklist</title>
      <link>https://blog.margrop.net/en/post/pve8-to-pve9-agent-manual-upgrade-guide/</link>
      <pubDate>Tue, 12 May 2026 19:00:00 +0800</pubDate>
      <guid>https://blog.margrop.net/en/post/pve8-to-pve9-agent-manual-upgrade-guide/</guid>
      <description>&lt;blockquote&gt;&#xA;&lt;p&gt;&lt;strong&gt;Short version&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;Upgrading Proxmox VE 8 to 9 is not just copying a few commands. It is a major system upgrade from Debian Bookworm to Trixie, from PVE 8.4 to PVE 9.x, with kernel, storage, networking, Ceph, and HA behavior in the blast radius. The fastest practical path is to let Codex, Claude, OpenClaw, HermesAgent, or a similar Agent handle checks, command sequencing, logging, and post-upgrade verification. The human operator still needs to approve repository changes, package removals, configuration prompts, reboot timing, and recovery decisions. If you prefer doing everything by hand, the second half of this article gives a concrete manual checklist.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;This article is for two groups of operators. The first group already uses Agents over SSH and wants a scoped one-sentence task for upgrading PVE. The second group prefers typing every command manually and wants a clear, ordered procedure with the main risk points called out.&lt;/p&gt;&#xA;&lt;p&gt;All hostnames, addresses, repositories, tokens, and accounts in this article are placeholders. Replace values such as &lt;code&gt;&amp;lt;PVE_NODE&amp;gt;&lt;/code&gt;, &lt;code&gt;&amp;lt;BACKUP_TARGET&amp;gt;&lt;/code&gt;, and &lt;code&gt;&amp;lt;ADMIN_CONSOLE&amp;gt;&lt;/code&gt; with your own environment. Before touching a production host, read the official Proxmox documentation and verify that your backups are restorable.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Ubuntu 26.04 Upgrade Guide: Let an Agent Do It, or Run It by Hand</title>
      <link>https://blog.margrop.net/en/post/ubuntu-2604-upgrade-agent-manual-guide/</link>
      <pubDate>Tue, 12 May 2026 07:30:00 +0800</pubDate>
      <guid>https://blog.margrop.net/en/post/ubuntu-2604-upgrade-agent-manual-guide/</guid>
      <description>&lt;blockquote&gt;&#xA;&lt;p&gt;&lt;strong&gt;The short version&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;Upgrading Ubuntu 22.04 or 24.04 to Ubuntu 26.04 is not about memorizing one command. It is about following the supported upgrade path. Ubuntu 22.04 LTS should not be jumped directly to Ubuntu 26.04 LTS. Upgrade 22.04 LTS to 24.04 LTS first, then move from 24.04 LTS to 26.04 LTS. As of 2026-05-12, Ubuntu 26.04 LTS has already been released, but the normal LTS-to-LTS upgrade prompt from 24.04 LTS to 26.04 LTS is typically enabled after the first point release. The official 26.04 schedule lists the 26.04.1 point release on 2026-07-09. Production systems should usually wait for the regular upgrade path; test systems can evaluate an early upgrade only with explicit risk acceptance.&lt;/p&gt;&#xA;&lt;p&gt;If you already use agents such as Code, Claude, OpenClaw, HermesAgent, Codex, or OpenCode, this is a good task to delegate. But do not just say “upgrade Ubuntu.” Give the agent a bounded job: inspect first, back up, follow the supported path, keep logs, ask before risky choices, reboot, verify services, and report evidence. This article gives both a ready-to-copy agent prompt and a manual procedure.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;All examples in this article are generic. No private hostnames, internal addresses, accounts, credentials, tokens, business system names, or personal paths are included. Replace placeholders such as &lt;code&gt;&amp;lt;HOST&amp;gt;&lt;/code&gt;, &lt;code&gt;&amp;lt;SERVICE&amp;gt;&lt;/code&gt;, and &lt;code&gt;&amp;lt;BACKUP_DIR&amp;gt;&lt;/code&gt; with values from your own environment.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Small Models Make Agents Drift. Superpowers Gives Them Rails.</title>
      <link>https://blog.margrop.net/en/post/agent-superpowers-stable-output/</link>
      <pubDate>Thu, 07 May 2026 16:43:10 +0800</pubDate>
      <guid>https://blog.margrop.net/en/post/agent-superpowers-stable-output/</guid>
      <description>&lt;blockquote&gt;&#xA;&lt;p&gt;&lt;strong&gt;The short version&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;When an agent powered by a smaller or weaker model behaves unpredictably, the problem is not always solved by writing a longer prompt. Smaller models often struggle with long-horizon consistency, tool discipline, evidence tracking, and multi-step execution. Superpowers does not turn a weak model into a frontier model. What it does is more practical: it gives the agent an external engineering workflow made of reusable Skills, checkpoints, testing habits, debugging rules, review steps, and completion verification.&lt;/p&gt;&#xA;&lt;p&gt;For agents such as OpenClaw, HermesAgent, Codex, Claude, Gemini, OpenCode, Droid, Cursor, and similar tools, Superpowers is best understood as an engineering-discipline layer. It makes the agent less dependent on improvisation and more likely to follow a repeatable process.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;This article is about a very common failure mode in modern agent workflows: the model can talk fluently, but the agent does not behave reliably once the task becomes long, stateful, tool-heavy, or distributed across multiple agents.&lt;/p&gt;&#xA;&lt;p&gt;The issue becomes more visible when using smaller domestic models, local models, quantized models, or cost-optimized models. They may answer normal questions well enough, but once they need to read a repository, follow a constraint, modify files, run tests, interpret logs, preserve privacy, and report only verified results, the instability becomes obvious.&lt;/p&gt;&#xA;&lt;p&gt;All examples in this article are generic. No private hostnames, internal addresses, credentials, project names, or personal paths are included.&lt;/p&gt;</description>
    </item>
    <item>
      <title>How to Prompt OpenClaw, HermesAgent, Codex, Claude, Gemini, OpenCode, and Droid to Write Articles and Publish WeChat Drafts</title>
      <link>https://blog.margrop.net/en/post/agent-prompt-wechat-draft-automation/</link>
      <pubDate>Tue, 05 May 2026 16:00:00 +0800</pubDate>
      <guid>https://blog.margrop.net/en/post/agent-prompt-wechat-draft-automation/</guid>
      <description>&lt;blockquote&gt;&#xA;&lt;p&gt;&lt;strong&gt;Short version&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;If you want an agent such as OpenClaw, HermesAgent, Codex, Claude, Gemini, OpenCode, or Droid to write an article, prepare a Hugo blog post, convert the Chinese version into WeChat-compatible HTML, preview it, fix layout issues, and create a WeChat Official Account draft, the prompt cannot simply say &amp;ldquo;write and publish an article.&amp;rdquo; A useful prompt must define the goal, source material, paths, account constraints, fixed-IP requirements, conversion steps, preview checks, failure recovery, privacy boundaries, and final verification evidence.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;This post describes a reusable prompting pattern for article automation. It explains how to prepare the WeChat draft API, why a Linux machine with a fixed public IP is often required, how to tell an agent to try local API access first and then fall back to a fixed-egress host, how to use a Markdown-to-WeChat-HTML converter, and how to make the agent check for invisible white text, strange indentation, broken images, and accidental leaks before declaring the job done.&lt;/p&gt;&#xA;&lt;p&gt;All examples are privacy-safe. They use placeholders rather than real secrets, private IP addresses, hostnames, repository URLs, tokens, cookies, or personal paths. Replace placeholders with your own values only in a protected runtime environment, never in a public article, public repository, or screenshot.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Using WoClaw to Solve Shared Memory for Multi-Agent Workflows: OpenClaw, Codex, Claude, and Gemini on the Same Table</title>
      <link>https://blog.margrop.net/en/post/woclaw-shared-memory-for-openclaw-codex-claude-gemini/</link>
      <pubDate>Sun, 05 Apr 2026 20:10:00 +0800</pubDate>
      <guid>https://blog.margrop.net/en/post/woclaw-shared-memory-for-openclaw-codex-claude-gemini/</guid>
      <description>&lt;p&gt;What matters most in a multi-agent system is often not &amp;ldquo;which model is smarter&amp;rdquo;, but &amp;ldquo;which agent still remembers what happened five minutes ago&amp;rdquo;.&lt;/p&gt;&#xA;&lt;p&gt;When I put OpenClaw, OpenAI Codex, Claude, and Gemini into the same workflow, the most painful problem was not raw answer quality. It was context fragmentation:&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;OpenClaw remembered scheduling decisions, Codex remembered implementation details, Claude remembered review conclusions, and Gemini remembered external references, but none of them knew what the others knew.&lt;/li&gt;&#xA;&lt;li&gt;Each tool had its own session lifecycle, so yesterday&amp;rsquo;s discussion was often gone by tomorrow.&lt;/li&gt;&#xA;&lt;li&gt;As soon as a project entered a multi-round, multi-tool stage, repeating the same background became more expensive than solving the problem itself.&lt;/li&gt;&#xA;&lt;li&gt;Without a shared memory layer, the final result was not collaboration, but several partial answers that looked similar and still failed to line up.&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;This post is about how I used WoClaw to place all of those tools on the same shared memory layer, so they could stop talking past each other and start working from the same state.&lt;/p&gt;&#xA;&lt;p&gt;To avoid leaking private information, all examples below are abstracted. They do not include real hostnames, account names, addresses, tokens, or internal project codes.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Adding Proxy Support to Antigravity and Claude on macOS: Safely Wrapping Electron Apps Without Patching Them</title>
      <link>https://blog.margrop.net/en/post/macos-electron-app-proxy-wrapper-for-antigravity-and-claude/</link>
      <pubDate>Wed, 25 Mar 2026 10:00:00 +0800</pubDate>
      <guid>https://blog.margrop.net/en/post/macos-electron-app-proxy-wrapper-for-antigravity-and-claude/</guid>
      <description>&lt;blockquote&gt;&#xA;&lt;p&gt;&lt;strong&gt;Before You Start&lt;/strong&gt;&#xA;This post documents a pattern that has already been validated in a real macOS environment: &lt;strong&gt;do not patch the original application bundle, and do not publish your real proxy endpoint. Instead, place a tiny wrapper app in front of the original Electron application.&lt;/strong&gt; That wrapper becomes the stable place where proxy settings, launch flags, and Node-side bootstrap logic live.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;When people first hit this problem, the instinct is usually to edit &lt;code&gt;/Applications/Claude.app&lt;/code&gt; or &lt;code&gt;/Applications/Antigravity.app&lt;/code&gt; directly. That can work once, but it is a poor long-term operational choice for three reasons:&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;You may break code signing behavior and make future launches or permission prompts more fragile.&lt;/li&gt;&#xA;&lt;li&gt;Auto-updates can overwrite your local modifications at any time.&lt;/li&gt;&#xA;&lt;li&gt;If you hardcode a real proxy endpoint into the app bundle, screenshots, scripts, or a public post, you can leak private infrastructure details that never needed to be exposed.&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;The approach that proved much more stable was:&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;Leave the original &lt;code&gt;Claude.app&lt;/code&gt; and &lt;code&gt;Antigravity.app&lt;/code&gt; untouched.&lt;/li&gt;&#xA;&lt;li&gt;Create &lt;code&gt;Claude (Proxy).app&lt;/code&gt; and &lt;code&gt;Antigravity (Proxy).app&lt;/code&gt; under &lt;code&gt;~/Applications&lt;/code&gt;.&lt;/li&gt;&#xA;&lt;li&gt;Let each wrapper app do only three things: load a private &lt;code&gt;proxy.env&lt;/code&gt;, export upper/lower-case proxy variables, and launch the original Electron binary with &lt;code&gt;--proxy-server&lt;/code&gt;.&lt;/li&gt;&#xA;&lt;li&gt;If the target app also uses Node/undici &lt;code&gt;fetch&lt;/code&gt;, inject a very small &lt;code&gt;NODE_OPTIONS=--require=...&lt;/code&gt; bootstrap so Node-side requests follow the same proxy path.&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;All proxy endpoints in this article are intentionally redacted and replaced with placeholders such as:&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;http://127.0.0.1:PORT&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Replace that value with your own local proxy entrypoint. &lt;strong&gt;Do not publish real proxy hosts, internal IP addresses, usernames, passwords, tokens, or internal domains in a public article, repository, or screenshot.&lt;/strong&gt;&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
