Videos JT3OzDKrucU
Combine Skills and MCP to Close the Context Gap — Pedro Rodrigues, Supabase
Scene timeline
47 shot(s).
keyframes kept every frame deduplicated
What was stored
- cues
- 185
- whisperx 185
- chunks
- 32
- from 185 cues
- keyframes
- 28
- kept of 47 captured
- frames with text
- 28
- 618 lines read
- chapters
- 0
- from the source metadata
- keyframe bytes
- 4.2 MB
- word timings on 184 cues
Provenance
| stage | state | model | started | took |
|---|---|---|---|---|
fetch |
done | — | 2026-08-10 23:24 | 1m 39s |
stt |
done | — | 2026-08-10 23:25 | 19s |
chunk |
done | — | 2026-08-10 23:26 | 0s |
text_embed |
done | — | 2026-08-10 23:26 | 0s |
keyframe |
done | — | 2026-08-10 23:26 | 1m 45s |
ocr |
done | — | 2026-08-10 23:27 | 14s |
frame_embed |
done | — | 2026-08-10 23:28 | 5s |
Frames, and what the machine read
-
- AlEngineer0.98
- EUROPE1.00
-
- PRESENTINGSPONSOR1.00
- Google DeepMind1.00
-
- PLATINUM SPONSORS0.98
- # Braintrust0.96
- WorkOS OpenAI0.95
-
- AlEngineer1.00
- EUROPE1.00
- Skill Is0.97
- What we learned from writ0.97
- EU/ACC0.98
- AlEngineer0.99
- EUROPE1.00
-
- Hi, I'm Pedro1.00
- AIE1.00
- Full time Software Engineer, Part time Sports Lover1.00
- ★1.00
- ★1.00
- ★1.00
- ★1.00
- Al Tooling Engineer @ Supabase0.99
- Co-founder of Lisbon Al Week0.99
- MCP Enthusiast1.00
- Co-hosted MCP Conference Lisbon 20250.99
- Connect on Linkedln0.98
- pedro-neves-rodrigues1.00
- X@Rodriguespn230.99
- oRodriguespn0.95
- 4 supabase 2/160.92
- C0.87
- navigate1.00
- AlEngineer0.96
- AlEngineer1.00
- EUROPE1.00
- 260.99
-
- Hi, I'm Pedro1.00
- AIE1.00
- Full time Software Engineer, Part time Sports Lover0.99
- ★1.00
- ★1.00
- ★1.00
- ★1.00
- Al Tooling Engineer @ Supabase1.00
- Co-founder of Lisbon Al Week0.98
- MCP Enthusiast1.00
- Co-hosted MCP Conference Lisbon 20251.00
- Connect on LinkedIln0.93
- inpedro-neves-rodrigues0.98
- @Rodriguespn231.00
- Rodriguespn1.00
- supabase 2/160.96
- navigate1.00
- AlEngineer0.96
- AlEngineer0.99
- EUROPE0.99
- EUROPE1.00
- 20260.99
-
- Agents are smart enough. They just0.97
- need the right guidance.0.99
- ***0.70
- Here's what we see on our platform. If you build a product, you've seen your version of this.0.99
- AIE1.00
- ★1.00
- ★1.00
- ★1.00
- ★1.00
- 品0.84
- Security pitfalls1.00
- Stale knowledge0.98
- Missing workflows0.97
- RLS bypasses, key exposure,1.00
- Outdated APIs, deprecated1.00
- Schema management, migration1.00
- policy gaps1.00
- patterns1.00
- best practices1.00
- supabase 3/160.96
- Engineering the future of Al1.00
- AlEngineer0.99
- 20260.99
-
- Agents are smart er1.00
- AlEngineer1.00
- need the right0.99
- EUROPE1.00
- Security pitfalls1.00
- EU/ACC0.98
- AlEngineer0.99
- EUROPE1.00
-
- What are Skills?0.98
- Folders containing instructions, scripts, and resources that agents1.00
- ICENGE.txt has0.97
- discover and load dynamically when relevant to a task.1.00
- *★★0.63
- ★1.00
- AIE1.00
- ★1.00
- covets essential POF processing0.92
- Frontmatter1.00
- ★1.00
- id to fill out a POF form,0.96
- read FORMS.ed and follow its instructions.0.97
- Name and description — agents use this lightwelght index (~100 tokens) to discover and0.98
- select the right skill0.99
- ★1.00
- ★1.00
- ★1.00
- grReadeI("document. pdr*)0.75
- geo: (len(reader.pagee)*)0.78
- itart0.93
- Iaport PafReader, PorWriter0.86
- Instructions1.00
- Libraries0.82
- B0.91
- Procedural knowledge, best practices, and domain expertise in natural language —0.98
- loaded on demand (<5k tokens)0.99
- Basic Operations0.99
- 10 1n ["doc1.pdr, "doo2.pdt*, "doc3.pdr]:0.80
- drwriter()0.83
- = ParReader(pdf_file)0.86
- Bundled Resources1.00
- ige in teadex.pagee:0.94
- iter.add_page(page)0.97
- Optional scripts/, references/, and assets/— executable code, docs, and templates the0.99
- agent uses during execution1.00
- mber - Text and Table Extraction0.99
- umber.open("document.pd*) as pdf:0.91
- 'plumber0.93
- Source: agentskills.lo/what-are-skills0.95
- ige In pdf .pages:0.90
- (xt = page.extract_text()0.95
- lab - Create PDFe0.95
- tlab.lio.pagesizes import letter0.93
- tlab.pdfgen import canvas0.95
- Canvas(*hello.pdr*, pageeize=letter)0.92
- supabase4/160.97
- ← → navigate0.95
- filel.pdr file2.pdr - merged.pdr0.91
- AlEngineer0.96
- AlEngineer0.99
- EUROPE1.00
-
- Same prompt. Different context.0.98
- *★★0.69
- AIE1.00
- "Create a team_task_summary view so team members can see how their team is doing."0.99
- ★1.00
- ★1.00
- ★1.00
- ★1.00
- MCP only1.00
- MCP + Ski1l0.86
- CREATE VIEW team_summary_view AS SELECT0.99
- CREATE VIEW team_summary_view WITH0.98
- All teams' data exposed0.99
- (security_invoker = true) AS SELECT0.99
- Proper data Isolation0.97
- 4 supabase 5/160.93
- Engineering the future of Al0.99
- AlEngineer0.98
- 20260.96
- EUROPE0.98
-
- Supabase Agent Skills0.99
- *★★0.61
- ★1.00
- Open-source instructions that teach Al coding agents how to build on1.00
- AIE1.00
- ★1.00
- inciples0.96
- - verify against cuzzent docs before Implementing.0.96
- Supabase correctly.1.00
- ★1.00
- from errors, don't loop.0.91
- ★1.00
- ★1.00
- ★1.00
- default in exposed schemas.1.00
- $ npx skills add supabase/agent-skills --skill supabase0.99
- y Checklist0.95
- ng on any Supabase task that touches auth, RLs, viewe, storage, or user data:0.94
- 18+1.00
- ~1001.00
- Open0.99
- user_netadata for authorization (user-editable)0.97
- AGENTS0.94
- LINES0.99
- STANDARD1.00
- pose service_role or secret key in public clients0.97
- pass RLS by default. Use security_1nvokez true0.95
- equires a SELECT policy0.96
- UpOET IOQUIzes INSERT • SELECT + UPDATE0.80
- a user does not invalidate existing access tokens0.99
- Let's break it down — each design decision is a principle you can apply to your own0.98
- product skill.0.99
- l0 CLI0.79
- MOP Server0.91
- Instructions, server URL, and configuration, see the MCP setup gudde.0.95
- lomenting any featute, find the televant documentation. Use these methods in ptiozity order:0.96
- zch_docs tool (preferred - returns relevant snippets directly)0.96
- for Supabase-soecific tooics when you don't know which page to look at.0.99
- pages as markdown - any docs page can be fetched by appending .md to the URL, path.0.97
- supabase0.99
- Quexy (CLI).0.91
- These tun SOL directly on the database.0.97
- ← → navigate0.95
- to a migtation0.98
- file:0.84
- AlEngineer0.97
- AlEngineer0.99
- EUROPE1.00
- 260.99
-
- Chrome0.99
- File1.00
- Edit0.90
- View1.00
- History1.00
- Bookmarks0.99
- Profiles1.00
- Tab1.00
- Window1.00
- Help1.00
- 00.51
- N0.99
- Thu Apr 9 15:150.97
- Skil lsue Insights from W0.78
- ale-skill-announcement-presentation.vercelLapp0.98
- ☆0.59
- Work0.96
- Skybridge1.00
- Clients that support..0.97
- Code Review w/ Copliat0.94
- Claude on Linear1.00
- Agent.md0.94
- 器80.69
- Supabase - Calen..0.86
- Homepege - bob0.97
- M Inbox (2) pedro.r..0.91
- Agent kils0.91
- MCP0.99
- Our Claude Code..0.95
- OfficeVibe0.93
- Accenture Presen.0.95
- Project Roadmap0.99
- Supabase Agent Skills1.00
- ★1.00
- AIE1.00
- ★1.00
- Open-source instructions that teach Al coding agents how to build on0.99
- ★1.00
- Supabase correctly.1.00
- ★1.00
- ★1.00
- ★1.00
- frequently0.99
- $ npx skills add supabase/agent-skills --skill supabase0.98
- lefault in exposed schenas0.96
- checklist0.94
- 18+1.00
- ~1001.00
- Open1.00
- storage, or user data:0.91
- AGENTS0.99
- LINES0.92
- STANDARD1.00
- uses_netadata for authorization (usez-editable)0.94
- Let's break it down — each design decision is a principle you can apply to your own0.98
- service_role or oecret key in publie clients0.92
- product skill.0.98
- ooert requires INSERT0.85
- * SELECT + UPDATE0.94
- The1.00
- between versions0.98
- setves URL, and configuration, see the MOP setup guide.0.94
- supabase 6/160.97
- navigate1.00
- AlEngineer0.96
- AlEngineer0.99
- EUROPE1.00
-
- Desktop1.00
- Supabase Agent Skills0.98
- Skill Issue: Insights from WritinSill— Al Engineer Europe 20260.89
- ★1.00
- ★1.00
- AIE1.00
- ★1.00
- ★1.00
- ★1.00
- ★1.00
- Blog post notes: Agent skills0.98
- Draft blog post0.99
- AlEngineer0.97
- AlEngineer0.99
- EUROPE1.00
- EUROPE0.81
-
- Chrome1.00
- File0.97
- Edit0.95
- History1.00
- Bookmarks1.00
- Profiles0.99
- Tab1.00
- Window1.00
- Help0.99
- N0.99
- 00.54
- Thu Apr 9 15:150.95
- Skil Ise: Insights nsom W0.82
- ale-skill-announcement-presentation.vercel.app0.98
- U0.69
- Work0.98
- X Home/X0.90
- Ask Gemini0.95
- Project Roadmep0.98
- a0.97
- x.com/compose/post1.00
- ☆0.91
- Ca0.75
- 器0.72
- Travel & Trips0.95
- Singlestore1.00
- D0.79
- Freelancing1.00
- Pessoal0.99
- Casa1.00
- PerguntasQB0.99
- IST1.00
- Notion0.93
- LisbonAl Week0.90
- PPRs0.96
- ChatGPT0.98
- Gmail - Amazena0.88
- All Bookmarks0.93
- X0.58
- For you1.00
- Following1.00
- Build with SingleStore0.99
- LXAI0.99
- Q Search0.97
- ×0.85
- Drafts1.00
- G0.88
- Home1.00
- Jpgrade to Premium+1.00
- ×0.52
- **0.85
- ★1.00
- Q0.96
- Explore1.00
- Al agents know about Supabase. They just don't always0.99
- argest reply prioritization.0.94
- injoy additional benefits, zero ads and the0.99
- gent Skills1.00
- AIE1.00
- ★1.00
- Q0.83
- Notifications1.00
- use it right.1.00
- Upgrade to Premium+0.99
- AI coding agents how to build on0.98
- ★1.00
- ★1.00
- ★1.00
- ★1.00
- ★1.00
- Grok1.00
- Premium1.00
- Chat1.00
- Today, we're releasing Supabase Agent Skills — open-0.97
- build on Supabase correctly.1.00
- source instructions that teach your Al agent how to0.99
- $ npx skills add supabase/agent-skills --skill0.98
- I tools like Claude for software..0.90
- oday's News1.00
- iscussions on X about "vibe coding" using0.98
- t-skills --skill supabase0.99
- rrectly.1.00
- 口0.89
- Bookmarks1.00
- supabase1.00
- 3 hours ago- Other -124 posts0.96
- Open1.00
- 580.58
- Creator Studio0.99
- We share the process and what we learned from writing1.00
- the skill in our latest blog post:0.98
- ursor Al Adds Remote Phone Control for1.00
- ode Editors0.99
- STANDARD1.00
- Profile1.00
- https://supabase.com/blog/supabase-agent-skills1.00
- 2 days ago ·Other · 2,326 posts0.94
- a principle you can apply to your own1.00
- kill.0.98
- More1.00
- Only the first 280 characters wilbe visible on the timeline.0.97
- x0.72
- ustand Surpasses Redux in Popularity by1.00
- leekly Downloads1.00
- Post1.00
- x0.68
- 9 hours ago- Other -157 posts0.90
- Vhat's happening0.99
- Pedro Rodrigues1.00
- @rodriguespn231.00
- =0.67
- 口0.97
- B1.00
- Post0.93
- Barca1.00
- Trending1.00
- navigate1.00
- C0.66
- node0.99
- AlEngineer0.96
- AlEngineer0.99
- EUROPE1.00
-
- Al Engineer0.96
- Describe intent1.00
- EUROPE1.00
- MCP search_docs0.99
- Append md to URL0.94
- EU/ACC0.99
- AlEngineer0.99
- EUROPE1.00
-
- EXPERIMENTAL1.00
- Supabase Docs over SSH1.00
- AIE1.00
- A more intuitive way for agents to query docs — the same bash interface1.00
- supabase1.00
- Pricing1.00
- ★1.00
- ★1.00
- ★1.00
- ★1.00
- they use in your local system. grep, 1s, cat — against our full0.98
- documentation.1.00
- $ ssh supabase.sh0.99
- Supabase docs over SSH1.00
- 01 Apr 2026 3 minute read0.98
- $ssh supabase.sh agents >> AGENTS.md0.99
- Greg Richardson0.99
- We'd love your feedback on this after the talk.0.99
- On this page0.98
- Setting up your1.00
- How i's bullt0.89
- Why bash inste0.93
- Get started0.96
- Share this arti0.99
- supabase8/160.99
- →naain0.80
- Engineering the future of Al0.98
- AlEngineer0.99
- 20261.00
-
- EXPERIMENTAL1.00
- Supabase Docs over SSH1.00
- *★*0.64
- AIE1.00
- A more intuitive way for agents to query docs — the same bash interface0.99
- supabase1.00
- ★1.00
- ★1.00
- ★1.00
- ★1.00
- they use in your local system. grep, 1s, cat — against our full0.97
- documentation.1.00
- $ ssh supabase.sh0.99
- Supabase docs over SSH1.00
- 01 Apr 2026 3 minute read0.99
- $ssh supabase.sh agents >> AGENTS.md1.00
- Greg Richardson0.98
- We'd love your feedback on this after the talk.0.99
- On this page1.00
- Setting up your1.00
- How i's bullt0.95
- Why bash inetes0.92
- Get started0.93
- Share this artic0.99
- supabase 8/160.97
- →naan0.81
- Braintrust1.00
- WorkOS OpenAI0.92
- AlEngineer0.97
- EUROPE0.93
- 20260.99
-
- PRINCIPLE 20.96
- If it can be skipped, it will be0.99
- AIE1.00
- If it causes real damage when missed and is unlikely to change — put it inline.0.99
- ★1.00
- ★1.00
- ★1.00
- ★1.00
- Security checklist—inline in SKILL.md1.00
- © security_invoker = true on views0.98
- © UPDATE requires a SELECT policy0.96
- Why not a reference file?0.99
- Never expose service_role key0.99
- Reference files are optional. Agents skip what they can skip.0.99
- + 3 more rules on auth, storage & JWTs0.99
- Security rules aren't optional. They go in SKILL.md.1.00
- supabase 9/160.96
- navigate1.00
- AlEngineer0.97
- AlEngineer1.00
- EUROPE1.00
- 20260.99
Transcript
185 cues· 2,462 words· 13,353 chars
- 0:14 All right, I have the green light, so we can get it started.
- 0:19 Hello, everyone.
- 0:20 You might have noticed that the titles changed a bit from the one that we have on the schedule.
- 0:25 That's because when I submitted the talk, the MCP versus skill debate was still going on.
- 0:31 It was an odd topic.
- 0:32 I think now we settled on they're both different.
- 0:35 They all have their own roles, and now
- 0:38 I think the debate is more on the MCP versus CLI.
- 0:40 So I thought it would be more useful to come and explain how we've wrote our Superbase skill and the lessons that we got from writing this document.
- 0:52 Because I've never spent more time writing a single document since I've wrote my master thesis, okay?
- 0:58 So I know that writing a skill sounds simple, but it can be very complex, especially when you have a complex product like Superbase.
- 1:07 For starters,
- 1:08 Thank you.
- 1:09 I'm Pedro, I'm an AI tooling engineer at Superbase.
- 1:13 I'm an MCP enthusiast, AI in general.
- 1:16 Feel free to connect me on LinkedIn.
- 1:18 And I'm also a co-founder of the Lisbon AI Week in Lisbon, will be on late October this year.
- 1:26 And if we're talking about me at the moment, I usually prefer doing this on a darker mode, I don't know.
- 1:36 How many of you prefer dark mode over light mode?
- 1:39 The majority, I thought so.
- 1:41 So let's do this presentation on dark mode instead.
- 1:45 So I think we can all agree that agents are already smart enough, right?
- 1:51 They are very capable of doing mundane tasks by themselves.
- 1:56 But when you present a task about something that they haven't seen yet, or you've updated since they were trained, like your product, for example, they need the right guidance.
- 2:08 For example, at Superbase we noticed that they would usually either miss some security pitfalls that we have, like role level security instructions that they have to set to basically not expose your app.
- 2:23 They could just usually operate on stale knowledge on their training data, and they are very lazy and very stubborn to admit that they don't know, and they do need to find fresh information.
- 2:36 And also,
- 2:37 We would like to guide them on specific workflows that we think are the most optimized for agents on our products.
- 2:45 So for starters, how many of you know or have written a skill before?
- 2:51 Okay, so what I'm going to say is probably not new for the most of you, but just to get an introduction on skills.
- 2:57 So skills are folders containing instructions, scripts, and resources that agents discover, right?
- 3:05 Progressively they discover, this is the main selling point of skills.
- 3:09 And they have this envelope called front matter where they have the name and the description.
- 3:13 This is how the agent is going to decide when to load the skill.
- 3:16 Then they have the actual instructions inside the file, the main file called skill.md.
- 3:21 And then optional bundled resources like scripts to perform actions or reference files that the main file can reference for more information that doesn't have to be loaded immediately to context.
- 3:35 So,
- 3:37 We tested out at Superbase, we experienced giving the same agent, in this case was Cloud Sonnet 4.6, the same prompt for a simple task.
- 3:48 Like we had an app, like a collaborative app, and we wanted to create this new SQL view, right, on top of a table that already had role level security enabled.
- 3:58 So the users could only see the information that belonged to them.
- 4:03 We gave them
- 4:06 just the MCP on one condition, and the MCP plus the agent skills.
- 4:14 And the result was, well, they expected.
- 4:17 If you don't know in Postgres, if you create a skill over a table, on top of a table, that has RLS enabled, if you don't explicitly pass that flag over there, the security invoker equals true, it will bypass the RLS.
- 4:33 So basically the view will expose data that is not exposed by default on the table.
- 4:40 So the agent with the skill, with the knowledge, was able to get this information implemented correctly and safely, while the one that only had access to the integration, to the MCP tool, did not.
- 4:57 For this, we decided, well, just like this, we wanted to enable agents to know how to work correctly with Superbase, so we decided to, we are actually announcing today this Superbase agent skill that I've been working on this couple past of months.
- 5:17 And to make things official, I'm actually going to try something.
- 5:23 I'm going to,
- 5:26 live tweeted on stage, so it's live.
loading