Filter
Exclude
Time range
-
Near
#YOM looks closer to settlement infra than a gaming wrapper: 14-minute sessions bill second by second, node execution and burns are visible on Avalanche, and $YOM sits in the payment path. Backed by @avax. Join the community. #YOM @YOM_Official
Replying to @1thousandfaces_
bro is a claude wrapper
2
Replying to @Prathkum
the model dying is part of the adaptation now note to self: dont bet the whole farm on any wrapper
4
I have to put the picture again so you can see what the man is referring to. This is not comfortable but rather and eyesore, also there is absolutely no reason a young wife using wrapper all in the name of comfortable. there are more better and comfortable options.
1
# Ponytail:让 AI Agent 写出 1 行而不是 50 行的 skill 你知道那种程序员。长发马尾,椭圆眼镜,在公司的时间比版本控制系统还长。你给他看五十行代码,他看了看,什么都没说,用一行替换了全部。 Ponytail 把这个人塞进了你的 AI Agent 里。 这是一个开源 skill,8 天前发布,已经支持 10 种 Agent(Claude Code、Codex、Cursor、Pi、Windsurf、Copilot……)。核心只有 95 行 SKILL.md,但每次触发,它都会让 Agent 停在一个梯子上,逐级往下走,在第一个能站稳的台阶停下。 --- ## 梯子:六步,但可能一步就够了 Ponytail 的整个方法论只有这六步: ``` 1. 这东西真的需要存在吗? → 不需要就跳过(YAGNI) 2. 标准库是不是已经有了? → 用标准库 3. 原生平台功能能覆盖吗? → <input type="date"> 而不是一个组件库 4. 已经安装的依赖能解决吗? → 用已装的,永远不加新依赖给几行代码能搞定的事 5. 一行能搞定吗? → 一行 6. 实在不行:能跑的最少代码 ``` **梯子是本能,不是研究项目。** 两步都成立?走更高那步,然后继续。第一个能用的懒方案就是对的。 --- ## 五组对照:正常 Agent vs Ponytail 我把五个日常 coding 任务跑了一遍,左边是正常 Agent 会写的东西,右边是 Ponytail。 ### 1. 日期选择器 ``` 正常: npm install flatpickr 30 行 React wrapper CSS import Ponytail: <input type="date"> // ponytail: 浏览器自带 ``` **1 个依赖 30 行 → 0 依赖 1 行。** 原生、无障碍、多语言、键盘导航、移动端适配——浏览器团队已经做完了。 ### 2. 缓存系统 ``` 正常: 120 行 TTLCache 类,含线程安全、LRU 淘汰、统计端点 Ponytail: from functools import lru_cache @lru_cache(maxsize=1000) ``` **120 行 → 2 行。** 最快的缓存是你根本不需要 debug 的那个。 ### 3. 限流器 ``` 正常: 35 行滑动窗口 RateLimiter 类,deque threading.Lock Ponytail: import threading _sem = threading.Semaphore(10) ``` **35 行 → 6 行。** Semaphore 是操作系统级别的限流,已经比你写的好。 ### 4. 防抖 ``` 正常: npm install lodash.debounce (600B) import wrap Ponytail: function debounce(fn, ms) { let t; return (...a) => { clearTimeout(t); t = setTimeout(() => fn(...a), ms); }; } ``` **一个依赖 → 3 行。** 不需要 leading/trailing/maxWait 的时候,这段代码够用十年。 ### 5. 倒计时组件 ``` 正常: React 组件,useEffect useState useRef cleanup 格式化逻辑 Ponytail: <input type="time"> // ponytail: 浏览器自带 ``` **190 行 React → 1 行 HTML。** 除非你真的需要一个定制的倒计时 UI,否则 `input[type=time]` 就够了。 --- ## 有数据吗? 有。作者跑了 5 个任务 × 3 个模型(Haiku、Sonnet、Opus)× 3 个配置(无 skill、Caveman、Ponytail)× 10 轮,取中位数。 **Ponytail v3 vs 无 skill 的基线:** | 指标 | 基线 | Ponytail | 差别 | |------|------|----------|------| | 代码行数 | ~293 | ~47 | **-84%** | | Token 用量 | 161,955 | 135,709 | **-16%** | | 耗时 | 479s | 127s | **-73%** | **Ponytail v3 vs Caveman(此前最极简的 skill):** | 指标 | Caveman | Ponytail | |------|---------|----------| | 代码行数 | ~117 | ~47 (**2.5× 更少**) | | Token 用量 | 138,410 | 135,709 (**-2%**) | | 耗时 | 136s | 127s (**-7%**) | 对于基线会写出 190 行倒计时组件、耗时 208 秒的那种退化情况,两个 skill 都完全避免了——但 Ponytail 在代码最小化上把 Caveman 又拉出了一个量级。 --- ## 不止是少写代码 Ponytail 的设计有几个被低估的决策: ### 1. "ponytail:" 注释——简化的意图显式化 每次 Ponytail 做简化,代码里会留一个 `ponytail:` 注释,说明选择了什么捷径、什么情况下需要升级。 ```python # ponytail: global lock, per-account locks if throughput matters _lock = threading.Lock() ``` 这让"简单"读起来像**有意为之**,而不是"Agent 偷懒了"。捷径有已知的天花板,注释里写了升级路径。后来需要升级的人不会骂你。 ### 2. 三个强度等级 | 等级 | 行为 | 场景 | |------|------|------| | **lite** | 正常写,但在旁边写一行"更懒的做法是……" | 不确定想多懒 | | **full** | 梯子强制执行,最短 diff,最短解释(默认) | 日常 coding | | **ultra** | YAGNI 极端主义。先删再写。一行搞定,同时质疑需求的其余部分 | 被代码库气到 | "加一个缓存"在三个等级下的反应: - **lite**:帮你加了。顺便说一句 `@lru_cache` 可以一行搞定。 - **full**:`@lru_cache(maxsize=1000)`。跳过了自定义缓存类,lru_cache 不够用时再加。 - **ultra**:不加。直到 profiler 说需要。真需要时:`@lru_cache`。手写 TTL 缓存类本质上是带命中率的 bug 农场。 ### 3. 有边界:不该省的地方绝不省 Ponytail 明确列出了**永远不能简化**的东西: - 信任边界的输入验证 - 防数据丢失的错误处理 - 安全措施 - 无障碍基础 - 用户明确要求的东西 非平凡逻辑(有分支、有循环、有解析器、有钱/安全路径)至少要留一个可运行的最小检查:一个 `assert` 自检或一个小 `test_*.py`,不要框架、不要夹具。但一行搞定的事不需要测试,YAGNI 对测试也适用。 ### 4. ponytail-review:只找能删的东西 配套了另一个 skill:`/ponytail-review`。它不是做正常代码审查——**它只猎杀过度工程。** 每条发现只占一行: ``` L12-38: stdlib: 27-line validator class. "@" in email, 1 line. L4: native: moment.js imported for one format call. Intl.DateTimeFormat, 0 deps. L52-71: delete: retry wrapper around idempotent local call. Nothing replaces it. ``` 结尾只汇报一个数字:`net: -N lines possible.` 如果没什么好删的,就说 `Lean already. Ship.` 然后闭嘴。 **这是 Ponytail 最锋利的洞察:好的 diff 是变短的 diff。** --- ## 为什么这件事很重要? AI 编码 Agent 有一个天然的偏见:**它们喜欢写东西,不喜欢删东西。** 你让它"加一个日期选择器",它默认的思维路径是:装一个库、包一层组件、加样式、加 hook、加清理逻辑。因为它觉得"做完"意味着产出代码。它不会停下来问:"浏览器是不是已经自带了?" Ponytail 把这个偏见翻转了。它让 Agent 在写任何代码之前,先爬一遍梯子——**在每一步停下来问"这真的需要存在吗"**。而这个翻转带来的收益是全方位的: - **写得更少** → 代码更少,bug 更少 - **依赖更少** → 供应链攻击面更小 - **更接近原生** → 可访问性、本地化、性能天然更好 - **意图显式** → `ponytail:` 注释让简化成为存档的决策 - **升级路径清晰** → 每处简化都在注释里告诉了你怎么升级 **最好的代码,是那行你从未写过的代码。第二好的,是 Ponytail 替你删掉的那行。** --- ## 怎么装 ```bash # Claude Code /plugin marketplace add DietrichGebert/ponytail /plugin install ponytail@ponytail # Pi agent harness pi install git:github.com/DietrichGebert/po… # Codex codex plugin marketplace add DietrichGebert/ponytail # Cursor / Windsurf / Copilot / Kiro # 复制对应的规则文件到项目或全局配置目录即可 ``` 11 天,1.2k stars,MIT 协议。 --- ## 一句话 **Ponytail 解决的问题不是"代码太多",而是"Agent 默认想写太多"。** 它给了 Agent 一套本能:在碰键盘之前,先问六个问题。往往问到第二个就停了。 它让你想起公司里那个最老的程序员。他什么都不说。他写一行。它能跑。 #Ponytail #AI编码 #极简主义 #Agent #开源
29
Replying to @fwTyo
Gamba but with a Binance wrapper
Replying to @AmericaPartyX
Define "pension." Most of those flows are 401k retail money in an ETF wrapper, not an endowment or public plan changing its actual mandate. The conflation drives the headline.
1
1
6
Replying to @CryptoVerse_Co
An active fund promising to beat a crypto index is TradFi importing the one product that reliably loses to its own benchmark. The adoption is real. The outperformance claim is the oldest game in a shiny new wrapper.
1
Replying to @markvalorian
Maybe, as you say its premeditated, or just Ego. If this backfires, and Mythos gets a permanent export control, which isn't a ban it just limits the useable market and wrapper resale, would not be good for the bottom line. I would also expect the 90 day model review executive order to go into place too. The current administration is unpredictable, if this is a ploy its a dangerous bet.
10
Mon. retweeted
Istg he's hiding all that candy under the wrapper 🍬 #dabi #mha #bnha #touyatodoroki
2
36
259
2,256
Returning that dumb Blinkit paper wrapper with its dumb marketing every single time so they get the message someday that it's not needed and they can perhaps stop charging for that. Just give me the items, the person already brings it in another bag.
1
7
SpaceX soared after its IPO. The ETFs that held it did not. That is the wrapper problem in one sentence: owning the right asset can still mean buying the wrong exposure. #markets #tech #ETFs #AI
8
Replying to @crypto_banter
Say what you want about the optics, but Trump is running a flawless liquidity-generation flywheel. He turned a $60M mega-event into an instant, high-velocity distribution network for $USD1. Paying elite athletes in World Liberty stablecoins forces immediate institutional plumbing, wallet infrastructure integration, and mainstream media coverage all at zero customer acquisition cost. Never short a sitting President who understands the attention economy well enough to launch his own sovereign-adjacent fiat wrapper.
14
Ramona Eid retweeted
Every abstraction in your .NET app has a cost. An interface. A repository. A service wrapper. A mapper around a mapper. Each one can make sense. But each one also gives the next developer one more place to look before they find the real logic. The problem is not abstractions. The problem is adding them out of habit. Wrapping a payment provider? That can be useful. External systems change. You may need to swap one provider for another. Adding a service that only passes calls to a repository? That may only make the code harder to follow. Before adding another layer, I like to ask: → What change is this protecting me from? → Do I have a real need for more than one version? → Does this hide useful details, like how a query runs? → Would the code be simpler without it? Clean code is not the code with the most layers. It is the code where every layer has a reason to exist. I have added abstractions too early before. These are the rules I now use to decide which ones earn their place, and which ones should go: milanjovanovic.tech/blog/the…
2
15
83
3,078
Replying to @CuteoutdoorsyNN
You could dress in a giant bubblegum wrapper and I think you’d look good. Just don’t cover up those nice legs! 😁🤗🥵
1
7
Mumu Man Woman wrapper Onye mgbu
24
Popped up in my feed and i instantly recognized the structure from a different brand. same creative playbook, different name on the package. "TheraWrap uses 660nm red light and 850 nm near-infrared light to target the root cause of your pain. The powerful dual-wavelengths of light penetrate deep into your tissues, restoring circulation and oxygen to your hands and wrists." What's interesting isn't the copy. it's the white-label pattern. multiple brands are running near-identical scripts under different doctor personas. that means the angle is winning hard enough that operators are racing to clone it. The doctor name framing is the variable they tweak. trust shifts based on perceived authority, and a personal name converts differently than a magazine-style brand. they're A/B testing the wrapper, not the offer. Mechanism specificity does the heavy lifting again. 660nm and 850nm aren't numbers a casual reader can verify, but they're numbers that signal real science. that's the trick of clinical specificity. you don't need the reader to understand, you need them to believe someone does. The 15-minute commitment and 90-day guarantee are the standard de-risk stack. once you see this structure twice, you start spotting it everywhere in the chronic-pain niche. The white-label clone wave is itself a signal. when you see three brands running the same script with different doctor avatars, that script is the winner of the quarter in that niche. swipe accordingly. full ad: app.gethookd.ai/share/ad/102… NOW GO FUCKING PRINT 🔥 I use @GetHookdAI to spy on 80M winning ads. They scrape 110,000 brands daily on Facebook.
1
1
78
Dehati aadmi Khaa ke wrapper bhi vhi fek diya
A passenger refused to vacate someone else's reserved seat. His argument? "I'm travelling with family." The actual seat holder disagreed. Should families be allowed to adjust seats for convenience? Or should reserved seats be respected no matter what? Because if everyone starts making their own rules, what is the point of reservation? And why do some passengers start giving lectures on "adjustment" when it's not their seat being taken? Rules should apply equally to everyone—young or old.
3
The RWA market is getting crowded, but most products still skip the hardest part: making the underlying asset legible. @nGRND_io is more interesting when viewed as an information layer around gold exposure, not just another token wrapper. 🧠 Clarity compounds before liquidity does. #RWA #Gold #Web3
1
5
Replying to @paddythegreyt
Mine can hear a string cheese wrapper from miles away!
1
1