これは最高すぎる!
e2eはこれまでのE2E フレームワークと違って、テストコードでエージェントに非決定論的な検証ができるもので、たとえば、AIを組み込んだアプリのE2Eテストもコードで記述できるものだ
まさに、テスト設計に革命をもたらすフレームワークと言える!
そこから、/migrate-to-e2e Skillが登場した
これは既存の Playwright、Cypress、Selenium、Detox、または Maestroといった主要E2Eフレームワークのテストスイート(関連するテストケースの集合体)を、一度に 1 単位(機能)ずつ e2e に移行するものだ
しかも、移植された各テストが検証されるまで、古いスイートは新しいスイートと並行して実行されるので、このSkillを使えば安心して移行が実施できる
E2Eは長時間テストがかかる場合があるが、このSkillの進行状況は MIGRATION.md で保持されるため、エージェントが落ちても、テストが落ちても続きから再開できる点も最高だ!
私も最近新しく立ち上げるプロジェクトは絶対にe2eを入れている
それくらい必須のものになっている!
alex retweeted
卧槽,REA 还是太超标了啊,这下人人都是 Claude 设计总监了!
一直觉得 Claude 的前端特别丝滑
但我不是专业前端,用 Claude 自己复刻也一直做不出那个味儿
刚用 REA 把 Claude Desktop 底裤都扒光了,才发现 UI 藏了这么多细节
啥吸附、过渡、咬合、贝塞尔曲线,之前从来没考虑过🤣
1️⃣在暗色模式下,白字黑底在人眼的视觉上上会因视网膜光渗效应产生光晕发散,视觉上感觉比浅色模式粗10%~15%
所以 Claude 把字重从 500 / 600 减到了 460 / 560
两个主题下看起来粗细完全一致
2️⃣正文绝不让一个字单独占一行
会自动把倒数第二个词拉下来一起换行
3️⃣回答的字是一个个「晕开」出来的
每个字从模糊到清晰只要 90ms,一个接一个
难怪看着那么舒服
alex retweeted
跟大家分享一下我构建Agent端到端测试的一套方案:
pi + DeepSeek Flash + ego lite
主要用来完成日常开发的自动化测试
简单来说:
1. ego lite:负责实际操作浏览器,包括页面交互、状态读取和结果验证,开源,可以丝滑导入你的chrome配置
2. pi:作为 Agent Harness,负责整个任务的执行和工具调度,开源,你完全可以基于你的业务测试需求二开
3.DeepSeek v4.1 Flash:tps很高的模型,调用成本很低,提高自动化测试的效率
比较方便的是,不需要提前写一整套 Playwright 脚本,直接用自然语言描述测试流程,就可以让 Agent 自动完成页面操作、检查结果。固定的一些sop可以直接沉淀为skill
我拿实际开发过程中的三类 Web UI 任务做了一轮小规模测试,包括信息查询、多轮交互、状态修改及持久化验证对比了几套不同的 Agent + Model + Browser 组合,附了张脱敏后的测试对比图,大家可以参考一下。
ego lite这个产品的构建理念我还蛮喜欢的:
1. 共享登录的浏览器状态
2.agent友好的设计
3.并行多任务处理的优化
而且它给了蛮多的最佳实践,比如:
1. 抓取并聚合社交媒体帖子
2. 自动查找并申请职位
3. 自动投递简历
如果你有一些idea,完全可以把它嵌入到你的工作流
搭配上pi + deepseek flash,实现速度+成本上的提升
最重要的是还开源,完全可以基于自己的需求做一些定制化开发。美中不足的是只支持mac,windows系统的小伙伴可以再等等。
🤖 Made with AI
alex retweeted
Should you /grill-with-docs, /wayfinder, or just one shot the code?
1. If the diff is tiny, DON'T grill
/grill-with-docs saves you from situations where the agent built the wrong thing. But if the thing it's building is tiny, that cost drops to nothing. So one-shotting is absolutely fine when you're only making small changes.
2. Never start with /wayfinder
A failure mode of /wayfinder is that you start grilling and the solution turns out to be way simpler than you thought. Why is this bad? Because you've created the map and tickets, and you realise you don't need them.
So if the expected diff is medium-large, always start with a /grill-with-docs session. Then, if planning starts to get out of hand, just say "/wayfinder let's turn this into a map".
alex retweeted
My top 3 skill makers:
- @poteto
- @dexhorthy
- @emilkowalski
Always learn a ton from reading their skills.
兄弟们,美区 PayPal 终于搞定了!
最近 Claude 封号给我折腾麻了,之前用 Apple 礼品卡订阅,退款以后钱还锁在苹果账户里,只能继续消费,是真的难受。。
所以这次我直接搞了一个美区 PayPal:
✅ 注册 + 绑卡
✅ 身份验证
✅ 绑定美区 App Store
✅ Claude 订阅直接 PayPal 扣款
✅ 退款还能原路退回 PayPal
我现在第 4 个 Claude 账号就是美区 App Store + PayPal 付款,目前还活着 😂
以后美区订阅,终于不用天天囤礼品卡了。。
完整保姆级教程已经整理好了,基本把我踩过的坑都写进去了 👇
alex retweeted
冷知识:很多人 KYC 过不了,其实就卡在一张地址证明
最近发现个专门整理地址证明的网站
银行账单、水电燃气账单、收入证明等类型都有
经常注册海外平台的可以拿来了解不同地区的材料要求
传送门:1stbills.com
alex retweeted
如果你的 Claude 号最近被封了,一定要去申诉!
我的 bot 刚发消息跟我说:你那个 Claude 小号解封了。
我前两天刚注册的号,通过 iOS 订阅 Pro,刚订完就封…
本来想着死马当活马医,没想到真解封了(事实证明用我那套方法,anthropic 真把我当成老美了)
申诉信可以让 ChatGPT 帮你写,就抓这两点:
「晓之以理」:讲清楚事实,我就是正常在用,做了什么、没做什么。
「动之以情」:比如说我原本是 Codex 的忠实用户,听说你们新模型很强才过来付费,正常用着就被封了,真的很冤。
重点在情上。
alex retweeted
经常用 AI 写代码的朋友们,可以了解一下领域驱动设计(DDD)这个概念。它的英文全称是 Domain-Driven Design。
平时做开发,很多人习惯先建数据库表、写增删改查,然后把一堆复杂的业务判断散落在控制器和前端组件里。一旦需求变多,字段和逻辑到处缠绕,改一个地方就坏一片。
DDD 的核心思想,就是把重心从底层的数据库和框架,拉回到真实的业务本身。在动手敲代码之前,先理清楚现实业务里的概念、规则和流转关系,让代码直接反映业务本身的逻辑。
在传统软件工程里,落地 DDD 通常围绕三个核心动作展开。
第一个是建立统一语言(Ubiquitous Language)。
在整个项目里,把所有的业务名词定下唯一标准。同一个业务概念,不能在需求里叫客户,在代码里叫用户,在数据库里又叫账号。统一了词汇表,沟通损耗直接抹平。
第二个是划分限界上下文(Bounded Context)。
再大的项目,也不能揉成一团。按照业务职责把系统切分成几个明确的独立边界。比如电商项目里,商品展示、库存流转、支付结算各自是一个独立的上下文,每个上下文只管好自己的规则,跨边界调用只通过清晰的接口契约进行。
第三个是构建充血的领域模型。
不要写那种只有字段、没有业务行为的空壳数据类。把属于某个实体的业务校验、计算逻辑和状态流转,直接封装在实体内部,让核心业务逻辑保持稳定。
搞懂了这套心智,在 Vibe Coding 时代跟 AI 协同就会顺手得多。
大模型写具体代码的速度极快,但它本质上是个概率系统。你给它一段模糊的需求,它顺着概率去猜,必然会胡乱生成一堆缺乏边界的胶水代码。
结合 AI 使用 DDD,最舒服的姿势是做好分工:人类负责搭建领域模型与划定边界,模型负责高效地补全具体实现。
具体的最佳实践可以总结为以下四步:
第一步,建立全局的领域词汇表与契约文件。
在项目根目录的规则文件或者系统提示词里,花几分钟把核心实体名词、状态枚举和核心行为定义清楚。给大模型一套毫无歧义的统一语言,它在命名变量、写类型定义和生成接口时就不会前后打架。
第二步,按照限界上下文限制 AI 的注意力范围。
不要试图让大模型一次性通读并理解几万行的大工程。按照业务边界把代码组织成清晰的模块。每次派发任务时,只把当前上下文里的实体定义、接口契约和相关文件喂给模型。把上下文体积控制在极小范围,模型的幻觉和误改率会大幅下降。
第三步,明确要求模型把规则内聚在实体内部。
给 Agent 提要求时,限制它不要在外层写一堆零散的条件判断补丁,而是把业务规则封装在对应的领域实体里。外层的调用代码越干净,后续让模型修改逻辑或者新增特性时,波及的范围就越小。
第四步,用行为测试作为确定性契约。
在让 AI 敲具体实现之前,先把领域实体的行为测试用例立起来。跑测试通过了才算交付。用严格确定性的单测和编译器,把大模型的概率漂移稳稳按在轨道里。
人类理清概念与划定边界,AI 负责快速落地代码。
喜大普奔!朋友的claude 账号解封了。我要了他的解封申诉邮件先收藏起来,也分享给大家:
What do you use your account for?
> I use Claude as an everyday assistant for my personal 【work/study/research】— mainly 【writing, planning, research, and occasional programming help】, with a focus on 【你的主要使用方向,如:document drafting and code review】. All activity on the account is ordinary, legitimate individual use on my own device, consistent with normal daily 【work/study】workflows.
Anything else we should know?
> I would appreciate a manual review of my account. If any specific activity raised concerns, please let me know what it was so I can understand and address it. I'm glad to provide any additional details about my 【use case / project】if needed.
使用方式:把 4 处 【 】 替换成你自己的内容即可,其余句式是通用申诉话术,不用动。
alex retweeted
Prompt of the day:
/retro read my last 10 coding agent sessions and find ways to make my repo easier to navigate. Find where agents take too long to find relevant information, or rely on out-of-date docs.
Improving navigability is such an underrated way to save tokens.
alex retweeted
Goated skills every design engineer should know:
Emil design eng - ( ui-skills.com/skills/emilkow… )
Make interfaces feel better - ( ui-skills.com/skills/jakubkr… )
Playwright cli - ( ui-skills.com/skills/microso… )
React doctor - ( ui-skills.com/skills/million… )
Fixing accessibility - ( ui-skills.com/skills/ibelick… )
12 principles of animation - ( ui-skills.com/skills/raphael… )
Shadcn - ( ui-skills.com/skills/shadcn-… )
Jakubkrehel/skills - ( skills.sh/jakubkrehel/skills )
🗒️ 又发现一个后台神器 shadcn-admin,接活要做管理后台的话,界面这部分基本可以省了。
GitHub 揽获 1.4 万 star,两千两百多个 fork,MIT 许可证,拿去随便改。
想一下这个场景:接了个小项目要做后台,第一天几乎全花在搭壳子上——左边侧边栏、明暗主题切换、路由、几张表格页、一个全局搜索框,一样一样搭,两三天过去,正事一行没写。shadcn-admin 把这一整套做完了,十几个页面现成,侧边栏是内置组件,明暗主题和响应式都在里面,连从右到左语言的排版和无障碍适配都做了。
作者 satnaing 特意声明这不是脚手架模板,意思是别指望一条命令生成项目,它是一套做完的成品界面,你对着拆、按需改。底层是 Shadcn UI 那一套加 Vite、TanStack Router 和 TypeScript,登录部分接的是 Clerk。
前端最不值钱的时间就是重复搭壳子,这种活能省一天算一天。
GitHub:github.com/satnaing/shadcn-a…
alex retweeted
Add to your agent instructions when implementing with test driven development:
- Tautological tests considered harmful.
- Change-detector tests considered harmful.
- Do not create regression tests for bug fixes without a genuine gap in behavior testing.
grill-me単体で「深掘りした気」になって実装に走るのが一番危ない
/wayfinder を使ってくれ!
wayfinderはgrill-meを複数セッションに伸ばすだけのskillじゃない
本体は、プロトタイプと決定チケットの山を地図にすることだ
そして、私はここにもうひと手間加えている
まず、私がwayfinderを使うときは機能開発・修正時なのだが、実装すぐ入ることはしない
このwayfinderのマップをコンテキストにもう一度設計をpstackで考えるようにしている
最初の設計でうまくいくケースが少ないため、複数案をプロと他ピングして比較しベストな案を採用するためだ
pstackには/arenaや/swarmというskillがあり、これで複数案のプロトタイプを検証できる
プロトタイプの案が決まったら、/architect で実際に詳細設計に入る
/arena 同じタスクを複数エージェントに別々にやらせて、ベストな案を残し、他の案の良いところどりをする
/swarm 各Worker(別々のタスク)の成果物を合体して1つのコードにするもので、raceモードがある
raceモードでは、同じタスクを複数Workerに行わせて3つの方式で案を返却するモードだ
best-of-n ⋯ 最良を採用
first-pass ⋯ 最初に完了条件を満たしたものを採用
rank all ⋯ 順位付きで順位つきで残す
ちなみに、このpstackの使い方は以下のpstack ガイド Part2の使い方で、そこにGDDを加えたものだ
github.com/mattpocock/skills…
pstack ガイド(Part 2)を読んだメモ
Part 2では、Part 1で整えた検証環境を使いながら、問題の調査、設計、プロトタイピング、実行計画をどう進めるかを説明している
pstack使わなくても学びが多くあったため、スレッドで詳細もまとめてます!
1. エージェントに質の高い仕事をしてもらうには、目的と背景を十分に伝える。**実装方法を細かく決めすぎず**、人間が思いつかなかった解決策を探す余地も残す。
2. 実装前に、問題をエージェント自身の言葉で説明させる。雑多な会話を整理し、誤解を早く見つけ、人間の仮説によって調査の方向を狭めることを避ける。
3. /howで現在の仕組み、/whyで設計の背景を調べ、/teachで理解できる説明にする。説明のための調査は、人間の判断を助けるとともに、エージェント自身の理解にも役立つ
4. /recallで過去の会話から関連する作業を振り返る。**以前の調査や判断、失敗を新しい作業に引き継ぎ、目の前の症状だけで解決策を考えないようにする**
5. READMEやチュートリアルを先に書き、**利用者の使い方からAPIや内部設計を考える**。使い方を具体化することで、人間が完成形を理解でき、エージェントも実装を確かめる対象を持てる。
6. /technical-writingで、文書をチュートリアル、ハウツー、リファレンス、解説に分ける。文書を用途ごとに分け、/unslopで文章を整え、設計や使い方が伝わる文書にする。
7. **最初の設計をそのまま採用せず、複数案をプロトタイピングして比較する**。プロトタイプは判断のために作り、実際の操作、スクリーンショット、動画、測定結果を使って案を選ぶ。
8. **実験(小さく作って動かし、結果を確かめること)で答えられる疑問は、エージェント自身に確かめさせる**。抽象的な計画へのレビューを重ねて、根拠のない懸念を増やすより、プロトタイプと検証で不確かな点を減らしていく
9. **大きな変更では、/architectで既存の制約を調べ、利用例、データ構造、型、API、責任分担を設計する**。複数モデルによる独立した案と評価を使い、比較・統合してから実装する
10. 実装で設計との食い違いや再利用可能な回避策(処理)が見つかったら、設計を見直す。**細かな実装はエージェントに任せ、人間はデータの持ち方・構造やシステム間の連携を重視**し、実装で得た証拠によって、当初の設計をやり直す判断もする。
11. **設計が具体化したら、計画プレイブックで小さく検証できる作業やPRに分ける**。各作業に完了の証拠を定め、テストだけで済ませず、実際に動かして確認する。計画の構造や書式もスクリプトでチェックする。
12. **計画書は、実行や進行中の作業共有のために使う**。@poteto さんは、大きな作業では一時的にリポジトリへ置くこともあるが、完了後は混乱を残さないよう通常は削除している。
13. **/poteto-modeは、依頼に応じてプレイブックや関連スキルを使う入口となっている**。人間が毎回すべての手順を列挙する必要はなく、目的、制約、確認したい結果、必要なレビューのタイミングを伝える
又启动一个小项目了,这是我正式进入开发阶段之前,沟通结束的文档,可以参考一下,有需要的话,也可以直接把这份目录给你的 Agent 梳理一下。
# 项目文档树
.
├── AGENTS.md
│ # 项目协作与代码开发规范
├── README.md
│ # 项目简介、技术栈和快速开始说明
├── DESIGN.md
│ # 官网视觉风格、布局和交互设计规范
├── CHANGELOG.md
│ # 项目版本更新记录
├── TODO.md
│ # 项目开发计划和当前进度
└── docs
├── PROJECT-SPEC.md
│ # 项目定位、产品目标和功能范围
├── ARCHITECTURE.md
│ # 项目架构、目录结构和数据组织方式
├── COMPONENT-GUIDELINES.md
│ # 组件开发、样式、依赖和无障碍规范
├── PAGE-STRUCTURE.md
│ # 网站页面和组件详情页结构说明
├── DEVELOPMENT.md
│ # 项目开发和组件发布流程
├── REGISTRY.md
│ # 组件构建、校验和分发说明
└── DEPLOYMENT.md
# 项目构建与 Cloudflare 部署说明



































