Watch it work once. Then make it yours.先看它跑一次,再把它变成你自己的。
Site password · Aaron网站密码 · Aaron0435 525 634
WiFiWiFikandji guestPassword密码busybees
Open on your laptop在你的电脑上打开events.openonion.ai/workshop.html
OpenOnion
Keep this slide on screen while people arrive.学员入场和正式开始前展示这一页。
01 · ROOM CHECK01 · 现场调查LISTEN FIRST先听大家
Know the Room First
先认识一下彼此
01What do you do?你目前从事什么工作?
02How long have you used Codex?你使用 Codex 多久了?
03What do you want to learn today?今天最希望学会什么?
Ask about each person’s work, technical background, Codex experience, and goal.了解每个人的工作、技术背景、Codex 经验和学习目标。
Write down: Name | Technical or non-technical | Codex experience | Goal.记录:姓名|技术/非技术|Codex 经验|学习目标。
Introduce yourself as a long-time Claude Code and Codex user who switches tools by task.自我介绍:长期使用 Claude Code 和 Codex,会根据任务在两者之间切换。
Explain that today uses Codex because the workshop is designed for non-technical learners.今天面向非技术人员,因此主要使用 Codex。
If most learners already have Codex and the built-in browser working, compress slides 04–08 into quick verification checks and spend the saved time on workflow building, automation, and the Remote demo.如果大多数学员已经能正常使用 Codex 和内置浏览器,就把 04–08 页压缩成快速检查,把省下来的时间留给流程固定、自动化和 Remote 现场演示。
02 · TODAY02 · 今天TWO WORKFLOWS两条工作流
What You'll Learn Today
今天你会学到什么
Flow 1 · Engagement工作流 1 · 互动Warm your network — like and comment.点赞、评论,焐热已有人脉。
Flow 2 · Outreach工作流 2 · 触达新人Find your ICP · write in your voice.找到 ICP · 用你的语气写。
Write good prompts写好 promptExamples over rules · ten drafts, pick one.例子胜过规则 · 写十条挑一条。
Codex & your browserCodex 和你的浏览器Stealth browser · everything kept as skills.隐身浏览器 · 一切留成 Skill。
Two workflows — skills you keep.两条工作流——Skill 归你。
Give the map before the demo: two workflows. Flow 1 warms the network you have (engagement/marketing); Flow 2 reaches new ICP people (find, write, send). The rest — prompt craft, Codex, the browser — serves those two.demo 之前先给地图:两条工作流。工作流 1 焐热你已有的人脉(互动/marketing);工作流 2 触达新的 ICP(找、写、发)。其余——prompt 手艺、Codex、浏览器——都为这两条服务。
They leave with both workflows as skills they own, not slides they watched.他们带走的是两条工作流本身(作为自己的 skill),不是看过的几页幻灯片。
Keep it to 20 seconds — a signpost, not a lecture. The deck is organised as Part 1 / Part 2 to match this.20 秒讲完——路标,不是讲课。整个 deck 按 Part 1 / Part 2 组织,正好对应这一页。
Say out loud: Flow 2 sends only what you approve — nothing goes out without your sign-off.口头强调:工作流 2 只发你确认过的——没有你点头,一条都不会发出去。
This is live: the AI reads first, then decides how to engage.不是预录:让大家看到 AI 先读内容,再决定如何互动。
Run the complete engage command on your own computer.在自己的电脑上运行完整的 engage 命令。
Show the AI reading a post, choosing a reaction, writing a comment, and completing the interaction.展示 AI 阅读帖子、选择 Reaction、生成评论并完成互动。
Use a normal public post; skip ads and sensitive topics.使用普通公开帖子,跳过广告和敏感内容。
Explain that clients buy a repeatable workflow, not a single click.客户购买的不是一次点击,而是一套可以重复运行的流程。
04 · WHY IT WORKS04 · 为什么有用WARM THEM UP先预热
Why Engage First
为什么先互动,再开口
They're already here人已经在了Your ICP is already in your network.ICP 就在你的人脉里。
Warm, then ask先热,再开口Show up before you ask.先出现,再开口。
The algorithm notices算法看得见Active account → more reach.账号活跃 → 触达更多。
It comes back会还回来They come back to yours.他们也会回到你的帖子。
Every like is a deposit — paid back as reach.每个赞都是存款——以触达偿还。
This is the why behind the demo they just watched. Say it plainly: nobody buys from a stranger who opens with a pitch.这是他们刚看完那个演示背后的"为什么"。直说:没有人会从一个上来就推销的陌生人手里买东西。
The point that lands hardest: their ICP is already in their network. They do not need a bigger network today, they need a warmer one.最打动人的一点:他们的 ICP 已经在人脉里了。今天他们要的不是更大的人脉,是更热的人脉。
The bank metaphor is the one to land: every like/comment is a deposit, and it pays back two ways — LinkedIn boosts your reach, and the person reciprocates. This is the core LinkedIn-marketing move, and it costs attention, not money (no Sales Navigator, no ads).银行这个比喻是要讲透的一条:每个赞、每条评论都是一笔存款,它以两种方式偿还——LinkedIn 加大你的触达,对方也会回来。这就是 LinkedIn 营销的核心动作,成本是注意力,不是钱(不用 Sales Navigator,不用投广告)。
Set up the order of the day here: warm first (next slides), then find and reach out. That is why outreach comes later, not first.在这里把今天的顺序立住:先预热(后面几页),再找人、再开口。这就是为什么私信排在后面而不是最前面。
05 · MEET CODEX05 · 认识 CODEXWHERE YOU TYPE你在哪打字
This Is Codex
这就是 Codex —— 你打字的地方
CodexCodexPart of ChatGPT — one box at the bottom.属于 ChatGPT——底部一个输入框。
ConnectOnionConnectOnionThe stealth browser. “co” in commands.隐身浏览器。命令里叫 “co”。
You你Paste, Enter, watch.粘贴、回车、看着。
Everything happens in that one box.今天的一切都在这一个框里。
Show the actual Codex window on your screen right now — point at the input box with your cursor. Do not let anyone reach the first hands-on paste unsure where to paste.现在就把你屏幕上真实的 Codex 窗口投出来,用光标指着输入框。别让任何人到第一次动手粘贴时还不知道往哪粘。
Three names, one relationship: Codex is where you type; ConnectOnion (co) is the browser it drives; a skill is the instructions you paste in. That is all they need.三个名字,一层关系:Codex 是你打字的地方;ConnectOnion(co)是它驱动的浏览器;skill 是你粘进去的说明。他们只需要知道这些。
Have anyone who hasn't opened Codex do it now — this is the last moment before hands-on. The next two slides — what a skill is, then a real one to run — assume the box is in front of them.还没打开 Codex 的现在就打开——这是动手前的最后一刻。接下来两页——先讲 skill 是什么,再给一个真实的来跑——都默认那个框已经在他们面前。
Toggle the panel切换右侧面板Terminal ⌘T · Browser ⌘P · Files · Side chat ⌥⌘STerminal ⌘T · Browser ⌘P · Files · Side chat ⌥⌘S
Open Files打开 FilesSkills and screenshots appear as it works.skill 和截图边跑边冒出来。
One input box就一个输入框Paste a skill, press Enter.粘贴 skill,按回车。
Approve when asked它问就批准Click Approve — your one job.点 Approve——你唯一的活。
Watch, and click Approve.看着,点 Approve。
Show these live on your own Codex, don't just describe them. The panel button is top-right; open Files so they see skills and screenshots appear as work happens.在你自己的 Codex 上现场演示,别光讲。面板按钮在右上角;打开 Files,让他们看到 skill 和截图随着干活冒出来。
Shortcuts are Mac (⌘ = Cmd). On Windows the same menu is there — click it rather than memorising keys.快捷键是 Mac 的(⌘ = Cmd)。Windows 上同一个菜单也在,点它就行,不用背键。
The only thing they must do all day is click Approve. Say that plainly so nobody freezes at a prompt.他们一整天唯一必须做的就是点 Approve。把这句说清楚,免得有人卡在提示框前不敢动。
--- name: skill-name description: when to use it ---
# Steps 1. do this 2. then this 3. stop and confirm
One idea only: a Skill is a prompt (the steps you want) plus the tools those steps use — in one plain file.只讲一个概念:Skill 就是 prompt(你要的步骤)加上这些步骤用到的工具,写在一个普通文件里。
Internal tools are what the AI already has — browser, terminal, files. External is anything you call out to: a CLI, an API.内部工具是 AI 本来就有的——浏览器、终端、文件。外部是你调出去的:CLI、API。
Everything today (the demo you just watched, the browser we install later) is skills in this exact shape.今天的一切——刚看的演示、待会装的浏览器——都是这个格式的 Skill。
Do not talk about Agents or architecture; the next slide shows a real one and everyone runs it.不讲 Agent 和架构;下一页直接给真实例子,大家亲手跑。
08 · YOUR FIRST SKILL08 · 第一个 SKILLCOPY, PASTE, RUN复制、粘贴、运行
A Real Skill: Sydney Weather
一个真实的 Skill:悉尼天气
Read it. Copy it. Run it.读一读,复制,跑起来。
A complete Skill. Paste into Codex.完整的 Skill。粘进 Codex。
Walk the file top to bottom in 30 seconds: name, description (when to use it), three steps — it maps 1:1 to the skeleton on the previous slide.30 秒从上到下读一遍:名字、description(什么时候用)、三个步骤——和上一页骨架一一对应。
Interactive beat: everyone copies, pastes into Codex, runs it. Nothing gets saved or installed here — the point is just to watch the AI follow the steps.互动环节:全场复制→粘贴进 Codex→运行。这里不存文件、不装东西——只是看着 AI 照步骤跑一遍。
If someone asks how to keep a skill: "we'll do exactly that when we install the browser." Don't teach saving yet.有人问怎么把 skill 留下来:"装浏览器那步就是干这个的。"现在先不讲保存。
wttr.in works from the terminal, so the weather check succeeds even without a browser tool. Still: TEST on an attendee-style Codex before Saturday.wttr.in 走终端也能拿到数据,没有浏览器工具也能成功。周六前仍要在学员同款 Codex 上实测。
Help learners individually; no live debugging on stage.卡住的逐一协助,不在台上排错。
09 · CREATE A PROJECT09 · 新建项目A PROJECT IS A FOLDER项目就是一个文件夹
Create a Project
新建一个项目
Create→Project
点 Create → 选 Project → 起个名字
A project is just a folder.项目就是一个文件夹。
Do it on screen and wait — this takes 20 seconds and everyone should have a project before we install anything.当场演示并等一下——20 秒的事,装东西之前每个人都要先有一个项目。
One line of why: the weather skill just now needed nothing. From here on we install a browser and keep skills, and those need somewhere to live.一句话讲清为什么:刚才的天气 skill 什么都不需要。从这里开始要装浏览器、要留下 skill,这些东西得有个地方待着。
“A project is a folder” is the whole concept. Do not explain workspaces, git, or paths."项目就是文件夹"——概念到此为止。不要讲 workspace、git、路径。
Everything for the rest of the day happens inside this project.今天后面所有事情都在这个项目里发生。
10 · WHY CONNECT10 · 为什么用 CONNECTLINKEDIN
LinkedIn Detects the Browser
LinkedIn 会检测浏览器
Codex BrowserCodex 浏览器
Detected被检测
→
ConnectOnion BrowserConnectOnion 浏览器
Undetected检测不到
The browser behind our A$2,000 client automations.A$2,000 级客户方案用的就是它。
LinkedIn can detect Codex's built-in browser, so it is not the browser we use for LinkedIn operations.LinkedIn 能检测出 Codex 内置浏览器,因此运营 LinkedIn 时不能使用它。
Name it plainly: our browser is called ConnectOnion, and LinkedIn does not detect it. That is the whole reason for installing it.直接点名:我们的浏览器叫 ConnectOnion,LinkedIn 检测不到它——装它就是为了这个。
Credibility beat: past client solutions built on this undetected browser sell for around A$2,000 each — e.g. LinkedIn people-search automations. Say clearly: undetected is not the same as risk-free — LinkedIn can still restrict on behaviour (volume, bursts), so keep volume human and approve every send.背书:基于这个隐身浏览器做的客户方案约 A$2,000 一套——比如 LinkedIn 批量搜人自动化。要讲清楚:检测不到 ≠ 没风险——LinkedIn 仍会因行为(频率、爆发)限制账号,所以量要克制、每次发送人工确认。
Keep this explanation to the single contrast on screen. Do not compare feature lists.这里只讲屏幕上的一个对比,不再展开功能列表。
The technical reason — only if asked. Don’t present this.技术原因——有人问再讲,不要主动展开。
Why a normal automated browser gets caught: it is driven over the Chrome DevTools Protocol (CDP), and standard drivers switch on CDP’s Runtime.enable so they can evaluate JavaScript. That is observable from inside the page: the site creates an Error object and reads its .stack, and with the Runtime domain open Chrome serializes that object out to the debugger — a side effect ordinary browsing never produces. The site doesn’t have to guess; it can just probe. The same launch usually also flips navigator.webdriver to true and adds --enable-automation, so there are several tells before you click anything.普通自动化浏览器为什么会被抓:它通过 Chrome DevTools Protocol(CDP)驱动,而标准驱动为了执行 JavaScript 会打开 CDP 的 Runtime.enable。这一步在页面内部是能观察到的:网站造一个 Error 再读它的 .stack,Runtime domain 开着时 Chrome 会把这个对象序列化给调试器——正常浏览绝不会有这种副作用。网站根本不用猜,探一下就知道。而且这种启动方式通常还会把 navigator.webdriver 置为 true、带上 --enable-automation,你还没点任何东西就已经有好几个破绽。
Why ours isn’t: the ConnectOnion browser runs on Patchright (a stealth-patched, API-compatible drop-in for Playwright, pinned at 1.61.2). Its driver never calls Runtime.enable or Console.enable — it evaluates in isolated execution contexts instead — and it hides navigator.webdriver down at the driver level rather than injecting a script, because the injection itself is a timing-detectable tell. So the probe above finds nothing.我们的为什么检测不到:ConnectOnion 浏览器跑在 Patchright 上(一个做了隐身补丁、API 完全兼容 Playwright 的替代品,锁定 1.61.2 版)。它的驱动从不调用 Runtime.enable 或 Console.enable——改用隔离的执行上下文求值;navigator.webdriver 也是在驱动层直接藏掉,而不是注入脚本,因为注入这个动作本身就有可被时序检测到的破绽。所以上面那个探测什么也探不到。
It also just looks like you: it drives your real installed Chrome with a persistent profile at ~/.co/browser_profile — same logged-in session, cookies and history building up over time — and it opens a visible window by default. It deliberately passes almost no launch flags, because Patchright’s own docs warn that over-configuring the launch defeats its patches.而且它本来就长得像你:它驱动的是你本机真实安装的 Chrome,配一个常驻 profile(~/.co/browser_profile)——同一个登录态,cookie 和历史随时间自然累积——默认还开可见窗口。它刻意几乎不传启动参数,因为 Patchright 官方文档明确警告:启动参数配太多反而会把补丁破坏掉。
Two honest caveats if pushed: (1) if a learner has no real Chrome installed, it falls back to Patchright’s bundled Chromium, which is weaker — worth checking for anyone who reports trouble; (2) never promise “undetectable forever” — say it is not detected today by the checks LinkedIn runs, and that we keep the driver patched (co doctor verifies the patches are still in place after a reinstall).被追问时的两点实话:(1) 如果学员机器上没装真的 Chrome,就会退回 Patchright 自带的 Chromium,隐身更弱——谁报问题先查这个;(2) 绝不要承诺"永远检测不到",只说以 LinkedIn 现在跑的那些检测手段,今天检测不到,而且我们会持续跟进驱动补丁(co doctor 能验证重装后补丁还在)。
Codex installs it · emails a check-in when done.Codex 全自动安装 · 装完发签到邮件。
When Codex asks — click Approve.Codex 询问时,点 Approve。
This is the first attendee install — the room is warmed up and the next two slides are the buffer window for stragglers.这是学员第一次安装;后面两页天然是处理落后机器的缓冲窗口。
The payload installs ConnectOnion, installs the co-browser skill (co copy co-browser), then emails Aaron the agent address — almost entirely on its own. It pauses exactly once, before sending, to ask whether the attendee wants to include a short intro or send their address only.复制内容几乎全自动:装 ConnectOnion、装 co-browser skill(co copy co-browser)、把 Agent 地址发邮件给 Aaron;只在发送前停一次,问学员要附上简短自我介绍、还是只发 Agent 地址。
Attendees mostly do one thing — click Approve whenever Codex asks — plus answer that one intro question before anything is sent.学员基本只做一件事:Codex 请求时点 Approve;再加上发送前回答那一个"要不要附自我介绍"的问题。
On any failure the skill says one line — “raise your hand and Aaron will sort it out” — instead of troubleshooting with the attendee.任何失败时 skill 只说一句"举手叫 Aaron 当面搞定",不让学员自己排错。
The pre-work skill is a different, quieter one — address-only check-in, no intro question; machines that ran it arrive ready.预习用的是另一个更安静的 skill——只发地址签到、不问自我介绍;提前跑过的电脑到场即可用。
Reassure out loud: a computer-password request just means Python is installing — normal.当场安抚:要求输入电脑密码只是在装 Python,属正常。
Nobody moves on until every screen is green.每台电脑亮绿,才往下走。
This is a real working block, not a demo. Walk the room and confirm each person sees the “you’re all set” line.这是真正的动手环节,不是演示。走一圈,确认每个人都看到"全部就绪"那句话。
For anyone stuck, fix it live — this is the buffer that absorbs slow installs. Gmail shows you who has already checked in (subject carries their computer username).卡住的当场修——这一段就是吸收慢安装的缓冲。Gmail 里能看到谁已签到(主题带电脑用户名)。
Do NOT top anyone up here. Check-in emails just pile up in Gmail — ignore them for now; credits go out at the very end. Stopping mid-flow to top people up breaks the run of the whole session.这里不要给任何人充值。签到邮件先堆在 Gmail 里,暂时不用管;额度留到最后再发。中途停下来充值会把整场的节奏打断。
End the block only when every laptop is green or parked with you for one-on-one help.每台电脑都亮绿、或已交给你单独处理,才结束这一段。
13 · MAKE A SKILL13 · 写一个 SkillCOPY → RUN复制 → 运行
Your First Browser Skill
一个只做一件事的浏览器 Skill
One skill. One job.一个 Skill,一件事。
Paste to save · run it next slide.粘贴保存 · 下一页运行。
Keep it dead simple: the whole point is one small, readable skill that opens LinkedIn and checks login. No email, no extra capabilities yet.保持极简:重点就是一个小而好读的 skill——打开 LinkedIn、检查登录。暂时不碰邮件和别的能力。
Optionally build it live with skill-creator so they see a skill written from scratch; or just have them copy this one.可以用 skill-creator 现场写一遍,让他们看到 skill 是怎么从零写出来的;或者直接复制这个。
This slide only saves the skill — the copy tells Codex not to run it yet. Running it is the next slide, so they feel calling a skill by name.这一页只保存 skill——复制的内容里已经写明先别运行。运行是下一页的事,让他们体会"按名字调用 skill"。
Success here = Codex says it saved the file. If someone's Codex runs it anyway, no harm — they just get the next slide's result early.这一页成功 = Codex 说文件已保存。万一谁的 Codex 还是跑了也没关系——无非是提前拿到下一页的结果。
14 · RUN IT14 · 运行它TYPE · ENTER输入 · 回车
Now Run It
现在运行它
$linkedin-login-check
Browser opens — log in once.浏览器打开——登录一次。
Everyone types it themselves. This is the first time they run a skill by name — don’t demo it and move on, wait for the room to do it.让每个人自己敲。这是他们第一次按名字运行 skill——不要演示完就走,等全场都跑一遍。
Typing $ brings up the skills; keep typing to filter to this one. That’s the whole mechanic — the skill they saved a minute ago is now a thing they can call.敲 $ 会列出 skill,继续输入就能筛到这一个。机制就这么点——一分钟前存下的 skill,现在可以直接叫它的名字。
First run opens a visible browser window and pauses for the one-time LinkedIn login. That saved session powers every workflow for the rest of the day.第一次运行会弹出可见的浏览器窗口,停下来等这一次性的 LinkedIn 登录。这个保存下来的会话,支撑今天后面所有流程。
Success = it reports “logged in: yes” with a screenshot. Walk the room; this is a hands-on beat, not a slide.成功 = 它报告"已登录:是"并附一张截图。走一圈看看——这是动手环节,不是一页幻灯片。
15 · Part 115 · 第一部分MARKETING BASICSMARKETING 基本功
Part 1第一部分
Engagement
互动
Like and comment first — ask later.先点赞、先评论——再开口。
Signpost it out loud: this whole first flow is engagement — the marketing base. Nobody buys from a cold pitch; you warm people first.大声点题:整个第一条 flow 就是互动——marketing 的地基。没人会从冷冰冰的推销里买东西,你要先预热。
16 · FIRST LIKE16 · 第一个赞LIKE ONLY只点赞
Your First Like
跟一个真人打个招呼
Your first like.你的第一个赞。
The safest action on LinkedIn — one like on my post.LinkedIn 上最安全的动作——给我的帖子点一个赞。
This mirrors the demo they watched on slide 03 — engagement, not outreach. A like is the safest possible first action on a real account.这一页对应他们在第 02 页看到的演示——互动,不是私信。点赞是真实账号上最安全的第一个动作。
They engage with you, so you can see it land in real time and nobody is bothering a stranger.他们互动的对象是你,你能实时看到效果,也不会有人去骚扰陌生人。
Point out step 2 — the skill verifies it is the right Aaron before it acts. That verify-before-acting habit is the whole difference between an agent that helps and one that embarrasses you.把第 2 步讲出来——skill 先确认是不是那个 Aaron 再动手。"先核对再行动"这个习惯,就是"帮你干活的 agent"和"让你丢人的 agent"之间的全部差别。
Expect a wave of likes on your latest post — that is the proof the browser is real and it worked. Connecting comes later, in the find-people flow, on purpose.准备好你最新的帖子被点一波赞——这就是浏览器是真的、成功了的证据。connect 是后面找人环节的事,故意放到那儿。
Keep this beat pure: like only. It builds confidence and touches nothing irreversible. The moment for connecting and messaging is Part 2, one person at a time.这一拍保持纯粹:只点赞。既建立信心,又不碰任何不可撤销的东西。connect 和发消息的时机在第二部分,一次一个人。
17 · RUN THE LIKE17 · 运行点赞TYPE · ENTER输入 · 回车
Run the Like
运行这次点赞
$linkedin-like
Enter — it opens my post and likes it.回车——打开我的帖子,点个赞。
Run it together, then show your notifications on screen. This is the moment the room sees the browser is real and it worked.一起跑,然后把你的通知投到屏幕上。这是全场亲眼看到"浏览器是真的、而且成功了"的时刻。
If someone's run stops at the verify step, that is the skill doing its job — check they are logged in (slide 13/14) and rerun.如果谁卡在核对那一步,那正是 skill 在尽职——确认他已登录(第 09/10 页),然后重跑。
Accept the requests later, not on stage. Keep the room moving.请求等会儿再通过,不要在台上处理。让节奏往前走。
18 · IMPROVE IT18 · 改进它CHANGE ONE LINE改一行就行
Make It Yours
改一行,点赞你行业的帖子
# linkedin-like, step 1 — before: 1. Open Aaron's post and like it.
# after — make it yours: 1. Search LinkedIn for a recent post about <my industry> and like that one instead.
Change one line · run again · your world.改一行 · 再跑一遍 · 你的领域。
The teaching point: skills are editable. You do not rewrite them — you change the one line that matters and run again. This is the moment they realise the skill is theirs.教学点:skill 是可以改的。你不用重写——只改关键那一行,再跑一遍。就是这一刻他们意识到这个 skill 是自己的。
Have them say their industry out loud and edit step 1 to it. Liking a post in their own field is more real than liking mine.让他们说出自己的行业,把第 1 步改成它。点赞自己领域里的帖子,比点赞我的更真实。
Still like-only. No comment, no connect yet — that keeps this rung safe and simple.仍然只点赞。还不评论、不 connect——让这一级保持安全、简单。
This is the second engagement line, straight from the demo: like is the warm-up, a real comment is what actually gets you noticed.这是第二条互动线,直接来自演示:点赞是热身,一条真评论才真正让你被看见。
The teaching point is the self-review loop — the agent grades its own draft and rewrites, so you never see a weak one. That loop is reusable for any writing skill.教学点是那个自检循环——agent 给自己打分、改写,你不会看到差的草稿。这个循环任何写作 skill 都能复用。
Approval gate stays: nothing posts without a yes. A comment is public and permanent, so slow down here just like the send step.批准环节保留:没有"yes"不发。评论是公开且永久的,所以这里和发消息一样要慢下来。
Keep the room commenting on varied posts, not all on one — spreading it out is both better content and safer behaviour.让大家评论不同的帖子,不要都挤在一条上——分散开既是更好的内容,也是更安全的行为。
37 · THE HARD ONES37 · 最难的那种SAVE THE PAGE · THEN BUILD先存页面 · 再构建
Build a Skill from a Real Page
最复杂的流程:让浏览器照着真实页面把 Skill 建出来
For the hard, multi-step ones.给最难的多步流程。
Too complex to hand-write? Built from the page itself.手写搞不定?照着页面替你建。
Leave this last because it is the most complex — most people won't need it Saturday, but it is what turns a fragile skill into a reliable one.放在最后,因为它最复杂——周六大多数人用不到,但它正是把"脆弱的 skill"变成"可靠的 skill"的东西。
The one idea to land: for a hard multi-step page, you don't hand-write selectors — you SAVE the real page first (save_page_context), and the builder writes the skill from what is actually there. Guessed selectors break; page-derived ones hold.要落的一个点:面对复杂多步页面,不要手写选择器——先把真实页面存下来(save_page_context),让构建器照着页面上真实存在的东西写 skill。猜的选择器会坏,从页面提取的不会。
Easy Apply is the demo because everyone recognises it: a multi-step form with an upload and a Review gate. If you have a real Easy Apply job open, walk one build live; otherwise just narrate the five steps.用 Easy Apply 做演示是因为人人都认得:多步表单、要上传、有 Review 关卡。如果手头有真实 Easy Apply 职位,就现场走一遍构建;否则口述这五步即可。
The buttons open and copy the full builder SKILL.md — same one referenced on the send slide. Point out it stops at Review: it never submits an application without a yes.按钮会打开并复制完整的构建 SKILL.md——和发消息页引用的是同一个。强调它停在 Review:没有"yes",绝不替你投出申请。
20 · RUN THE COMMENT20 · 运行评论TYPE · ENTER输入 · 回车
Run the Comment
运行这条评论
$linkedin-comment
Enter — like, comment, rewrite. Posts only on your yes.回车——点赞、评论、改写。你说 yes 才发。
Watch the loop out loud: it will often show a rewrite, not its first try. That is the skill working — say so.把循环讲出来:它经常给你的是改写后的版本,不是第一稿。这正是 skill 在起作用——说出来。
If it posts a weak comment, the self-check bar in the skill needs tightening — that is the thing to tune, not the browser.如果它发了条差评论,是 skill 里的自检标准要收紧——要调的是这个,不是浏览器。
Everyone comments on a different post. Do not all pile onto one.每个人评论不同的帖子,不要都挤在一条上。
Examples > rules例子 > 规则Two real examples beat twenty rules.两个真实例子胜过二十条规则。
Write 10, keep the best写 10 条,留最好的Best-of-ten beats one-shot.十选一赢过一次成型。
First principles第一性原理Define “good” for THIS task, in your words.用你的话定义这件事的"好"。
Get it reviewed让它被评审A second agent critiques the draft.让另一个 agent 挑毛病。
Every skill you copied today was written this way.今天复制的每个 Skill,都是这么写出来的。
The comment skill just showed one of these live — it drafted, graded its own draft, and rewrote. This slide names all four so they carry into the outreach flow next.先示范、再命名:他们已经用过"例子多于规则"(写消息 skill)和"十选一"(挑最好)。这一页只是给这些招起名字,方便复用。
The one that surprises people: examples beat rules. A weak skill is a wall of "do this, never do that"; a strong one shows two real examples and stops.最让人意外的一条:例子胜过规则。差的 skill 是一堵"要这样、别那样"的墙;好的 skill 给两个真实例子就收手。
“Get it reviewed” is exactly what we did to this very deck — a panel of agents critiqued it. Say so; it makes the technique real."让它被评审"正是我们对这份课件做的事——一组 agent 给它挑了毛病。说出来,技巧就落地了。
This is the take-home craft: they leave able to write skills, not just run the ones we gave them.这是带回家的手艺:他们走的时候能自己写 skill,而不只是跑我们给的那几个。
22 · PICK THE MODEL22 · 选模型NEWER = MORE COMPLEX越新 = 越能扛复杂
Claude goes deepClaude 更能啃硬活Heavier, more complex operations.更能啃重、复杂的活。
Skills are portableSkill 是通用的Same skill, either model — slightly different results.同一个 Skill 两边能跑,结果略有差别。
Run the best直接上最好的4 resets: A$40 → A$120. Run 5.6 for everything.4 次 reset:A$40 → A$120。全程上 5.6。
Don't overthink it — just run 5.6.别纠结——直接上 5.6。
The one rule: the more steps a skill has, the newer the model it needs. Over ~10 steps, only the newest model reliably holds the whole context and decides correctly.一条规律:skill 步骤越多,需要的模型越新。超过约 10 步,只有最新模型能稳定抓住全部上下文、做对判断。
Same skill, different model = slightly different result. That is normal — it is intelligence and preference, not a bug. If a skill misbehaves on a weak model, try the newest before you touch the skill.同一个 skill 换模型,结果会略有不同。这是正常的——是智能和偏好差异,不是 bug。skill 在弱模型上表现不好时,先换最新模型再去改 skill。
Credits are plentiful this week — 4 resets stretch A$40 to about A$120. So don't tell them to save with cheaper models today; have everyone run 5.6, the newest, and iterate freely. Saving on cheap models is for weeks when credit is tight.本周额度管够——4 次 reset 把 A$40 跑成约 A$120。所以今天别让大家用便宜模型省额度;直接全员上最新的 5.6,放开迭代。省额度那套留到额度紧张的周再用。
Do not oversell any single version number; the point is the ladder (newer handles more), not a spec sheet. Models move fast.不要过度吹某一个具体版号;重点是那条阶梯(越新扛得越多),不是参数表。模型更新很快。
Either family works — we built on Claude because it handles the heavier operations; ChatGPT is fine too.两个家族都能用——我们选 Claude 是因为重操作更稳,ChatGPT 也没问题。
23 · Part 223 · 第二部分OUTREACH BASICS私信基本功
Part 2第二部分
Find & Message
找人 & 私信
Right people · your voice · you approve every send.找对的人 · 你的语气 · 发送你确认。
Second flow: outreach. Same skills, sharper intent — find, write, send, one at a time, always with your approval on the send.第二条 flow:私信。同样的 skill,更明确的意图——找、写、发,一次一个,发送永远要你点头。
Find me · verify · connect with a note. Then aim it at your ICP.找到我 · 核对 · 带 note 连接。下一步对准你的 ICP。
This is the concrete first rung of outreach — mirrors the first-like beat. Everyone connects with you, so the whole room sends real connection requests and you collect them live.这是触达的具体第一级——和"第一个赞"那一拍对称。全场跟你连接,于是整屋子发出真实的 connect 请求,你当场收。
The note is what makes a connection request land — a request with a human note gets accepted far more than a bare one. Point that out.note 才是 connect 请求能成的关键——带一句人味 note 的请求,通过率远高于空请求。把这点讲出来。
Then generalise on the next slides: the same find -> verify -> reach-out, pointed at their own ICP instead of me.然后在后面几页泛化:同样的 找→核对→触达,把目标从我换成他们自己的 ICP。
25 · RUN THE CONNECT25 · 运行连接TYPE · ENTER输入 · 回车
Run the Connect
运行这次连接
$linkedin-connect
Type · Enter · your note reaches me输入 · 回车 · 你的 note 直达我
Run it together and show your incoming requests on screen — the room sees the outreach workflow actually work.一起跑,把你收到的请求投到屏幕上——全场看到触达工作流真的跑通了。
Accept them after the session, not on stage. Keep moving to the ICP search next.会后再通过,不在台上处理。继续往下走到 ICP 搜索。
This is the top of the funnel: everything later acts on the people this skill finds.这是漏斗顶端:后面所有动作都作用在这个 skill 找到的人身上。
Keep the search plain-language; the ConnectOnion browser is undetected, so LinkedIn people search stays safe.搜索用大白话即可;ConnectOnion 浏览器不被检测,LinkedIn 搜人是安全的。
Have each person run it with their own buyer description from the room-check on slide 01.让每个人用第 01 页记下的自己的目标客户描述来跑。
27 · RUN THE SEARCH27 · 运行找人TYPE · ENTER输入 · 回车
Run the Search
运行:找人
$linkedin-find-people
Role · industry · city → five people职位 · 行业 · 城市 → 五个真人
Everyone runs it with their own buyer description from the room-check on slide 01 — not a generic example.每个人用第 01 页现场调查里自己的目标客户描述来跑,不要用通用例子。
It will ask who you are looking for. Plain words are enough — "support coordinator, NDIS, Sydney".它会问你要找谁。大白话就够了——"support coordinator, NDIS, Sydney"。
Success = five names with headlines and links. Those five people are what every later skill acts on.成功 = 五个人,带头衔和链接。后面所有 skill 都作用在这五个人身上。
This is the quality engine: best-of-10 plus multi-angle review beats one-shot every time. This is what a client pays for.这是质量引擎:十选一 + 多角度评审,永远赢过一次成型。这正是客户付费买的东西。
Read two rejected drafts out loud next to the winner — the room feels why review matters.把两条被淘汰的草稿和胜出的那条一起念出来——大家就体会到评审的价值。
The reviewers run as separate passes/sub-agents; if it is slow, cut to 5 drafts and 2 angles live.评审是独立的 pass / sub-agent;现场慢的话就减到 5 条草稿、2 个角度。
The safety model in one line: AI drafts, a human hits send. Verify the person by name+headline before every send.安全模型一句话:AI 起草,人按发送。每次发送前用姓名+头衔核对是对的人。
The builder Skill (buttons on the right) is browser-workflow-skill-builder — save context, verify by hash, one-shot the send. Use it to make this reliable.右侧按钮是 browser-workflow-skill-builder——存上下文、按 hash 核对、一次发出。用它把发送做可靠。
One-shot rule: after the send click, never click it again in the same run — screenshot and stop.一次性规则:点过发送后,同一次运行内绝不再点——截图后停止。
32 · THE BUILDER32 · 构建者SKILLS WRITE SKILLSSKILL 生 SKILL
This Skill Wrote Itself
这个 Skill 是 AI 写的
The builder构建者A Skill that writes Skills from a real page.一个从真实页面生成 Skill 的 Skill。
Take it home — it builds the next one for you.带回家——下一个 Skill 让它替你写。
One beat: you did not write that send-message skill by hand — a builder skill read the page and wrote it. Open the modal if anyone wants to see it.一句话讲完:刚才那个发消息 Skill 不是手写的,是构建 Skill 读页面生成的。有人想看就点开。
32 · RUN THE SENDER32 · 运行发消息TYPE · ENTER输入 · 回车
Run the Sender
运行:发消息
$linkedin-send-message
Nothing sends until you say yes你说可以,才会发出
This is the one irreversible step of the day. Slow down here.这是今天唯一不可撤销的一步。这里要慢下来。
It stops and shows the person and the message. Nothing sends until they confirm — say that out loud before anyone runs it.它会停下来给你看人和消息。不确认就不会发——运行前先把这句话大声说清楚。
Success = one message, to the right person, in their words.成功 = 一条消息,发给对的人,用他自己的话。
33 · PUT IT TOGETHER33 · 串起来SKILLS CALLING SKILLSSKILL 调用 SKILL
One Command, The Whole Flow
一条命令,跑完整个流程
Skills calling skills.Skill 调用 Skill。
Three skills, one routine. You still approve every send.三个 Skill,一条流程。每次发送仍由你批准。
This is the payoff of the whole day: the small skills they built are now parts, and this one is the machine.这是今天的收获点:他们做的那些小 skill 现在是零件,这一个是机器。
Say the important part out loud — the approval gate does not disappear when you automate. It sends nothing without a yes.把关键那句说出来——自动化之后,批准环节不会消失。没有你的"yes",它什么都不发。
This is also the honest limit: an orchestrator is only as good as the skills under it. If find-people is sloppy, the routine is sloppy.这里也是实话实说的边界:编排 skill 的上限就是底下那些 skill。find-people 糙,整条流程就糙。
Home task: change one step and rerun. That is how they learn it is theirs.回家作业:改一步,再跑一遍。这样他们才会觉得这东西是自己的。
34 · AUTOMATION34 · 自动运行AI PREPARES · PEOPLE DECIDEAI 准备,人决定
39 · BEFORE YOU GO39 · 走之前2 MINUTES · THEN PIZZA两分钟 · 然后披萨
Feedback & Networking
反馈 & 交流
Feedback反馈Two minutes, right now — or the WhatsApp group.现在两分钟——当面说,或发群里。
Networking交流Pizza is out — meet the people beside you.披萨已就位——认识身边的人。
One intro一次引荐One intro before you leave.走之前认识一个人。
The room is the point. Stay as long as you like.重点是这间屋子。想待多久都行。
Ask for feedback out loud before phones come out: one thing to keep, one thing to change. Write the answers down in front of them.趁大家还没看手机,当场要反馈:留一个、改一个。当着他们的面记下来。
Then open the room: point at the pizza, tell people to meet one stranger before they leave.然后开放全场:指一下披萨,让每个人离开前至少认识一个陌生人。
Everyone in this room builds, runs, or sells something — introduce yourself to one person whose work tonight’s workflow could help.这屋里每个人都在做产品、做生意或做销售——去认识一位今晚这套流程能帮上忙的人。
40 · WRAP UP40 · 收尾RECAP · COMMUNITY · NEXT STEP回顾 · 社区 · 下一步
Take the Workflow Home
把今天的流程带回家
Today今天Browser → Skill → your own workflow浏览器 → Skill → 你自己的流程
At home回家One login: co auth microsoft登录一次:co auth microsoft
Community社区discord.gg/4xfD9k8AUF — share your first workflowdiscord.gg/4xfD9k8AUF——把你的第一个流程发出来
Next · Thu 3 Sep下一场 · 9 月 3 日(周四)events.openonion.ai — bring a friendevents.openonion.ai——带个朋友来
Stealth browser free for life · credits loaded · you control the final step.隐身浏览器终身免费 · 额度已充好 · 最后一步由你掌控。
Scan before you leave走之前扫一下
Our WhatsApp group — I answer in here.WhatsApp 群——我在群里回。
chat.whatsapp.com/IOMeCdOZLoWJdRwdN373Xb
Go around the room: each person names the one task they will automate first. No homework beyond the one login — they leave with the skills already saved.让每个人说出自己第一个要自动化的任务。除了登录一次之外没有作业——skill 他们已经存走了。
Next cohort is Thu 3 Sep, two weeks from tonight — registration goes up on events.openonion.ai.下一期是 9 月 3 日(周四),两周后——报名会挂在 events.openonion.ai。
Leave this slide up while people pack. The WhatsApp QR is on it — no phone juggling, they just scan. Say out loud that you answer in there, so it is worth joining.收拾东西的时候把这一页留在屏幕上。WhatsApp 二维码就在页面上——不用再翻手机,他们扫一下就行。大声说一句"我在群里回问题",他们才有理由加。
NOW top everyone up — this is the moment, not mid-session. Run the workshop-topup skill against the check-in emails sitting in Gmail; they leave with credits already on their agent.现在再给大家充值——就是这个时候,不要在中途。对着 Gmail 里堆着的签到邮件跑 workshop-topup;他们走的时候 Agent 里已经有额度了。
Group photo, thanks, and stay behind for individual questions.合影、致谢,然后留下来回答个别问题。
35 · SET UP REMOTE35 · 设置 REMOTEDESKTOP → QR → PHONE电脑 → 二维码 → 手机
Pair Your Phone in One Minute
一分钟,把手机和电脑配对
STEP 01Open Set up Remote电脑端点 Set up Remote
STEP 02Scan the QR code用手机扫描二维码
STEP 03Confirm your account确认同一账号与工作区
STEP 04Open Remote on mobile手机打开 Remote
Before the demo: update both apps; keep the host awake, online, and signed in.演示前先更新两端 App,并让电脑保持唤醒、联网、已登录。
Run this as a live demo, not a long explanation.这一页直接现场操作,不要讲成长篇说明。
Open with the key line: no Mac mini, no remote desktop, no public IP — your laptop plus the ChatGPT app is enough.开场先说重点:不用买 Mac mini、不用远程桌面、不用公网 IP——现有电脑加手机 ChatGPT 就够。
After pairing, show what the phone can do: start tasks, steer, approve, and review screenshots or output.配对后展示手机能做什么:发起任务、指挥、批准、查看截图和输出。
On the host, open the ChatGPT desktop app and select Set up Remote in the sidebar.在电脑上的 ChatGPT 桌面 App 侧边栏点击 Set up Remote。
Scan the QR code with the phone, confirm the same account and workspace, then open Remote.手机扫码后确认同一账号和工作区,再打开 Remote。
If Remote is missing, update the mobile and desktop apps; managed workspaces may also require admin permission.如果没有 Remote,先更新手机和桌面 App;企业工作区还可能需要管理员开通权限。
37 · THE HARD ONES37 · 最难的那种SAVE THE PAGE · THEN BUILD先存页面 · 再构建
Build a Skill from a Real Page
最复杂的流程:让浏览器照着真实页面把 Skill 建出来
For the hard, multi-step ones.给最难的多步流程。
Too complex to hand-write? Built from the page itself.手写搞不定?照着页面替你建。
Leave this last because it is the most complex — most people won't need it Saturday, but it is what turns a fragile skill into a reliable one.放在最后,因为它最复杂——周六大多数人用不到,但它正是把"脆弱的 skill"变成"可靠的 skill"的东西。
The one idea to land: for a hard multi-step page, you don't hand-write selectors — you SAVE the real page first (save_page_context), and the builder writes the skill from what is actually there. Guessed selectors break; page-derived ones hold.要落的一个点:面对复杂多步页面,不要手写选择器——先把真实页面存下来(save_page_context),让构建器照着页面上真实存在的东西写 skill。猜的选择器会坏,从页面提取的不会。
Easy Apply is the demo because everyone recognises it: a multi-step form with an upload and a Review gate. If you have a real Easy Apply job open, walk one build live; otherwise just narrate the five steps.用 Easy Apply 做演示是因为人人都认得:多步表单、要上传、有 Review 关卡。如果手头有真实 Easy Apply 职位,就现场走一遍构建;否则口述这五步即可。
The buttons open and copy the full builder SKILL.md — same one referenced on the send slide. Point out it stops at Review: it never submits an application without a yes.按钮会打开并复制完整的构建 SKILL.md——和发消息页引用的是同一个。强调它停在 Review:没有"yes",绝不替你投出申请。
38 · A SKILL TO KEEP38 · 送你一个 SKILLYOUR INBOX, FROM CODEX你的收件箱,交给 CODEX
Take This One Home
这个 Skill 带回家
Yours to keep.这个归你了。
Save it. One login at home: co auth microsoft.存下来,回家登录一次:co auth microsoft。
No homework. They copy the skill now and it is theirs — the only thing left at home is one login.不留作业。现在复制走,这个 skill 就是他们的——回家只剩登录一次这件事。
Do NOT run the OAuth flow live with the room. Demo on your own machine only; 20 simultaneous Microsoft logins is a fire.绝对不要全场现场走 OAuth。只在自己机器上演示;20 个人同时登微软是场火灾。
Point at the rules block — reply in-thread, show the draft first. That is the difference between an agent that helps and one that emails your clients on its own.指一下 Rules 那段——原线程回复、先给你看草稿。这就是"帮你干活的 agent"和"自己给你客户发信的 agent"之间的差别。
This is the bridge to real work: outreach drafts, notifications and reports from their real address, not a demo one.这是通往真实工作的桥:用他们真实的邮箱发外联草稿、通知和报告,而不是演示地址。
First run also shows the credit balance — enough to trade the long hash for a real agent email address.第一次运行还会显示额度余额——够把那串长 hash 换成一个真正的邮箱地址。
← → SLIDES · L LANGUAGE · N NOTES · F FULLSCREEN · B BLACKOUT← → 翻页 · L 语言 · N 备注 · F 全屏 · B 黑屏
Browser Workflow Skill Builder浏览器自动化流程构建 Skill
Complete SKILL.md · read-only完整 SKILL.md · 只读
Copy the exact source, then paste it into Codex.复制原始全文,然后粘贴到 Codex。