<?xml version="1.0" encoding="utf-8" standalone="yes"?><?xml-stylesheet type="text/xsl" href="/atom.xsl"?><feed xmlns="http://www.w3.org/2005/Atom" xml:lang="zh-cn"><id>https://maxlen727.github.io/tags/vibe-coding/</id><title>Vibe Coding on 暮歌</title><updated>2026-10-29T02:16:38Z</updated><language>zh-cn</language><subtitle>它甚至消失不起</subtitle><background>/background_hu_d92feabfcd60f52c.webp</background><accent>139, 92, 246</accent><accentLight>167, 139, 250</accentLight><debounce>70</debounce><author><name>微恙</name><email>maxlen@duck.com</email><uri>https://maxlen727.github.io/</uri></author><link href="https://maxlen727.github.io/tags/vibe-coding/atom.xml" rel="self" type="application/atom+xml"/><link href="https://maxlen727.github.io/tags/vibe-coding/" rel="alternate" type="text/html"/><generator uri="https://gohugo.io" version="0.148.2">Hugo</generator><rights>© 2021 - 2026 MaxLen All Rights Reserved.</rights><entry><id>https://maxlen727.github.io/posts/weekly-2/</id><title>「并非 Weekly」2</title><published>2025-08-03T21:23:47+08:00</published><updated>2025-08-03T21:23:47+08:00</updated><author><name>微恙</name></author><link href="https://maxlen727.github.io/posts/weekly-2/" rel="alternate" type="text/html"/><summary>又一个 Vibe Coding 的产品：XSnap; Zen 浏览器美化：Browser as Glass; 试试Zed; 睡不够啊啊</summary><content type="html" xml:base="https://maxlen727.github.io/posts/weekly-2/"><![CDATA[
<h2 class="relative group">又一个 Vibe Coding 的产品：XSnap 
    <div id="又一个-vibe-coding-的产品xsnap" class="anchor"></div>
    
    <span
        class="absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100 select-none">
        <a class="group-hover:text-primary-300 dark:group-hover:text-neutral-700 !no-underline" href="#%e5%8f%88%e4%b8%80%e4%b8%aa-vibe-coding-%e7%9a%84%e4%ba%a7%e5%93%81xsnap" aria-label="锚点">#</a>
    </span>        
    
</h2>
<p>上次 Weekly 说到 Vibe 了一个热力图记事器 <a
  href="https://github.com/maxlen727/ChronoHeat"
    target="_blank"
  >ChronoHeat</a>，紧接着束束就又 Vibe 了一个产品——<a
  href="https://github.com/maxlen727/XSnap"
    target="_blank"
  >XSnap</a>. 用途是将 X 上的 Tweet 转成美丽的分享图。</p>
<p>






<figure>
    <img class="my-0 rounded-md" loading="lazy" alt="XSnap-elonmusk-1949938925163962634(12)" src="https://maxlen727.github.io/picx-images-hosting/XSnap-elonmusk-1949938925163962634%2812%29.96a1x9y3e7.webp">

  
</figure>
</p>
<p>起因是束束上次写周报用了很多 Tweet 嘛，束束发现网上大多数将 Tweet 转分享图的工具都在 Elon Musk 接手 Twitter 之后死翘翘了，唯一发现能用的就是上次 Weekly 里的 Pikaso. 并且这个网站是收费的，免费额度只有5张图。</p>
<p>那束束就试着自己 Vibe 一个。众所周知，在 Elon Musk 接手 Twitter 之后 API 就被限制得死死的，从官方拿数据就很不现实，并且束束也怀疑 Gemini 的编码能力能不能做到这一步。所以束束先让 Gemini 做了一个本地版的文章转分享图工具，检验之后再继续以此为基础加入获取 X 数据的能力。</p>
<p>自然而然的，很容易想到 <a
  href="https://github.com/FxEmbed/FxEmbed"
    target="_blank"
  >FixupX</a> 这个项目，可以绕过官方 API 拿到一些 Tweet 数据。束束直接把这个项目的 README.md 扔给了 Gemini, 结果还真的轻松实现了出来。</p>
