Slides: How Windsurf writes 90% of your code with an Agentic IDE - Kevin Hou, Windsurf
Source Video
How Windsurf writes 90% of your code with an Agentic IDE - Kevin Hou, Windsurf
Relationship To World's Fair 2026
These slides are extracted from a public AI Engineer YouTube video connected to World's Fair 2026. Speaker-matched clips are supporting context unless later confirmed as exact session recordings; official livestream recordings are day-level/event-level source material.
Related Scheduled Sessions
- No individual scheduled session mapping has been assigned yet; treat this as an event livestream deck.
Extracted Slides

OCR text:
PN
td
an
aed ~
a os
-

OCR text:
We always believed agents were the future of software
development.
Load ba CRG OTS) Crea Ce Esie Pacer ce Do
2022 2023 2024 2025, 2026, 2027....end of tim
; Yaa eas le
; rs ; ar AI.ENGINEER

OCR text:
AGENTS AT WORK
AI Engineer
SUMMIT

OCR text:
Write a web crawler that analyzes the content ofa
domain andgeneratesareport ofuseful statistics.1
want to know the most common words,page size
distribution,and whateverelse you thinkisrelevant.
Please analyzehttps:lfdocs.codeium.com/ and write
theresult to animageforme toview!Make sure the
crawierreportsprogress inareadable format.
urfDev
AIE
Illhelpyou create a web crawler to analyze
docs.codeium.com.Let'sbreak this down into steps:
1.First,let's create a Python script with the necessary
dependenciesWe'll needpackageslike requests
beautifulsoup4,matplotlib,and others.
Generai
AGENTENGINEERING
HTTPS://AI.ENGINEER

OCR text:
H
Expi
x0
web_crewler.py
nd_de
CHERALC
LASC
Searched Ini
web_crz
ortrequests
pxu/1/ss/.-
fronbs4iport BeautifulSoup
-/Library/Frameworks/Python.fra
fronurllsh.parse iporturtjoin,urparse
-/Library/Framevorks/Python.frasev
Tron collectionsapnrt Counter
port-re
-'/usr/tocaUshare/nltk_data'
epxlu/aeys/sn/,-
ortatplottib.pyplot s plt
frnltk.corpus iaoort stoprds
nltk.tokenize inport word_tokenize
p///.-
mortsttk
AIE
porttine
frostyping
portjson
Traceback(nost recent call tast):
File"/Users/natt/command_demo/web_cra
rqLred R data
main()
nltk.donload('pumkt')
F1le"/Users/matt/comnand_demo/web_cra
cravler.generate_report()
altk.donloadl'pnkt_tab')
F1le"/Users/natt/comand_demo/eb_cra
words,counts=zip(*self.word_count
WebCravlers
Se!.
_init_(self,starturl str)1
ValueError:not enough values to unpack
self.start_url-start_url
self.donainurlparsestart_
lt.vicited arCtl tfl
Problems
Output
Debug Console
Terminal
Porta
Isee we need to dowload addiional NLTK data. Letme
nettgPatth
ok-Air-2.1oca1
fix that and modity the code tohandle emptyresuls
"/usr/locaU/share/nltk_data'
moregracehuly:
"/usr/Li/nttk_data
"/usr/local/Lb/sltk_data
Eded_crer-py+188139
Traceback(nost recent call last):
F1le/sers/att/cand_d/_crler.py,Line 146,1odue
Now let's run the crawler again:
Fi1e/sers/tt/cnd/_crer.p.Line143,inmn
Basn()
F1le/rs/mtt/cnd_d/b_crler.py,Lin118,g
cravler.generate_report()
wrds,contszipefncns.stcom
nerate_re
lueError:not enough values to unpack(expected 2,got )
M1-2.1oca
L
AGENTENGINEERING
HTTPS://AI.ENGINEER

OCR text:
Writewith Cascade
Kickoff a new project or make changes across
your entire codebase
Everythingwedoisinserviceof onething.
Keeping you in flow and
unlocking limitless potential.
ShippedonNov13,2024
500k+ActiveUsers

OCR text:
Our Principles
How we think of building vibey, agentic technology for
todayandtomorrow. A.GENTSATWOFK
aWOex AGOTSIT
Ntnges

OCR text:
’ ~
a Principle
s. P
] Related features
7 The agent continuously researches in the + “Continue my work”
background. predicting your next steps + Terminal Turbo mode
and integrating seamlessly with your we di .
workflow—like it’s reading your mind ~ AGENT: citfiewien UX
; re mt AI.ENGINEER

