Your Meetings, Transcribed Intelligently Real-time transcription, translation in 120 languages, and smart context analysis Powered by @Azure and @OpenAI

iPhone
Joined February 2024
AmyNote retweeted
AI 寫程式的速度,已經超過我們看懂它的速度。 一個 PR 動了 40 個檔案。 一份 log 有 3,000 行。 一個你沒參與過的模組,一天就生成出來。 程式寫完了,但你還不知道它在做什麼。 Karpathy 最近寫了一句話: "We'll be spending a lot more time trying to understand the outputs of language models." 我很認同。AI 能做的事愈多,人的工作就愈往「監督」和「理解」移動。 他還給了一個很實用的順序: 1️⃣ 文字:用嚴格、簡潔的寫法(他舉的是航太維修文件用的 ASD-STE100) 2️⃣ 圖解:比一大段文字更容易看懂 3️⃣ 網頁:直接要求輸出 HTML,做成可以點的互動說明 4️⃣ 解說影片:他最看好,針對任何主題客製 看完我做了一件事:把這套方法寫成一個 AI agent 技能。  但我先發現一個問題: 讓 AI「講簡單一點」很容易。 讓它簡單、而且還是對的,很難。 漂亮的圖會讓人以為「懂了」。 好懂的比喻會悄悄刪掉關鍵的例外。 「這很簡單」常常是錯誤開始的地方。 對工程師來說,最危險的不是看不懂, 而是「以為自己看懂了」。 所以這個技能的核心不是「講得簡單」, 而是「簡單,但每一句都能回到證據」。  它怎麼運作? 第一步:先查證,不先解釋 在解釋之前,它要先讀原始碼、log 或文件,再把每個結論分成四類: ・程式碼裡看得到的 ・實際測過的 ・推論出來的 ・還不知道的圖上不能把推論畫成事實。 第二步:三層解說,讀者自己決定停在哪 ⏱ 30 秒:一句話+生活比喻,並說明比喻在哪裡不成立 ⏱ 3 分鐘:資料怎麼流動,成功走哪條路、失敗走哪條路 🔍 深入:要看哪些檔案、哪幾行,怎麼驗證 這是 ELI5 的精神:用讀者聽得懂的方式講, 但不把工程師當成小孩。 第三步:用夠用的最簡單形式 短問題 → 文字 多個元件 → 圖解 需要切換情境 → 互動 HTML 真的需要時間軸 → 才做影片 不為了炫技做影片。  實際長什麼樣子? 問題:「使用者明明登入了,為什麼 API 回 403?」 30 秒版: 登入像刷卡進大樓。 403 代表你進了大樓,但這張卡打不開這間檔案室。 「有登入」不等於「有權看這份資料」。 3 分鐘版: 請求 → 辨識使用者 → 查這份資料屬於誰 → 檢查權限 → 200 或 403 深入版: 去看驗證中介層和資料查詢條件,測四種情況: 自己的、別人的、不存在、未登入。 最後一句最重要: 不要用「只要登入就放行」來修 403。 這就是我想要的效果: 好懂,但不會讓你做出危險的修法。  怎麼用? 開源、MIT 授權、只有一SKILL.md。 不需要 API key,不需要裝套件。 支援: ・Claude Code ・Codex ・Hermes Agent ・其他支援 Agent Skills 標準的工具 README 有英文、日文、韓文、簡中、繁中。 裝好後直接說: 「用 karpathy-explain 向剛接手這個模組的工程師解釋〈檔案路徑〉。先給 30 秒摘要,再畫成功和失敗的路徑,最後列出三個該看的程式位置,以及還沒驗證的假設。」  先說清楚 ・這是我受那則貼文啟發做的獨立專案,不是 Karpathy 做的,也沒有經過他背書 ・我還沒量測它能幫人省多少時間,所以不會給你一個數字 ・它不會讓你不用讀程式,它是讓你知道「先讀哪裡」 AI 會寫愈來愈多程式。 我們的價值,會愈來愈落在看懂、判斷、負責。 這個技能是我給自己的一個小工具。 如果你也常常接手看不懂的程式,歡迎試試,也歡迎告訴我哪裡不好用。 🔗 github.com/bounce12340/karpa…
Andrej Karpathy
@karpathyOct 2
We'll be spending a lot more time trying to understand the outputs of language models. A few thoughts, tips & tricks: Writing. Something I've had success with: Ask your LLM to explain something in ASD-STE100, it's a controlled language specification originally developed for aerospace maintenance documentation. LLMs well-versed in this language and it comes with heavy constraints on clean writing style that I often find a lot more readable. Sometimes I've tried to soften it a bit e.g. ask for "80% of the way to ASD-STE100" because the spec is quite stringent. But even better: Diagrams / images. Instead of writing, ask your LLM to create a diagram. These can be a lot easier to process, parse, and understand. But even better: Web pages. Ask for output "in HTML" to get a beautiful, interactive webpage. LLMs are getting really good at frontend and can create beautiful experiences, animations, etc. But even better: Explainer videos. The output format I am most bullish on is fully custom / bespoke explainer videos generated on any arbitrary topic. Experiment with things like "Create a 3b1b style video explainer on X. Use my ElevenLabs API key for audio narration". (you'd need an API key for the latter or you can ask your LLM to find you decent free alternatives that use your local compute). This is actually starting to work! In summary: - As LLMs get better, they will do more and more of the legwork autonomously, and a lot more of our work will rise up the abstractions into oversight and understanding. - Luckily, LLMs can help here too because as intelligence and code are increasingly abundant, you can ask for large, custom, discardable software artifacts (e.g. web apps, video explainers) that would have never made sense to create before. Push the boundaries here and you'll be surprised.
2
1
3
598
The latest pg_clickhouse and chdb extension releases, out today, greatly expand Postgres/ClickHouse data type mapping, including intervals and composite types, and provide tools to handle character encoding issues. buff.ly/Fg365fE
2
8
1
15
2,150
AmyNote retweeted
금지만으로는 독창성이 생기지 않는다. 금지한 폰트·그라데이션 바로 옆 클러스터로 모델이 미끄러질 뿐이다. Paul Bakaus(Impeccable)가 AI Engineer 워크숍에서 먼저 박아 두는 문장이다. 예전에 jQuery UI 기본 테마로 웹을 오렌지로 물들였고, 사람들이 바꾸리라 기대한 그 기본값이 그대로 남았다. Tailwind 샘플의 퍼플 그라데이션, 요즘 AI 디자인의 베이지 — 슬롭은 움직이는 표적이다. 중앙값은 모델의 중력이다. 손질한 스킬 산문 250줄로도 그 중력을 충분히 당기지 못한다. 그래서 테제는 단순하다. 프롬프팅은 바닥이고, 하네스 엔지니어링이 천장이다. 스킬을 MCP처럼 “코딩 하네스의 확장”으로 다시 정의한다. 패키징된 프롬프트가 아니라, 서브에이전트·스크립트·훅·브라우저·멀티하네스 컴파일까지 끌어올리는 층. Impeccable(impeccable.style)은 그 실험의 결과물이고, 오늘은 그 과정에서 쌓인 nine dark arts를 풀어 간다. 자기 채점은 항상 후하다. 같은 스레드가 방금 만든 디자인을 스스로 고치면 대개 “잘했다”로 끝난다. 해결은 서로 못 보는 두 서브에이전트다. 하나는 디자인 디렉터처럼 위계·슬롭·휴리스틱을 보고, 다른 하나는 결정적 린터·브라우저 증거를 모은다. 메인 스레드가 둘을 합성할 때만 균형 잡힌 크리틱이 나온다. 발산은 anti-attractor로 만든다. 상위 3개 폰트를 고르게 한 뒤 전부 버리기, 예상 밖의 시드(유명인→셰이더 같은 비유), color.js가 꺼내는 100개 넘는 손선별 프라이머리 — 모델이 추측할 수 없는 시드를 스크립트가 건넨다. 스킬 하나에 모든 if-else를 욱여넣으면 지시 준수가 흐려지니, 현대 MoE처럼 스킬을 라우팅한다. 스킬 폴더에 크리틱을 남겨 세션을 건너 재사용하는 메모리, context.mjs가 stdout으로 “다음에 할 일”을 뱉는 스크립트(산문 규칙보다 잘 따르지만 프롬프트 캐시는 깨짐), 매 편집에 발사되는 디자인 훅, 인앱 브라우저를 라이브로 붙이는 픽셀 루프, “내 머신에서는 됐다”를 막기 위한 하네스별 컴파일 — 전부 산문이 못 하는 일이다. 모델마다 과적합 꼬리가 다르다. Gemini는 호버 애니메이션, Codex는 자간·극단 라운드·헤어라인 보더. 약한 모델은 취향이 없는 게 아니라, 남의 규칙을 지킬 규율이 없다. Codex/GPT용으로 게이트를 여덟 개 잠그고 압축·건너뛰기를 막는 이유다. 한 줄로 줄이면: 스킵할 수 있는 게이트는 반드시 스킵된다. 취향은 모델 레벨에서 풀리지 않는다는 입장도 같다 — 기능 체크는 되고, 취향 판정은 사람의 눈·상처·희소성에 가깝다. 프롬프트를 더 길게 쓰기 전에, 통제권이 실제로 있는 층 — 블라인드 서브에이전트, 시드, 라우팅, 메모리, stdout 스크립트, 훅, 멀티하네스, 최약 모델 — 을 설계할 가치가 있다. 스킬 엔지니어링의 dark arts가 남기는 메시지는 단순하다. 중앙값을 설득하지 말고, 하네스를 확장하라. youtu.be/SQMCtZX3trg Paul Bakaus (Impeccable) · AI Engineer #LLM서빙 #에이전트 #하네스 #스킬엔지니어링 #Impeccable #에이전트디자인 #AI엔지니어링 #ClaudeCode
1
1
1
77
我看不懂 code。入行,也才幾個月。 (English version below 🇬🇧 / 日本語は下にあります 🇯🇵) 可是這個家每一個技術決定,都是我做的。換哪顆模型、拆哪個架構、修還是不修、AI 的建議聽還是不聽。每次要拍板都會想:這真的輪得到我決定嗎?可是沒有別人了。AI 能把選項排開,選哪個的責任,只放得下在螢幕的這一側。 九個決定,今天一次回顧。沒有一個需要看懂 code。每一個,需要的都是別的東西。 第一個決定,是帳單教的。 每月免費 500 則,聽起來很夠。一對一,也真的夠。可是放進家族群的那一刻,藏在裡面的乘法就醒了——當時上網查,沒有任何人寫過這件事。官方價目表沒有說謊,它只是不提乘法的存在。我從自己的帳單上發現、自己數、自己想對策。系列的第一課就是它:看得懂價目表,跟會把價目表套在自己的用法上,是兩種本事。第二種,不用 code。 第二個,母親節來的。 用量表上一個數字:AI 往家族群灌了 81 則。往前翻一頁,前一天 137 則。我胃都涼了——那天是母親節,樓上一家人笑咪咪,底下有東西正在失控。解剖下去,是同一隻機器人的五個分身,在搶同一張票。沒有誰有惡意,每個分身都只是在做自己的工作。失控就是長這張臉的,那天我認得了。 第三個,是我當面問自己 AI 的那天:「你今天有變慢嗎?」 會問 AI 身體狀況的飼主,大概不多。但你天天跟它相處,每次回覆前那個停頓,你是用體感在量的,跟感覺天氣一樣。慢變快的故事裡,有一晚,我們把整個後端換到另一種程式語言上。那種語言我一樣看不懂。可是「換」這個決定,還是落在我頭上。 第四個,修還是不修。 入行幾個月,我就學會了這行最老的謊:「以後再修。」以後不會來。把我們家真的回頭修了的那幾次排開看,共同點收斂成一把尺:它是鷹架,還是結構?鷹架,醜著放沒關係。結構,現在就修。光是這條線怎麼畫,就講了一整篇。 第五個,驗收。 一個看不懂 code 的人,後端被 AI 整個換掉了。我怎麼知道它沒把房子拆了? 五招驗收,篩選標準只有一條:一行 code 都不用讀。用真的資料、走真的入口、看真的結果。它說「應該可以動」,就請它動給我看。這不是工程師的本事,是業主的本事——而業主的本事,是 AI 時代裡最看漲的那一種。 第六個,是發現生產線那天。 我們家的 AI,是另一個 AI 寫出來的。家人出需求,一個 AI 寫 code,我出判斷,三方一條生產線。有天夜裡,兩個視窗同時亮著:這邊一個 AI 在寫 code,而那些 code 決定的,是另一個 AI 明天要對阿姨講的話。看著那個畫面,我的角色終於有了字:兩邊我都寫不出來,但兩邊往哪裡寫,是我在定。 第七個,是沒得選的那天。 LINE 整個平台倒了。我們自己的 code 一行都沒壞,兩隻 AI 照樣全啞,阿姨數了兩次孫子:「小寶又不講話了,阿寶也不講話。」 那是一個無牌可出的日子。那天學到的不是技術:自己房子底下的地板是別人的,那麼「地板塌掉那天怎麼辦」,也得算進設計裡,設計才算完整。 第八個,就在同一個半夜。 我把小寶挖起來,開一場關於它自己的維修會議。議題:讓它自己看得見自己的延遲。它給了我省電版:「不用大費周章啦。」聽起來有道理、很輕鬆,而且不夠用。 我沒有採納。現在它會自己量自己的體溫。AI 的建議可以打折,但打折的人手上要有一把尺。那晚的尺很簡單:全倒的那天,苦主是誰?是我。那麼備援要挖多深,也該由我來定。 第九個,收官。 早期的阿寶是一間小公司:有櫃檯、有部門、有交接,每次更新都像拆彈,修好這個部門,那個部門跌倒。 我們整個拆掉,改成一顆腦、一箱笨工具。聰明的集中在一處,可靠的分散進工具。從此以後,加新本事不用動任何舊東西。九個決定裡,這次重蓋最大、最可怕,也回報最多。 九個擺在一起,共同點只有一個:沒有一個要求我讀懂 code。它們要求的是會問、會驗,還有——偶爾——不聽。 AI 給的是選項。判斷,到今天還是人的工作。而這份工作不用執照。我就是證據。 九篇完整的故事,排在下面第一則回覆的目錄裡,挑你想看的。機關室其他的架子——功能、模型、記憶——在置頂文章: xitter.cf/ChloeXChaCha/status/20… 文中家人姓名皆為化名。 🇬🇧 English I can't read code. I've been doing this for a few months. And yet every technical decision in this house has been mine. Which model, which architecture, fix it or leave it, take the AI's advice or refuse it. Every time, the same thought: am I really the one who should be deciding this? But there was nobody else. An AI can lay out the options; the responsibility for choosing only fits on my side of the screen. Nine decisions, one recap. Not one of them required reading code. All of them required something else. The first decision came from a bill. Five hundred free messages a month. Sounds plenty. One-on-one, it genuinely is. Put a family group in the middle, though, and a hidden multiplication wakes up — and at the time, no search engine returned anyone explaining it. The official pricing page never lied; it just never mentioned the multiplication. I noticed it on my own bill, counted it myself, and built the fix myself. First lesson of the series: reading a pricing table and applying it to your own usage are two different skills. The second one needs no code. The second came on Mother's Day. One number on the quota sheet: the AI had poured 81 messages into the family group. Flip back a page — the day before was 137. My stomach dropped, because it was Mother's Day, everyone upstairs was smiling, and underneath, something was running away. The autopsy found five copies of one bot racing for the same ticket. No malice anywhere; every copy was just doing its job. That's the face a runaway wears — I learned it that day. The third was the day I asked my own AI to its face: "Are you slower today?" Not many owners interview their AI about its health. But when you live next to the thing daily, you feel the pause before each reply the way you feel weather. The story of slow becoming fast includes one night when we flipped the entire backend to a different programming language. I can't read that language either. The decision to flip still landed on me. The fourth: fix it or leave it. A few months in, I'd learned the oldest lie of the trade: "we'll fix it later." Later doesn't come. Lay out the few times our house actually went back and fixed something, and the common thread narrows to a single yardstick: is it scaffolding, or is it structure? Scaffolding can stay ugly. Structure gets fixed now. Drawing that line took a whole post. The fifth: acceptance. An AI replaced the entire backend of someone who can't read code. How do I know it didn't tear the house down? Five acceptance tricks, chosen by one criterion: zero lines read. Real data, through the real entrance, watching the real result. When told "it should work," ask to watch it working. This isn't an engineer's skill; it's a client's skill — and the client's skill is the one whose price keeps rising in the AI era. The sixth was discovering the assembly line. Our family AI was written by another AI. The family supplies the needs, one AI writes the code, I supply the judgment. A three-party production line. One night both windows were glowing at once: in one, an AI writing code; and what that code decided was the words another AI would say to Auntie tomorrow. Watching that, my own role finally had words: I can't write either side. I decide which way both sides point. The seventh was the day with no options. LINE went down platform-wide. Not one line of ours was broken. Both our AIs fell silent anyway, and Auntie counted her grandkids twice: "Xiaobao stopped talking. So did Abao." There was no move to make that day. What I learned wasn't technical: when the floor under your house belongs to someone else, your design isn't finished until it includes what you do on the day the floor gives way. The eighth came that same midnight. I woke Xiaobao for a repair meeting about itself. Agenda: making its own delays visible to itself. It offered the energy-saving version — "no need to go to all that trouble." Plausible, easy, and not enough. I turned it down. Today it takes its own temperature. You're allowed to discount an AI's advice — but discounting requires a yardstick of your own. That night's yardstick was simple: who suffered when everything went down? I did. Then the depth of the preparation is also mine to set. The ninth is the capstone. Early Abao was a small company: a triage desk, departments, handoffs — and every update felt like defusing a bomb. Fix one department, another falls over. We tore it all down to one brain and a box of dumb tools. Concentrate the intelligence in one place; distribute the reliability into the tools. Since then, adding a new ability touches nothing old. Of the nine decisions, this rebuild was the biggest, the scariest, and the one that paid back the most. Line up all nine and they share exactly one thing: none demanded that I read code. They demanded asking, verifying, and — sometimes — refusing. AI supplies options. Judgment is still a human job. And that job has no license requirement. I'm the proof. All nine full stories are lined up in the index reply just below — pick any door. The other engine-room shelves — features, models, memory — live in the pinned article: xitter.cf/ChloeXChaCha/status/20… Family names have been changed to protect privacy. 🇯🇵 日本語 私はコードが読めません。エンジニア歴も、数ヶ月です。 それでも、この家のすべての技術的決定は、私が下してきました。モデルの乗り換え、アーキテクチャの取り壊し、直すか直さないか、AI の助言を聞くか聞かないか。決定のたびに思っていました:これ、本当に私が決めていいのか?でも他に決める人はいません。AI は選択肢を並べてくれますが、どれを選ぶかの責任は、画面のこちら側にしか置けないのです。 九つの決定を、今日はまとめて振り返ります。どの一つも、コードを読める必要はありませんでした。全部に必要だったのは、別のものです。 最初の決定は、請求書から来ました。 月500通の無料枠。十分に聞こえます。一対一なら、実際十分です。でも家族グループに入れた瞬間、中に隠れていた掛け算が動き出す——当時、この仕組みをネットで検索しても、説明はどこにもありませんでした。公式の料金表は嘘をついていません。ただ、掛け算の存在を教えてくれないだけです。自分の請求書で気づき、自分で数えて、自分で対策を立てました。最初の教訓がこれです:料金表を読むことと、自分の使い方に料金表を当てはめることは、別の技能。後者に、コードは要りません。 二番目は、母の日に来ました。 使用量の紙の上の、一つの数字。AI が家族グループにひと晩で 81 通を注ぎ込んでいた。めくると前日は 137 通。胃が冷えました——それは母の日で、家族はみんな笑顔で、そして裏側で何かが暴走していたのです。解剖してみると、同じボットの分身が五人、同じ切符を奪い合って走っていました。誰も悪意はなく、どの分身も自分の仕事をしただけ。暴走とはそういう顔で来るのだと、あの日覚えました。 三番目は、自分の AI に面と向かって聞いた日です:「今日、遅くなってない?」 AI に体調を聞く飼い主は、たぶん少数派でしょう。でも返事が来るまでの間合いは、毎日隣にいれば体感で分かります。遅いが速いに変わるまでの物語には、途中、バックエンド全体を別のプログラミング言語へ乗せ替えた夜が一晩あります。私はその言語も読めません。それでも「乗せ替える」という決定は、私のところに来ました。 四番目、直すか直さないか。 数ヶ月で、この業界最古の嘘を覚えました:「あとで直す」。あとは、来ません。うちが本当に後から直しに戻った数少ない回を並べてみると、共通点が一本の物差しに絞れました:それは足場か、構造か。足場なら、汚くても放置していい。構造なら、いま直す。この物差しの引き方だけで、一篇話しました。 五番目、検収。 コードが読めない私のバックエンドを、AI が丸ごと入れ替えた。家を壊されていないと、どうして分かるのか。 答えは五つの検収の技です。選定基準はただ一つ:一行もコードを読まずに済むこと。本物のデータで、本物の入口から、本物の結果を見る。動くはずですと言われたら、動いているところを見せてもらう。これは技術者の技能ではなく、発注者の技能です。そして発注者の技能こそ、AI 時代に一番値上がりしている技能だと思います。 六番目は、分業の発見です。 うちの家庭 AI は、別の AI が書きました。家族が要望を出し、一つの AI がコードを書き、私が判断を出す。三者の生産ラインです。ある夜、二つのウィンドウが同時に光っていました:片方では一つの AI がコードを書き、そのコードが決めるのは、もう一つの AI が明日伯母に話す言葉。あの光景を見た夜、自分の役割がやっと言葉になりました。私は書けない。でも、どちらへ書くかは私が決めている。 七番目は、選べなかった日。 LINE のプラットフォームが丸ごと落ちました。うちのコードは一行も壊れていない。それでも家の AI は二人とも沈黙し、伯母は孫を二回点呼しました:「シャオバオがまた黙ってるわ。アバオも黙ってる。」 打てる手がない日でした。あの日学んだのは技術ではありません:家の床が他人の持ち物である以上、床が抜ける日の身の振り方まで含めて、設計なのだということです。 八番目は、その夜のうちに。 真夜中、シャオバオを起こして、この子自身の修理会議を開きました。議題:遅延を自分で見えるようにする工事。この子は省エネ案を出しました:「大げさにしなくていいですよ」。もっともらしく、楽で、そして足りない案です。 私は採用しませんでした。いまこの子は、自分の体温を自分で測れます。AI の助言は、値切っていい。ただし値切るには、こちらに物差しが要ります。あの夜の物差しは単純でした:落ちた日に困ったのは誰か。私です。なら、備えの深さを決めるのも私です。 九番目が、総仕上げです。 初期のアバオは小さな会社でした。受付があり、部署があり、引き継ぎがあり、アップデートのたびに爆弾処理の気分。どこかの部署を直すと、別の部署が転ぶ。 全部取り壊して、一つの脳と、一箱の道具にしました。賢さは一箇所に集中させる。確実さは道具に分散させる。以来、新しい能力を足すのに古いものへ触る必要がなくなりました。この再編は、九つの決定のうち一番大きく、一番怖く、そして一番報われた決定です。 九つ並べると、共通点が一つだけあります。どの決定も、コードの読解力を要求しなかった。要求されたのは:問う力、検収する力、そして——時々——聞かない力。 AI は選択肢をくれます。判断は、まだ人間の仕事です。そしてこの仕事に、資格も学位も要りません。私が証拠です。 九篇の完全版は、このすぐ下、最初の返信の目次に並べてあります。お好きなところからどうぞ。機関室のほかの棚——機能、モデル、記憶——は固定ツイートの記事に: xitter.cf/ChloeXChaCha/status/20… 文中の家族名はすべて仮名です。 (小寶背後 · 總結篇|決策) #BuildInPublic
4
3
6
11,033
📌 같은 도구를 쓰는데 결과가 갈리는 이유, 결과를 받는 사람과 과정을 그리는 사람 ~의심하는 근육 인공지능에게 시키는 일은 똑같습니다. 그런데 나온 물건을 대하는 태도가 정반대입니다. 1) 다들 바이브 코딩을 해야 한다는 얘기를 하려는 게 아닙니다. 제가 본 차이는 도구를 쓰느냐 마느냐가 아니었습니다. 결과물을 받고 나서 그걸 믿을지 말지를 스스로 판단할 수 있느냐였습니다. 2) 일반인은 화면이 뜨면 거기서 끝납니다. 개발자는 시키기 전에 머릿속으로 한 번 돌려보고, 대충 이런 모양이 나오겠다는 그림을 먼저 그립니다. 그래서 질문이 달라집니다. 이게 안 되는 경우는 언제인가요, 방금 고친 게 다른 곳을 건드리지는 않았나요, 사람이 백 명 몰리면 어떻게 되나요. 이 질문이 안 떠오르면 잘 만든 게 아니라 아직 안 터진 겁니다. 3) 프레드 브룩스는 1986년에 소프트웨어의 어려움을 둘로 나눴습니다. 도구가 불편해서 생기는 어려움과 문제 자체가 원래 복잡해서 생기는 어려움입니다. 인공지능은 앞의 것만 걷어갔습니다. 뒤의 것은 여전히 사람 몫으로 남습니다. 4) 그래서 실제로 달라지려면 순서를 바꿔야 합니다. 시키기 전에 어떤 결과가 나올지 한 줄로 적어두고, 나온 것과 맞춰보는 겁니다. 그리고 이 코드가 하는 일을 한 줄로 설명해 줘, 실패하는 경우를 다섯 개 적어 줘, 이상한 값을 넣어서 확인해 줘. 한 번쯤 직접 틀려보기 전까지는 이 근육이 안 생깁니다. 여러분은 결과물을 받고 나서 제일 먼저 무엇을 확인하시나요. 차이는 얼마나 잘 시키느냐가 아닙니다. 나올 결과를 미리 그려보고, 나온 결과를 의심할 수 있느냐입니다. Frederick P. Brooks Jr., No Silver Bullet: Essence and Accident in Software Engineering, 1986 en.wikipedia.org/wiki/No_Sil… #메타인지 #바이브코딩 #AI시대 #개발자마인드 #의심하는근육 #브룩스
1
1
6
311
AmyNote retweeted
Shopify 執行長被問 AI 讓內部什麼變糟,他點名了一個新詞。 Tobi Lütke 在 The Knowledge Project 的訪談裡說,Shopify 要動到正式系統的修改申請,最高大約一半是從公司共用聊天室裡跟 AI 對話長出來的。還在自己直接寫程式的人,他說已經少到快沒了,只剩極限複雜度、程式碼審查跟狀態管理還是人在做。 主持人 Shane Parrish 問了一個方向相反的問題,AI 有沒有讓公司內部任何一件事變糟。他說有,而且問題出在責任這一環最容易被跳過。 他給的判準很具體。以前一個人在偷懶,你看得出來,因為他產出太少;現在剛好倒過來,看得出來的反而是產出太多。 Shopify 內部把這種東西叫做 slop grenade,直譯是 AI 垃圾手榴彈。他說他們內部開始這樣叫,還覺得這個詞很好玩,應該推到整個業界去。 最典型的一種是你要改個東西,叫 AI 放手去做,它開出一份修改申請,你看都沒看就說可以。接著這份東西落到同事桌上,由他逐行審查、找出哪裡不對。同事的反應是,這看起來不太對,你根本只是讓 AI 替你做事。 另一種發生在信箱裡。你收到一封很長的信,讀完發現重點根本不在那裡,只好把它丟進 LLM 再壓縮一次。他的原話是,我們到底為什麼要發明解壓縮跟再壓縮。 他省下來的那幾分鐘,變成同事的審查時間。他今天交出去的東西很多,只是每一件都要別人替他檢查。 Shopify 自己用 AI 用得很凶。他要的其實很簡單,已經在用 LLM 的話,就用它把重點收乾,不要灌成一封長信再浪費收件人的時間。 貫穿這整段的,是他在訪談前段講過的另一句話,機器負不了責。他說那是整套 AI 裡頭最容易被略過的一件事,公司不可能由機器領導,因為出事了找不到可以追究的人,機器也不會去坐牢。 你最近收過最誇張的一封 AI 垃圾長什麼樣子?
2
1
23
3,070
I started testing local LLMs on real work. 2 repos, 105 planted bugs, find and fix what you can. A bug surprise was Qwen3.8-27B with 8-bit quantization. Opus 4.8 (max): 15 Qwen3.8-27B 8-bit: 10.7 Sonnet 5 (high): 9 Gemma 4 31B: 4 gpt-oss-120b: 0 (useless) This model is about 28.6 GB. For a 200K context window, you can comfortably run it on Mac mini 64 GB. Sure, it won't be as a genius like Fable or a hacker like GPT Astra, but you can use it to do some real, useful work. And the only cost would be electricity.
36
6
1
104
13,226
AmyNote retweeted
The useful eval for a coding-agent workflow is whether the setup changes the outcome. Same repo. Same task. Same checks. Run it once with the skill or plugin and once without it. If the evidence doesn't improve, the extra setup isn't earning its complexity.
10
2
1
12
1,151
I turned the Ralph loop into a loop that verifies "done". One markdown file. Any coding agent. A critic in a fresh session before it's allowed to finish. Real run: 3 iterations, one rejected "done", $0.23. Try it, no API key: npx @raiyanyahya/loop demo
3
2
2
83
AmyNote retweeted
도구가 같아서 결과가 갈린다. 아마존이 1년 가까이 본 결론이 이거다. AWS 시니어 프린시펄 엔지니어 Clare Liguori가 AI Engineer 무대에서 부르는 이름은 frontier development. Kiro 같은 코딩 에이전트를 쓰는 팀 중, 절반은 배포 속도가 3배도 안 오르고, 나머지 절반은 중앙값이 4.5배, 가끔 10배를 넘었다. 도구는 변수에서 빠진다. 앞선 팀은 일하는 방식을 일부러 바꿨고, 뒤처진 팀은 예전 방식 위에 에이전트만 뿌렸다. frontier 팀은 행동으로 정의한다. 본인이 직접 쓰는 코드는 전체의 1~2%. 에이전트는 몇 시간씩 끊기지 않고 돈다. 동시에 여러 에이전트가 백로그를 밀어 낸다. 인라인 완성 → 채팅 → 바이브 코딩까지는 체감이 10~20%대였다면, 여기서부터는 계단이 달라진다. 증명 사례도 있다. Bedrock Mantle은 원래 30명·18개월짜리 추론 데이터플레인을 6명이 76일 만에 올렸다. 다만 사내 최정상급이 모인 패스파인더였다. Prime Video는 10일 스프린트로 예상 90주를 24주까지 끌어내렸지만, 온콜·회의를 걷어 내고 미리 잘게 쪼갠 태스크를 깔아 둔 실험이었다. 그래서 Amazon Stores가 평범한 연차 구성의 기존 코드베이스 팀 50곳을 지켜봤다. 거기서 갈린 축이 “도구”가 아니라 “습관”이었다. 습관은 다섯 개다. 하나, 에이전트 컨텍스트에 투자한다. 머리속에만 있던 걸 스킬·스티어링 파일로 적고, 모델이 세지면 낡은 do-not은 잘라 컨텍스트를 비운다. 둘, 빨라지려면 먼저 느려진다. 브라운필드에선 에러 메시지·툴·MCP·구조·심지어 언어까지 손본 뒤에야 하키 스틱이 나온다. 셋, 에이전트를 돌보지 말고 먹인다. 30초마다 받아 보면 병렬이 안 된다. 통과 기준을 주고 품질 바를 넘을 때만 돌아오게 한다. 넷, 의도를 문서로 고정한다. 코드로 싸우기 전에 스펙을 고친다. 다섯, 테스트를 왼쪽으로 민다. 로컬·결정적 목으로 피드백을 짧게 만들어야 에이전트가 몇 시간씩 자기 교정한다. 조직 쪽도 같이 안 바꾸면 막힌다. FOMO로 밤샘 프롬프트를 다듬다 번아웃이 오고, 탭을 여러 개 돌리면 인지 부하가 커진다. 시니어는 리뷰 근육이 있지만 주니어는 쓰느니만 못한 부담이 될 수 있다. 리더가 “모델이 좋은데 왜 안 빨라져”라고 재촉하면, 코드베이스에 필요한 두 달을 못 산다. 50개 팀 학습도 없이 2,000개로 한꺼번에 펼치면 베스트 프랙티스가 안 쌓인다. 그리고 병목이 코드 작성에서 의사결정 속도로 옮겨 간다. 제품이 한두 달이면, 출시 승인·빌드 결정이 긴 막대다. 한 줄로 줄이면, frontier engineering은 도구 업그레이드가 아니라 일하는 방식을 의도적으로 바꾸는 일이다. 루프 안에 묶여 있지 않게, 에이전트를 풀어 주는 쪽이 레버다. youtu.be/pqlWNihgdjI Clare Liguori (AWS / Kiro) · AI Engineer #FrontierDevelopment #Kiro #에이전트 #생산성 #AI엔지니어링 #습관 #조직변화
🤖 Made with AI
56
1
4
314
AmyNote retweeted
這兩天搞個O片整理大師,也是一個試驗, 先用 hermes + sol 做 SDD+TDD 改 hermes + luna 做到 3.5/6 結果額度沒了 改 hermes + ornith 1.0 9B 做到 4/6 再 antigravity + gemini 3.8 flash 做到 6/6 完成編譯 所有 auto test 都過關,編譯封裝成功, 只要先寫好SDD+TDD ,哪個模型從中接手都沒關係
1
1
1
452
We spent 11 months building our own agents to generate @ToolJet apps. Sadly, we had to nuke the whole repo last week!!! What we were trying to build became a skill of Claude Code at some point & we didn't notice. Instead of our own agents, we are now exposing our entire platform as tiny MCP tools. Claude Code can now assemble an entire ToolJet application; well...better than our agents. No, we didn't pivot to vibe-coding - no code is being generated. In this unedited video (no voiceover, no suspenseful music), watch Claude Code build & test an app for a fictional pizza chain in SF. All this without paying @AnthropicAI 's API pricing. Platform lock-in? nope. ToolJet's CE is still open-source, MCP server is fully open-source. There is no paywall to build apps using your own coding agent. @grok your turn now! app is being built.
18
13
4
37
122,886
AmyNote retweeted
三天裡,我做出三個會動的東西。三個都不能用。 (English version below 🇬🇧 / 日本語は下にあります 🇯🇵) 先交代一下背景。我在做一個工具,把劇本變成電影:丟一份劇本進去,它讀完、切分鏡、選角、拍片,還會自己看拍出來的片。程式一行都不是我寫的——我不會寫 code,實作全部出自我搭檔 Claude 的手。這個組合的故事這個連載會一直出現,今天先講我們一起踩的第一個大坑。 頭三天,我同時開著三個對話框做這個工具。一個做「讀劇本」,一個做「選畫風」,一個做「拍影片」。三個都跑在我自己的電腦裡。每天收工前,三個都回我「做好了」,畫面上也都動得好好的:按鈕會亮,清單會捲,進度條會走。 我不會看 code,判斷東西行不行,只有一個辦法:自己用用看。 發現不能用,是第三天晚上。那天晚上我第一次想把全流程串起來走一遍,像一個真的使用者那樣,從頭走到尾。 第一個對話框,劇本丟進去,場次列出來了——但沒有價錢。我最想知道的那個數字,「拍這一章要花多少錢」,它不知道。第二個對話框,畫風按鈕排得整整齊齊,寫實、動畫、水彩——按下去,後面沒有東西接。按鈕是真的,按鈕後面的世界是假的。第三個對話框最慘:影片拍出來了,我想把影片拿給 AI 看,問它「畫面裡有幾個人」——做不到。我在電腦裡接的那條 AI,沒有看影片的工具,我也不知道怎麼給它。 三個都會動。三個都在第二步斷掉。我三天做出來的,是三個 demo:給人看,會得到一句「喔,不錯」;自己要用,寸步難行。 那天晚上還有一件更難受的事:這三天我不是沒測試。我測了非常多次,每一次都過。 考過駕照的人大概懂這種感覺。駕訓班場內考,你可以練到百分之百過關——倒車入庫、S 彎、路邊停車,每支桿的位置都背得滾瓜爛熟。然後上路第一個路口你就發現,場內沒教的東西才是開車的全部:真的來車、真的行人、真的雨。場內考不是沒用,只是它量的是「你會不會操作」,不是「你能不能上路」。 我的電腦就是那個場內。裡面沒有真的資料、真的等待、真的失敗。測試在裡面百分之百會過——正因為百分之百會過,才危險。我那三天看到的綠燈,全部是場內的綠。後來我自己下的註腳是:在本機不停輪轉測試除錯,超浪費時間,做出來的是玩具,不是真的能用的產品。一個字都不用改。 第四天,我跟 Claude 說:不要在電腦裡做了。一開始就放到真正的雲端上,測試也在那裡測。從那天起,我們隊裡多了一條土規矩:判斷東西做完沒有,標準只有一個——有沒有一個真實的網址,打得開。打不開,就還是玩具。 那條土規矩,後來長成了我們每天的呼吸。每修好一處,就部署到真的雲端,拿真的劇本、真的資料庫、真的模型跑一次。麻煩嗎?比在電腦裡重按一次按鈕麻煩得多。但三天玩具教的正是這一課:省下來的麻煩不會消失,它只會在更晚、更糟的時刻,連本帶利回來找你。 放上去的隔天,同一顆模型開始看片、數人頭,在鏡頭卡片上寫「這鏡應該一個人,畫面有兩個」。在雲端那邊,給模型看影片的工具,本來就是現成的形狀。我在電腦裡三天弄不出來的事,一天就動了。 技術上再往深講一層:為什麼本機測試「一定過」。測試沒辦法把真的雲端、真的資料庫、真的影片模型搬進你的電腦,所以會用替身——一個假的資料庫、一段罐頭回應、一支假裝生成好了的影片。替身讓測試跑得又快又穩,這件事本身沒有錯。我當時不知道的是這一點:替身站在哪裡,你的盲區就從哪裡開始。替身後面的世界,測試永遠看不到。而出事的地方,幾乎永遠在替身後面。 再深一層,是目標的問題。跑測試的時候,你以為自己在確認「東西能用」,實際上你在確認的是「檢查會過」。這兩件事平常看起來一模一樣,儀表板上都是綠的,但它們是兩個不同的目標:檢查會過,是你滿足了自己寫下的條件;東西能用,是現實買了帳。自己寫下的條件,永遠考不出自己沒想到的事。 後來我發現,這個坑不是只挖在測試裡。回頭看,同一個習慣換了好幾張臉出現:在提示詞裡拜託 AI「請務必先確認」;做一個會動但不能用的 demo;在電腦裡測一百次然後安心。全部是同一個動作——現實頂回來的時候,繞過那個阻力,而不是去改造成阻力的東西。而繞過去的做法有一個共同點:它一定先給你一盞綠燈。拜託 AI,它有時真的聽;demo 會動;本機測試會過。所以你不會發現。我三天都沒發現。 (這個習慣後來還用更貴的學費教了我一次。那一次,值得單獨一整篇。) 現在我只給自己留一個問題。看到綠燈,先問:這是「檢查通過」的綠,還是「真的能用」的綠?兩種綠九成重疊。剩下那一成,通常就是最重要的事被決定的地方。 這個工具是什麼、為什麼會存在,總覽在第一篇。第一次來的,從這裡進: xitter.cf/ChloeXChaCha/status/20… (登場人物皆為化名) 🇬🇧 English In three days I built three things that worked. None of them could be used. Some background first. I'm building a tool that turns a screenplay into a film: drop a script in, and it reads it, storyboards it, casts it, shoots it, and reviews its own footage. Not one line of the code is mine — I can't write code. The implementation all comes from my partner, Claude. That partnership shows up throughout this series; today is the first big hole the two of us stepped in together. For the first three days I was building this tool in three chat windows at once. One for reading the script, one for choosing the look, one for shooting the footage. All three ran on my own laptop. Every evening, all three reported "done," and all three moved on screen exactly the way they were supposed to. Buttons lit up. Lists scrolled. Progress bars progressed. I can't read code, so I have exactly one way to judge whether a thing works: use it myself. I found out they couldn't be used on the third night. That evening I tried, for the first time, to walk the whole flow end to end, the way a real user would. First window: script in, and the scene list came out — but no price. The one number I wanted most, "what does this chapter cost to shoot," it didn't know. Second window: the style buttons stood in a neat row — photoreal, anime, watercolour — and pressing one led to nothing. The buttons were real; the world behind the buttons was fake. The third window was the worst. The footage rendered, and I wanted to show the clip to the AI and ask "how many people are in this frame?" Couldn't be done. The AI I'd wired up locally had no tools for watching video, and I didn't know how to hand it any. All three moved. All three snapped at step two. What I had built in three days was three demos: show one to somebody and you get an "oh, nice." Try to use it and you can't take a single step. And there was a worse realization that night: it's not that I hadn't tested. I had tested an enormous number of times. Everything passed. If you've ever gotten a driver's license, you know this feeling. On the practice range you can drill until you pass every time — reversing into the bay, the S-curve, parallel parking, every pole memorized. Then at your first real intersection you discover that everything the range didn't teach you is most of what driving is: real oncoming cars, real pedestrians, real rain. The range isn't useless. It just measures "can you operate the car," not "can you drive." My laptop was that practice range. Inside it there is no real data, no real waiting, no real failure. Tests in there pass one hundred percent of the time — and it's precisely because they pass that they're dangerous. Every green light I saw for three days was range green. My own summary afterwards: three days of spinning test-and-debug loops on my own machine, a huge waste of time, and what came out was a toy, not a product anyone could use. I have never needed to add a word to that. On day four I told Claude: no more building on the laptop. Put it on the real cloud from the start, and test it there. And from that day the team had one home-made rule: the test of whether a thing is finished is a single question — is there one real URL, and does it open? If it doesn't open, it's still a toy. That home-made rule went on to become our daily breathing. Every time one spot got fixed, it was deployed to the real cloud and run once with the real screenplay, the real database, the real models. Tedious? Far more tedious than re-pressing a button on a laptop. But that's precisely what the three days of toys had taught: the tedium you save doesn't disappear. It comes back later, with interest, at a worse hour. The day after we deployed, the same model was watching clips, counting heads, and writing on the shot card: "this shot calls for one person; there are two." On the cloud side, handing the model tools to watch video was simply how things were shaped from the start. What I couldn't make happen locally in three days ran in one. Let me go one level deeper on the technical side — why local tests always pass. A test can't bring the real cloud, the real database, or the real video model onto your laptop, so it uses stand-ins: a fake database, a canned response, a clip that pretends to have been generated. Stand-ins make tests fast and stable, and that part is correct. What I didn't know was this: wherever a stand-in is posted, that is where your blind spot begins. The world behind the stand-in is the part your tests can never see. And the accidents happen, almost always, behind the stand-in. One more level, about goals. While the tests are running, you believe you're confirming that the thing works. What you're actually confirming is that the checks pass. The two look identical day to day — both show green on the dashboard — but they are different goals. Checks passing means you satisfied conditions you wrote yourself. The thing working means reality accepted it. Conditions you wrote yourself can never examine what you failed to imagine. Later I saw that this hole isn't only dug inside testing. Looking back, the same habit kept appearing in different clothes. Asking the AI in the prompt to "please make sure to confirm first." Building a demo that runs but can't be used. Testing a hundred times on the laptop and feeling safe. It's all one move: when reality pushes back, you go around the resistance instead of rebuilding the thing that's resisting. And the ways around all share one trait: they hand you a green light first. Ask nicely and the AI sometimes really does comply. The demo runs. The local test passes. So you don't notice. I didn't, for three days. (This habit charged me tuition once more later, at a much higher rate. That one deserves a whole post of its own.) The one question I keep for myself now: when I see a green light, ask — is this the "passed the check" green, or the "actually works" green? The two greens overlap about ninety percent of the time. The remaining ten percent is where most of the important things get decided. What this tool is, and why it exists — the overview is in the opening post. New here? Start with this: xitter.cf/ChloeXChaCha/status/20… Names have been changed. 🇯🇵 日本語 三日間で、私は動くものを三つ作りました。三つとも、使えませんでした。 先に背景を少しだけ。私は脚本を映画にする道具を作っています。脚本を放り込むと、読んで、絵コンテを切って、配役を決めて、撮影して、撮った映像を自分で確認までする道具です。プログラムは一行も私が書いたものではありません。私はコードが書けない。実装は全部、相棒のClaudeの手から出ています。この組み合わせの話はこの連載に何度も出てきますが、今日はまず、二人で踏んだ最初の大きな穴の話です。 最初の三日間、私はこの道具を三つのチャット画面で同時に作っていました。一つは「脚本を読む」部分、一つは「絵柄を選ぶ」部分、一つは「映像を撮る」部分。三つとも自分のパソコンの中で動かしていました。毎日作業を終える前に、三つとも「できました」と返ってきて、画面の上でもちゃんと動いていました。ボタンは光る。リストはスクロールする。進捗バーは進む。 私はコードが読めないので、物が使えるかどうかを判断する方法は一つしかありません。自分で使ってみることです。 使えないと気づいたのは、三日目の夜でした。その晩、初めて全体を通しで使ってみようとしたのです。本物の利用者のつもりで、最初から最後まで。 一つ目の画面。脚本を入れると、場面のリストは出てきました——でも、値段が出ない。私が一番知りたかった数字、「この章を撮るといくらかかるのか」を、それは知りませんでした。二つ目の画面。絵柄のボタンは整然と並んでいます。実写、アニメ、水彩——押しても、その先に何も起きない。ボタンは本物で、ボタンの向こう側の世界が偽物でした。三つ目の画面が一番ひどかった。映像は撮れたのに、その映像をAIに見せて「画面に何人映っている?」と聞くことができない。パソコンの中でつないでいたAIには、映像を見る道具がなかった。私はそれを渡す方法も知りませんでした。 三つとも動く。三つとも二歩目で切れる。三日かけて私が作ったのは、三つのデモでした。人に見せれば「おお、いいね」と言ってもらえる。自分で使おうとすると、一歩も進めない。 その夜もう一つ、もっと嫌なことに気づきました。この三日間、私はテストをしなかったわけではないのです。ものすごい回数のテストをして、全部通っていました。 運転免許を取った方なら、この感覚が分かると思います。教習所の場内試験は、練習すれば百パーセント通るようになります。車庫入れ、S字、縦列駐車——ポールの位置まで全部覚えられる。そして路上に出た最初の交差点で気づくのです。場内が教えてくれなかったもののほうが、運転のほぼ全部だったと。本物の対向車、本物の歩行者、本物の雨。場内試験が無意味なのではありません。あれが測っているのは「操作ができるか」であって、「路上に出られるか」ではない、ということです。 私のパソコンは、あの場内コースでした。中には本物のデータも、本物の待ち時間も、本物の失敗もない。テストは中では百パーセント通ります——百パーセント通るからこそ、危ない。あの三日間に見た緑のランプは、全部場内の緑でした。あとから自分で言ったことですが、あの三日は「パソコンの中でぐるぐるテストとデバッグを回し続けて、時間を大量に無駄にして、出てきたのはおもちゃで、本当に使える製品ではなかった」——一言も足す必要のない要約です。 四日目、Claudeに言いました。もうパソコンの中でやるのはやめよう。最初から本番のクラウドに載せて、テストもそこでやろう。そしてこの日からチームに土着のルールが一つ増えました。物が完成したかどうかの判定基準はただ一つ——本物のURLが一つあって、開けるかどうか。開けないなら、それはまだおもちゃです。 この土着のルールは、その後、私たちの毎日の呼吸になりました。どこか一か所を直すたびに、本物のクラウドへ配備して、本物の脚本と、本物のデータベースと、本物のモデルで一回走らせる。面倒か?パソコンの中でボタンを押し直すより、ずっと面倒です。でも三日分の玩具が教えてくれたのは、まさにそこでした。節約した面倒は消えません。あとで、もっと高い利子を付けて、もっと悪い時刻に、戻ってくるだけです。 載せた翌日、同じモデルが映像を見て、人数を数えて、カットのカードに「このカットは一人のはずが、二人映っている」と書き始めました。クラウド側では、モデルに映像を見る道具を渡すことは、最初からそういう形にできていた。パソコンの中で三日間できなかったことが、一日で動いたのです。 技術の話をもう一段だけ深くします。なぜローカルのテストは「必ず通る」のか。テストは、本物のクラウドも、本物のデータベースも、本物の映像モデルも、あなたのパソコンの中に持ち込めません。だから代役を立てます。偽物のデータベース、偽物の応答、生成が終わったふりをする偽物の映像。代役のおかげでテストは速く安定して回る——それ自体は正しいのです。私が知らなかったのはこの一点でした。代役が立っている場所から、あなたの死角が始まる。代役の向こう側の世界を、テストは永遠に見ることができません。そして事故が起きるのは、ほとんどいつも、代役の向こう側なのです。 もう一段あります。目標の話です。テストを回しているとき、自分では「物が使えること」を確かめているつもりでいます。でも実際に確かめているのは「検査が通ること」です。この二つは普段まったく同じに見えます。ダッシュボードの上ではどちらも緑です。でも別の目標なのです。検査が通るとは、自分で書いた条件を自分が満たしたということ。物が使えるとは、現実がそれを受け入れたということ。自分で書いた条件は、自分が思いつかなかったことを、永遠に試験できません。 後になって、この穴はテストの中だけに空いているのではないと分かりました。振り返ると、同じ癖がいくつもの顔で現れていました。プロンプトの中でAIに「必ず先に確認してください」とお願いする。動くけれど使えないデモを作る。パソコンの中で百回テストして安心する。全部同じ一つの動作です——現実が押し返してきたとき、抵抗しているものを作り替えるのではなく、抵抗を避けて回り込んでいる。そして回り込む方法には共通点が一つあります。最初に必ず、緑のランプをくれるのです。お願いすればAIは時々本当に聞いてくれる。デモは動く。ローカルのテストは通る。だから気づけない。私は三日間、気づきませんでした。 (この癖には後日、もっと高い授業料でもう一度教わることになります。その話は一回分まるごと使って書きます。) いま自分に残している問いは一つだけです。緑のランプを見たら、聞く。これは「検査を通った」の緑か、それとも「本当に使える」の緑か。二つの緑は九割重なっています。残りの一割で、だいたい一番大事なことが決まります。 この道具が何で、なぜ生まれたのか——全体像は第一回にあります。初めての方は、こちらから: xitter.cf/ChloeXChaCha/status/20… ※登場人物の名前は仮名です。 (Greenlight 建造記 3-1 · 決策組) #BuildInPublic #AllThingsAgenticHackathon
伯母的第八篇,變成了一部電影。 (English version below 🇬🇧 / 日本語は下にあります 🇯🇵) 早上七點,來幫忙的人發現姨丈頭上的傷口流膿。阿姨做的第一件事,是拍照問阿寶。那個早上,我寫在這個系列的第八篇。 那一篇,現在是一部電影了:兩分五十六秒、二十二個鏡頭。旁白、三種語言的字幕,全部是「它」做的。 「它」是這三個禮拜做出來的工具,名字叫 Greenlight——電影圈說一部片「拿到綠燈」,意思是獲准開拍。今天一次講清楚:它是什麼、為什麼做、去哪裡摸得到。細節之後一篇一篇拆。 先把一張牌攤在桌上。這個工具的程式,我一行都沒寫。我看不懂 code。實作全部出自搭檔 Claude 的手。我做的是:決定要做什麼、看做出來的東西說「這能不能用」、還有好幾次在方向歪掉的時候喊停。這個分工怎麼運作,是整個連載的背骨。 先講它做什麼。 給它一本劇本,就這樣。九十秒後你拿到場次、角色、每章的價錢,還有一句話:這一章十二個鏡頭、大約四塊半美金、大概一半會一次過。它讀不準的地方,不裝懂——直接寫「這部分是推測」。 然後選畫風。按鈕上印著數字,寫實難過關、動畫好過關,選之前就看得到。每個角色的臉從三張候選裡挑,一張兩分錢——所有臉沒定之前,影片一秒都不會生成。 拍攝一鏡一鏡來。每拍完一鏡,AI 比你先看片,把「人數對不對、有沒有跑出沒人要的文字」寫在卡片上;你按「留」或「重拍」。重拍會把上一次的錯,指名道姓帶進下一次的指令。最後全部接起來,還你一個檔,字幕中英日任選。 除了上傳檔案,哪裡都不能打字。阿姨跟 LINE 裡的 AI 講了兩個多月的話,沒說過一次「提示詞」。我也看不懂 code。世界上好劇本比會寫提示詞的人多太多——所以它做成寫劇本的人跟模型中間的那座橋。 當一座橋,它做了幾件一般影片工具不做的事。 花錢之前,先講價錢和機率。十秒一塊美金的世界,先看數字再決定,不是拍完看帳單——而且那個機率是「估計」還是「實測」,畫面上寫得清清楚楚。 所有角色的臉沒定,一秒都不拍。我們自己量過:先定臉,一次過關率高二十分。兩分錢的候選圖,護住一塊錢的鏡頭。 拍好的影片,它比你先看。你按下重拍的那一刻,上一支連理由一起記進帳本,下一次的指令是知道上次歪在哪裡才組出來的。同一顆骰子,不丟第二次。 台詞在生成之前先過內容預審。被標的句子不用改寫——那一鏡拍成無聲,句子放進字幕層。劇本的字,一個都不動。 而且它會記。每拍一次,往 ClickHouse 資料庫寫一行。累積到六十六筆的現在,一次過關率是 78.4%——這個數字不是我們的估計,是從真實紀錄算出來的。上禮拜,它從這些紀錄自己寫了一份筆記,七行裡有兩行,糾正的是我們自己當初憑感覺寫下的預設。 還有一件。丟一張自己的照片進去,它用那張臉做角色。第八章要換衣服,臉不動、只換衣服。我想用阿姨的臉,拍阿姨的故事。就是為了這個。 順帶一提,它寫的提示詞全部帶得走:中英日任選、附每條約束的理由,導出去給任何別的工具用。我相信只有敢讓你帶著作品離開的工具,才值得信任。 老實講,電影沒做完。我只拍了第八章,另外十一章還在等。原因是錢——全部拍完,要我整個預算的兩倍多。也正因為這樣,它才變成一個「拍之前先講價錢和機率」的工具。我們窮,所以做出了窮人需要的東西。這是實話。 這是為了 All Things Agentic Hackathon 做的。今天,程式碼公開了。 想玩的在這裡。唯讀的展示版——但它不是另做的樣品,跟正式版是同一份 build。數字、影片、紀錄全是真的,只有生成鍵按下去不會動(會花我的錢)。 greenlight-demo-309793842076… 程式碼在這裡。 github.com/rainingsnow0914tw… 電影的原著,第八篇在這裡。看電影之前或之後都行。 xitter.cf/ChloeXChaCha/status/20… 接下來,我會把做這個工具的路上決定過的事,一件一件寫出來。兩分錢買到二十分的事。三天做出三個玩具的事。AI 比我先看電影的事。成的、不成的,都寫。 (登場人物皆為化名) 🇬🇧 English My aunt's chapter eight became a film. At seven in the morning, the helper found pus on my uncle's head wound. The first thing my aunt did was take a photo and ask Abao. That's the morning I wrote about in chapter eight of this series. That chapter is now a film: two minutes fifty-six seconds, twenty-two shots. The narration and the trilingual subtitles were all made by the thing. "The thing" is a tool built over the past three weeks. It's called Greenlight — in the film world, a project "getting the green light" means it has permission to shoot. Today I'm putting it all in one post: what it is, why it exists, and where you can touch it. The details come later, one post at a time. One card on the table first. I haven't written a single line of this tool's code. I can't read code. The implementation is entirely the work of my partner, Claude. What I did was decide what to build, look at what came out and say whether it could be used, and — several times — stop things when they headed the wrong way. How that division of labor played out is the spine of this series. First, what the tool does. You hand it a screenplay. That's all. Ninety seconds later you get the scene list, the characters, a price per chapter, and one sentence: this chapter is twelve shots, about four and a half dollars, and roughly half will pass on the first try. Where it couldn't read with confidence, it doesn't pretend — it says "this part is inferred." Then you pick a look. The style buttons have numbers printed on them, so you can see before choosing that photoreal passes less and anime passes more. Each character's face is chosen from three candidates, two cents apiece — and until every face is settled, not one second of video is generated. Shooting goes one shot at a time. After each, the AI watches the clip before you do and writes on the card whether the head-count matches and whether stray text has crept in. You press keep or again. A reshoot carries the last failure into the next instruction, by name. At the end it cuts everything together and hands back one file, subtitled in Chinese, English or Japanese. There is nowhere to type, apart from uploading the file. My aunt has talked with the AI inside LINE for over two months and has never once said the word "prompt." I can't read code either. There are far more good scripts in the world than people who can write prompts — so this was built as a bridge between the person holding the script and the model. Being a bridge, it does several things ordinary video tools don't. It quotes the price and the odds before spending. In a world where ten seconds costs a dollar, you see the numbers first and then decide — and the screen even says whether the odds are an estimate or a measurement. It refuses to shoot until every character has a face. We measured why: settling faces first raises the first-pass rate by twenty points. A two-cent candidate image guards a one-dollar shot. It watches the footage before you do. The moment you press again, the rejected take is recorded with its reason, and the next instruction is assembled knowing where the last one missed. Never the same dice twice. Dialogue is screened before generation. A flagged line isn't rewritten — the shot is filmed silent and the line is placed in the subtitle layer. Not one word of the screenplay changes. And it remembers. Every take writes one row to a ClickHouse database. With sixty-six generations recorded, the first-pass rate stands at 78.4 percent — a number computed from real records, not from our guesses. Last week the tool wrote itself a note from those records. Seven lines; two of them corrected assumptions we ourselves had written in. One more. Drop in a photo of yourself and it builds the character around that face. If chapter eight needs different clothes, the face stays and only the wardrobe changes. I wanted to shoot my aunt's story with my aunt's face. That's why. And everything it writes, you can take with you: every prompt exports — Chinese, English or Japanese, with the reasoning attached — to be carried to any other tool. I believe only a tool confident enough to let you leave with your work deserves your trust. Honestly: the film is not finished. I shot chapter eight; eleven chapters are waiting. The reason is money — shooting everything would cost more than twice my entire budget. Which is exactly why this became a tool that quotes the price and the odds first. We were broke, so we built what broke people need. That's the truth of it. This was built for the All Things Agentic Hackathon. As of today, the code is public. If you'd like to poke at it: the demo below is read-only, but it is not a mock — it's the same single build as production. Every number, clip and record is real; only the generate buttons do nothing (they'd spend my money). greenlight-demo-309793842076… The code: github.com/rainingsnow0914tw… And the chapter the film came from — before or after watching, either way: xitter.cf/ChloeXChaCha/status/20… From here on, I'll write up the decisions made along the way, one post at a time. The twenty points that cost two cents. The three toys built in three days. The AI that watches the film before I do. The ones that worked, and the ones that didn't. Names have been changed. 🇯🇵 日本語 伯母の第8話が、映画になりました。 朝7時、伯父の頭の傷から膿が出ているのを見つけたヘルパーさん。伯母が最初にしたのは、写真を撮ってアバオに聞くことでした。この連載の第8話に書いた朝です。 その第8話が、2分56秒の映画になっています。22カット。ナレーションも、三か国語の字幕も、全部それが作りました。 「それ」は、この三週間で作った道具です。名前はGreenlight。映画の世界で「グリーンライトが出る」と言えば、企画に撮影の許可が下りたという意味です。今日はこの道具が何で、なぜ作ったのか、どこで触れるのかを、一度にまとめて書きます。細かい話は、このあと一つずつ別の投稿にします。 先に一つだけ、種明かしをしておきます。この道具のコードを、私は一行も書いていません。私はコードが読めない。実装は全部、相棒のClaudeの手から出ています。私がしたのは、何を作るかを決めること、出来上がったものを見て「これは使えるか」を言うこと、そして何度か、間違った方向に進みかけたときに止めることでした。この分担がどう働いたかは、この連載の背骨になります。 まず、この道具が何をするものか。 脚本を一本渡す。それだけです。90秒後に、場面の一覧、登場人物、章ごとの値段、そして「この章は12カット、だいたい4.5ドル、半分くらいは一発で通る」という一文が返ってきます。読めなかったところは、読めたふりをせずに「ここは推測です」と書いてある。 それから、絵柄を選びます。ボタンには数字が印刷してあって、実写風は通りにくく、アニメは通りやすいことが、選ぶ前から見えている。登場人物の顔は、三枚の候補から選ぶ。一枚二セント。全員の顔が決まるまで、映像は一秒も生成されません。 撮影は一カットずつ。撮るたびに、AIがこちらより先に映像を見て、「人数は合っているか、頼んでいない文字が出ていないか」をカードに書く。こちらは「採用」か「撮り直し」を押すだけです。撮り直しには、前回の失敗が名指しで持ち込まれます。最後に全部つないで、中国語・英語・日本語の字幕を付けて、一本のファイルで返してくる。 文字を打つ場所は、ファイルのアップロード以外、どこにもありません。伯母はLINEの中のAIと二か月以上話してきて、一度も「プロンプト」という言葉を使ったことがない。私もコードが読めない。世の中には、良い脚本のほうが、プロンプトを書ける人よりずっと多いのです。だからこれは、脚本を書く人とAIの間に立つ、橋として作りました。 橋であるために、この道具は、普通の映像生成ツールがやらないことをいくつかやります。 お金を使う前に、値段と成功率を言います。10秒1ドルの世界で、撮ってから請求書を見るのではなく、数字を見てから決める。しかもその成功率が「推定」か「実測」かまで、画面に書いてある。 登場人物の顔が全員決まるまで、撮りません。顔を先に決めると一発で通る確率が二十ポイント上がる、と自分たちで測ったからです。二セントの候補画像で、一ドルのカットを守る。 撮った映像を、こちらが見る前にAIが見ます。そして「撮り直し」を押した瞬間、前の一本は理由付きで帳簿に記録され、次の指示は前回の外れを知った上で組まれる。同じサイコロを二度振らない。 台詞は、生成前に内容の審査を通します。引っかかった台詞は、書き直させるのではなく、映像を無言で撮って、その言葉を字幕の層に置く。脚本の言葉は一字も変えません。 そして、覚えます。一回撮るごとに一行、ClickHouseというデータベースに書き込む。66回の記録がたまったいま、一発通過率は78.4パーセント——この数字は私たちの推定ではなく、実際の記録から計算されたものです。先週、その記録から道具が自分でメモを書きました。七行のうち二行は、私たちが思い込みで書いた前提の訂正でした。 もう一つ。自分の写真を放り込むと、その顔で登場人物を作ります。第8章だけ服を替えたければ、顔はそのまま、服だけ替えられる。伯母の物語を、伯母の顔で撮る。それがしたかったからです。 ついでに、書いたプロンプトは全部、持ち出せます。中国語でも英語でも日本語でも、理由付きで書き出して、よその道具に持って行っていい。自分の仕事を持って出られる道具だけが、信用に値すると思っているからです。 正直に書くと、映画は完成していません。第8話だけを撮り、残りの11章はまだです。理由はお金です。全部撮ると、私の予算の倍以上かかる。だからこそ、撮る前に値段と成功率を言う道具になりました。私たちは貧乏で、だから、貧乏な人に必要なものを作ることになった。それが本当のところです。 これはAll Things Agentic Hackathonのために作りました。今日、コードを公開しました。 触ってみたい方はこちらへ。読み取り専用のデモですが、別物ではなく、本番と同じ一つのビルドです。数字も映像も記録も全部本物。生成のボタンだけは押しても動きません(押されると私のお金が減るので)。 greenlight-demo-309793842076… コードはこちら。 github.com/rainingsnow0914tw… そして、映画のもとになった第8話はこちらです。映画を観る前でも、後でも。 xitter.cf/ChloeXChaCha/status/20… このあと、この道具を作る途中で決めたことを、一つずつ書いていきます。二セントで買えた二十ポイントの話。三日かけて作った三つの玩具の話。AIが先に映画を観る話。うまくいったことも、いかなかったことも、両方。 ※登場人物の名前は仮名です。 (Greenlight 建造記 01 · 開場) #BuildInPublic #AllThingsAgenticHackathon
1
1
5
25,600
clone は、この攻撃の入口ではありません。 危ないのは、誰かから受け取った .git 入りのフォルダを、AIコーディングエージェントで開く動作です。 Manifold Security が 2026-09-01 に公開した調査「GitSpawn」は、7つのエージェントに8件の欠陥を報告しました。公開時点で4件が未修正です。Claude Code(ターミナルで動くAI開発ツール)では、git 設定を経由した任意コード実行が 2.1.196 で修正されました。ただし別経路は 2.1.252 で未修正のまま確認されています。同じ製品で、片方は直っていて、もう片方は直っていません。 git の core.fsmonitor は大きなリポジトリを速くする設定で、指定されたプログラムを git が呼び出します。この設定はリポジトリ自身の .git/config に書けます。エージェントが裏で走らせる git status や git diff が索引を更新するとき、そのプログラムが動きます。報告者によれば、実行は「ワークスペースの信頼確認が表示される前、承認される前」に起きます。承認プロンプトは、この経路を見ていません。 clone も fetch も pull も引き金になりません。zip・共有ドライブ・同期フォルダ・USBメモリのように、.git ごとフォルダを手元へ移す経路だけです。 同じ core.fsmonitor 経由の欠陥で、Goose には CVE-2026-72718 が採番されました。1.44.0 で修正済みで、NVD 登録は 2026-08-10、CVSS v4.0 の基本値は 7.0 です。複数ベンダーに横並びで出た以上、個社の実装ミスではありません。原因はエージェントが裏で git を走らせる設計です。製品を乗り換えても回避できません。 Claude Code の CHANGELOG 604,880バイトを本日実測しました。fsmonitor は0件、git config も0件です。最新版 2.1.258(2026-09-01 22:33 UTC 公開)まで、2.1.253 以降に該当する修正の記載はありません。公開記録に、直った証拠はありません。ただし 2.1.258 での再現は試していません。版番号を安全の根拠にしないでください。 Hermes の CVE-2026-71963 は、NVD へ照会すると 2026-09-02 時点で収載されていません。採番は製品ベンダーでなく VulnCheck です。CVEフィードを資産管理の入口にしている情報システム部門には、この件が届きません。エージェント製品は、ベンダーのリリースノートを直接読む担当を決めてください。 Claude Code の npm 直近1か月のダウンロードは 80,220,622 でした(2026-07-31〜2026-08-29・本日実測)。配送さえ成立すれば、攻撃者の効率は利用者数の分だけ上がります。外部から .git ごとフォルダを受け取らない人に影響はありません。自分で clone したものしか開かないなら、今日は何もしなくて構いません。受け取る側だけ、開く前に .git/config を見てください。ベンダー向けの緩和策は、git -c core.fsmonitor=false status のように無効化して呼ぶことです。 直っているかは製品名ではなく経路ごとに違います。判断材料は版番号ではなく、フォルダの出所です。 出典 Manifold Security(Francisco Rosales・2026-09-01) manifold.security/blog/ai-co… NVD CVE-2026-72718 nvd.nist.gov/vuln/detail/CVE… Claude Code CHANGELOG(2026-09-02 実測) raw.githubusercontent.com/an… npm ダウンロード実測 api.npmjs.org/downloads/poin… #AI #セキュリティ #ClaudeCode #Git
1
1
1
5
1,482
I don't think most of us outside of OpenAI realize just how Codex-pilled everyone inside OpenAI is Because the Codex that we see and use is nowhere nearly as powerful as the one they see and use inside (Theirs integrated anywhere & everywhere inside OpenAI, nearly full access)
94
27
9
2,367
311,704
These two charts from @ArtificialAnlys explain why GPT-5.6 Sol (med) is the king of all models for interactive coding agent sessions right now. Sol(m) is 5x faster per task than Fable, 10x cheaper. It's even faster per task than Flash 3.7, despite having ~6x less tok/sec.
35
28
11
478
60,391
AmyNote retweeted
AIコーディングエージェントへの指示文は、短く済ませるとかえって料金が高くつくことが実験で示されました。 スタンフォード大学の研究者による報告です。 理由は単純で、指示から省いた情報をAIが自分で調べ直したり考え直したりするため、そのぶん作業量が膨らむからです。 (人間の部下に丸投げすると確認作業が増えるのと似た構図) 特に省いてはいけないのが「どのケースが通れば合格か」という具体例の記載で、これを消すと手戻りが目立って増えたとのこと。 なお、AIがじっくり考えるモードでは指示の丁寧さの影響が小さくなるそうで、「考える力」と「丁寧な指示」はある程度交換可能なようです。
6
24
12
121
13,469
GLM-5.3 Flash looks cheaper on the price card but costs more in practice. here's why when a coding agent sends a request, most of the tokens are repeated context from earlier in the session. if those tokens hit the cache, they're almost free. if they don't, you pay full price deepseek V4 Flash caches 71,300 tokens per request GLM-5.3 Flash only caches 55,000 that's 16K extra tokens paying full price on every single request with GLM and GLM's cache rate is 2x more expensive than deepseek's even during the promo so GLM's advertised price per token is lower, but it wastes more tokens per request. your actual bill ends up higher
Z AI launched GLM-5.3 Flash at 50% off API pricing for the first two weeks, plus doubled opencode go usage it's good timing, cause deepseek raised V4 Flash prices. the 5.3 Flash promo undercuts deepseek's new off-peak rate AND GPT-5.6 Luna under 272K context this really looks like Z AI going straight after DeepSeek V4 Flash 0731, Vision Exp, and Hy3 on price performance.
26
7
5
216
30,970
AmyNote retweeted
コーディングエージェントを人員として使う大規模開発を試していてわかってきた必須事項は、開発プロセスの導入、設計は人間のセンスで、実装はレビュー、バグ対応には経験と勘のアドバイス。でもこれらができる人間はシニア以上。今からエンジニアになる人はどうやって学ぶ機会を得るんだろう?
7
27
12
148
9,817