<p>这次 Vibe 过程中遇到了一点小疑难杂症是束束在本地测试 XSanp 没有问题，但是部署到 GitHub Pages 之后就不能用了，还以为是 FixupX 的限制，打开控制台之后提示资源被浏览器增强型隐私保护拦截了。束束告诉 Gemini 之后，它表示这是一个同源策略的问题，使用 <a
  href="https://github.com/gnuns/allorigins"
    target="_blank"
  >allOrigins</a> 提供的公共代理服务请求 FixupX 之后就没问题了。</p>
<p>这次 Vibe 收获了同源策略相关的知识，以及明白了浏览器的增强型隐私防护究竟会做什么。</p>
<hr>

<h2 class="relative group">Zen 浏览器美化：Browser as Glass! 
    <div id="zen-浏览器美化browser-as-glass" class="anchor"></div>
    
    <span
        class="absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100 select-none">
        <a class="group-hover:text-primary-300 dark:group-hover:text-neutral-700 !no-underline" href="#zen-%e6%b5%8f%e8%a7%88%e5%99%a8%e7%be%8e%e5%8c%96browser-as-glass" aria-label="锚点">#</a>
    </span>        
    
</h2>
<p>束束发现了一个叫做 <a
  href="https://www.sameerasw.com/zen"
    target="_blank"
  >Zen Zero</a> 的项目，可以让 Zen 浏览器及部分网站拥有模糊效果，非常漂亮！整个浏览器就像一块玻璃一样。</p>
<p>






<figure>
    <img class="my-0 rounded-md" loading="lazy" alt="YouTube" src="https://maxlen727.github.io/picx-images-hosting/%e5%b1%8f%e5%b9%95%e6%88%aa%e5%9b%be_20250808_102614.6f0zy2b7bw.webp">

  
</figure>








<figure>
    <img class="my-0 rounded-md" loading="lazy" alt="ChatGPT" src="https://maxlen727.github.io/picx-images-hosting/%e5%b1%8f%e5%b9%95%e6%88%aa%e5%9b%be_20250808_102932.me2gtaso.webp">

  
</figure>
</p>
<p>这些是适配了的网站，没适配的网站就没办法完美透明化了，倒是可以强制使网站透明化，但有些网站会出现 bug 就是了。</p>
<hr>

<h2 class="relative group">试试 Zed 
    <div id="试试-zed" class="anchor"></div>
    
    <span
        class="absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100 select-none">
        <a class="group-hover:text-primary-300 dark:group-hover:text-neutral-700 !no-underline" href="#%e8%af%95%e8%af%95-zed" aria-label="锚点">#</a>
    </span>        
    
</h2>
<p>束束把自己常用的代码编辑器从 VS Code 换到了 Zed.</p>
<p>这个编辑器还没做出来的时候束束就关注到了，毕竟是 Atom 原班人马的作品，声量就大一些嘛。更加值得注意的是这个编辑器的技术栈是 Rust, 不像 VS Code 和 Atom 那些基于 Web 的和 JetBrains 家的笨笨 Java. 并且它被设计之初就力图达到快速、高性能，它的界面全都是 GPU 加速渲染的，这非常酷。束束打开它的时候就感受到了飞快的速度，设计也是超级简洁漂亮。</p>
<p>






<figure>
    <img class="my-0 rounded-md" loading="lazy" alt="Zed" src="https://maxlen727.github.io/picx-images-hosting/%e5%9b%be%e7%89%87.2yyo5zliup.webp">

  
</figure>
</p>
<p>嗯，这个 UI 大概就是非常克制的美吧。束束用 JetBrains Mono 换掉了 Zen Plex Mono, 它的默认字重偏细，但束束想要稍微调粗一点点发现没有那么细分的字重。不过反正束束觉得 Zen Plex Mono 也没有 JetBrains Mono 好看就是了。</p>
<p>Zed AI 属于能用的水平，代码补全有一点点聪明，因为 Zed AI 对你的代码无论是预测还是修复，都是小小的改动，隔壁 Copilot 的大段大段的补全束束实在感觉无法驾驭（当然，如果你喜欢 Copilot 的话，Zed 也有原生的 Copilot 支持）。</p>
<p>常用的语言肯定都支持了，很多是内建的支持，不需要安装插件。写完代码按下保存的时候 Zed 会瞬间帮你格式化代码，在用 VS Code 的时候束束从未意识到代码格式化之后竟然可以看起来这么爽快~</p>
<p>






