AIFCC
記事一覧へ
claude-workflowai-thinkingmarketing

Razorpayで2人のAIハッカーチームを設立した

Garry Tan@garrytan
32223
Steve Yeggeは、AIコーディングエージェントを使っている人は「CursorやチャットでAIを使っているエンジニアと比べて10倍から100倍の生産性があり、2005年当時のGoogle社員と比べると約1000倍の生産性がある」と述べている。 これは現実の数字だ。私は見てきた。自分で体験してきた。しかし人々がこれを聞くと、間違った説明に飛びつく。より良いモデル。より賢いClaude。パラメータの増加。2倍の人と100倍の人は同じモデルを使っている。違いはインテリジェンスではない。アーキテクチャだ。しかもそれはインデックスカード1枚に収まる。 ## ハーネスが製品だ 2026年3月31日、Anthropicは誤ってClaude Codeのソースコードをnpmレジストリ全体に公開した。512,000行。私はそれを読んだ。YCで教えてきたことをすべて確認した。秘密はモデルではない。モデルを包んでいるものだ。 ライブリポジトリのコンテキスト。プロンプトキャッシング。目的特化型のツール。コンテキスト肥大化の最小化。構造化されたセッションメモリ。並列サブエージェント。これらはモデルをより賢くしない。すべてがモデルに適切なタイミングで適切なコンテキストを与え、ノイズに溺れさせない。 このラッパーをハーネスと呼ぶ。そしてすべてのAIビルダーが問うべき質問は:ハーネスに何を入れ、何を外に置くか?その答えには特定の形がある。私はそれを「シンハーネス、ファットスキル」と呼ぶ。 ## 5つの定義 ボトルネックはモデルのインテリジェンスではない。モデルはすでに推論し、統合し、コードを書く方法を知っている。失敗するのはあなたのデータ、スキーマ、規約、問題の特定の形を理解していないからだ。5つの定義がこれを解決する。 ### 1. スキルファイル スキルファイルは、モデルに何かの方法を教える再利用可能なMarkdownドキュメントだ。何をするかではなく、ユーザーがそれを提供する。スキルがプロセスを提供する。 ほとんどの人が見逃す重要な洞察:スキルファイルはメソッド呼び出しのように機能する。パラメータを取る。異なる引数で呼び出す。同じプロセスが渡されるものによって根本的に異なる能力を生み出す。 `/investigate`というスキルを考えてほしい。7つのステップがある:データセットのスコープ設定、タイムラインの構築、すべてのドキュメントの日誌化、統合、両側の論証、ソースの引用。3つのパラメータを取る:TARGET、QUESTION、DATASET。安全科学者と210万件のディスカバリーメールに向けると、告発者が黙らされたかどうかを判断する医療研究アナリストが得られる。シェル会社とFEC申告書に向けると、調整された選挙献金を追跡する法廷調査員が得られる。 同じスキル。同じ7つのステップ。同じMarkdownファイル。スキルが判断のプロセスを記述する。呼び出しが世界を提供する。 これはプロンプトエンジニアリングではない。ソフトウェア設計だ。Markdownをプログラミング言語として使い、人間の判断力をランタイムとして使う。Markdownは実際、能力を封じ込める点で剛性のあるソースコードより完璧だ。なぜならそれはモデルがすでに考えている言語でプロセス、判断、コンテキストを記述するからだ。 ### 2. ハーネス ハーネスはLLMを動かすプログラムだ。4つのことをする:ループでモデルを動かす、ファイルを読み書きする、コンテキストを管理する、安全を強制する。それだけだ。それが「シン」だ。 アンチパターンはシンスキルとファットハーネスだ。見たことがあるだろう:コンテキストウィンドウの半分を食う40以上のツール定義。2〜5秒のMCPラウンドトリップを引き起こすゴッドツール。すべてのエンドポイントを別々のツールに変えるREST APIラッパー。トークンが3倍、レイテンシが3倍、失敗率が3倍だ。 代わりに必要なのは高速で範囲の狭い目的特化型ツールだ。100ミリ秒で各ブラウザ操作を行うPlaywright CLIで、15秒かかるスクリーンショット・検索・クリック・待機・読み取りのChrome MCPではない。75倍速い。ソフトウェアはもはや丁寧に扱う必要はない。必要なものだけを構築し、それ以外は作らない。 ### 3. リゾルバー リゾルバーはコンテキストのルーティングテーブルだ。タスクタイプXが現れたとき、最初にドキュメントYを読み込む。 スキルは方法を教える。リゾルバーは何をいつ読み込むかを教える。開発者がプロンプトを変更する。リゾルバーがなければ、そのままリリースする。リゾルバーがあれば、モデルは最初にdocs/EVALS.mdを読む。それには「評価スイートを実行し、スコアを比較し、精度が2%以上低下した場合はリバートして調査する」と書いてある。開発者は評価スイートが存在することを知らなかった。リゾルバーが適切なタイミングで適切なコンテキストを読み込んだ。 Claude Codeには組み込みのリゾルバーがある。すべてのスキルにdescriptionフィールドがあり、モデルはユーザーの意図をスキルの説明に自動的にマッチさせる。`/ship`が存在することを覚えておく必要はない。説明がリゾルバーだ。 告白がある:私のCLAUDE.mdは20,000行だった。遭遇したすべての癖、パターン、教訓。完全に馬鹿げていた。モデルのアテンションが劣化した。Claude Codeは文字通り私にカットバックするよう言った。修正は約200行だった。ポインターのみだ。リゾルバーが必要な時に適切なものを読み込む。20,000行の知識がオンデマンドでアクセス可能で、コンテキストウィンドウを汚染しない。 ### 4. 潜在的 vs 決定論的 システムのすべてのステップはどちらかであり、それらを混同することがエージェント設計で最も一般的な間違いだ。 潜在空間はインテリジェンスが住む場所だ。モデルが読み、解釈し、決定する。判断、統合、パターン認識。 決定論的は信頼が住む場所だ。同じインプット、同じアウトプット。常に。SQLクエリ、コンパイルされたコード、算術。 LLMは8人を食事のテーブルに座らせることができる。性格や社会的ダイナミクスを考慮して。800人座らせると、もっともらしく見えるが完全に間違った座席表を幻覚する。それは決定論的問題、つまり組み合わせ最適化であり、潜在空間に押し込まれている。最悪のシステムは間違った作業を間違ったラインの片側に置く。最良のシステムはそれについて容赦なく決断する。 ### 5. 日誌化(Diarization) 日誌化は、AIを実際の知識作業に役立てるステップだ。モデルが主題についてすべてを読み、構造化されたプロファイルを書く。数十から数百のドキュメントから蒸留された1ページの判断。 SQLクエリはこれを生成しない。RAGパイプラインもこれを生成しない。モデルは実際にすべてを読み、矛盾を頭の中に保持し、何がいつ変わったかに気づき、構造化されたインテリジェンスを統合しなければならない。データベースルックアップとアナリストのブリーフの違いだ。 ## アーキテクチャ この5つのコンセプトはシンプルな3層アーキテクチャを形成する。 ファットスキルが最上部に:判断、プロセス、ドメイン知識をエンコードするMarkdownプロセデュア。価値の90%がここに住む。 シンCLIハーネスが中間に:約200行のコード。JSONイン、テキストアウト。デフォルトで読み取り専用。 アプリケーションが最下部に:QueryDB、ReadDoc、Search、Timeline。決定論的基盤。 原則は方向性がある。インテリジェンスをスキルに押し上げる。実行を決定論的ツールに押し下げる。ハーネスをシンに保つ。これをすると、モデルへのすべての改善がすべてのスキルを自動的に改善し、一方で決定論的レイヤーは完全に信頼できるままになる。 ## 学習するシステム 5つの定義が実際に動いているところを見せよう。理論ではなく、YCで構築している実際のシステムで。 Chase Center。2026年7月。Startup Schoolで6,000人のファウンダー。それぞれに構造化された申請書、アンケート回答、1対1のアドバイザーチャットのトランスクリプト、Xへの投稿、GitHubのコミット、どれだけ速く出荷するかを示すClaude Codeトランスクリプトなどのパブリックシグナルがある。 従来のアプローチ:プログラムチーム15人が申請書を読み、直感で判断し、スプレッドシートを更新する。200人のファウンダーでは機能する。6,000人では機能しない。これほど多くのプロファイルを作業記憶に保持して、AI Infrastructure for AI Agentsコホートの最良の3人の候補がラゴスのdev toolsファウンダー、シンガポールのコンプライアンスファウンダー、ブルックリンのCLIツーリングファウンダーで、全員が1対1のチャットで異なる言葉で同じペインポイントを表現していることに気づく人間はいない。 モデルには可能だ。その方法を示そう。 **エンリッチメント。** `/enrich-founder`というスキルがすべてのソースを引き出し、エンリッチメントを実行し、日誌化し、ファウンダーが言っていることと実際に構築しているものとのギャップを強調する。決定論的レイヤーがSQLルックアップ、GitHubの統計、デモURLへのブラウザテスト、ソーシャルシグナルの引き出し、CrustDataのクエリを処理する。cronが毎晩動作する。6,000のプロファイル、常に最新。 日誌化のアウトプットはキーワード検索では見つからないものをキャッチする: ``` ファウンダー:Maria Santos 会社:Contrail (contrail.dev) 言っている:「AI AgentsのためのDatadog」 実際に構築している:コミットの80%が課金モジュール。 彼女はobservabilityに見せかけたFinOpsツールを構築している。 ``` このギャップ、「言っている」と「実際に構築している」の間は、GitHubのコミット履歴、申請書、アドバイザーのトランスクリプトを読み、3つすべてを同時に頭に保持する必要がある。エンベディングの類似検索はこれを見つけない。キーワードフィルターもこれを見つけない。モデルが完全なプロファイルを実際に読んで判断を下す必要がある。(これは潜在空間に置くべき完璧な決定だ!) **マッチング。** ここでスキル・アズ・メソッド・コールが輝く。同じマッチングスキルの3つの呼び出し、3つの完全に異なる戦略: `/match-breakout`は1,200人のファウンダーを取り、セクター親和性でクラスタリングし、1部屋30人。エンベディングプラス決定論的割り当て。`/match-lunch`は600人を取り、セクターをまたいだserendipityマッチングを行い、1テーブル8人、重複なし。LLMがテーマを考案し、決定論的アルゴリズムが座席を割り当てる。`/match-live`は現在建物にいる人を処理し、最近傍エンベディング、200ms、1対1ペア、すでに会った人を除外する。 モデルはクラスタリングアルゴリズムには絶対にできない判断を下す:「SantosとOramは両方AI infraだが、競合ではない。Santosはコスト帰属、Oramはオーケストレーション。同じグループに入れよ。」または「Kimは『developer tools』として申請したが、1対1のトランスクリプトでSOC2のためのコンプライアンス自動化を構築していることがわかった。FinTech/RegTechに移動せよ。」 エンベディングはKimの再分類をキャプチャしない。モデルはプロファイル全体を読む必要がある。 **学習ループ。** イベント後、`/improve`スキルがNPSアンケートを読み、中程度の回答を日誌化する。悪い回答ではなく、システムがほぼ機能したが機能しなかった「まあまあ」の回答。パターンを抽出し、新しいルールを提案し、マッチングスキルに書き戻す: ``` 参加者が「AI infrastructure」と言っているが スタートアップのコードの80%以上が課金コードの場合: → FinTechに分類、AI Infraではない。 同じグループの2人の参加者が すでにお互いを知っている場合: → 近接にペナルティを与える。 新規の紹介を優先する。 ``` これらのルールはスキルファイルに書き戻される。次の実行では自動的にそれらを使用する。スキルが自分自身を書き直す。 7月のイベント:12%の「まあまあ」評価。次のイベント:4%。スキルファイルは「まあまあ」が実際に何を意味するかを学習し、誰もコードを書き直すことなくシステムが改善された。 同じパターンはどこにでも転送できる:取得、読む、日誌化、カウント、統合。そして:アンケート、調査、日誌化、スキルの書き直し。 2026年で最も価値のあるループが何かを知りたければ、それだ。存在するあらゆる知識作業の学問分野や生活のあらゆる場面に適用できる。 ## スキルは永続的なアップグレードだ 最近、自分のOpenClawに与えた指示をツイートしたところ、予想以上の反響があった: > あなたには一度限りの作業をする許可はない。私が何かをするよう頼み、それが再び必要になる類のものであれば、あなたはこうしなければならない:最初に3〜10アイテムで手動で行う。アウトプットを見せる。私が承認したら、それをスキルファイルに成文化する。自動的に実行すべきなら、cronに入れる。テスト:私が何かを2回頼まなければならない場合、あなたは失敗した。 1,000のいいねと2,500のブックマーク。人々はプロンプトエンジニアリングのトリックだと思った。違う。私が説明してきたアーキテクチャだ。書くすべてのスキルはシステムへの永続的なアップグレードだ。劣化しない。忘れない。眠っている間の午前3時に動く。そして次のモデルが出るたびに、すべてのスキルが即座に良くなる。潜在的なステップの判断が改善され、決定論的なステップは完全に信頼できるままだ。 それがYeggeの100倍を得る方法だ。より賢いモデルではない。ファットスキル、シンハーネス、そしてすべてを成文化する規律。 システムは複利で成長する。一度構築する。永遠に動く。
原文を表示 / Show original
Steve Yegge says people using AI coding agents are "10x to 100x as productive as engineers using Cursor and chat today, and roughly 1000x as productive as Googlers were back in 2005." That's a real number. I've seen it. I've lived it. But when people hear it, they reach for the wrong explanation. Better models. Smarter Claude. More parameters. The 2x people and the 100x people are using the same models. The difference isn't intelligence. It's architecture — and it fits on an index card. The harness is the product On March 31, 2026, Anthropic accidentally shipped the entire source code for Claude Code to the npm registry. 512,000 lines. I read it. It confirmed everything I'd been teaching at YC: the secret isn't the model. It's the thing wrapping the model. Live repo context. Prompt caching. Purpose-built tools. Context bloat minimization. Structured session memory. Parallel sub-agents. None of that makes the model smarter. All of it gives the model the right context, at the right time, without drowning it in noise. That wrapper is called the harness. And the question every AI builder should be asking is: what goes in the harness, and what stays out? The answer has a specific shape. I call it thin harness, fat skills. Five definitions The bottleneck is never the model's intelligence. Models already know how to reason, synthesize, and write code. They fail because they don't understand your data — your schema, your conventions, the particular shape of your problem. Five definitions fix this. 1. Skill files A skill file is a reusable markdown document that teaches the model how to do something. Not what to do — the user supplies that. The skill supplies the process. Here's the key insight most people miss: a skill file works like a method call. It takes parameters. You invoke it with different arguments. The same procedure produces radically different capabilities depending on what you pass in. Consider a skill called /investigate. It has seven steps: scope the dataset, build a timeline, diarize every document, synthesize, argue both sides, cite sources. It takes three parameters: TARGET, QUESTION, and DATASET. Point it at a safety scientist and 2.1 million discovery emails, and you get a medical research analyst determining whether a whistleblower was silenced. Point it at a shell company and FEC filings, and you get a forensic investigator tracing coordinated campaign donations. Same skill. Same seven steps. Same markdown file. The skill describes a process of judgment. The invocation supplies the world. This is not prompt engineering. This is software design, using markdown as the programming language and human judgment as the runtime. Markdown is, in fact, a more perfect encapsulation of capability than rigid source code, because it describes process, judgment, and context in the language the model already thinks in. 2. The harness The harness is the program that runs the LLM. It does four things: runs the model in a loop, reads and writes your files, manages context, and enforces safety. That's it. That's the "thin." The anti-pattern is a fat harness with thin skills. You've seen it: 40+ tool definitions eating half the context window. God-tools with 2-to-5-second MCP round-trips. REST API wrappers that turn every endpoint into a separate tool. Three times the tokens, three times the latency, three times the failure rate. What you want instead is purpose-built tooling that's fast and narrow. A Playwright CLI that does each browser operation in 100 milliseconds, not a Chrome MCP that takes 15 seconds for screenshot-find-click-wait-read. That's 75x faster. Software doesn't have to be precious anymore. Build exactly what you need, and nothing else. 3. Resolvers A resolver is a routing table for context. When task type X appears, load document Y first. Skills tell the model how. Resolvers tell it what to load and when. A developer changes a prompt. Without the resolver, they ship it. With the resolver, the model reads docs/EVALS.md first — which says: run the eval suite, compare scores, if accuracy drops more than 2%, revert and investigate. The developer didn't know the eval suite existed. The resolver loaded the right context at the right moment. Claude Code has a built-in resolver. Every skill has a description field, and the model matches user intent to skill descriptions automatically. You never have to remember that /ship exists. The description is the resolver. A confession: my CLAUDE.md was 20,000 lines. Every quirk, every pattern, every lesson I'd ever encountered. Completely ridiculous. The model's attention degraded. Claude Code literally told me to cut it back. The fix was about 200 lines — just pointers to documents. The resolver loads the right one when it matters. Twenty thousand lines of knowledge, accessible on demand, without polluting the context window. 4. Latent vs. deterministic Every step in your system is one or the other, and confusing them is the most common mistake in agent design. Latent space is where intelligence lives. The model reads, interprets, decides. Judgment. Synthesis. Pattern recognition. Deterministic is where trust lives. Same input, same output. Every time. SQL queries. Compiled code. Arithmetic. An LLM can seat 8 people at a dinner table, accounting for personalities and social dynamics. Ask it to seat 800 and it will hallucinate a seating chart that looks plausible but is completely wrong. That's a deterministic problem — combinatorial optimization — forced into latent space. The worst systems put the wrong work on the wrong side of this line. The best systems are ruthless about it. 5. Diarization Diarization is the step that makes AI useful for real knowledge work. The model reads everything about a subject and writes a structured profile — a single page of judgment distilled from dozens or hundreds of documents. No SQL query produces this. No RAG pipeline produces this. The model has to actually read, hold contradictions in mind, notice what changed and when, and synthesize structured intelligence. It's the difference between a database lookup and an analyst's brief. The architecture These five concepts compose into a simple three-layer architecture. Fat skills sit on top: markdown procedures that encode judgment, process, and domain knowledge. This is where 90% of the value lives. A thin CLI harness sits in the middle: about 200 lines of code. JSON in, text out. Read-only by default. Your application sits on the bottom: QueryDB, ReadDoc, Search, Timeline — the deterministic foundation. The principle is directional. Push intelligence up into skills. Push execution down into deterministic tooling. Keep the harness thin. When you do this, every improvement to the model automatically improves every skill, while the deterministic layer stays perfectly reliable. The system that learns Let me show you all five definitions working together. Not in theory — in an actual system we're building at YC. Chase Center. July 2026. Six thousand founders at Startup School. Each one has a structured application, questionnaire answers, transcripts from 1:1 advisor chats, and public signals: posts on X, GitHub commits, Claude Code transcripts showing how fast they ship. The traditional approach: a program team of 15 reads applications, makes gut calls, updates a spreadsheet. It works at 200 founders. It breaks at 6,000. No human can hold that many profiles in working memory and notice that the three best candidates for the infrastructure-for-AI-agents cohort are a dev tools founder in Lagos, a compliance founder in Singapore, and a CLI-tooling founder in Brooklyn — all of whom described the same pain point in different words during their 1:1 chats. The model can. Here's how. Enrichment. A skill called /enrich-founder pulls all sources, runs enrichments, diarizes, and highlights the gap between what founders say and what they're actually building. The deterministic layer handles SQL lookups, GitHub stats, browser tests on demo URLs, social signal pulls, CrustData queries. A cron runs nightly. Six thousand profiles, always fresh. The diarization output catches things no keyword search would find: FOUNDER: Maria Santos COMPANY: Contrail (contrail.dev) SAYS: "Datadog for AI agents" ACTUALLY BUILDING: 80% of commits are in billing module. She's building a FinOps tool disguised as observability. That gap — "says" versus "actually building" — requires reading the GitHub commit history, the application, and the advisor transcript, and holding all three in mind at once. No embedding similarity search finds this. No keyword filter finds it. The model has to read the full profile and make a judgment. (This is the perfect decision to put in latent space!) Matching. This is where skill-as-method-call shines. Three invocations of the same matching skill, three completely different strategies: /match-breakout takes 1,200 founders, clusters by sector affinity, 30 per room. Embedding plus deterministic assignment. /match-lunch takes 600, does serendipity matching across sectors, 8 per table, no repeats — the LLM invents the themes, then a deterministic algorithm assigns seats. /match-live handles whoever is in the building right now, nearest-neighbor embedding, 200ms, 1:1 pairs, excluding people who've already met. And the model makes judgment calls a clustering algorithm never could: "Santos and Oram are both AI infra, but they're not competitors — Santos is cost attribution, Oram is orchestration. Put them in the same group." Or: "Kim applied as 'developer tools' but his 1:1 transcript reveals he's building compliance automation for SOC2. Move him to FinTech/RegTech." No embedding captures the Kim reclassification. The model has to read the entire profile. The learning loop. After the event, an /improve skill reads NPS surveys, diarizes the mediocre responses — not the bad ones, the "OK" ones, where the system almost worked but didn't — and extracts patterns. Then it proposes new rules and writes them back into the matching skills: When attendee says "AI infrastructure" but startup is 80%+ billing code: → Classify as FinTech, not AI Infra. When two attendees in same group already know each other: → Penalize proximity. Prioritize novel introductions. These rules get written back into the skill file. The next run uses them automatically. The skill rewrites itself. July event: 12% "OK" ratings. Next event: 4%. The skill file learned what "OK" actually meant, and the system got better without anyone rewriting code. The same pattern transfers everywhere: retrieve, read, diarize, count, synthesize. Then: survey, investigate, diarize, rewrite the skill. If you want to know what the most valuable loops are in 2026, it's those. We can apply them to every discipline and walk of life of knowledge work in existence. Skills are permanent upgrades I tweeted an instruction I gave to my OpenClaw recently that resonated more than I expected: You are not allowed to do one-off work. If I ask you to do something and it's the kind of thing that will need to happen again, you must: do it manually the first time on 3 to 10 items. Show me the output. If I approve, codify it into a skill file. If it should run automatically, put it on a cron.The test: if I have to ask you for something twice, you failed. A thousand likes and twenty-five hundred bookmarks. People thought it was a prompt engineering trick. It's not. It's the architecture I've been describing. Every skill you write is a permanent upgrade to your system. It never degrades. It never forgets. It runs at 3 AM while you sleep. And when the next model drops, every skill instantly gets better — the judgment in the latent steps improves while the deterministic steps stay perfectly reliable. That's how you get Yegge's 100x. Not a smarter model. Fat skills, thin harness, and the discipline to codify everything. The system compounds. Build it once. It runs forever.

AIFCC — AI Fluent CxO Club

読み書きそろばん、AI。経営者が AI を自分で動かせるようになるコミュニティ。

Razorpayで2人のAIハッカーチームを設立した | AIFCC