[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill-tinybird-tinybird-python-sdk-guidelines":3,"mdc--pb0g98-key":34,"related-org-tinybird-tinybird-python-sdk-guidelines":329,"related-repo-tinybird-tinybird-python-sdk-guidelines":383},{"slug":4,"name":4,"fn":5,"description":6,"org":7,"tags":12,"stars":24,"repoUrl":25,"updatedAt":26,"license":27,"forks":28,"topics":29,"repo":30,"sourceUrl":32,"mdContent":33},"tinybird-python-sdk-guidelines","build Tinybird data pipelines with Python","Tinybird Python SDK for defining datasources, pipes, and queries in Python. Use when working with tinybird-sdk, Python Tinybird projects, or data ingestion and queries in Python.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},"tinybird","Tinybird","https:\u002F\u002Fpexgzepcugksgbtrxkhf.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Forg-logos\u002Ftinybird.png","tinybirdco",[13,17,20,21],{"name":14,"slug":15,"type":16},"Data Pipeline","data-pipeline","tag",{"name":18,"slug":19,"type":16},"Python","python",{"name":9,"slug":8,"type":16},{"name":22,"slug":23,"type":16},"Analytics","analytics",20,"https:\u002F\u002Fgithub.com\u002Ftinybirdco\u002Ftinybird-agent-skills","2026-04-06T18:54:31.743581",null,2,[],{"repoUrl":25,"stars":24,"forks":28,"topics":31,"description":27},[],"https:\u002F\u002Fgithub.com\u002Ftinybirdco\u002Ftinybird-agent-skills\u002Ftree\u002FHEAD\u002Fskills\u002Ftinybird-python-sdk-guidelines","---\nname: tinybird-python-sdk-guidelines\ndescription: Tinybird Python SDK for defining datasources, pipes, and queries in Python. Use when working with tinybird-sdk, Python Tinybird projects, or data ingestion and queries in Python.\n---\n\n# Tinybird Python SDK Guidelines\n\nGuidance for using the `tinybird-sdk` package to define Tinybird resources in Python.\n\n## When to Apply\n\n- Installing or configuring tinybird-sdk\n- Defining datasources, pipes, or endpoints in Python\n- Creating Tinybird clients in Python\n- Using data ingestion or queries in Python\n- Running tinybird dev\u002Fbuild\u002Fdeploy commands for Python projects\n- Migrating from legacy .datasource\u002F.pipe files to Python\n- Defining connections (Kafka, S3, GCS)\n- Creating materialized views, copy pipes, or sink pipes\n\n## Rule Files\n\n- `rules\u002Fgetting-started.md`\n- `rules\u002Fconfiguration.md`\n- `rules\u002Fdefining-datasources.md`\n- `rules\u002Fdefining-endpoints.md`\n- `rules\u002Fclient.md`\n- `rules\u002Flow-level-api.md`\n- `rules\u002Fcli-commands.md`\n- `rules\u002Fconnections.md`\n- `rules\u002Fmaterialized-views.md`\n- `rules\u002Fcopy-sink-pipes.md`\n- `rules\u002Ftokens.md`\n\n## Quick Reference\n\n- Install: `pip install tinybird-sdk`\n- Initialize: `tinybird init`\n- Dev mode: `tinybird dev` (uses configured `dev_mode`, typically branch)\n- Build: `tinybird build` (builds against configured dev target)\n- Deploy: `tinybird deploy` (deploys to main\u002Fproduction)\n- Preview in CI: `tinybird preview`\n- Migrate: `tinybird migrate` (convert .datasource\u002F.pipe files to Python)\n- Server-side only; never expose tokens in browsers\n",{"data":35,"body":36},{"name":4,"description":6},{"type":37,"children":38},"root",[39,47,62,69,114,120,222,228],{"type":40,"tag":41,"props":42,"children":43},"element","h1",{"id":4},[44],{"type":45,"value":46},"text","Tinybird Python SDK Guidelines",{"type":40,"tag":48,"props":49,"children":50},"p",{},[51,53,60],{"type":45,"value":52},"Guidance for using the ",{"type":40,"tag":54,"props":55,"children":57},"code",{"className":56},[],[58],{"type":45,"value":59},"tinybird-sdk",{"type":45,"value":61}," package to define Tinybird resources in Python.",{"type":40,"tag":63,"props":64,"children":66},"h2",{"id":65},"when-to-apply",[67],{"type":45,"value":68},"When to Apply",{"type":40,"tag":70,"props":71,"children":72},"ul",{},[73,79,84,89,94,99,104,109],{"type":40,"tag":74,"props":75,"children":76},"li",{},[77],{"type":45,"value":78},"Installing or configuring tinybird-sdk",{"type":40,"tag":74,"props":80,"children":81},{},[82],{"type":45,"value":83},"Defining datasources, pipes, or endpoints in Python",{"type":40,"tag":74,"props":85,"children":86},{},[87],{"type":45,"value":88},"Creating Tinybird clients in Python",{"type":40,"tag":74,"props":90,"children":91},{},[92],{"type":45,"value":93},"Using data ingestion or queries in Python",{"type":40,"tag":74,"props":95,"children":96},{},[97],{"type":45,"value":98},"Running tinybird dev\u002Fbuild\u002Fdeploy commands for Python projects",{"type":40,"tag":74,"props":100,"children":101},{},[102],{"type":45,"value":103},"Migrating from legacy .datasource\u002F.pipe files to Python",{"type":40,"tag":74,"props":105,"children":106},{},[107],{"type":45,"value":108},"Defining connections (Kafka, S3, GCS)",{"type":40,"tag":74,"props":110,"children":111},{},[112],{"type":45,"value":113},"Creating materialized views, copy pipes, or sink pipes",{"type":40,"tag":63,"props":115,"children":117},{"id":116},"rule-files",[118],{"type":45,"value":119},"Rule Files",{"type":40,"tag":70,"props":121,"children":122},{},[123,132,141,150,159,168,177,186,195,204,213],{"type":40,"tag":74,"props":124,"children":125},{},[126],{"type":40,"tag":54,"props":127,"children":129},{"className":128},[],[130],{"type":45,"value":131},"rules\u002Fgetting-started.md",{"type":40,"tag":74,"props":133,"children":134},{},[135],{"type":40,"tag":54,"props":136,"children":138},{"className":137},[],[139],{"type":45,"value":140},"rules\u002Fconfiguration.md",{"type":40,"tag":74,"props":142,"children":143},{},[144],{"type":40,"tag":54,"props":145,"children":147},{"className":146},[],[148],{"type":45,"value":149},"rules\u002Fdefining-datasources.md",{"type":40,"tag":74,"props":151,"children":152},{},[153],{"type":40,"tag":54,"props":154,"children":156},{"className":155},[],[157],{"type":45,"value":158},"rules\u002Fdefining-endpoints.md",{"type":40,"tag":74,"props":160,"children":161},{},[162],{"type":40,"tag":54,"props":163,"children":165},{"className":164},[],[166],{"type":45,"value":167},"rules\u002Fclient.md",{"type":40,"tag":74,"props":169,"children":170},{},[171],{"type":40,"tag":54,"props":172,"children":174},{"className":173},[],[175],{"type":45,"value":176},"rules\u002Flow-level-api.md",{"type":40,"tag":74,"props":178,"children":179},{},[180],{"type":40,"tag":54,"props":181,"children":183},{"className":182},[],[184],{"type":45,"value":185},"rules\u002Fcli-commands.md",{"type":40,"tag":74,"props":187,"children":188},{},[189],{"type":40,"tag":54,"props":190,"children":192},{"className":191},[],[193],{"type":45,"value":194},"rules\u002Fconnections.md",{"type":40,"tag":74,"props":196,"children":197},{},[198],{"type":40,"tag":54,"props":199,"children":201},{"className":200},[],[202],{"type":45,"value":203},"rules\u002Fmaterialized-views.md",{"type":40,"tag":74,"props":205,"children":206},{},[207],{"type":40,"tag":54,"props":208,"children":210},{"className":209},[],[211],{"type":45,"value":212},"rules\u002Fcopy-sink-pipes.md",{"type":40,"tag":74,"props":214,"children":215},{},[216],{"type":40,"tag":54,"props":217,"children":219},{"className":218},[],[220],{"type":45,"value":221},"rules\u002Ftokens.md",{"type":40,"tag":63,"props":223,"children":225},{"id":224},"quick-reference",[226],{"type":45,"value":227},"Quick Reference",{"type":40,"tag":70,"props":229,"children":230},{},[231,242,253,274,287,300,311,324],{"type":40,"tag":74,"props":232,"children":233},{},[234,236],{"type":45,"value":235},"Install: ",{"type":40,"tag":54,"props":237,"children":239},{"className":238},[],[240],{"type":45,"value":241},"pip install tinybird-sdk",{"type":40,"tag":74,"props":243,"children":244},{},[245,247],{"type":45,"value":246},"Initialize: ",{"type":40,"tag":54,"props":248,"children":250},{"className":249},[],[251],{"type":45,"value":252},"tinybird init",{"type":40,"tag":74,"props":254,"children":255},{},[256,258,264,266,272],{"type":45,"value":257},"Dev mode: ",{"type":40,"tag":54,"props":259,"children":261},{"className":260},[],[262],{"type":45,"value":263},"tinybird dev",{"type":45,"value":265}," (uses configured ",{"type":40,"tag":54,"props":267,"children":269},{"className":268},[],[270],{"type":45,"value":271},"dev_mode",{"type":45,"value":273},", typically branch)",{"type":40,"tag":74,"props":275,"children":276},{},[277,279,285],{"type":45,"value":278},"Build: ",{"type":40,"tag":54,"props":280,"children":282},{"className":281},[],[283],{"type":45,"value":284},"tinybird build",{"type":45,"value":286}," (builds against configured dev target)",{"type":40,"tag":74,"props":288,"children":289},{},[290,292,298],{"type":45,"value":291},"Deploy: ",{"type":40,"tag":54,"props":293,"children":295},{"className":294},[],[296],{"type":45,"value":297},"tinybird deploy",{"type":45,"value":299}," (deploys to main\u002Fproduction)",{"type":40,"tag":74,"props":301,"children":302},{},[303,305],{"type":45,"value":304},"Preview in CI: ",{"type":40,"tag":54,"props":306,"children":308},{"className":307},[],[309],{"type":45,"value":310},"tinybird preview",{"type":40,"tag":74,"props":312,"children":313},{},[314,316,322],{"type":45,"value":315},"Migrate: ",{"type":40,"tag":54,"props":317,"children":319},{"className":318},[],[320],{"type":45,"value":321},"tinybird migrate",{"type":45,"value":323}," (convert .datasource\u002F.pipe files to Python)",{"type":40,"tag":74,"props":325,"children":326},{},[327],{"type":45,"value":328},"Server-side only; never expose tokens in browsers",{"items":330,"total":382},[331,345,362,369],{"slug":8,"name":8,"fn":332,"description":333,"org":334,"tags":335,"stars":24,"repoUrl":25,"updatedAt":344},"build real-time analytics with Tinybird","Tinybird file formats, SQL rules, optimization patterns, and best practices for datasources, pipes, endpoints, and materialized views.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[336,337,340,343],{"name":22,"slug":23,"type":16},{"name":338,"slug":339,"type":16},"Real-time","real-time",{"name":341,"slug":342,"type":16},"SQL","sql",{"name":9,"slug":8,"type":16},"2026-04-06T18:54:29.196793",{"slug":346,"name":346,"fn":347,"description":348,"org":349,"tags":350,"stars":24,"repoUrl":25,"updatedAt":361},"tinybird-cli-guidelines","manage Tinybird operations via CLI","Tinybird CLI commands, workflows, and operations. Use when running tb commands, managing local development, deploying, or working with data operations.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[351,354,357,360],{"name":352,"slug":353,"type":16},"CLI","cli",{"name":355,"slug":356,"type":16},"Data Engineering","data-engineering",{"name":358,"slug":359,"type":16},"Operations","operations",{"name":9,"slug":8,"type":16},"2026-04-06T18:54:30.428581",{"slug":4,"name":4,"fn":5,"description":6,"org":363,"tags":364,"stars":24,"repoUrl":25,"updatedAt":26},{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[365,366,367,368],{"name":22,"slug":23,"type":16},{"name":14,"slug":15,"type":16},{"name":18,"slug":19,"type":16},{"name":9,"slug":8,"type":16},{"slug":370,"name":370,"fn":371,"description":372,"org":373,"tags":374,"stars":24,"repoUrl":25,"updatedAt":381},"tinybird-typescript-sdk-guidelines","build type-safe Tinybird data pipelines","Tinybird TypeScript SDK for defining datasources, pipes, and queries with full type inference. Use when working with @tinybirdco\u002Fsdk, TypeScript Tinybird projects, or type-safe data ingestion and queries.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[375,376,377,378],{"name":22,"slug":23,"type":16},{"name":14,"slug":15,"type":16},{"name":9,"slug":8,"type":16},{"name":379,"slug":380,"type":16},"TypeScript","typescript","2026-04-06T18:54:33.014595",4,{"items":384,"total":382},[385,392,399,406],{"slug":8,"name":8,"fn":332,"description":333,"org":386,"tags":387,"stars":24,"repoUrl":25,"updatedAt":344},{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[388,389,390,391],{"name":22,"slug":23,"type":16},{"name":338,"slug":339,"type":16},{"name":341,"slug":342,"type":16},{"name":9,"slug":8,"type":16},{"slug":346,"name":346,"fn":347,"description":348,"org":393,"tags":394,"stars":24,"repoUrl":25,"updatedAt":361},{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[395,396,397,398],{"name":352,"slug":353,"type":16},{"name":355,"slug":356,"type":16},{"name":358,"slug":359,"type":16},{"name":9,"slug":8,"type":16},{"slug":4,"name":4,"fn":5,"description":6,"org":400,"tags":401,"stars":24,"repoUrl":25,"updatedAt":26},{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[402,403,404,405],{"name":22,"slug":23,"type":16},{"name":14,"slug":15,"type":16},{"name":18,"slug":19,"type":16},{"name":9,"slug":8,"type":16},{"slug":370,"name":370,"fn":371,"description":372,"org":407,"tags":408,"stars":24,"repoUrl":25,"updatedAt":381},{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[409,410,411,412],{"name":22,"slug":23,"type":16},{"name":14,"slug":15,"type":16},{"name":9,"slug":8,"type":16},{"name":379,"slug":380,"type":16}]