<figure>
    <img class="my-0 rounded-md" loading="lazy" alt="插件" src="https://maxlen727.github.io/picx-images-hosting/%e5%9b%be%e7%89%87.4qrn0wgsfx.webp">

  
</figure>
</p>
<p>插件市场也有一定规模了（虽然还是跟 VS Code 不可比），也提供 MCP 服务器安装。</p>
<p>下载 Zed 的时候也就是想玩玩，没想到这东西已经发展得这么成熟了，一下子就成为了束束的主力编辑器（主要是快呀，Zed 太快了）</p>
<p>Zed 官方暂时不提供 Windows 的支持（只有社区编译的版本）。虽然没有 Windows 的支持，但是却有 Linux 的支持。就这点束束是很敬佩的。</p>
<hr>

<h2 class="relative group">睡不够啊啊 
    <div id="睡不够啊啊" class="anchor"></div>
    
    <span
        class="absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100 select-none">
        <a class="group-hover:text-primary-300 dark:group-hover:text-neutral-700 !no-underline" href="#%e7%9d%a1%e4%b8%8d%e5%a4%9f%e5%95%8a%e5%95%8a" aria-label="锚点">#</a>
    </span>        
    
</h2>
<p>束束也不知道为什么老是睡不够，每天睡 7 个小时实在还是很困。并且发现自己只能睡 7 小时：如果早睡那就会早醒，醒了就睡不着了，有次差不多 21 点就去睡了，结果第二天醒来的时候发现是 4 点左右，那不还是 7 小时嘛（苦笑）；如果晚睡就会晚醒，总计睡眠时长还是 7 小时。</p>
<p>困倦但难眠。</p>
]]></content><category term="并非Weekly"/><category term="Vibe Coding"/><category term="美化"/><category term="Zen Browser"/><category term="Zed"/><category term="睡觉"/></entry><entry><id>https://maxlen727.github.io/posts/weekly-1/</id><title>「并非 Weekly」1</title><published>2025-08-01T16:42:51+08:00</published><updated>2025-08-01T16:42:51+08:00</updated><author><name>微恙</name></author><link href="https://maxlen727.github.io/posts/weekly-1/" rel="alternate" type="text/html"/><summary>并非 Weekly；看完了《葬送的芙莉莲》；奇怪的 AdventureX 2025；Vibe Coding 初体验</summary><content type="html" xml:base="https://maxlen727.github.io/posts/weekly-1/"><![CDATA[
<h2 class="relative group">并非 Weekly 
    <div id="并非-weekly" class="anchor"></div>
    
    <span
        class="absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100 select-none">
        <a class="group-hover:text-primary-300 dark:group-hover:text-neutral-700 !no-underline" href="#%e5%b9%b6%e9%9d%9e-weekly" aria-label="锚点">#</a>
    </span>        
    
</h2>
<p>束束这周开始写 Weekly，然而并非 Weekly，因为束束估计不会每周更新，新鲜事不是每周都有的，就算有的话，束束这种懒猫应该也不会每星期都写。</p>
<p>有人写 Weekly 是为了监督自己，因为如果 Weekly 没什么可写那就说明自己这一周没有长进。但束束不想写个人成长的 Weekly，束束只想记录一下最近发生了什么，或者组织一下那些不值得写一整篇文章的小段。</p>
<hr>

<h2 class="relative group">看完了《葬送的芙莉莲》 
    <div id="看完了葬送的芙莉莲" class="anchor"></div>
    
    <span
        class="absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100 select-none">
        <a class="group-hover:text-primary-300 dark:group-hover:text-neutral-700 !no-underline" href="#%e7%9c%8b%e5%ae%8c%e4%ba%86%e8%91%ac%e9%80%81%e7%9a%84%e8%8a%99%e8%8e%89%e8%8e%b2" aria-label="锚点">#</a>
    </span>        
    