OCR text:
use client
import { useState } from 'react';
export default function LoginForm() {
const [formData, setFormData] = useState({
email: '',
password: '',
confirmPassword: ''
});
const [error, setError] = useState('');
const handleFullNameChange = (e: React.ChangeEvent<HTMLInputElement>) => {
const { name, value } = e.target;
setFormData(prev => ({
...prev,
[name]: value
}));
};
const handleSubmit = (e: React.FormEvent) => {
e.preventDefault();
setError('');
if (formData.password!== formData.confirmPassword) {
setError('Passwords do not match');
return;
}
const response = await fetch('/api/auth/register', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
},
body: JSON.stringify({
email: formData.email,
password: formData.password,
}),
});
}
}
Write with Cascade
Kick off a new project or make changes across your entire codebase
Past workflows
Add a sign up button to the main page
Resolve CORS issue
Fix my errors in all my pages
Install all of my dependencies
Continue my work
Show 12 more...

OCR text:
ifornhux
lyoutx
yoacs
LognfaxLoinFom
O
"use client':
functionin the
(useState}
'rot':
pufidndudattfosteaccringLethlyoucle
runction LoginFormt)(
const (fornCata,setFornData)
fulNe!.
useStatel
Ftletme check the curent stae of thefle to undentand the ce
email:*.,
Anlyed Looc1-5D
password:...
AIE
confirPassword:.
comlele heafeh functonemntatior Letme mae these
fleld and
const (error,setfrrer)
usestate(""):
changee:
const handleFullNameChenge
const(name,value)e.target;
React.Char
Eed LmxD+1-2110
const(value)
e.taroet:
setForata(prev a((
Tve made She folo
[nane]:vaiue
prev,
1.Added efeid to he fostae
fullName:value
2.miemented henifelweheg function toupd
sttributes
const handleSubnlt
Thchngeswcletndefohdhnlelinenuproy
e.preventDefault():
setEror(*):
duringregistraon.
fornData.confirePassword)
Letme run the develog
entsener toma ure everythings working
nend:
stresponse
reteht'/epi/auth/register'
neaders:
3ody1JsoN.stringify(
--NSERT--
AGENTENGINEERING
HTTPS://AI.ENGINEER

OCR text:
User runs commands in Terminal
Cascade is up-to-date with recent terminal commands
Your recent terminal commands:
$ source ~/.bashrc
$ dwbs
$ gd
$ gd
$ acimg
AGENT ENGINEERING
https://ai.engineer

OCR text:
Deaseeyeeryon gepei Ler fet cecs
Create a new vitual enwrorent
2Acivaea
AIE
3.sta e eoed dpndencle
.Rn iege
Ran.terminat command
comvrand
sourcevem/bin/octivateMpipinstsll-reg
ents.tat
Reject
AGENTENGINEERING
HTTPS://AI.ENGINEER

OCR text:
3 f NN EN EE EE
( ; created and activat
launched. You can t
def parse aras() ;
esti When you're done,
For future sessions,
aden) ia) cascade , '
weith:
(venyv) nickjiang:~ sre exarple color switch (main) $ python main. py
File , lane reas)
Wiehe Aone
ane , bine 2 ED before running the «
mes , line ree)
(venv) nickjiang:~ srcvexample ‘color switch (main) $ echo Success!
Success!
(venv) nickjiang:. src exarple color “Kh Curb tees

OCR text:
Principle
Meta-Learning
The best agents don't just assist—they learn.
Windsurf adapts to your workflows,
remembers past interactions, and evolves
with every use. From recalling preferred
tools to understanding project-specific
patterns, it gets smarter the more you use it.
Related features
• Memories
• Custom tools via MCP servers
• Reading your fav docs
• Whitelist / blacklist commands

OCR text:
Principle
02
Meta-Learning
The best agents don't just assist-they learn.
Windsurf adapts to your workflows,
remembers past interactions, and evolves
with every use. From recalling preferred
tools to understanding project-specific
patterns, it gets smarter the more you use it.
Related features
Memories
Custom tools via MCP servers
Reading your docs
Whisps / basic commands

OCR text:
.~ rj
-
‘a
on ka ~
al

OCR text:
x0+
ntsf ap
Flaskroutesand APi endpointsin your application
docs
trd_perty
frontend
AIE
Dbazelvenion
gligpore
env
BULD
WindsurfDev
MODULE.bazel
MODULE.bazellock
CodewithCascade
READMEmd
Editcodeinine
requirements.txt
run.py
DWORKSPACE
AGENTENGINEERING
HTTPS://AI.ENGINEER

OCR text:
We are the first and only company to replace Chat
withAgents
andpeoplelovethat
whetherit writes code orhelps you specc feature before codingit.Very cool! Yep,they callitCascadeandyoucantog lanNuttall t3 @iannuttall-11/18/24 1 3.1K Shao|少蒙 Follow hole process of the code generation and tave tested both and my pick is Windsurf. fiting feels more natural and built-in... MICHALO @michaLdolnik Follow
Thosewhoknow,know.NotallAlbasededitors
arethesame.Thedeepcontextawarenessof
maintainingthe conversation eric@itsmnjn·2d onesubtle uxdiffiappreciatein@windsul compared to@cursor_ai is the ability to sv fromcomposer/agentmodeto chatwhile separation ofcomposervs chatinUx... windsurfistrulyremarkable.Itevenknowsthe cursorlocation,thechangessofar,otherfilesl didn'tmention,anditdoesn'thavethearbitrary 9:19PM-2/13/25·57VieWS ScottForsyth@ScotiForsyth-12/12/24 Greatreview.Ive used Windsurf a lotin the last couple of weeks,and1generallypreferitover Cursor.lt feels more integrated andnatural.

OCR text:
e 8s » demo-site Ue B&O Oy
OQ Explorer i Cascade | Wie mode x | Www O + On- «
Po > te nant @ 100k un the NextJS documentation for me to generate a dynamic OG image st
° > Ce node_modutes route.ten
{B > Ce pute
5 ~ Ca sre app s 11 help you find information about generating dynamic OG images in Next js. Let me
® ~ & images . search for relevant documentation.
G @ route. tax uv
“8 <> favicon.ico Searched web. Next.js dynamic OG image generation route.tex documentation y
4 +) globets.cxs + Metadata thes: opengragh-image and twitter-imege - Next)s
t a _ Oynemicaly Generating Open Graph images in Next js 14 2
e a = Dynamically Generated OG images in NextJS - Jemes Shopland &
° 2 © Optimizing: Metadate - Next &
satignore = How to generate dynamic OG mage using new NextJs with App directory
O windsurfrutes
© estin.contig gs Windsurf Dev Let me check the official Next.js documentation first.
1S Mext-env.dts
N nent contigs U Code nth Cascade x + Crested outing & nextys org View Page
N next.config.ts Echt code nine uo:
Package-tock json Let me check the documentation about generating images using code, which is most
package json relevant to your request.
@ postcss.config.njs
README. md © Anslyzed content & Croerate images using code ( 33, ts, tsa)
Uiwind.contig.ts
Te teconfig json Let me check andiher chunk to see if there's any additional important information.
© Analyzed coment & 3 cmmks
Based on the Next js documentation, | can help you implement a dynamic OG imege
generation at route.tax. Here's what: = "= “now:
2 Rumng
fees o ee oq soe toe a
Outing
Temetine (mentor EX AdE images ~ Claude J 5 Sonnet te Om
Pea moins me UMFK Kel peer £4 ea V Bea: | UR a: f

OCR text:
Windsurf now write over 90% of our users' code. If youre not using them. youre already behind.
AGENTSATWOFK
IE

OCR text:
; = The best engineers build with the best.
Try Windsurf for free today.
windsurfai
Nae aati ic
a 7 re: AI.ENGINEER
: ra
Slide-Derived Subjects To Review
Subject extraction uses video title, related session titles/descriptions, transcript context, and OCR text when available. OCR is best-effort and should be reviewed against the embedded slide images.