</h2>
<p>束束不是二次元重度爱好者，看番也只是偶尔看看。花了两天时间看完了《葬送的芙莉莲》，评价四个字：美轮美奂。无论是剧情、画风、上色、人物，都是美轮美奂。</p>
<p>故事的开始是勇者故事的结束，我们对他们一无了解，只知道勇者辛美尔、魔法师芙莉莲、僧侣海塔、战士艾泽组成的四人小队打败了魔王。然后画面一转，年华一瞬，除了精灵芙莉莲，大家都已老去，辛美尔先是死去，然后是托孤菲伦给芙莉莲的海塔，艾泽由于是矮人，寿命长一些，但也不是能够战斗的年纪了，将徒弟休塔尔克交给了芙莉莲。</p>
<p>






<figure>
    <img class="my-0 rounded-md" loading="lazy" alt="过去、未来" src="https://maxlen727.github.io/picx-images-hosting/%e5%9b%be%e7%89%87.7axh3qf9r7.webp">

  
</figure>
</p>
<p>对于芙莉莲来说，“一会儿”就是三四年，精灵的漫长岁月中，和勇者的十年旅行也就是芙莉莲的一瞬。虽然我们不详细清楚勇者一行到底做了什么，但芙莉莲、菲伦、休塔尔克的旅途上，处处可见辛美尔对世界留下的影响，芙莉莲常常想起辛美尔的片段，编织了我们对于辛美尔一行的模糊认识。</p>
<p>






<figure>
    <img class="my-0 rounded-md" loading="lazy" alt="新小队" src="https://maxlen727.github.io/picx-images-hosting/%e5%9b%be%e7%89%87.3nrxg7ivlv.webp">

  
</figure>
</p>
<p><strong>「如果是辛美尔的话，一定会这样做吧」</strong></p>
<p>






<figure>
    <img class="my-0 rounded-md" loading="lazy" alt="辛美尔" src="https://maxlen727.github.io/picx-images-hosting/%e5%9b%be%e7%89%87.8hgscc36nr.webp">

  
</figure>
</p>
<p>整部作品哀而不伤，没有动荡起伏的情节，只有平静的冒险和探索。在这样的过程中，几个笨拙的生命逐渐会学人情温暖、观照世界，这是一场自我修行，这是对于魔法意义的浪漫回应。</p>
<p>之前束束说过：看完一部番之后会有中孤独的怅然若失感，而这部番没有没有给束束这样的感觉。这部番给我一种特别的感觉，恬静，悠远，浪漫&hellip;&hellip;</p>
<p><strong>这正是：千年孤旅叹流光，方知刹那情意长。昔日勇者留薪火，照亮精灵前路茫。</strong></p>
<p>






<figure>
    <img class="my-0 rounded-md" loading="lazy" alt="芙莉莲" src="https://maxlen727.github.io/picx-images-hosting/%e5%9b%be%e7%89%87.icfh9nlgp.webp">

  
</figure>
</p>
<p>听说第二季2026年1月出，已经开始期待了！</p>
<hr>

<h2 class="relative group">奇怪的 AdventureX 2025 
    <div id="奇怪的-adventurex-2025" class="anchor"></div>
    
    <span
        class="absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100 select-none">
        <a class="group-hover:text-primary-300 dark:group-hover:text-neutral-700 !no-underline" href="#%e5%a5%87%e6%80%aa%e7%9a%84-adventurex-2025" aria-label="锚点">#</a>
    </span>        
    
</h2>
<p><em>此处 AdventureX 指的是在中国举办的黑客松活动</em></p>
<p>束束是 24 年知道的 AdventureX, 当时听了<a
  href="https://sspai.com/post/91777"
    target="_blank"
  >少数派的一期Podcast</a>。我还挺敬佩这群年轻人的，却没想到今年的 AdvX 闹出了这么可笑的事情。</p>
<p>主办人个人做派有问题，传有性骚扰女同学的前科；场馆里到处有“禁止通行”，刺目且措辞令人不适；有人在场馆里发生不文明行为（大家看图吧，有点恶心，搞得束束都要孕吐了🌫）；主办方态度傲慢；主办人贩卖选手信息并正大光明称其为“梦想家数据库”</p>
<p>






<figure>
    <img class="my-0 rounded-md" loading="lazy" alt="禁止通行" src="https://maxlen727.github.io/picx-images-hosting/%e5%9b%be%e7%89%87.6m47ju3v97.webp">

  
</figure>








<figure>
    <img class="my-0 rounded-md" loading="lazy" alt="讨伐AdvX" src="https://maxlen727.github.io/picx-images-hosting/%e5%9b%be%e7%89%87.5q7q4dxo01.webp">

  
</figure>








<figure>
    <img class="my-0 rounded-md" loading="lazy" alt="场馆里的不文明行为" src="https://maxlen727.github.io/picx-images-hosting/%e5%9b%be%e7%89%87.6iklm4hvhy.webp">

  
</figure>








<figure>
    <img class="my-0 rounded-md" loading="lazy" alt="不文明行为的梗图" src="https://maxlen727.github.io/picx-images-hosting/%e5%9b%be%e7%89%87.2ks85g7os3.webp">

  
</figure>
</p>
<hr>

<h2 class="relative group">Vibe Coding 初体验 
    <div id="vibe-coding-初体验" class="anchor"></div>
    
    <span
        class="absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100 select-none">
        <a class="group-hover:text-primary-300 dark:group-hover:text-neutral-700 !no-underline" href="#vibe-coding-%e5%88%9d%e4%bd%93%e9%aa%8c" aria-label="锚点">#</a>
    </span>        
    
</h2>
<p>在 GitHub 上开源了一个小项目—— <a
  href="https://github.com/maxlen727/ChronoHeat"
    target="_blank"
  >ChronoHeat</a> ，是 Vibe Coding 完成的。这是一个简单的热力图记事器</p>
<p>起因是某心理阴暗的坏猫想要一个能直观记录 od(?) 的工具，发现市面上的产品没有令她满意的。束束想到了 GitHub 的提交热力图，所以就准备以这个为参照写一个记事器。设计的时候花了一些小巧思在上面：这个网页预置了几种事件类型，用 emoji 图标来展示，因为束束记得 Smartisan OS 的日历就是把重要事项用图标代替了，因为图标足够直白，并且预置的图标可以覆盖大部分的日常行为，这么做显然更加直观并能减少用户的心智负担；确定按钮和 emoji 是一体的，或许是为了遵守“如无必要 勿增实体”的设计哲学；甚至束束想把 darkmode 和语言的切换按钮删掉，因为它本来就可以根据系统状态切换&hellip;&hellip;</p>
<p>束束对 UX 有一些自己的想法，可能是受到了常听播客「Anyway.FM」的影响吧。</p>
<p>






<figure>
    <img class="my-0 rounded-md" loading="lazy" alt="ChronoHeat" src="https://maxlen727.github.io/picx-images-hosting/%e5%9b%be%e7%89%87.2ks85i14ej.webp">

  
</figure>








<figure>
    <img class="my-0 rounded-md" loading="lazy" alt="ChronoHeat-2025-07" src="https://maxlen727.github.io/picx-images-hosting/ChronoHeat-2025-07.99tnu8zt9f.webp">

  
</figure>
</p>
<p>这是束束第一次 vibe coding 的尝试，全程几乎没有干预代码文件，只提出了我的需求，然后主要由 Gemini 2.5 Pro 完成。DeepSeek R1 写的大体框架，Gemini 2.5 Pro 完善，Qwen3-Coder 负责 debug.</p>
<p>为什么是这样的分工呢？因为束束尝试了 GLM 4.5、Gemini 2.5 Pro、DeepSeek R1、Seed 1.6、Qwen3-Coder、kimi k2 这些模型，热力图和保存功能就只有 DeepSeek R1 做出来了，所以就干脆用 DeepSeek 做了，但是万恶的服务器繁忙使我只好转到 Gemini 2.5 Pro 继续完成工作。期间遇到 Gemini 无法解决的 bug 就扔给 Qwen3-Coder，这真的是国产编程之光了，可以一针见血地指出问题所在。</p>
<p>这次开发过程使用了 Gemini 总共 249597 tokens，大概占了 Gemini 2.5 Pro 的上下文 token 上限的 25% 了，各种功能改来改去。不过很开心束束还是收获了一些知识，并感受到了前端的魔幻。</p>
]]></content><category term="并非Weekly"/><category term="葬送的芙莉莲"/><category term="AdventureX"/><category term="Vibe Coding"/></entry></feed>