[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill-trigger-dev-trigger-config":3,"mdc-8ot8qk-key":32,"related-repo-trigger-dev-trigger-config":3533,"related-org-trigger-dev-trigger-config":3617},{"slug":4,"name":4,"fn":5,"description":6,"org":7,"tags":12,"stars":21,"repoUrl":22,"updatedAt":23,"license":24,"forks":25,"topics":26,"repo":27,"sourceUrl":30,"mdContent":31},"trigger-config","configure Trigger.dev project settings","Configure Trigger.dev projects with trigger.config.ts. Use when setting up build extensions for Prisma, Playwright, FFmpeg, Python, or customizing deployment settings.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},"trigger-dev","Trigger.dev","https:\u002F\u002Fpexgzepcugksgbtrxkhf.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Forg-logos\u002Ftrigger-dev.jpg","triggerdotdev",[13,17,20],{"name":14,"slug":15,"type":16},"Configuration","configuration","tag",{"name":18,"slug":19,"type":16},"Deployment","deployment",{"name":9,"slug":8,"type":16},30,"https:\u002F\u002Fgithub.com\u002Ftriggerdotdev\u002Fskills","2026-04-06T18:54:44.764258",null,5,[],{"repoUrl":22,"stars":21,"forks":25,"topics":28,"description":29},[],"Best practices for building AI agents and background jobs with Trigger.dev. Use when creating durable tasks, scheduling workflows, or integrating with the Trigger.dev SDK.","https:\u002F\u002Fgithub.com\u002Ftriggerdotdev\u002Fskills\u002Ftree\u002FHEAD\u002Ftrigger-config","---\nname: trigger-config\ndescription: Configure Trigger.dev projects with trigger.config.ts. Use when setting up build extensions for Prisma, Playwright, FFmpeg, Python, or customizing deployment settings.\n---\n\n# Trigger.dev Configuration\n\nConfigure your Trigger.dev project with `trigger.config.ts` and build extensions.\n\n## When to Use\n\n- Setting up a new Trigger.dev project\n- Adding database support (Prisma, TypeORM)\n- Configuring browser automation (Playwright, Puppeteer)\n- Adding media processing (FFmpeg)\n- Running Python scripts from tasks\n- Syncing environment variables\n- Installing system packages\n\n## Basic Configuration\n\n```ts\n\u002F\u002F trigger.config.ts\nimport { defineConfig } from \"@trigger.dev\u002Fsdk\";\n\nexport default defineConfig({\n  project: \"\u003Cproject-ref>\",\n  dirs: [\".\u002Ftrigger\"],\n  runtime: \"node\", \u002F\u002F \"node\", \"node-22\", or \"bun\"\n  logLevel: \"info\",\n\n  retries: {\n    enabledInDev: false,\n    default: {\n      maxAttempts: 3,\n      minTimeoutInMs: 1000,\n      maxTimeoutInMs: 10000,\n      factor: 2,\n    },\n  },\n\n  build: {\n    extensions: [], \u002F\u002F Add extensions here\n  },\n});\n```\n\n## Common Build Extensions\n\n### Prisma\n\n```ts\nimport { prismaExtension } from \"@trigger.dev\u002Fbuild\u002Fextensions\u002Fprisma\";\n\nexport default defineConfig({\n  \u002F\u002F ...\n  build: {\n    extensions: [\n      prismaExtension({\n        schema: \"prisma\u002Fschema.prisma\",\n        migrate: true,\n        directUrlEnvVarName: \"DIRECT_DATABASE_URL\",\n      }),\n    ],\n  },\n});\n```\n\n### Playwright (Browser Automation)\n\n```ts\nimport { playwright } from \"@trigger.dev\u002Fbuild\u002Fextensions\u002Fplaywright\";\n\nextensions: [\n  playwright({\n    browsers: [\"chromium\"], \u002F\u002F or [\"chromium\", \"firefox\", \"webkit\"]\n  }),\n]\n```\n\n### Puppeteer\n\n```ts\nimport { puppeteer } from \"@trigger.dev\u002Fbuild\u002Fextensions\u002Fpuppeteer\";\n\nextensions: [puppeteer()]\n\n\u002F\u002F Set env var: PUPPETEER_EXECUTABLE_PATH=\"\u002Fusr\u002Fbin\u002Fgoogle-chrome-stable\"\n```\n\n### FFmpeg (Media Processing)\n\n```ts\nimport { ffmpeg } from \"@trigger.dev\u002Fbuild\u002Fextensions\u002Fcore\";\n\nextensions: [\n  ffmpeg({ version: \"7\" }),\n]\n\u002F\u002F Automatically sets FFMPEG_PATH and FFPROBE_PATH\n```\n\n### Python\n\n```ts\nimport { pythonExtension } from \"@trigger.dev\u002Fbuild\u002Fextensions\u002Fpython\";\n\nextensions: [\n  pythonExtension({\n    scripts: [\".\u002Fpython\u002F**\u002F*.py\"],\n    requirementsFile: \".\u002Frequirements.txt\",\n    devPythonBinaryPath: \".venv\u002Fbin\u002Fpython\",\n  }),\n]\n\n\u002F\u002F Usage in tasks:\nconst result = await python.runScript(\".\u002Fpython\u002Fprocess.py\", [\"arg1\"]);\n```\n\n### System Packages (apt-get)\n\n```ts\nimport { aptGet } from \"@trigger.dev\u002Fbuild\u002Fextensions\u002Fcore\";\n\nextensions: [\n  aptGet({\n    packages: [\"imagemagick\", \"curl\"],\n  }),\n]\n```\n\n### Additional Files\n\n```ts\nimport { additionalFiles } from \"@trigger.dev\u002Fbuild\u002Fextensions\u002Fcore\";\n\nextensions: [\n  additionalFiles({\n    files: [\".\u002Fassets\u002F**\", \".\u002Ftemplates\u002F**\"],\n  }),\n]\n```\n\n### Environment Variable Sync\n\n```ts\nimport { syncEnvVars } from \"@trigger.dev\u002Fbuild\u002Fextensions\u002Fcore\";\n\nextensions: [\n  syncEnvVars(async (ctx) => {\n    return [\n      { name: \"API_KEY\", value: await getSecret(ctx.environment) },\n      { name: \"ENV\", value: ctx.environment },\n    ];\n  }),\n]\n```\n\n## Common Extension Combinations\n\n### Full-Stack Web App\n\n```ts\nextensions: [\n  prismaExtension({ schema: \"prisma\u002Fschema.prisma\", migrate: true }),\n  additionalFiles({ files: [\".\u002Fassets\u002F**\"] }),\n  syncEnvVars(async (ctx) => [...envVars]),\n]\n```\n\n### AI\u002FML Processing\n\n```ts\nextensions: [\n  pythonExtension({\n    scripts: [\".\u002Fai\u002F**\u002F*.py\"],\n    requirementsFile: \".\u002Frequirements.txt\",\n  }),\n  ffmpeg({ version: \"7\" }),\n]\n```\n\n### Web Scraping\n\n```ts\nextensions: [\n  playwright({ browsers: [\"chromium\"] }),\n  additionalFiles({ files: [\".\u002Fselectors.json\"] }),\n]\n```\n\n## Global Lifecycle Hooks\n\n```ts\nexport default defineConfig({\n  \u002F\u002F ...\n  onStartAttempt: async ({ payload, ctx }) => {\n    console.log(\"Task starting:\", ctx.task.id);\n  },\n  onSuccess: async ({ payload, output, ctx }) => {\n    console.log(\"Task succeeded\");\n  },\n  onFailure: async ({ payload, error, ctx }) => {\n    console.error(\"Task failed:\", error);\n  },\n});\n```\n\n## Machine Defaults\n\n```ts\nexport default defineConfig({\n  \u002F\u002F ...\n  defaultMachine: \"medium-1x\",\n  maxDuration: 300, \u002F\u002F seconds\n});\n```\n\n## Telemetry Integration\n\n```ts\nimport { PrismaInstrumentation } from \"@prisma\u002Finstrumentation\";\n\nexport default defineConfig({\n  \u002F\u002F ...\n  telemetry: {\n    instrumentations: [new PrismaInstrumentation()],\n  },\n});\n```\n\n## Best Practices\n\n1. **Pin versions** for reproducible builds\n2. **Use `syncEnvVars`** for dynamic secrets\n3. **Add native modules** to `build.external` array\n4. **Debug with** `--log-level debug --dry-run`\n\nExtensions only affect deployment, not local development.\n\nSee `references\u002Fconfig.md` for complete documentation.\n",{"data":33,"body":34},{"name":4,"description":6},{"type":35,"children":36},"root",[37,46,61,68,108,114,618,624,631,893,899,1053,1059,1153,1159,1295,1301,1605,1611,1772,1778,1939,1945,2237,2243,2249,2450,2456,2625,2631,2772,2778,3162,3168,3275,3281,3438,3444,3509,3514,3527],{"type":38,"tag":39,"props":40,"children":42},"element","h1",{"id":41},"triggerdev-configuration",[43],{"type":44,"value":45},"text","Trigger.dev Configuration",{"type":38,"tag":47,"props":48,"children":49},"p",{},[50,52,59],{"type":44,"value":51},"Configure your Trigger.dev project with ",{"type":38,"tag":53,"props":54,"children":56},"code",{"className":55},[],[57],{"type":44,"value":58},"trigger.config.ts",{"type":44,"value":60}," and build extensions.",{"type":38,"tag":62,"props":63,"children":65},"h2",{"id":64},"when-to-use",[66],{"type":44,"value":67},"When to Use",{"type":38,"tag":69,"props":70,"children":71},"ul",{},[72,78,83,88,93,98,103],{"type":38,"tag":73,"props":74,"children":75},"li",{},[76],{"type":44,"value":77},"Setting up a new Trigger.dev project",{"type":38,"tag":73,"props":79,"children":80},{},[81],{"type":44,"value":82},"Adding database support (Prisma, TypeORM)",{"type":38,"tag":73,"props":84,"children":85},{},[86],{"type":44,"value":87},"Configuring browser automation (Playwright, Puppeteer)",{"type":38,"tag":73,"props":89,"children":90},{},[91],{"type":44,"value":92},"Adding media processing (FFmpeg)",{"type":38,"tag":73,"props":94,"children":95},{},[96],{"type":44,"value":97},"Running Python scripts from tasks",{"type":38,"tag":73,"props":99,"children":100},{},[101],{"type":44,"value":102},"Syncing environment variables",{"type":38,"tag":73,"props":104,"children":105},{},[106],{"type":44,"value":107},"Installing system packages",{"type":38,"tag":62,"props":109,"children":111},{"id":110},"basic-configuration",[112],{"type":44,"value":113},"Basic Configuration",{"type":38,"tag":115,"props":116,"children":121},"pre",{"className":117,"code":118,"language":119,"meta":120,"style":120},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u002F\u002F trigger.config.ts\nimport { defineConfig } from \"@trigger.dev\u002Fsdk\";\n\nexport default defineConfig({\n  project: \"\u003Cproject-ref>\",\n  dirs: [\".\u002Ftrigger\"],\n  runtime: \"node\", \u002F\u002F \"node\", \"node-22\", or \"bun\"\n  logLevel: \"info\",\n\n  retries: {\n    enabledInDev: false,\n    default: {\n      maxAttempts: 3,\n      minTimeoutInMs: 1000,\n      maxTimeoutInMs: 10000,\n      factor: 2,\n    },\n  },\n\n  build: {\n    extensions: [], \u002F\u002F Add extensions here\n  },\n});\n","ts","",[122],{"type":38,"tag":53,"props":123,"children":124},{"__ignoreMap":120},[125,137,190,200,229,261,301,337,367,375,393,416,433,456,478,500,522,531,540,548,565,592,600],{"type":38,"tag":126,"props":127,"children":130},"span",{"class":128,"line":129},"line",1,[131],{"type":38,"tag":126,"props":132,"children":134},{"style":133},"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic",[135],{"type":44,"value":136},"\u002F\u002F trigger.config.ts\n",{"type":38,"tag":126,"props":138,"children":140},{"class":128,"line":139},2,[141,147,153,159,164,169,174,180,185],{"type":38,"tag":126,"props":142,"children":144},{"style":143},"--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic",[145],{"type":44,"value":146},"import",{"type":38,"tag":126,"props":148,"children":150},{"style":149},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[151],{"type":44,"value":152}," {",{"type":38,"tag":126,"props":154,"children":156},{"style":155},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8",[157],{"type":44,"value":158}," defineConfig",{"type":38,"tag":126,"props":160,"children":161},{"style":149},[162],{"type":44,"value":163}," }",{"type":38,"tag":126,"props":165,"children":166},{"style":143},[167],{"type":44,"value":168}," from",{"type":38,"tag":126,"props":170,"children":171},{"style":149},[172],{"type":44,"value":173}," \"",{"type":38,"tag":126,"props":175,"children":177},{"style":176},"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D",[178],{"type":44,"value":179},"@trigger.dev\u002Fsdk",{"type":38,"tag":126,"props":181,"children":182},{"style":149},[183],{"type":44,"value":184},"\"",{"type":38,"tag":126,"props":186,"children":187},{"style":149},[188],{"type":44,"value":189},";\n",{"type":38,"tag":126,"props":191,"children":193},{"class":128,"line":192},3,[194],{"type":38,"tag":126,"props":195,"children":197},{"emptyLinePlaceholder":196},true,[198],{"type":44,"value":199},"\n",{"type":38,"tag":126,"props":201,"children":203},{"class":128,"line":202},4,[204,209,214,219,224],{"type":38,"tag":126,"props":205,"children":206},{"style":143},[207],{"type":44,"value":208},"export",{"type":38,"tag":126,"props":210,"children":211},{"style":143},[212],{"type":44,"value":213}," default",{"type":38,"tag":126,"props":215,"children":217},{"style":216},"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF",[218],{"type":44,"value":158},{"type":38,"tag":126,"props":220,"children":221},{"style":155},[222],{"type":44,"value":223},"(",{"type":38,"tag":126,"props":225,"children":226},{"style":149},[227],{"type":44,"value":228},"{\n",{"type":38,"tag":126,"props":230,"children":231},{"class":128,"line":25},[232,238,243,247,252,256],{"type":38,"tag":126,"props":233,"children":235},{"style":234},"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178",[236],{"type":44,"value":237},"  project",{"type":38,"tag":126,"props":239,"children":240},{"style":149},[241],{"type":44,"value":242},":",{"type":38,"tag":126,"props":244,"children":245},{"style":149},[246],{"type":44,"value":173},{"type":38,"tag":126,"props":248,"children":249},{"style":176},[250],{"type":44,"value":251},"\u003Cproject-ref>",{"type":38,"tag":126,"props":253,"children":254},{"style":149},[255],{"type":44,"value":184},{"type":38,"tag":126,"props":257,"children":258},{"style":149},[259],{"type":44,"value":260},",\n",{"type":38,"tag":126,"props":262,"children":264},{"class":128,"line":263},6,[265,270,274,279,283,288,292,297],{"type":38,"tag":126,"props":266,"children":267},{"style":234},[268],{"type":44,"value":269},"  dirs",{"type":38,"tag":126,"props":271,"children":272},{"style":149},[273],{"type":44,"value":242},{"type":38,"tag":126,"props":275,"children":276},{"style":155},[277],{"type":44,"value":278}," [",{"type":38,"tag":126,"props":280,"children":281},{"style":149},[282],{"type":44,"value":184},{"type":38,"tag":126,"props":284,"children":285},{"style":176},[286],{"type":44,"value":287},".\u002Ftrigger",{"type":38,"tag":126,"props":289,"children":290},{"style":149},[291],{"type":44,"value":184},{"type":38,"tag":126,"props":293,"children":294},{"style":155},[295],{"type":44,"value":296},"]",{"type":38,"tag":126,"props":298,"children":299},{"style":149},[300],{"type":44,"value":260},{"type":38,"tag":126,"props":302,"children":304},{"class":128,"line":303},7,[305,310,314,318,323,327,332],{"type":38,"tag":126,"props":306,"children":307},{"style":234},[308],{"type":44,"value":309},"  runtime",{"type":38,"tag":126,"props":311,"children":312},{"style":149},[313],{"type":44,"value":242},{"type":38,"tag":126,"props":315,"children":316},{"style":149},[317],{"type":44,"value":173},{"type":38,"tag":126,"props":319,"children":320},{"style":176},[321],{"type":44,"value":322},"node",{"type":38,"tag":126,"props":324,"children":325},{"style":149},[326],{"type":44,"value":184},{"type":38,"tag":126,"props":328,"children":329},{"style":149},[330],{"type":44,"value":331},",",{"type":38,"tag":126,"props":333,"children":334},{"style":133},[335],{"type":44,"value":336}," \u002F\u002F \"node\", \"node-22\", or \"bun\"\n",{"type":38,"tag":126,"props":338,"children":340},{"class":128,"line":339},8,[341,346,350,354,359,363],{"type":38,"tag":126,"props":342,"children":343},{"style":234},[344],{"type":44,"value":345},"  logLevel",{"type":38,"tag":126,"props":347,"children":348},{"style":149},[349],{"type":44,"value":242},{"type":38,"tag":126,"props":351,"children":352},{"style":149},[353],{"type":44,"value":173},{"type":38,"tag":126,"props":355,"children":356},{"style":176},[357],{"type":44,"value":358},"info",{"type":38,"tag":126,"props":360,"children":361},{"style":149},[362],{"type":44,"value":184},{"type":38,"tag":126,"props":364,"children":365},{"style":149},[366],{"type":44,"value":260},{"type":38,"tag":126,"props":368,"children":370},{"class":128,"line":369},9,[371],{"type":38,"tag":126,"props":372,"children":373},{"emptyLinePlaceholder":196},[374],{"type":44,"value":199},{"type":38,"tag":126,"props":376,"children":378},{"class":128,"line":377},10,[379,384,388],{"type":38,"tag":126,"props":380,"children":381},{"style":234},[382],{"type":44,"value":383},"  retries",{"type":38,"tag":126,"props":385,"children":386},{"style":149},[387],{"type":44,"value":242},{"type":38,"tag":126,"props":389,"children":390},{"style":149},[391],{"type":44,"value":392}," {\n",{"type":38,"tag":126,"props":394,"children":396},{"class":128,"line":395},11,[397,402,406,412],{"type":38,"tag":126,"props":398,"children":399},{"style":234},[400],{"type":44,"value":401},"    enabledInDev",{"type":38,"tag":126,"props":403,"children":404},{"style":149},[405],{"type":44,"value":242},{"type":38,"tag":126,"props":407,"children":409},{"style":408},"--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC",[410],{"type":44,"value":411}," false",{"type":38,"tag":126,"props":413,"children":414},{"style":149},[415],{"type":44,"value":260},{"type":38,"tag":126,"props":417,"children":419},{"class":128,"line":418},12,[420,425,429],{"type":38,"tag":126,"props":421,"children":422},{"style":234},[423],{"type":44,"value":424},"    default",{"type":38,"tag":126,"props":426,"children":427},{"style":149},[428],{"type":44,"value":242},{"type":38,"tag":126,"props":430,"children":431},{"style":149},[432],{"type":44,"value":392},{"type":38,"tag":126,"props":434,"children":436},{"class":128,"line":435},13,[437,442,446,452],{"type":38,"tag":126,"props":438,"children":439},{"style":234},[440],{"type":44,"value":441},"      maxAttempts",{"type":38,"tag":126,"props":443,"children":444},{"style":149},[445],{"type":44,"value":242},{"type":38,"tag":126,"props":447,"children":449},{"style":448},"--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C",[450],{"type":44,"value":451}," 3",{"type":38,"tag":126,"props":453,"children":454},{"style":149},[455],{"type":44,"value":260},{"type":38,"tag":126,"props":457,"children":459},{"class":128,"line":458},14,[460,465,469,474],{"type":38,"tag":126,"props":461,"children":462},{"style":234},[463],{"type":44,"value":464},"      minTimeoutInMs",{"type":38,"tag":126,"props":466,"children":467},{"style":149},[468],{"type":44,"value":242},{"type":38,"tag":126,"props":470,"children":471},{"style":448},[472],{"type":44,"value":473}," 1000",{"type":38,"tag":126,"props":475,"children":476},{"style":149},[477],{"type":44,"value":260},{"type":38,"tag":126,"props":479,"children":481},{"class":128,"line":480},15,[482,487,491,496],{"type":38,"tag":126,"props":483,"children":484},{"style":234},[485],{"type":44,"value":486},"      maxTimeoutInMs",{"type":38,"tag":126,"props":488,"children":489},{"style":149},[490],{"type":44,"value":242},{"type":38,"tag":126,"props":492,"children":493},{"style":448},[494],{"type":44,"value":495}," 10000",{"type":38,"tag":126,"props":497,"children":498},{"style":149},[499],{"type":44,"value":260},{"type":38,"tag":126,"props":501,"children":503},{"class":128,"line":502},16,[504,509,513,518],{"type":38,"tag":126,"props":505,"children":506},{"style":234},[507],{"type":44,"value":508},"      factor",{"type":38,"tag":126,"props":510,"children":511},{"style":149},[512],{"type":44,"value":242},{"type":38,"tag":126,"props":514,"children":515},{"style":448},[516],{"type":44,"value":517}," 2",{"type":38,"tag":126,"props":519,"children":520},{"style":149},[521],{"type":44,"value":260},{"type":38,"tag":126,"props":523,"children":525},{"class":128,"line":524},17,[526],{"type":38,"tag":126,"props":527,"children":528},{"style":149},[529],{"type":44,"value":530},"    },\n",{"type":38,"tag":126,"props":532,"children":534},{"class":128,"line":533},18,[535],{"type":38,"tag":126,"props":536,"children":537},{"style":149},[538],{"type":44,"value":539},"  },\n",{"type":38,"tag":126,"props":541,"children":543},{"class":128,"line":542},19,[544],{"type":38,"tag":126,"props":545,"children":546},{"emptyLinePlaceholder":196},[547],{"type":44,"value":199},{"type":38,"tag":126,"props":549,"children":551},{"class":128,"line":550},20,[552,557,561],{"type":38,"tag":126,"props":553,"children":554},{"style":234},[555],{"type":44,"value":556},"  build",{"type":38,"tag":126,"props":558,"children":559},{"style":149},[560],{"type":44,"value":242},{"type":38,"tag":126,"props":562,"children":563},{"style":149},[564],{"type":44,"value":392},{"type":38,"tag":126,"props":566,"children":568},{"class":128,"line":567},21,[569,574,578,583,587],{"type":38,"tag":126,"props":570,"children":571},{"style":234},[572],{"type":44,"value":573},"    extensions",{"type":38,"tag":126,"props":575,"children":576},{"style":149},[577],{"type":44,"value":242},{"type":38,"tag":126,"props":579,"children":580},{"style":155},[581],{"type":44,"value":582}," []",{"type":38,"tag":126,"props":584,"children":585},{"style":149},[586],{"type":44,"value":331},{"type":38,"tag":126,"props":588,"children":589},{"style":133},[590],{"type":44,"value":591}," \u002F\u002F Add extensions here\n",{"type":38,"tag":126,"props":593,"children":595},{"class":128,"line":594},22,[596],{"type":38,"tag":126,"props":597,"children":598},{"style":149},[599],{"type":44,"value":539},{"type":38,"tag":126,"props":601,"children":603},{"class":128,"line":602},23,[604,609,614],{"type":38,"tag":126,"props":605,"children":606},{"style":149},[607],{"type":44,"value":608},"}",{"type":38,"tag":126,"props":610,"children":611},{"style":155},[612],{"type":44,"value":613},")",{"type":38,"tag":126,"props":615,"children":616},{"style":149},[617],{"type":44,"value":189},{"type":38,"tag":62,"props":619,"children":621},{"id":620},"common-build-extensions",[622],{"type":44,"value":623},"Common Build Extensions",{"type":38,"tag":625,"props":626,"children":628},"h3",{"id":627},"prisma",[629],{"type":44,"value":630},"Prisma",{"type":38,"tag":115,"props":632,"children":634},{"className":117,"code":633,"language":119,"meta":120,"style":120},"import { prismaExtension } from \"@trigger.dev\u002Fbuild\u002Fextensions\u002Fprisma\";\n\nexport default defineConfig({\n  \u002F\u002F ...\n  build: {\n    extensions: [\n      prismaExtension({\n        schema: \"prisma\u002Fschema.prisma\",\n        migrate: true,\n        directUrlEnvVarName: \"DIRECT_DATABASE_URL\",\n      }),\n    ],\n  },\n});\n",[635],{"type":38,"tag":53,"props":636,"children":637},{"__ignoreMap":120},[638,679,686,709,717,732,748,764,793,814,843,859,871,878],{"type":38,"tag":126,"props":639,"children":640},{"class":128,"line":129},[641,645,649,654,658,662,666,671,675],{"type":38,"tag":126,"props":642,"children":643},{"style":143},[644],{"type":44,"value":146},{"type":38,"tag":126,"props":646,"children":647},{"style":149},[648],{"type":44,"value":152},{"type":38,"tag":126,"props":650,"children":651},{"style":155},[652],{"type":44,"value":653}," prismaExtension",{"type":38,"tag":126,"props":655,"children":656},{"style":149},[657],{"type":44,"value":163},{"type":38,"tag":126,"props":659,"children":660},{"style":143},[661],{"type":44,"value":168},{"type":38,"tag":126,"props":663,"children":664},{"style":149},[665],{"type":44,"value":173},{"type":38,"tag":126,"props":667,"children":668},{"style":176},[669],{"type":44,"value":670},"@trigger.dev\u002Fbuild\u002Fextensions\u002Fprisma",{"type":38,"tag":126,"props":672,"children":673},{"style":149},[674],{"type":44,"value":184},{"type":38,"tag":126,"props":676,"children":677},{"style":149},[678],{"type":44,"value":189},{"type":38,"tag":126,"props":680,"children":681},{"class":128,"line":139},[682],{"type":38,"tag":126,"props":683,"children":684},{"emptyLinePlaceholder":196},[685],{"type":44,"value":199},{"type":38,"tag":126,"props":687,"children":688},{"class":128,"line":192},[689,693,697,701,705],{"type":38,"tag":126,"props":690,"children":691},{"style":143},[692],{"type":44,"value":208},{"type":38,"tag":126,"props":694,"children":695},{"style":143},[696],{"type":44,"value":213},{"type":38,"tag":126,"props":698,"children":699},{"style":216},[700],{"type":44,"value":158},{"type":38,"tag":126,"props":702,"children":703},{"style":155},[704],{"type":44,"value":223},{"type":38,"tag":126,"props":706,"children":707},{"style":149},[708],{"type":44,"value":228},{"type":38,"tag":126,"props":710,"children":711},{"class":128,"line":202},[712],{"type":38,"tag":126,"props":713,"children":714},{"style":133},[715],{"type":44,"value":716},"  \u002F\u002F ...\n",{"type":38,"tag":126,"props":718,"children":719},{"class":128,"line":25},[720,724,728],{"type":38,"tag":126,"props":721,"children":722},{"style":234},[723],{"type":44,"value":556},{"type":38,"tag":126,"props":725,"children":726},{"style":149},[727],{"type":44,"value":242},{"type":38,"tag":126,"props":729,"children":730},{"style":149},[731],{"type":44,"value":392},{"type":38,"tag":126,"props":733,"children":734},{"class":128,"line":263},[735,739,743],{"type":38,"tag":126,"props":736,"children":737},{"style":234},[738],{"type":44,"value":573},{"type":38,"tag":126,"props":740,"children":741},{"style":149},[742],{"type":44,"value":242},{"type":38,"tag":126,"props":744,"children":745},{"style":155},[746],{"type":44,"value":747}," [\n",{"type":38,"tag":126,"props":749,"children":750},{"class":128,"line":303},[751,756,760],{"type":38,"tag":126,"props":752,"children":753},{"style":216},[754],{"type":44,"value":755},"      prismaExtension",{"type":38,"tag":126,"props":757,"children":758},{"style":155},[759],{"type":44,"value":223},{"type":38,"tag":126,"props":761,"children":762},{"style":149},[763],{"type":44,"value":228},{"type":38,"tag":126,"props":765,"children":766},{"class":128,"line":339},[767,772,776,780,785,789],{"type":38,"tag":126,"props":768,"children":769},{"style":234},[770],{"type":44,"value":771},"        schema",{"type":38,"tag":126,"props":773,"children":774},{"style":149},[775],{"type":44,"value":242},{"type":38,"tag":126,"props":777,"children":778},{"style":149},[779],{"type":44,"value":173},{"type":38,"tag":126,"props":781,"children":782},{"style":176},[783],{"type":44,"value":784},"prisma\u002Fschema.prisma",{"type":38,"tag":126,"props":786,"children":787},{"style":149},[788],{"type":44,"value":184},{"type":38,"tag":126,"props":790,"children":791},{"style":149},[792],{"type":44,"value":260},{"type":38,"tag":126,"props":794,"children":795},{"class":128,"line":369},[796,801,805,810],{"type":38,"tag":126,"props":797,"children":798},{"style":234},[799],{"type":44,"value":800},"        migrate",{"type":38,"tag":126,"props":802,"children":803},{"style":149},[804],{"type":44,"value":242},{"type":38,"tag":126,"props":806,"children":807},{"style":408},[808],{"type":44,"value":809}," true",{"type":38,"tag":126,"props":811,"children":812},{"style":149},[813],{"type":44,"value":260},{"type":38,"tag":126,"props":815,"children":816},{"class":128,"line":377},[817,822,826,830,835,839],{"type":38,"tag":126,"props":818,"children":819},{"style":234},[820],{"type":44,"value":821},"        directUrlEnvVarName",{"type":38,"tag":126,"props":823,"children":824},{"style":149},[825],{"type":44,"value":242},{"type":38,"tag":126,"props":827,"children":828},{"style":149},[829],{"type":44,"value":173},{"type":38,"tag":126,"props":831,"children":832},{"style":176},[833],{"type":44,"value":834},"DIRECT_DATABASE_URL",{"type":38,"tag":126,"props":836,"children":837},{"style":149},[838],{"type":44,"value":184},{"type":38,"tag":126,"props":840,"children":841},{"style":149},[842],{"type":44,"value":260},{"type":38,"tag":126,"props":844,"children":845},{"class":128,"line":395},[846,851,855],{"type":38,"tag":126,"props":847,"children":848},{"style":149},[849],{"type":44,"value":850},"      }",{"type":38,"tag":126,"props":852,"children":853},{"style":155},[854],{"type":44,"value":613},{"type":38,"tag":126,"props":856,"children":857},{"style":149},[858],{"type":44,"value":260},{"type":38,"tag":126,"props":860,"children":861},{"class":128,"line":418},[862,867],{"type":38,"tag":126,"props":863,"children":864},{"style":155},[865],{"type":44,"value":866},"    ]",{"type":38,"tag":126,"props":868,"children":869},{"style":149},[870],{"type":44,"value":260},{"type":38,"tag":126,"props":872,"children":873},{"class":128,"line":435},[874],{"type":38,"tag":126,"props":875,"children":876},{"style":149},[877],{"type":44,"value":539},{"type":38,"tag":126,"props":879,"children":880},{"class":128,"line":458},[881,885,889],{"type":38,"tag":126,"props":882,"children":883},{"style":149},[884],{"type":44,"value":608},{"type":38,"tag":126,"props":886,"children":887},{"style":155},[888],{"type":44,"value":613},{"type":38,"tag":126,"props":890,"children":891},{"style":149},[892],{"type":44,"value":189},{"type":38,"tag":625,"props":894,"children":896},{"id":895},"playwright-browser-automation",[897],{"type":44,"value":898},"Playwright (Browser Automation)",{"type":38,"tag":115,"props":900,"children":902},{"className":117,"code":901,"language":119,"meta":120,"style":120},"import { playwright } from \"@trigger.dev\u002Fbuild\u002Fextensions\u002Fplaywright\";\n\nextensions: [\n  playwright({\n    browsers: [\"chromium\"], \u002F\u002F or [\"chromium\", \"firefox\", \"webkit\"]\n  }),\n]\n",[903],{"type":38,"tag":53,"props":904,"children":905},{"__ignoreMap":120},[906,947,954,971,987,1029,1045],{"type":38,"tag":126,"props":907,"children":908},{"class":128,"line":129},[909,913,917,922,926,930,934,939,943],{"type":38,"tag":126,"props":910,"children":911},{"style":143},[912],{"type":44,"value":146},{"type":38,"tag":126,"props":914,"children":915},{"style":149},[916],{"type":44,"value":152},{"type":38,"tag":126,"props":918,"children":919},{"style":155},[920],{"type":44,"value":921}," playwright",{"type":38,"tag":126,"props":923,"children":924},{"style":149},[925],{"type":44,"value":163},{"type":38,"tag":126,"props":927,"children":928},{"style":143},[929],{"type":44,"value":168},{"type":38,"tag":126,"props":931,"children":932},{"style":149},[933],{"type":44,"value":173},{"type":38,"tag":126,"props":935,"children":936},{"style":176},[937],{"type":44,"value":938},"@trigger.dev\u002Fbuild\u002Fextensions\u002Fplaywright",{"type":38,"tag":126,"props":940,"children":941},{"style":149},[942],{"type":44,"value":184},{"type":38,"tag":126,"props":944,"children":945},{"style":149},[946],{"type":44,"value":189},{"type":38,"tag":126,"props":948,"children":949},{"class":128,"line":139},[950],{"type":38,"tag":126,"props":951,"children":952},{"emptyLinePlaceholder":196},[953],{"type":44,"value":199},{"type":38,"tag":126,"props":955,"children":956},{"class":128,"line":192},[957,963,967],{"type":38,"tag":126,"props":958,"children":960},{"style":959},"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B",[961],{"type":44,"value":962},"extensions",{"type":38,"tag":126,"props":964,"children":965},{"style":149},[966],{"type":44,"value":242},{"type":38,"tag":126,"props":968,"children":969},{"style":155},[970],{"type":44,"value":747},{"type":38,"tag":126,"props":972,"children":973},{"class":128,"line":202},[974,979,983],{"type":38,"tag":126,"props":975,"children":976},{"style":216},[977],{"type":44,"value":978},"  playwright",{"type":38,"tag":126,"props":980,"children":981},{"style":155},[982],{"type":44,"value":223},{"type":38,"tag":126,"props":984,"children":985},{"style":149},[986],{"type":44,"value":228},{"type":38,"tag":126,"props":988,"children":989},{"class":128,"line":25},[990,995,999,1003,1007,1012,1016,1020,1024],{"type":38,"tag":126,"props":991,"children":992},{"style":234},[993],{"type":44,"value":994},"    browsers",{"type":38,"tag":126,"props":996,"children":997},{"style":149},[998],{"type":44,"value":242},{"type":38,"tag":126,"props":1000,"children":1001},{"style":155},[1002],{"type":44,"value":278},{"type":38,"tag":126,"props":1004,"children":1005},{"style":149},[1006],{"type":44,"value":184},{"type":38,"tag":126,"props":1008,"children":1009},{"style":176},[1010],{"type":44,"value":1011},"chromium",{"type":38,"tag":126,"props":1013,"children":1014},{"style":149},[1015],{"type":44,"value":184},{"type":38,"tag":126,"props":1017,"children":1018},{"style":155},[1019],{"type":44,"value":296},{"type":38,"tag":126,"props":1021,"children":1022},{"style":149},[1023],{"type":44,"value":331},{"type":38,"tag":126,"props":1025,"children":1026},{"style":133},[1027],{"type":44,"value":1028}," \u002F\u002F or [\"chromium\", \"firefox\", \"webkit\"]\n",{"type":38,"tag":126,"props":1030,"children":1031},{"class":128,"line":263},[1032,1037,1041],{"type":38,"tag":126,"props":1033,"children":1034},{"style":149},[1035],{"type":44,"value":1036},"  }",{"type":38,"tag":126,"props":1038,"children":1039},{"style":155},[1040],{"type":44,"value":613},{"type":38,"tag":126,"props":1042,"children":1043},{"style":149},[1044],{"type":44,"value":260},{"type":38,"tag":126,"props":1046,"children":1047},{"class":128,"line":303},[1048],{"type":38,"tag":126,"props":1049,"children":1050},{"style":155},[1051],{"type":44,"value":1052},"]\n",{"type":38,"tag":625,"props":1054,"children":1056},{"id":1055},"puppeteer",[1057],{"type":44,"value":1058},"Puppeteer",{"type":38,"tag":115,"props":1060,"children":1062},{"className":117,"code":1061,"language":119,"meta":120,"style":120},"import { puppeteer } from \"@trigger.dev\u002Fbuild\u002Fextensions\u002Fpuppeteer\";\n\nextensions: [puppeteer()]\n\n\u002F\u002F Set env var: PUPPETEER_EXECUTABLE_PATH=\"\u002Fusr\u002Fbin\u002Fgoogle-chrome-stable\"\n",[1063],{"type":38,"tag":53,"props":1064,"children":1065},{"__ignoreMap":120},[1066,1107,1114,1138,1145],{"type":38,"tag":126,"props":1067,"children":1068},{"class":128,"line":129},[1069,1073,1077,1082,1086,1090,1094,1099,1103],{"type":38,"tag":126,"props":1070,"children":1071},{"style":143},[1072],{"type":44,"value":146},{"type":38,"tag":126,"props":1074,"children":1075},{"style":149},[1076],{"type":44,"value":152},{"type":38,"tag":126,"props":1078,"children":1079},{"style":155},[1080],{"type":44,"value":1081}," puppeteer",{"type":38,"tag":126,"props":1083,"children":1084},{"style":149},[1085],{"type":44,"value":163},{"type":38,"tag":126,"props":1087,"children":1088},{"style":143},[1089],{"type":44,"value":168},{"type":38,"tag":126,"props":1091,"children":1092},{"style":149},[1093],{"type":44,"value":173},{"type":38,"tag":126,"props":1095,"children":1096},{"style":176},[1097],{"type":44,"value":1098},"@trigger.dev\u002Fbuild\u002Fextensions\u002Fpuppeteer",{"type":38,"tag":126,"props":1100,"children":1101},{"style":149},[1102],{"type":44,"value":184},{"type":38,"tag":126,"props":1104,"children":1105},{"style":149},[1106],{"type":44,"value":189},{"type":38,"tag":126,"props":1108,"children":1109},{"class":128,"line":139},[1110],{"type":38,"tag":126,"props":1111,"children":1112},{"emptyLinePlaceholder":196},[1113],{"type":44,"value":199},{"type":38,"tag":126,"props":1115,"children":1116},{"class":128,"line":192},[1117,1121,1125,1129,1133],{"type":38,"tag":126,"props":1118,"children":1119},{"style":959},[1120],{"type":44,"value":962},{"type":38,"tag":126,"props":1122,"children":1123},{"style":149},[1124],{"type":44,"value":242},{"type":38,"tag":126,"props":1126,"children":1127},{"style":155},[1128],{"type":44,"value":278},{"type":38,"tag":126,"props":1130,"children":1131},{"style":216},[1132],{"type":44,"value":1055},{"type":38,"tag":126,"props":1134,"children":1135},{"style":155},[1136],{"type":44,"value":1137},"()]\n",{"type":38,"tag":126,"props":1139,"children":1140},{"class":128,"line":202},[1141],{"type":38,"tag":126,"props":1142,"children":1143},{"emptyLinePlaceholder":196},[1144],{"type":44,"value":199},{"type":38,"tag":126,"props":1146,"children":1147},{"class":128,"line":25},[1148],{"type":38,"tag":126,"props":1149,"children":1150},{"style":133},[1151],{"type":44,"value":1152},"\u002F\u002F Set env var: PUPPETEER_EXECUTABLE_PATH=\"\u002Fusr\u002Fbin\u002Fgoogle-chrome-stable\"\n",{"type":38,"tag":625,"props":1154,"children":1156},{"id":1155},"ffmpeg-media-processing",[1157],{"type":44,"value":1158},"FFmpeg (Media Processing)",{"type":38,"tag":115,"props":1160,"children":1162},{"className":117,"code":1161,"language":119,"meta":120,"style":120},"import { ffmpeg } from \"@trigger.dev\u002Fbuild\u002Fextensions\u002Fcore\";\n\nextensions: [\n  ffmpeg({ version: \"7\" }),\n]\n\u002F\u002F Automatically sets FFMPEG_PATH and FFPROBE_PATH\n",[1163],{"type":38,"tag":53,"props":1164,"children":1165},{"__ignoreMap":120},[1166,1207,1214,1229,1280,1287],{"type":38,"tag":126,"props":1167,"children":1168},{"class":128,"line":129},[1169,1173,1177,1182,1186,1190,1194,1199,1203],{"type":38,"tag":126,"props":1170,"children":1171},{"style":143},[1172],{"type":44,"value":146},{"type":38,"tag":126,"props":1174,"children":1175},{"style":149},[1176],{"type":44,"value":152},{"type":38,"tag":126,"props":1178,"children":1179},{"style":155},[1180],{"type":44,"value":1181}," ffmpeg",{"type":38,"tag":126,"props":1183,"children":1184},{"style":149},[1185],{"type":44,"value":163},{"type":38,"tag":126,"props":1187,"children":1188},{"style":143},[1189],{"type":44,"value":168},{"type":38,"tag":126,"props":1191,"children":1192},{"style":149},[1193],{"type":44,"value":173},{"type":38,"tag":126,"props":1195,"children":1196},{"style":176},[1197],{"type":44,"value":1198},"@trigger.dev\u002Fbuild\u002Fextensions\u002Fcore",{"type":38,"tag":126,"props":1200,"children":1201},{"style":149},[1202],{"type":44,"value":184},{"type":38,"tag":126,"props":1204,"children":1205},{"style":149},[1206],{"type":44,"value":189},{"type":38,"tag":126,"props":1208,"children":1209},{"class":128,"line":139},[1210],{"type":38,"tag":126,"props":1211,"children":1212},{"emptyLinePlaceholder":196},[1213],{"type":44,"value":199},{"type":38,"tag":126,"props":1215,"children":1216},{"class":128,"line":192},[1217,1221,1225],{"type":38,"tag":126,"props":1218,"children":1219},{"style":959},[1220],{"type":44,"value":962},{"type":38,"tag":126,"props":1222,"children":1223},{"style":149},[1224],{"type":44,"value":242},{"type":38,"tag":126,"props":1226,"children":1227},{"style":155},[1228],{"type":44,"value":747},{"type":38,"tag":126,"props":1230,"children":1231},{"class":128,"line":202},[1232,1237,1241,1246,1251,1255,1259,1264,1268,1272,1276],{"type":38,"tag":126,"props":1233,"children":1234},{"style":216},[1235],{"type":44,"value":1236},"  ffmpeg",{"type":38,"tag":126,"props":1238,"children":1239},{"style":155},[1240],{"type":44,"value":223},{"type":38,"tag":126,"props":1242,"children":1243},{"style":149},[1244],{"type":44,"value":1245},"{",{"type":38,"tag":126,"props":1247,"children":1248},{"style":234},[1249],{"type":44,"value":1250}," version",{"type":38,"tag":126,"props":1252,"children":1253},{"style":149},[1254],{"type":44,"value":242},{"type":38,"tag":126,"props":1256,"children":1257},{"style":149},[1258],{"type":44,"value":173},{"type":38,"tag":126,"props":1260,"children":1261},{"style":176},[1262],{"type":44,"value":1263},"7",{"type":38,"tag":126,"props":1265,"children":1266},{"style":149},[1267],{"type":44,"value":184},{"type":38,"tag":126,"props":1269,"children":1270},{"style":149},[1271],{"type":44,"value":163},{"type":38,"tag":126,"props":1273,"children":1274},{"style":155},[1275],{"type":44,"value":613},{"type":38,"tag":126,"props":1277,"children":1278},{"style":149},[1279],{"type":44,"value":260},{"type":38,"tag":126,"props":1281,"children":1282},{"class":128,"line":25},[1283],{"type":38,"tag":126,"props":1284,"children":1285},{"style":155},[1286],{"type":44,"value":1052},{"type":38,"tag":126,"props":1288,"children":1289},{"class":128,"line":263},[1290],{"type":38,"tag":126,"props":1291,"children":1292},{"style":133},[1293],{"type":44,"value":1294},"\u002F\u002F Automatically sets FFMPEG_PATH and FFPROBE_PATH\n",{"type":38,"tag":625,"props":1296,"children":1298},{"id":1297},"python",[1299],{"type":44,"value":1300},"Python",{"type":38,"tag":115,"props":1302,"children":1304},{"className":117,"code":1303,"language":119,"meta":120,"style":120},"import { pythonExtension } from \"@trigger.dev\u002Fbuild\u002Fextensions\u002Fpython\";\n\nextensions: [\n  pythonExtension({\n    scripts: [\".\u002Fpython\u002F**\u002F*.py\"],\n    requirementsFile: \".\u002Frequirements.txt\",\n    devPythonBinaryPath: \".venv\u002Fbin\u002Fpython\",\n  }),\n]\n\n\u002F\u002F Usage in tasks:\nconst result = await python.runScript(\".\u002Fpython\u002Fprocess.py\", [\"arg1\"]);\n",[1305],{"type":38,"tag":53,"props":1306,"children":1307},{"__ignoreMap":120},[1308,1349,1356,1371,1387,1424,1453,1482,1497,1504,1511,1519],{"type":38,"tag":126,"props":1309,"children":1310},{"class":128,"line":129},[1311,1315,1319,1324,1328,1332,1336,1341,1345],{"type":38,"tag":126,"props":1312,"children":1313},{"style":143},[1314],{"type":44,"value":146},{"type":38,"tag":126,"props":1316,"children":1317},{"style":149},[1318],{"type":44,"value":152},{"type":38,"tag":126,"props":1320,"children":1321},{"style":155},[1322],{"type":44,"value":1323}," pythonExtension",{"type":38,"tag":126,"props":1325,"children":1326},{"style":149},[1327],{"type":44,"value":163},{"type":38,"tag":126,"props":1329,"children":1330},{"style":143},[1331],{"type":44,"value":168},{"type":38,"tag":126,"props":1333,"children":1334},{"style":149},[1335],{"type":44,"value":173},{"type":38,"tag":126,"props":1337,"children":1338},{"style":176},[1339],{"type":44,"value":1340},"@trigger.dev\u002Fbuild\u002Fextensions\u002Fpython",{"type":38,"tag":126,"props":1342,"children":1343},{"style":149},[1344],{"type":44,"value":184},{"type":38,"tag":126,"props":1346,"children":1347},{"style":149},[1348],{"type":44,"value":189},{"type":38,"tag":126,"props":1350,"children":1351},{"class":128,"line":139},[1352],{"type":38,"tag":126,"props":1353,"children":1354},{"emptyLinePlaceholder":196},[1355],{"type":44,"value":199},{"type":38,"tag":126,"props":1357,"children":1358},{"class":128,"line":192},[1359,1363,1367],{"type":38,"tag":126,"props":1360,"children":1361},{"style":959},[1362],{"type":44,"value":962},{"type":38,"tag":126,"props":1364,"children":1365},{"style":149},[1366],{"type":44,"value":242},{"type":38,"tag":126,"props":1368,"children":1369},{"style":155},[1370],{"type":44,"value":747},{"type":38,"tag":126,"props":1372,"children":1373},{"class":128,"line":202},[1374,1379,1383],{"type":38,"tag":126,"props":1375,"children":1376},{"style":216},[1377],{"type":44,"value":1378},"  pythonExtension",{"type":38,"tag":126,"props":1380,"children":1381},{"style":155},[1382],{"type":44,"value":223},{"type":38,"tag":126,"props":1384,"children":1385},{"style":149},[1386],{"type":44,"value":228},{"type":38,"tag":126,"props":1388,"children":1389},{"class":128,"line":25},[1390,1395,1399,1403,1407,1412,1416,1420],{"type":38,"tag":126,"props":1391,"children":1392},{"style":234},[1393],{"type":44,"value":1394},"    scripts",{"type":38,"tag":126,"props":1396,"children":1397},{"style":149},[1398],{"type":44,"value":242},{"type":38,"tag":126,"props":1400,"children":1401},{"style":155},[1402],{"type":44,"value":278},{"type":38,"tag":126,"props":1404,"children":1405},{"style":149},[1406],{"type":44,"value":184},{"type":38,"tag":126,"props":1408,"children":1409},{"style":176},[1410],{"type":44,"value":1411},".\u002Fpython\u002F**\u002F*.py",{"type":38,"tag":126,"props":1413,"children":1414},{"style":149},[1415],{"type":44,"value":184},{"type":38,"tag":126,"props":1417,"children":1418},{"style":155},[1419],{"type":44,"value":296},{"type":38,"tag":126,"props":1421,"children":1422},{"style":149},[1423],{"type":44,"value":260},{"type":38,"tag":126,"props":1425,"children":1426},{"class":128,"line":263},[1427,1432,1436,1440,1445,1449],{"type":38,"tag":126,"props":1428,"children":1429},{"style":234},[1430],{"type":44,"value":1431},"    requirementsFile",{"type":38,"tag":126,"props":1433,"children":1434},{"style":149},[1435],{"type":44,"value":242},{"type":38,"tag":126,"props":1437,"children":1438},{"style":149},[1439],{"type":44,"value":173},{"type":38,"tag":126,"props":1441,"children":1442},{"style":176},[1443],{"type":44,"value":1444},".\u002Frequirements.txt",{"type":38,"tag":126,"props":1446,"children":1447},{"style":149},[1448],{"type":44,"value":184},{"type":38,"tag":126,"props":1450,"children":1451},{"style":149},[1452],{"type":44,"value":260},{"type":38,"tag":126,"props":1454,"children":1455},{"class":128,"line":303},[1456,1461,1465,1469,1474,1478],{"type":38,"tag":126,"props":1457,"children":1458},{"style":234},[1459],{"type":44,"value":1460},"    devPythonBinaryPath",{"type":38,"tag":126,"props":1462,"children":1463},{"style":149},[1464],{"type":44,"value":242},{"type":38,"tag":126,"props":1466,"children":1467},{"style":149},[1468],{"type":44,"value":173},{"type":38,"tag":126,"props":1470,"children":1471},{"style":176},[1472],{"type":44,"value":1473},".venv\u002Fbin\u002Fpython",{"type":38,"tag":126,"props":1475,"children":1476},{"style":149},[1477],{"type":44,"value":184},{"type":38,"tag":126,"props":1479,"children":1480},{"style":149},[1481],{"type":44,"value":260},{"type":38,"tag":126,"props":1483,"children":1484},{"class":128,"line":339},[1485,1489,1493],{"type":38,"tag":126,"props":1486,"children":1487},{"style":149},[1488],{"type":44,"value":1036},{"type":38,"tag":126,"props":1490,"children":1491},{"style":155},[1492],{"type":44,"value":613},{"type":38,"tag":126,"props":1494,"children":1495},{"style":149},[1496],{"type":44,"value":260},{"type":38,"tag":126,"props":1498,"children":1499},{"class":128,"line":369},[1500],{"type":38,"tag":126,"props":1501,"children":1502},{"style":155},[1503],{"type":44,"value":1052},{"type":38,"tag":126,"props":1505,"children":1506},{"class":128,"line":377},[1507],{"type":38,"tag":126,"props":1508,"children":1509},{"emptyLinePlaceholder":196},[1510],{"type":44,"value":199},{"type":38,"tag":126,"props":1512,"children":1513},{"class":128,"line":395},[1514],{"type":38,"tag":126,"props":1515,"children":1516},{"style":133},[1517],{"type":44,"value":1518},"\u002F\u002F Usage in tasks:\n",{"type":38,"tag":126,"props":1520,"children":1521},{"class":128,"line":418},[1522,1528,1533,1538,1543,1548,1553,1558,1562,1566,1571,1575,1579,1583,1587,1592,1596,1601],{"type":38,"tag":126,"props":1523,"children":1525},{"style":1524},"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA",[1526],{"type":44,"value":1527},"const",{"type":38,"tag":126,"props":1529,"children":1530},{"style":155},[1531],{"type":44,"value":1532}," result ",{"type":38,"tag":126,"props":1534,"children":1535},{"style":149},[1536],{"type":44,"value":1537},"=",{"type":38,"tag":126,"props":1539,"children":1540},{"style":143},[1541],{"type":44,"value":1542}," await",{"type":38,"tag":126,"props":1544,"children":1545},{"style":155},[1546],{"type":44,"value":1547}," python",{"type":38,"tag":126,"props":1549,"children":1550},{"style":149},[1551],{"type":44,"value":1552},".",{"type":38,"tag":126,"props":1554,"children":1555},{"style":216},[1556],{"type":44,"value":1557},"runScript",{"type":38,"tag":126,"props":1559,"children":1560},{"style":155},[1561],{"type":44,"value":223},{"type":38,"tag":126,"props":1563,"children":1564},{"style":149},[1565],{"type":44,"value":184},{"type":38,"tag":126,"props":1567,"children":1568},{"style":176},[1569],{"type":44,"value":1570},".\u002Fpython\u002Fprocess.py",{"type":38,"tag":126,"props":1572,"children":1573},{"style":149},[1574],{"type":44,"value":184},{"type":38,"tag":126,"props":1576,"children":1577},{"style":149},[1578],{"type":44,"value":331},{"type":38,"tag":126,"props":1580,"children":1581},{"style":155},[1582],{"type":44,"value":278},{"type":38,"tag":126,"props":1584,"children":1585},{"style":149},[1586],{"type":44,"value":184},{"type":38,"tag":126,"props":1588,"children":1589},{"style":176},[1590],{"type":44,"value":1591},"arg1",{"type":38,"tag":126,"props":1593,"children":1594},{"style":149},[1595],{"type":44,"value":184},{"type":38,"tag":126,"props":1597,"children":1598},{"style":155},[1599],{"type":44,"value":1600},"])",{"type":38,"tag":126,"props":1602,"children":1603},{"style":149},[1604],{"type":44,"value":189},{"type":38,"tag":625,"props":1606,"children":1608},{"id":1607},"system-packages-apt-get",[1609],{"type":44,"value":1610},"System Packages (apt-get)",{"type":38,"tag":115,"props":1612,"children":1614},{"className":117,"code":1613,"language":119,"meta":120,"style":120},"import { aptGet } from \"@trigger.dev\u002Fbuild\u002Fextensions\u002Fcore\";\n\nextensions: [\n  aptGet({\n    packages: [\"imagemagick\", \"curl\"],\n  }),\n]\n",[1615],{"type":38,"tag":53,"props":1616,"children":1617},{"__ignoreMap":120},[1618,1658,1665,1680,1696,1750,1765],{"type":38,"tag":126,"props":1619,"children":1620},{"class":128,"line":129},[1621,1625,1629,1634,1638,1642,1646,1650,1654],{"type":38,"tag":126,"props":1622,"children":1623},{"style":143},[1624],{"type":44,"value":146},{"type":38,"tag":126,"props":1626,"children":1627},{"style":149},[1628],{"type":44,"value":152},{"type":38,"tag":126,"props":1630,"children":1631},{"style":155},[1632],{"type":44,"value":1633}," aptGet",{"type":38,"tag":126,"props":1635,"children":1636},{"style":149},[1637],{"type":44,"value":163},{"type":38,"tag":126,"props":1639,"children":1640},{"style":143},[1641],{"type":44,"value":168},{"type":38,"tag":126,"props":1643,"children":1644},{"style":149},[1645],{"type":44,"value":173},{"type":38,"tag":126,"props":1647,"children":1648},{"style":176},[1649],{"type":44,"value":1198},{"type":38,"tag":126,"props":1651,"children":1652},{"style":149},[1653],{"type":44,"value":184},{"type":38,"tag":126,"props":1655,"children":1656},{"style":149},[1657],{"type":44,"value":189},{"type":38,"tag":126,"props":1659,"children":1660},{"class":128,"line":139},[1661],{"type":38,"tag":126,"props":1662,"children":1663},{"emptyLinePlaceholder":196},[1664],{"type":44,"value":199},{"type":38,"tag":126,"props":1666,"children":1667},{"class":128,"line":192},[1668,1672,1676],{"type":38,"tag":126,"props":1669,"children":1670},{"style":959},[1671],{"type":44,"value":962},{"type":38,"tag":126,"props":1673,"children":1674},{"style":149},[1675],{"type":44,"value":242},{"type":38,"tag":126,"props":1677,"children":1678},{"style":155},[1679],{"type":44,"value":747},{"type":38,"tag":126,"props":1681,"children":1682},{"class":128,"line":202},[1683,1688,1692],{"type":38,"tag":126,"props":1684,"children":1685},{"style":216},[1686],{"type":44,"value":1687},"  aptGet",{"type":38,"tag":126,"props":1689,"children":1690},{"style":155},[1691],{"type":44,"value":223},{"type":38,"tag":126,"props":1693,"children":1694},{"style":149},[1695],{"type":44,"value":228},{"type":38,"tag":126,"props":1697,"children":1698},{"class":128,"line":25},[1699,1704,1708,1712,1716,1721,1725,1729,1733,1738,1742,1746],{"type":38,"tag":126,"props":1700,"children":1701},{"style":234},[1702],{"type":44,"value":1703},"    packages",{"type":38,"tag":126,"props":1705,"children":1706},{"style":149},[1707],{"type":44,"value":242},{"type":38,"tag":126,"props":1709,"children":1710},{"style":155},[1711],{"type":44,"value":278},{"type":38,"tag":126,"props":1713,"children":1714},{"style":149},[1715],{"type":44,"value":184},{"type":38,"tag":126,"props":1717,"children":1718},{"style":176},[1719],{"type":44,"value":1720},"imagemagick",{"type":38,"tag":126,"props":1722,"children":1723},{"style":149},[1724],{"type":44,"value":184},{"type":38,"tag":126,"props":1726,"children":1727},{"style":149},[1728],{"type":44,"value":331},{"type":38,"tag":126,"props":1730,"children":1731},{"style":149},[1732],{"type":44,"value":173},{"type":38,"tag":126,"props":1734,"children":1735},{"style":176},[1736],{"type":44,"value":1737},"curl",{"type":38,"tag":126,"props":1739,"children":1740},{"style":149},[1741],{"type":44,"value":184},{"type":38,"tag":126,"props":1743,"children":1744},{"style":155},[1745],{"type":44,"value":296},{"type":38,"tag":126,"props":1747,"children":1748},{"style":149},[1749],{"type":44,"value":260},{"type":38,"tag":126,"props":1751,"children":1752},{"class":128,"line":263},[1753,1757,1761],{"type":38,"tag":126,"props":1754,"children":1755},{"style":149},[1756],{"type":44,"value":1036},{"type":38,"tag":126,"props":1758,"children":1759},{"style":155},[1760],{"type":44,"value":613},{"type":38,"tag":126,"props":1762,"children":1763},{"style":149},[1764],{"type":44,"value":260},{"type":38,"tag":126,"props":1766,"children":1767},{"class":128,"line":303},[1768],{"type":38,"tag":126,"props":1769,"children":1770},{"style":155},[1771],{"type":44,"value":1052},{"type":38,"tag":625,"props":1773,"children":1775},{"id":1774},"additional-files",[1776],{"type":44,"value":1777},"Additional Files",{"type":38,"tag":115,"props":1779,"children":1781},{"className":117,"code":1780,"language":119,"meta":120,"style":120},"import { additionalFiles } from \"@trigger.dev\u002Fbuild\u002Fextensions\u002Fcore\";\n\nextensions: [\n  additionalFiles({\n    files: [\".\u002Fassets\u002F**\", \".\u002Ftemplates\u002F**\"],\n  }),\n]\n",[1782],{"type":38,"tag":53,"props":1783,"children":1784},{"__ignoreMap":120},[1785,1825,1832,1847,1863,1917,1932],{"type":38,"tag":126,"props":1786,"children":1787},{"class":128,"line":129},[1788,1792,1796,1801,1805,1809,1813,1817,1821],{"type":38,"tag":126,"props":1789,"children":1790},{"style":143},[1791],{"type":44,"value":146},{"type":38,"tag":126,"props":1793,"children":1794},{"style":149},[1795],{"type":44,"value":152},{"type":38,"tag":126,"props":1797,"children":1798},{"style":155},[1799],{"type":44,"value":1800}," additionalFiles",{"type":38,"tag":126,"props":1802,"children":1803},{"style":149},[1804],{"type":44,"value":163},{"type":38,"tag":126,"props":1806,"children":1807},{"style":143},[1808],{"type":44,"value":168},{"type":38,"tag":126,"props":1810,"children":1811},{"style":149},[1812],{"type":44,"value":173},{"type":38,"tag":126,"props":1814,"children":1815},{"style":176},[1816],{"type":44,"value":1198},{"type":38,"tag":126,"props":1818,"children":1819},{"style":149},[1820],{"type":44,"value":184},{"type":38,"tag":126,"props":1822,"children":1823},{"style":149},[1824],{"type":44,"value":189},{"type":38,"tag":126,"props":1826,"children":1827},{"class":128,"line":139},[1828],{"type":38,"tag":126,"props":1829,"children":1830},{"emptyLinePlaceholder":196},[1831],{"type":44,"value":199},{"type":38,"tag":126,"props":1833,"children":1834},{"class":128,"line":192},[1835,1839,1843],{"type":38,"tag":126,"props":1836,"children":1837},{"style":959},[1838],{"type":44,"value":962},{"type":38,"tag":126,"props":1840,"children":1841},{"style":149},[1842],{"type":44,"value":242},{"type":38,"tag":126,"props":1844,"children":1845},{"style":155},[1846],{"type":44,"value":747},{"type":38,"tag":126,"props":1848,"children":1849},{"class":128,"line":202},[1850,1855,1859],{"type":38,"tag":126,"props":1851,"children":1852},{"style":216},[1853],{"type":44,"value":1854},"  additionalFiles",{"type":38,"tag":126,"props":1856,"children":1857},{"style":155},[1858],{"type":44,"value":223},{"type":38,"tag":126,"props":1860,"children":1861},{"style":149},[1862],{"type":44,"value":228},{"type":38,"tag":126,"props":1864,"children":1865},{"class":128,"line":25},[1866,1871,1875,1879,1883,1888,1892,1896,1900,1905,1909,1913],{"type":38,"tag":126,"props":1867,"children":1868},{"style":234},[1869],{"type":44,"value":1870},"    files",{"type":38,"tag":126,"props":1872,"children":1873},{"style":149},[1874],{"type":44,"value":242},{"type":38,"tag":126,"props":1876,"children":1877},{"style":155},[1878],{"type":44,"value":278},{"type":38,"tag":126,"props":1880,"children":1881},{"style":149},[1882],{"type":44,"value":184},{"type":38,"tag":126,"props":1884,"children":1885},{"style":176},[1886],{"type":44,"value":1887},".\u002Fassets\u002F**",{"type":38,"tag":126,"props":1889,"children":1890},{"style":149},[1891],{"type":44,"value":184},{"type":38,"tag":126,"props":1893,"children":1894},{"style":149},[1895],{"type":44,"value":331},{"type":38,"tag":126,"props":1897,"children":1898},{"style":149},[1899],{"type":44,"value":173},{"type":38,"tag":126,"props":1901,"children":1902},{"style":176},[1903],{"type":44,"value":1904},".\u002Ftemplates\u002F**",{"type":38,"tag":126,"props":1906,"children":1907},{"style":149},[1908],{"type":44,"value":184},{"type":38,"tag":126,"props":1910,"children":1911},{"style":155},[1912],{"type":44,"value":296},{"type":38,"tag":126,"props":1914,"children":1915},{"style":149},[1916],{"type":44,"value":260},{"type":38,"tag":126,"props":1918,"children":1919},{"class":128,"line":263},[1920,1924,1928],{"type":38,"tag":126,"props":1921,"children":1922},{"style":149},[1923],{"type":44,"value":1036},{"type":38,"tag":126,"props":1925,"children":1926},{"style":155},[1927],{"type":44,"value":613},{"type":38,"tag":126,"props":1929,"children":1930},{"style":149},[1931],{"type":44,"value":260},{"type":38,"tag":126,"props":1933,"children":1934},{"class":128,"line":303},[1935],{"type":38,"tag":126,"props":1936,"children":1937},{"style":155},[1938],{"type":44,"value":1052},{"type":38,"tag":625,"props":1940,"children":1942},{"id":1941},"environment-variable-sync",[1943],{"type":44,"value":1944},"Environment Variable Sync",{"type":38,"tag":115,"props":1946,"children":1948},{"className":117,"code":1947,"language":119,"meta":120,"style":120},"import { syncEnvVars } from \"@trigger.dev\u002Fbuild\u002Fextensions\u002Fcore\";\n\nextensions: [\n  syncEnvVars(async (ctx) => {\n    return [\n      { name: \"API_KEY\", value: await getSecret(ctx.environment) },\n      { name: \"ENV\", value: ctx.environment },\n    ];\n  }),\n]\n",[1949],{"type":38,"tag":53,"props":1950,"children":1951},{"__ignoreMap":120},[1952,1992,1999,2014,2055,2067,2146,2204,2215,2230],{"type":38,"tag":126,"props":1953,"children":1954},{"class":128,"line":129},[1955,1959,1963,1968,1972,1976,1980,1984,1988],{"type":38,"tag":126,"props":1956,"children":1957},{"style":143},[1958],{"type":44,"value":146},{"type":38,"tag":126,"props":1960,"children":1961},{"style":149},[1962],{"type":44,"value":152},{"type":38,"tag":126,"props":1964,"children":1965},{"style":155},[1966],{"type":44,"value":1967}," syncEnvVars",{"type":38,"tag":126,"props":1969,"children":1970},{"style":149},[1971],{"type":44,"value":163},{"type":38,"tag":126,"props":1973,"children":1974},{"style":143},[1975],{"type":44,"value":168},{"type":38,"tag":126,"props":1977,"children":1978},{"style":149},[1979],{"type":44,"value":173},{"type":38,"tag":126,"props":1981,"children":1982},{"style":176},[1983],{"type":44,"value":1198},{"type":38,"tag":126,"props":1985,"children":1986},{"style":149},[1987],{"type":44,"value":184},{"type":38,"tag":126,"props":1989,"children":1990},{"style":149},[1991],{"type":44,"value":189},{"type":38,"tag":126,"props":1993,"children":1994},{"class":128,"line":139},[1995],{"type":38,"tag":126,"props":1996,"children":1997},{"emptyLinePlaceholder":196},[1998],{"type":44,"value":199},{"type":38,"tag":126,"props":2000,"children":2001},{"class":128,"line":192},[2002,2006,2010],{"type":38,"tag":126,"props":2003,"children":2004},{"style":959},[2005],{"type":44,"value":962},{"type":38,"tag":126,"props":2007,"children":2008},{"style":149},[2009],{"type":44,"value":242},{"type":38,"tag":126,"props":2011,"children":2012},{"style":155},[2013],{"type":44,"value":747},{"type":38,"tag":126,"props":2015,"children":2016},{"class":128,"line":202},[2017,2022,2026,2031,2036,2042,2046,2051],{"type":38,"tag":126,"props":2018,"children":2019},{"style":216},[2020],{"type":44,"value":2021},"  syncEnvVars",{"type":38,"tag":126,"props":2023,"children":2024},{"style":155},[2025],{"type":44,"value":223},{"type":38,"tag":126,"props":2027,"children":2028},{"style":1524},[2029],{"type":44,"value":2030},"async",{"type":38,"tag":126,"props":2032,"children":2033},{"style":149},[2034],{"type":44,"value":2035}," (",{"type":38,"tag":126,"props":2037,"children":2039},{"style":2038},"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#EEFFFF;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-font-style:italic",[2040],{"type":44,"value":2041},"ctx",{"type":38,"tag":126,"props":2043,"children":2044},{"style":149},[2045],{"type":44,"value":613},{"type":38,"tag":126,"props":2047,"children":2048},{"style":1524},[2049],{"type":44,"value":2050}," =>",{"type":38,"tag":126,"props":2052,"children":2053},{"style":149},[2054],{"type":44,"value":392},{"type":38,"tag":126,"props":2056,"children":2057},{"class":128,"line":25},[2058,2063],{"type":38,"tag":126,"props":2059,"children":2060},{"style":143},[2061],{"type":44,"value":2062},"    return",{"type":38,"tag":126,"props":2064,"children":2065},{"style":234},[2066],{"type":44,"value":747},{"type":38,"tag":126,"props":2068,"children":2069},{"class":128,"line":263},[2070,2075,2080,2084,2088,2093,2097,2101,2106,2110,2114,2119,2123,2127,2131,2136,2141],{"type":38,"tag":126,"props":2071,"children":2072},{"style":149},[2073],{"type":44,"value":2074},"      {",{"type":38,"tag":126,"props":2076,"children":2077},{"style":234},[2078],{"type":44,"value":2079}," name",{"type":38,"tag":126,"props":2081,"children":2082},{"style":149},[2083],{"type":44,"value":242},{"type":38,"tag":126,"props":2085,"children":2086},{"style":149},[2087],{"type":44,"value":173},{"type":38,"tag":126,"props":2089,"children":2090},{"style":176},[2091],{"type":44,"value":2092},"API_KEY",{"type":38,"tag":126,"props":2094,"children":2095},{"style":149},[2096],{"type":44,"value":184},{"type":38,"tag":126,"props":2098,"children":2099},{"style":149},[2100],{"type":44,"value":331},{"type":38,"tag":126,"props":2102,"children":2103},{"style":234},[2104],{"type":44,"value":2105}," value",{"type":38,"tag":126,"props":2107,"children":2108},{"style":149},[2109],{"type":44,"value":242},{"type":38,"tag":126,"props":2111,"children":2112},{"style":143},[2113],{"type":44,"value":1542},{"type":38,"tag":126,"props":2115,"children":2116},{"style":216},[2117],{"type":44,"value":2118}," getSecret",{"type":38,"tag":126,"props":2120,"children":2121},{"style":234},[2122],{"type":44,"value":223},{"type":38,"tag":126,"props":2124,"children":2125},{"style":155},[2126],{"type":44,"value":2041},{"type":38,"tag":126,"props":2128,"children":2129},{"style":149},[2130],{"type":44,"value":1552},{"type":38,"tag":126,"props":2132,"children":2133},{"style":155},[2134],{"type":44,"value":2135},"environment",{"type":38,"tag":126,"props":2137,"children":2138},{"style":234},[2139],{"type":44,"value":2140},") ",{"type":38,"tag":126,"props":2142,"children":2143},{"style":149},[2144],{"type":44,"value":2145},"},\n",{"type":38,"tag":126,"props":2147,"children":2148},{"class":128,"line":303},[2149,2153,2157,2161,2165,2170,2174,2178,2182,2186,2191,2195,2199],{"type":38,"tag":126,"props":2150,"children":2151},{"style":149},[2152],{"type":44,"value":2074},{"type":38,"tag":126,"props":2154,"children":2155},{"style":234},[2156],{"type":44,"value":2079},{"type":38,"tag":126,"props":2158,"children":2159},{"style":149},[2160],{"type":44,"value":242},{"type":38,"tag":126,"props":2162,"children":2163},{"style":149},[2164],{"type":44,"value":173},{"type":38,"tag":126,"props":2166,"children":2167},{"style":176},[2168],{"type":44,"value":2169},"ENV",{"type":38,"tag":126,"props":2171,"children":2172},{"style":149},[2173],{"type":44,"value":184},{"type":38,"tag":126,"props":2175,"children":2176},{"style":149},[2177],{"type":44,"value":331},{"type":38,"tag":126,"props":2179,"children":2180},{"style":234},[2181],{"type":44,"value":2105},{"type":38,"tag":126,"props":2183,"children":2184},{"style":149},[2185],{"type":44,"value":242},{"type":38,"tag":126,"props":2187,"children":2188},{"style":155},[2189],{"type":44,"value":2190}," ctx",{"type":38,"tag":126,"props":2192,"children":2193},{"style":149},[2194],{"type":44,"value":1552},{"type":38,"tag":126,"props":2196,"children":2197},{"style":155},[2198],{"type":44,"value":2135},{"type":38,"tag":126,"props":2200,"children":2201},{"style":149},[2202],{"type":44,"value":2203}," },\n",{"type":38,"tag":126,"props":2205,"children":2206},{"class":128,"line":339},[2207,2211],{"type":38,"tag":126,"props":2208,"children":2209},{"style":234},[2210],{"type":44,"value":866},{"type":38,"tag":126,"props":2212,"children":2213},{"style":149},[2214],{"type":44,"value":189},{"type":38,"tag":126,"props":2216,"children":2217},{"class":128,"line":369},[2218,2222,2226],{"type":38,"tag":126,"props":2219,"children":2220},{"style":149},[2221],{"type":44,"value":1036},{"type":38,"tag":126,"props":2223,"children":2224},{"style":155},[2225],{"type":44,"value":613},{"type":38,"tag":126,"props":2227,"children":2228},{"style":149},[2229],{"type":44,"value":260},{"type":38,"tag":126,"props":2231,"children":2232},{"class":128,"line":377},[2233],{"type":38,"tag":126,"props":2234,"children":2235},{"style":155},[2236],{"type":44,"value":1052},{"type":38,"tag":62,"props":2238,"children":2240},{"id":2239},"common-extension-combinations",[2241],{"type":44,"value":2242},"Common Extension Combinations",{"type":38,"tag":625,"props":2244,"children":2246},{"id":2245},"full-stack-web-app",[2247],{"type":44,"value":2248},"Full-Stack Web App",{"type":38,"tag":115,"props":2250,"children":2252},{"className":117,"code":2251,"language":119,"meta":120,"style":120},"extensions: [\n  prismaExtension({ schema: \"prisma\u002Fschema.prisma\", migrate: true }),\n  additionalFiles({ files: [\".\u002Fassets\u002F**\"] }),\n  syncEnvVars(async (ctx) => [...envVars]),\n]\n",[2253],{"type":38,"tag":53,"props":2254,"children":2255},{"__ignoreMap":120},[2256,2271,2337,2394,2443],{"type":38,"tag":126,"props":2257,"children":2258},{"class":128,"line":129},[2259,2263,2267],{"type":38,"tag":126,"props":2260,"children":2261},{"style":959},[2262],{"type":44,"value":962},{"type":38,"tag":126,"props":2264,"children":2265},{"style":149},[2266],{"type":44,"value":242},{"type":38,"tag":126,"props":2268,"children":2269},{"style":155},[2270],{"type":44,"value":747},{"type":38,"tag":126,"props":2272,"children":2273},{"class":128,"line":139},[2274,2279,2283,2287,2292,2296,2300,2304,2308,2312,2317,2321,2325,2329,2333],{"type":38,"tag":126,"props":2275,"children":2276},{"style":216},[2277],{"type":44,"value":2278},"  prismaExtension",{"type":38,"tag":126,"props":2280,"children":2281},{"style":155},[2282],{"type":44,"value":223},{"type":38,"tag":126,"props":2284,"children":2285},{"style":149},[2286],{"type":44,"value":1245},{"type":38,"tag":126,"props":2288,"children":2289},{"style":234},[2290],{"type":44,"value":2291}," schema",{"type":38,"tag":126,"props":2293,"children":2294},{"style":149},[2295],{"type":44,"value":242},{"type":38,"tag":126,"props":2297,"children":2298},{"style":149},[2299],{"type":44,"value":173},{"type":38,"tag":126,"props":2301,"children":2302},{"style":176},[2303],{"type":44,"value":784},{"type":38,"tag":126,"props":2305,"children":2306},{"style":149},[2307],{"type":44,"value":184},{"type":38,"tag":126,"props":2309,"children":2310},{"style":149},[2311],{"type":44,"value":331},{"type":38,"tag":126,"props":2313,"children":2314},{"style":234},[2315],{"type":44,"value":2316}," migrate",{"type":38,"tag":126,"props":2318,"children":2319},{"style":149},[2320],{"type":44,"value":242},{"type":38,"tag":126,"props":2322,"children":2323},{"style":408},[2324],{"type":44,"value":809},{"type":38,"tag":126,"props":2326,"children":2327},{"style":149},[2328],{"type":44,"value":163},{"type":38,"tag":126,"props":2330,"children":2331},{"style":155},[2332],{"type":44,"value":613},{"type":38,"tag":126,"props":2334,"children":2335},{"style":149},[2336],{"type":44,"value":260},{"type":38,"tag":126,"props":2338,"children":2339},{"class":128,"line":192},[2340,2344,2348,2352,2357,2361,2365,2369,2373,2377,2382,2386,2390],{"type":38,"tag":126,"props":2341,"children":2342},{"style":216},[2343],{"type":44,"value":1854},{"type":38,"tag":126,"props":2345,"children":2346},{"style":155},[2347],{"type":44,"value":223},{"type":38,"tag":126,"props":2349,"children":2350},{"style":149},[2351],{"type":44,"value":1245},{"type":38,"tag":126,"props":2353,"children":2354},{"style":234},[2355],{"type":44,"value":2356}," files",{"type":38,"tag":126,"props":2358,"children":2359},{"style":149},[2360],{"type":44,"value":242},{"type":38,"tag":126,"props":2362,"children":2363},{"style":155},[2364],{"type":44,"value":278},{"type":38,"tag":126,"props":2366,"children":2367},{"style":149},[2368],{"type":44,"value":184},{"type":38,"tag":126,"props":2370,"children":2371},{"style":176},[2372],{"type":44,"value":1887},{"type":38,"tag":126,"props":2374,"children":2375},{"style":149},[2376],{"type":44,"value":184},{"type":38,"tag":126,"props":2378,"children":2379},{"style":155},[2380],{"type":44,"value":2381},"] ",{"type":38,"tag":126,"props":2383,"children":2384},{"style":149},[2385],{"type":44,"value":608},{"type":38,"tag":126,"props":2387,"children":2388},{"style":155},[2389],{"type":44,"value":613},{"type":38,"tag":126,"props":2391,"children":2392},{"style":149},[2393],{"type":44,"value":260},{"type":38,"tag":126,"props":2395,"children":2396},{"class":128,"line":202},[2397,2401,2405,2409,2413,2417,2421,2425,2429,2434,2439],{"type":38,"tag":126,"props":2398,"children":2399},{"style":216},[2400],{"type":44,"value":2021},{"type":38,"tag":126,"props":2402,"children":2403},{"style":155},[2404],{"type":44,"value":223},{"type":38,"tag":126,"props":2406,"children":2407},{"style":1524},[2408],{"type":44,"value":2030},{"type":38,"tag":126,"props":2410,"children":2411},{"style":149},[2412],{"type":44,"value":2035},{"type":38,"tag":126,"props":2414,"children":2415},{"style":2038},[2416],{"type":44,"value":2041},{"type":38,"tag":126,"props":2418,"children":2419},{"style":149},[2420],{"type":44,"value":613},{"type":38,"tag":126,"props":2422,"children":2423},{"style":1524},[2424],{"type":44,"value":2050},{"type":38,"tag":126,"props":2426,"children":2427},{"style":155},[2428],{"type":44,"value":278},{"type":38,"tag":126,"props":2430,"children":2431},{"style":149},[2432],{"type":44,"value":2433},"...",{"type":38,"tag":126,"props":2435,"children":2436},{"style":155},[2437],{"type":44,"value":2438},"envVars])",{"type":38,"tag":126,"props":2440,"children":2441},{"style":149},[2442],{"type":44,"value":260},{"type":38,"tag":126,"props":2444,"children":2445},{"class":128,"line":25},[2446],{"type":38,"tag":126,"props":2447,"children":2448},{"style":155},[2449],{"type":44,"value":1052},{"type":38,"tag":625,"props":2451,"children":2453},{"id":2452},"aiml-processing",[2454],{"type":44,"value":2455},"AI\u002FML Processing",{"type":38,"tag":115,"props":2457,"children":2459},{"className":117,"code":2458,"language":119,"meta":120,"style":120},"extensions: [\n  pythonExtension({\n    scripts: [\".\u002Fai\u002F**\u002F*.py\"],\n    requirementsFile: \".\u002Frequirements.txt\",\n  }),\n  ffmpeg({ version: \"7\" }),\n]\n",[2460],{"type":38,"tag":53,"props":2461,"children":2462},{"__ignoreMap":120},[2463,2478,2493,2529,2556,2571,2618],{"type":38,"tag":126,"props":2464,"children":2465},{"class":128,"line":129},[2466,2470,2474],{"type":38,"tag":126,"props":2467,"children":2468},{"style":959},[2469],{"type":44,"value":962},{"type":38,"tag":126,"props":2471,"children":2472},{"style":149},[2473],{"type":44,"value":242},{"type":38,"tag":126,"props":2475,"children":2476},{"style":155},[2477],{"type":44,"value":747},{"type":38,"tag":126,"props":2479,"children":2480},{"class":128,"line":139},[2481,2485,2489],{"type":38,"tag":126,"props":2482,"children":2483},{"style":216},[2484],{"type":44,"value":1378},{"type":38,"tag":126,"props":2486,"children":2487},{"style":155},[2488],{"type":44,"value":223},{"type":38,"tag":126,"props":2490,"children":2491},{"style":149},[2492],{"type":44,"value":228},{"type":38,"tag":126,"props":2494,"children":2495},{"class":128,"line":192},[2496,2500,2504,2508,2512,2517,2521,2525],{"type":38,"tag":126,"props":2497,"children":2498},{"style":234},[2499],{"type":44,"value":1394},{"type":38,"tag":126,"props":2501,"children":2502},{"style":149},[2503],{"type":44,"value":242},{"type":38,"tag":126,"props":2505,"children":2506},{"style":155},[2507],{"type":44,"value":278},{"type":38,"tag":126,"props":2509,"children":2510},{"style":149},[2511],{"type":44,"value":184},{"type":38,"tag":126,"props":2513,"children":2514},{"style":176},[2515],{"type":44,"value":2516},".\u002Fai\u002F**\u002F*.py",{"type":38,"tag":126,"props":2518,"children":2519},{"style":149},[2520],{"type":44,"value":184},{"type":38,"tag":126,"props":2522,"children":2523},{"style":155},[2524],{"type":44,"value":296},{"type":38,"tag":126,"props":2526,"children":2527},{"style":149},[2528],{"type":44,"value":260},{"type":38,"tag":126,"props":2530,"children":2531},{"class":128,"line":202},[2532,2536,2540,2544,2548,2552],{"type":38,"tag":126,"props":2533,"children":2534},{"style":234},[2535],{"type":44,"value":1431},{"type":38,"tag":126,"props":2537,"children":2538},{"style":149},[2539],{"type":44,"value":242},{"type":38,"tag":126,"props":2541,"children":2542},{"style":149},[2543],{"type":44,"value":173},{"type":38,"tag":126,"props":2545,"children":2546},{"style":176},[2547],{"type":44,"value":1444},{"type":38,"tag":126,"props":2549,"children":2550},{"style":149},[2551],{"type":44,"value":184},{"type":38,"tag":126,"props":2553,"children":2554},{"style":149},[2555],{"type":44,"value":260},{"type":38,"tag":126,"props":2557,"children":2558},{"class":128,"line":25},[2559,2563,2567],{"type":38,"tag":126,"props":2560,"children":2561},{"style":149},[2562],{"type":44,"value":1036},{"type":38,"tag":126,"props":2564,"children":2565},{"style":155},[2566],{"type":44,"value":613},{"type":38,"tag":126,"props":2568,"children":2569},{"style":149},[2570],{"type":44,"value":260},{"type":38,"tag":126,"props":2572,"children":2573},{"class":128,"line":263},[2574,2578,2582,2586,2590,2594,2598,2602,2606,2610,2614],{"type":38,"tag":126,"props":2575,"children":2576},{"style":216},[2577],{"type":44,"value":1236},{"type":38,"tag":126,"props":2579,"children":2580},{"style":155},[2581],{"type":44,"value":223},{"type":38,"tag":126,"props":2583,"children":2584},{"style":149},[2585],{"type":44,"value":1245},{"type":38,"tag":126,"props":2587,"children":2588},{"style":234},[2589],{"type":44,"value":1250},{"type":38,"tag":126,"props":2591,"children":2592},{"style":149},[2593],{"type":44,"value":242},{"type":38,"tag":126,"props":2595,"children":2596},{"style":149},[2597],{"type":44,"value":173},{"type":38,"tag":126,"props":2599,"children":2600},{"style":176},[2601],{"type":44,"value":1263},{"type":38,"tag":126,"props":2603,"children":2604},{"style":149},[2605],{"type":44,"value":184},{"type":38,"tag":126,"props":2607,"children":2608},{"style":149},[2609],{"type":44,"value":163},{"type":38,"tag":126,"props":2611,"children":2612},{"style":155},[2613],{"type":44,"value":613},{"type":38,"tag":126,"props":2615,"children":2616},{"style":149},[2617],{"type":44,"value":260},{"type":38,"tag":126,"props":2619,"children":2620},{"class":128,"line":303},[2621],{"type":38,"tag":126,"props":2622,"children":2623},{"style":155},[2624],{"type":44,"value":1052},{"type":38,"tag":625,"props":2626,"children":2628},{"id":2627},"web-scraping",[2629],{"type":44,"value":2630},"Web Scraping",{"type":38,"tag":115,"props":2632,"children":2634},{"className":117,"code":2633,"language":119,"meta":120,"style":120},"extensions: [\n  playwright({ browsers: [\"chromium\"] }),\n  additionalFiles({ files: [\".\u002Fselectors.json\"] }),\n]\n",[2635],{"type":38,"tag":53,"props":2636,"children":2637},{"__ignoreMap":120},[2638,2653,2709,2765],{"type":38,"tag":126,"props":2639,"children":2640},{"class":128,"line":129},[2641,2645,2649],{"type":38,"tag":126,"props":2642,"children":2643},{"style":959},[2644],{"type":44,"value":962},{"type":38,"tag":126,"props":2646,"children":2647},{"style":149},[2648],{"type":44,"value":242},{"type":38,"tag":126,"props":2650,"children":2651},{"style":155},[2652],{"type":44,"value":747},{"type":38,"tag":126,"props":2654,"children":2655},{"class":128,"line":139},[2656,2660,2664,2668,2673,2677,2681,2685,2689,2693,2697,2701,2705],{"type":38,"tag":126,"props":2657,"children":2658},{"style":216},[2659],{"type":44,"value":978},{"type":38,"tag":126,"props":2661,"children":2662},{"style":155},[2663],{"type":44,"value":223},{"type":38,"tag":126,"props":2665,"children":2666},{"style":149},[2667],{"type":44,"value":1245},{"type":38,"tag":126,"props":2669,"children":2670},{"style":234},[2671],{"type":44,"value":2672}," browsers",{"type":38,"tag":126,"props":2674,"children":2675},{"style":149},[2676],{"type":44,"value":242},{"type":38,"tag":126,"props":2678,"children":2679},{"style":155},[2680],{"type":44,"value":278},{"type":38,"tag":126,"props":2682,"children":2683},{"style":149},[2684],{"type":44,"value":184},{"type":38,"tag":126,"props":2686,"children":2687},{"style":176},[2688],{"type":44,"value":1011},{"type":38,"tag":126,"props":2690,"children":2691},{"style":149},[2692],{"type":44,"value":184},{"type":38,"tag":126,"props":2694,"children":2695},{"style":155},[2696],{"type":44,"value":2381},{"type":38,"tag":126,"props":2698,"children":2699},{"style":149},[2700],{"type":44,"value":608},{"type":38,"tag":126,"props":2702,"children":2703},{"style":155},[2704],{"type":44,"value":613},{"type":38,"tag":126,"props":2706,"children":2707},{"style":149},[2708],{"type":44,"value":260},{"type":38,"tag":126,"props":2710,"children":2711},{"class":128,"line":192},[2712,2716,2720,2724,2728,2732,2736,2740,2745,2749,2753,2757,2761],{"type":38,"tag":126,"props":2713,"children":2714},{"style":216},[2715],{"type":44,"value":1854},{"type":38,"tag":126,"props":2717,"children":2718},{"style":155},[2719],{"type":44,"value":223},{"type":38,"tag":126,"props":2721,"children":2722},{"style":149},[2723],{"type":44,"value":1245},{"type":38,"tag":126,"props":2725,"children":2726},{"style":234},[2727],{"type":44,"value":2356},{"type":38,"tag":126,"props":2729,"children":2730},{"style":149},[2731],{"type":44,"value":242},{"type":38,"tag":126,"props":2733,"children":2734},{"style":155},[2735],{"type":44,"value":278},{"type":38,"tag":126,"props":2737,"children":2738},{"style":149},[2739],{"type":44,"value":184},{"type":38,"tag":126,"props":2741,"children":2742},{"style":176},[2743],{"type":44,"value":2744},".\u002Fselectors.json",{"type":38,"tag":126,"props":2746,"children":2747},{"style":149},[2748],{"type":44,"value":184},{"type":38,"tag":126,"props":2750,"children":2751},{"style":155},[2752],{"type":44,"value":2381},{"type":38,"tag":126,"props":2754,"children":2755},{"style":149},[2756],{"type":44,"value":608},{"type":38,"tag":126,"props":2758,"children":2759},{"style":155},[2760],{"type":44,"value":613},{"type":38,"tag":126,"props":2762,"children":2763},{"style":149},[2764],{"type":44,"value":260},{"type":38,"tag":126,"props":2766,"children":2767},{"class":128,"line":202},[2768],{"type":38,"tag":126,"props":2769,"children":2770},{"style":155},[2771],{"type":44,"value":1052},{"type":38,"tag":62,"props":2773,"children":2775},{"id":2774},"global-lifecycle-hooks",[2776],{"type":44,"value":2777},"Global Lifecycle Hooks",{"type":38,"tag":115,"props":2779,"children":2781},{"className":117,"code":2780,"language":119,"meta":120,"style":120},"export default defineConfig({\n  \u002F\u002F ...\n  onStartAttempt: async ({ payload, ctx }) => {\n    console.log(\"Task starting:\", ctx.task.id);\n  },\n  onSuccess: async ({ payload, output, ctx }) => {\n    console.log(\"Task succeeded\");\n  },\n  onFailure: async ({ payload, error, ctx }) => {\n    console.error(\"Task failed:\", error);\n  },\n});\n",[2782],{"type":38,"tag":53,"props":2783,"children":2784},{"__ignoreMap":120},[2785,2808,2815,2863,2931,2938,2991,3031,3038,3091,3140,3147],{"type":38,"tag":126,"props":2786,"children":2787},{"class":128,"line":129},[2788,2792,2796,2800,2804],{"type":38,"tag":126,"props":2789,"children":2790},{"style":143},[2791],{"type":44,"value":208},{"type":38,"tag":126,"props":2793,"children":2794},{"style":143},[2795],{"type":44,"value":213},{"type":38,"tag":126,"props":2797,"children":2798},{"style":216},[2799],{"type":44,"value":158},{"type":38,"tag":126,"props":2801,"children":2802},{"style":155},[2803],{"type":44,"value":223},{"type":38,"tag":126,"props":2805,"children":2806},{"style":149},[2807],{"type":44,"value":228},{"type":38,"tag":126,"props":2809,"children":2810},{"class":128,"line":139},[2811],{"type":38,"tag":126,"props":2812,"children":2813},{"style":133},[2814],{"type":44,"value":716},{"type":38,"tag":126,"props":2816,"children":2817},{"class":128,"line":192},[2818,2823,2827,2832,2837,2842,2846,2850,2855,2859],{"type":38,"tag":126,"props":2819,"children":2820},{"style":216},[2821],{"type":44,"value":2822},"  onStartAttempt",{"type":38,"tag":126,"props":2824,"children":2825},{"style":149},[2826],{"type":44,"value":242},{"type":38,"tag":126,"props":2828,"children":2829},{"style":1524},[2830],{"type":44,"value":2831}," async",{"type":38,"tag":126,"props":2833,"children":2834},{"style":149},[2835],{"type":44,"value":2836}," ({",{"type":38,"tag":126,"props":2838,"children":2839},{"style":2038},[2840],{"type":44,"value":2841}," payload",{"type":38,"tag":126,"props":2843,"children":2844},{"style":149},[2845],{"type":44,"value":331},{"type":38,"tag":126,"props":2847,"children":2848},{"style":2038},[2849],{"type":44,"value":2190},{"type":38,"tag":126,"props":2851,"children":2852},{"style":149},[2853],{"type":44,"value":2854}," })",{"type":38,"tag":126,"props":2856,"children":2857},{"style":1524},[2858],{"type":44,"value":2050},{"type":38,"tag":126,"props":2860,"children":2861},{"style":149},[2862],{"type":44,"value":392},{"type":38,"tag":126,"props":2864,"children":2865},{"class":128,"line":202},[2866,2871,2875,2880,2884,2888,2893,2897,2901,2905,2909,2914,2918,2923,2927],{"type":38,"tag":126,"props":2867,"children":2868},{"style":155},[2869],{"type":44,"value":2870},"    console",{"type":38,"tag":126,"props":2872,"children":2873},{"style":149},[2874],{"type":44,"value":1552},{"type":38,"tag":126,"props":2876,"children":2877},{"style":216},[2878],{"type":44,"value":2879},"log",{"type":38,"tag":126,"props":2881,"children":2882},{"style":234},[2883],{"type":44,"value":223},{"type":38,"tag":126,"props":2885,"children":2886},{"style":149},[2887],{"type":44,"value":184},{"type":38,"tag":126,"props":2889,"children":2890},{"style":176},[2891],{"type":44,"value":2892},"Task starting:",{"type":38,"tag":126,"props":2894,"children":2895},{"style":149},[2896],{"type":44,"value":184},{"type":38,"tag":126,"props":2898,"children":2899},{"style":149},[2900],{"type":44,"value":331},{"type":38,"tag":126,"props":2902,"children":2903},{"style":155},[2904],{"type":44,"value":2190},{"type":38,"tag":126,"props":2906,"children":2907},{"style":149},[2908],{"type":44,"value":1552},{"type":38,"tag":126,"props":2910,"children":2911},{"style":155},[2912],{"type":44,"value":2913},"task",{"type":38,"tag":126,"props":2915,"children":2916},{"style":149},[2917],{"type":44,"value":1552},{"type":38,"tag":126,"props":2919,"children":2920},{"style":155},[2921],{"type":44,"value":2922},"id",{"type":38,"tag":126,"props":2924,"children":2925},{"style":234},[2926],{"type":44,"value":613},{"type":38,"tag":126,"props":2928,"children":2929},{"style":149},[2930],{"type":44,"value":189},{"type":38,"tag":126,"props":2932,"children":2933},{"class":128,"line":25},[2934],{"type":38,"tag":126,"props":2935,"children":2936},{"style":149},[2937],{"type":44,"value":539},{"type":38,"tag":126,"props":2939,"children":2940},{"class":128,"line":263},[2941,2946,2950,2954,2958,2962,2966,2971,2975,2979,2983,2987],{"type":38,"tag":126,"props":2942,"children":2943},{"style":216},[2944],{"type":44,"value":2945},"  onSuccess",{"type":38,"tag":126,"props":2947,"children":2948},{"style":149},[2949],{"type":44,"value":242},{"type":38,"tag":126,"props":2951,"children":2952},{"style":1524},[2953],{"type":44,"value":2831},{"type":38,"tag":126,"props":2955,"children":2956},{"style":149},[2957],{"type":44,"value":2836},{"type":38,"tag":126,"props":2959,"children":2960},{"style":2038},[2961],{"type":44,"value":2841},{"type":38,"tag":126,"props":2963,"children":2964},{"style":149},[2965],{"type":44,"value":331},{"type":38,"tag":126,"props":2967,"children":2968},{"style":2038},[2969],{"type":44,"value":2970}," output",{"type":38,"tag":126,"props":2972,"children":2973},{"style":149},[2974],{"type":44,"value":331},{"type":38,"tag":126,"props":2976,"children":2977},{"style":2038},[2978],{"type":44,"value":2190},{"type":38,"tag":126,"props":2980,"children":2981},{"style":149},[2982],{"type":44,"value":2854},{"type":38,"tag":126,"props":2984,"children":2985},{"style":1524},[2986],{"type":44,"value":2050},{"type":38,"tag":126,"props":2988,"children":2989},{"style":149},[2990],{"type":44,"value":392},{"type":38,"tag":126,"props":2992,"children":2993},{"class":128,"line":303},[2994,2998,3002,3006,3010,3014,3019,3023,3027],{"type":38,"tag":126,"props":2995,"children":2996},{"style":155},[2997],{"type":44,"value":2870},{"type":38,"tag":126,"props":2999,"children":3000},{"style":149},[3001],{"type":44,"value":1552},{"type":38,"tag":126,"props":3003,"children":3004},{"style":216},[3005],{"type":44,"value":2879},{"type":38,"tag":126,"props":3007,"children":3008},{"style":234},[3009],{"type":44,"value":223},{"type":38,"tag":126,"props":3011,"children":3012},{"style":149},[3013],{"type":44,"value":184},{"type":38,"tag":126,"props":3015,"children":3016},{"style":176},[3017],{"type":44,"value":3018},"Task succeeded",{"type":38,"tag":126,"props":3020,"children":3021},{"style":149},[3022],{"type":44,"value":184},{"type":38,"tag":126,"props":3024,"children":3025},{"style":234},[3026],{"type":44,"value":613},{"type":38,"tag":126,"props":3028,"children":3029},{"style":149},[3030],{"type":44,"value":189},{"type":38,"tag":126,"props":3032,"children":3033},{"class":128,"line":339},[3034],{"type":38,"tag":126,"props":3035,"children":3036},{"style":149},[3037],{"type":44,"value":539},{"type":38,"tag":126,"props":3039,"children":3040},{"class":128,"line":369},[3041,3046,3050,3054,3058,3062,3066,3071,3075,3079,3083,3087],{"type":38,"tag":126,"props":3042,"children":3043},{"style":216},[3044],{"type":44,"value":3045},"  onFailure",{"type":38,"tag":126,"props":3047,"children":3048},{"style":149},[3049],{"type":44,"value":242},{"type":38,"tag":126,"props":3051,"children":3052},{"style":1524},[3053],{"type":44,"value":2831},{"type":38,"tag":126,"props":3055,"children":3056},{"style":149},[3057],{"type":44,"value":2836},{"type":38,"tag":126,"props":3059,"children":3060},{"style":2038},[3061],{"type":44,"value":2841},{"type":38,"tag":126,"props":3063,"children":3064},{"style":149},[3065],{"type":44,"value":331},{"type":38,"tag":126,"props":3067,"children":3068},{"style":2038},[3069],{"type":44,"value":3070}," error",{"type":38,"tag":126,"props":3072,"children":3073},{"style":149},[3074],{"type":44,"value":331},{"type":38,"tag":126,"props":3076,"children":3077},{"style":2038},[3078],{"type":44,"value":2190},{"type":38,"tag":126,"props":3080,"children":3081},{"style":149},[3082],{"type":44,"value":2854},{"type":38,"tag":126,"props":3084,"children":3085},{"style":1524},[3086],{"type":44,"value":2050},{"type":38,"tag":126,"props":3088,"children":3089},{"style":149},[3090],{"type":44,"value":392},{"type":38,"tag":126,"props":3092,"children":3093},{"class":128,"line":377},[3094,3098,3102,3107,3111,3115,3120,3124,3128,3132,3136],{"type":38,"tag":126,"props":3095,"children":3096},{"style":155},[3097],{"type":44,"value":2870},{"type":38,"tag":126,"props":3099,"children":3100},{"style":149},[3101],{"type":44,"value":1552},{"type":38,"tag":126,"props":3103,"children":3104},{"style":216},[3105],{"type":44,"value":3106},"error",{"type":38,"tag":126,"props":3108,"children":3109},{"style":234},[3110],{"type":44,"value":223},{"type":38,"tag":126,"props":3112,"children":3113},{"style":149},[3114],{"type":44,"value":184},{"type":38,"tag":126,"props":3116,"children":3117},{"style":176},[3118],{"type":44,"value":3119},"Task failed:",{"type":38,"tag":126,"props":3121,"children":3122},{"style":149},[3123],{"type":44,"value":184},{"type":38,"tag":126,"props":3125,"children":3126},{"style":149},[3127],{"type":44,"value":331},{"type":38,"tag":126,"props":3129,"children":3130},{"style":155},[3131],{"type":44,"value":3070},{"type":38,"tag":126,"props":3133,"children":3134},{"style":234},[3135],{"type":44,"value":613},{"type":38,"tag":126,"props":3137,"children":3138},{"style":149},[3139],{"type":44,"value":189},{"type":38,"tag":126,"props":3141,"children":3142},{"class":128,"line":395},[3143],{"type":38,"tag":126,"props":3144,"children":3145},{"style":149},[3146],{"type":44,"value":539},{"type":38,"tag":126,"props":3148,"children":3149},{"class":128,"line":418},[3150,3154,3158],{"type":38,"tag":126,"props":3151,"children":3152},{"style":149},[3153],{"type":44,"value":608},{"type":38,"tag":126,"props":3155,"children":3156},{"style":155},[3157],{"type":44,"value":613},{"type":38,"tag":126,"props":3159,"children":3160},{"style":149},[3161],{"type":44,"value":189},{"type":38,"tag":62,"props":3163,"children":3165},{"id":3164},"machine-defaults",[3166],{"type":44,"value":3167},"Machine Defaults",{"type":38,"tag":115,"props":3169,"children":3171},{"className":117,"code":3170,"language":119,"meta":120,"style":120},"export default defineConfig({\n  \u002F\u002F ...\n  defaultMachine: \"medium-1x\",\n  maxDuration: 300, \u002F\u002F seconds\n});\n",[3172],{"type":38,"tag":53,"props":3173,"children":3174},{"__ignoreMap":120},[3175,3198,3205,3234,3260],{"type":38,"tag":126,"props":3176,"children":3177},{"class":128,"line":129},[3178,3182,3186,3190,3194],{"type":38,"tag":126,"props":3179,"children":3180},{"style":143},[3181],{"type":44,"value":208},{"type":38,"tag":126,"props":3183,"children":3184},{"style":143},[3185],{"type":44,"value":213},{"type":38,"tag":126,"props":3187,"children":3188},{"style":216},[3189],{"type":44,"value":158},{"type":38,"tag":126,"props":3191,"children":3192},{"style":155},[3193],{"type":44,"value":223},{"type":38,"tag":126,"props":3195,"children":3196},{"style":149},[3197],{"type":44,"value":228},{"type":38,"tag":126,"props":3199,"children":3200},{"class":128,"line":139},[3201],{"type":38,"tag":126,"props":3202,"children":3203},{"style":133},[3204],{"type":44,"value":716},{"type":38,"tag":126,"props":3206,"children":3207},{"class":128,"line":192},[3208,3213,3217,3221,3226,3230],{"type":38,"tag":126,"props":3209,"children":3210},{"style":234},[3211],{"type":44,"value":3212},"  defaultMachine",{"type":38,"tag":126,"props":3214,"children":3215},{"style":149},[3216],{"type":44,"value":242},{"type":38,"tag":126,"props":3218,"children":3219},{"style":149},[3220],{"type":44,"value":173},{"type":38,"tag":126,"props":3222,"children":3223},{"style":176},[3224],{"type":44,"value":3225},"medium-1x",{"type":38,"tag":126,"props":3227,"children":3228},{"style":149},[3229],{"type":44,"value":184},{"type":38,"tag":126,"props":3231,"children":3232},{"style":149},[3233],{"type":44,"value":260},{"type":38,"tag":126,"props":3235,"children":3236},{"class":128,"line":202},[3237,3242,3246,3251,3255],{"type":38,"tag":126,"props":3238,"children":3239},{"style":234},[3240],{"type":44,"value":3241},"  maxDuration",{"type":38,"tag":126,"props":3243,"children":3244},{"style":149},[3245],{"type":44,"value":242},{"type":38,"tag":126,"props":3247,"children":3248},{"style":448},[3249],{"type":44,"value":3250}," 300",{"type":38,"tag":126,"props":3252,"children":3253},{"style":149},[3254],{"type":44,"value":331},{"type":38,"tag":126,"props":3256,"children":3257},{"style":133},[3258],{"type":44,"value":3259}," \u002F\u002F seconds\n",{"type":38,"tag":126,"props":3261,"children":3262},{"class":128,"line":25},[3263,3267,3271],{"type":38,"tag":126,"props":3264,"children":3265},{"style":149},[3266],{"type":44,"value":608},{"type":38,"tag":126,"props":3268,"children":3269},{"style":155},[3270],{"type":44,"value":613},{"type":38,"tag":126,"props":3272,"children":3273},{"style":149},[3274],{"type":44,"value":189},{"type":38,"tag":62,"props":3276,"children":3278},{"id":3277},"telemetry-integration",[3279],{"type":44,"value":3280},"Telemetry Integration",{"type":38,"tag":115,"props":3282,"children":3284},{"className":117,"code":3283,"language":119,"meta":120,"style":120},"import { PrismaInstrumentation } from \"@prisma\u002Finstrumentation\";\n\nexport default defineConfig({\n  \u002F\u002F ...\n  telemetry: {\n    instrumentations: [new PrismaInstrumentation()],\n  },\n});\n",[3285],{"type":38,"tag":53,"props":3286,"children":3287},{"__ignoreMap":120},[3288,3329,3336,3359,3366,3382,3416,3423],{"type":38,"tag":126,"props":3289,"children":3290},{"class":128,"line":129},[3291,3295,3299,3304,3308,3312,3316,3321,3325],{"type":38,"tag":126,"props":3292,"children":3293},{"style":143},[3294],{"type":44,"value":146},{"type":38,"tag":126,"props":3296,"children":3297},{"style":149},[3298],{"type":44,"value":152},{"type":38,"tag":126,"props":3300,"children":3301},{"style":155},[3302],{"type":44,"value":3303}," PrismaInstrumentation",{"type":38,"tag":126,"props":3305,"children":3306},{"style":149},[3307],{"type":44,"value":163},{"type":38,"tag":126,"props":3309,"children":3310},{"style":143},[3311],{"type":44,"value":168},{"type":38,"tag":126,"props":3313,"children":3314},{"style":149},[3315],{"type":44,"value":173},{"type":38,"tag":126,"props":3317,"children":3318},{"style":176},[3319],{"type":44,"value":3320},"@prisma\u002Finstrumentation",{"type":38,"tag":126,"props":3322,"children":3323},{"style":149},[3324],{"type":44,"value":184},{"type":38,"tag":126,"props":3326,"children":3327},{"style":149},[3328],{"type":44,"value":189},{"type":38,"tag":126,"props":3330,"children":3331},{"class":128,"line":139},[3332],{"type":38,"tag":126,"props":3333,"children":3334},{"emptyLinePlaceholder":196},[3335],{"type":44,"value":199},{"type":38,"tag":126,"props":3337,"children":3338},{"class":128,"line":192},[3339,3343,3347,3351,3355],{"type":38,"tag":126,"props":3340,"children":3341},{"style":143},[3342],{"type":44,"value":208},{"type":38,"tag":126,"props":3344,"children":3345},{"style":143},[3346],{"type":44,"value":213},{"type":38,"tag":126,"props":3348,"children":3349},{"style":216},[3350],{"type":44,"value":158},{"type":38,"tag":126,"props":3352,"children":3353},{"style":155},[3354],{"type":44,"value":223},{"type":38,"tag":126,"props":3356,"children":3357},{"style":149},[3358],{"type":44,"value":228},{"type":38,"tag":126,"props":3360,"children":3361},{"class":128,"line":202},[3362],{"type":38,"tag":126,"props":3363,"children":3364},{"style":133},[3365],{"type":44,"value":716},{"type":38,"tag":126,"props":3367,"children":3368},{"class":128,"line":25},[3369,3374,3378],{"type":38,"tag":126,"props":3370,"children":3371},{"style":234},[3372],{"type":44,"value":3373},"  telemetry",{"type":38,"tag":126,"props":3375,"children":3376},{"style":149},[3377],{"type":44,"value":242},{"type":38,"tag":126,"props":3379,"children":3380},{"style":149},[3381],{"type":44,"value":392},{"type":38,"tag":126,"props":3383,"children":3384},{"class":128,"line":263},[3385,3390,3394,3398,3403,3407,3412],{"type":38,"tag":126,"props":3386,"children":3387},{"style":234},[3388],{"type":44,"value":3389},"    instrumentations",{"type":38,"tag":126,"props":3391,"children":3392},{"style":149},[3393],{"type":44,"value":242},{"type":38,"tag":126,"props":3395,"children":3396},{"style":155},[3397],{"type":44,"value":278},{"type":38,"tag":126,"props":3399,"children":3400},{"style":149},[3401],{"type":44,"value":3402},"new",{"type":38,"tag":126,"props":3404,"children":3405},{"style":216},[3406],{"type":44,"value":3303},{"type":38,"tag":126,"props":3408,"children":3409},{"style":155},[3410],{"type":44,"value":3411},"()]",{"type":38,"tag":126,"props":3413,"children":3414},{"style":149},[3415],{"type":44,"value":260},{"type":38,"tag":126,"props":3417,"children":3418},{"class":128,"line":303},[3419],{"type":38,"tag":126,"props":3420,"children":3421},{"style":149},[3422],{"type":44,"value":539},{"type":38,"tag":126,"props":3424,"children":3425},{"class":128,"line":339},[3426,3430,3434],{"type":38,"tag":126,"props":3427,"children":3428},{"style":149},[3429],{"type":44,"value":608},{"type":38,"tag":126,"props":3431,"children":3432},{"style":155},[3433],{"type":44,"value":613},{"type":38,"tag":126,"props":3435,"children":3436},{"style":149},[3437],{"type":44,"value":189},{"type":38,"tag":62,"props":3439,"children":3441},{"id":3440},"best-practices",[3442],{"type":44,"value":3443},"Best Practices",{"type":38,"tag":3445,"props":3446,"children":3447},"ol",{},[3448,3459,3475,3493],{"type":38,"tag":73,"props":3449,"children":3450},{},[3451,3457],{"type":38,"tag":3452,"props":3453,"children":3454},"strong",{},[3455],{"type":44,"value":3456},"Pin versions",{"type":44,"value":3458}," for reproducible builds",{"type":38,"tag":73,"props":3460,"children":3461},{},[3462,3473],{"type":38,"tag":3452,"props":3463,"children":3464},{},[3465,3467],{"type":44,"value":3466},"Use ",{"type":38,"tag":53,"props":3468,"children":3470},{"className":3469},[],[3471],{"type":44,"value":3472},"syncEnvVars",{"type":44,"value":3474}," for dynamic secrets",{"type":38,"tag":73,"props":3476,"children":3477},{},[3478,3483,3485,3491],{"type":38,"tag":3452,"props":3479,"children":3480},{},[3481],{"type":44,"value":3482},"Add native modules",{"type":44,"value":3484}," to ",{"type":38,"tag":53,"props":3486,"children":3488},{"className":3487},[],[3489],{"type":44,"value":3490},"build.external",{"type":44,"value":3492}," array",{"type":38,"tag":73,"props":3494,"children":3495},{},[3496,3501,3503],{"type":38,"tag":3452,"props":3497,"children":3498},{},[3499],{"type":44,"value":3500},"Debug with",{"type":44,"value":3502}," ",{"type":38,"tag":53,"props":3504,"children":3506},{"className":3505},[],[3507],{"type":44,"value":3508},"--log-level debug --dry-run",{"type":38,"tag":47,"props":3510,"children":3511},{},[3512],{"type":44,"value":3513},"Extensions only affect deployment, not local development.",{"type":38,"tag":47,"props":3515,"children":3516},{},[3517,3519,3525],{"type":44,"value":3518},"See ",{"type":38,"tag":53,"props":3520,"children":3522},{"className":3521},[],[3523],{"type":44,"value":3524},"references\u002Fconfig.md",{"type":44,"value":3526}," for complete documentation.",{"type":38,"tag":3528,"props":3529,"children":3530},"style",{},[3531],{"type":44,"value":3532},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"items":3534,"total":263},[3535,3552,3558,3575,3592,3604],{"slug":3536,"name":3536,"fn":3537,"description":3538,"org":3539,"tags":3540,"stars":21,"repoUrl":22,"updatedAt":3551},"trigger-agents","orchestrate AI agents with Trigger.dev","AI agent patterns with Trigger.dev - orchestration, parallelization, routing, evaluator-optimizer, and human-in-the-loop. Use when building LLM-powered tasks that need parallel workers, approval gates, tool calling, or multi-step agent workflows.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[3541,3544,3547,3548],{"name":3542,"slug":3543,"type":16},"Agents","agents",{"name":3545,"slug":3546,"type":16},"Multi-Agent","multi-agent",{"name":9,"slug":8,"type":16},{"name":3549,"slug":3550,"type":16},"Workflow Automation","workflow-automation","2026-04-06T18:54:46.023553",{"slug":4,"name":4,"fn":5,"description":6,"org":3553,"tags":3554,"stars":21,"repoUrl":22,"updatedAt":23},{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[3555,3556,3557],{"name":14,"slug":15,"type":16},{"name":18,"slug":19,"type":16},{"name":9,"slug":8,"type":16},{"slug":3559,"name":3559,"fn":3560,"description":3561,"org":3562,"tags":3563,"stars":21,"repoUrl":22,"updatedAt":3574},"trigger-cost-savings","optimize Trigger.dev task costs","Analyze Trigger.dev tasks, schedules, and runs for cost optimization opportunities. Use when asked to reduce spend, optimize costs, audit usage, right-size machines, or review task efficiency. Requires Trigger.dev MCP tools for run analysis.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[3564,3567,3570,3573],{"name":3565,"slug":3566,"type":16},"Analytics","analytics",{"name":3568,"slug":3569,"type":16},"Cost Optimization","cost-optimization",{"name":3571,"slug":3572,"type":16},"Operations","operations",{"name":9,"slug":8,"type":16},"2026-04-06T18:54:48.555552",{"slug":3576,"name":3576,"fn":3577,"description":3578,"org":3579,"tags":3580,"stars":21,"repoUrl":22,"updatedAt":3591},"trigger-realtime","monitor Trigger.dev tasks in real-time","Subscribe to Trigger.dev task runs in real-time from frontend and backend. Use when building progress indicators, live dashboards, streaming AI\u002FLLM responses, or React components that display task status.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[3581,3584,3587,3590],{"name":3582,"slug":3583,"type":16},"Frontend","frontend",{"name":3585,"slug":3586,"type":16},"Observability","observability",{"name":3588,"slug":3589,"type":16},"Real-time","real-time",{"name":9,"slug":8,"type":16},"2026-04-06T18:54:47.293822",{"slug":3593,"name":3593,"fn":3594,"description":3595,"org":3596,"tags":3597,"stars":21,"repoUrl":22,"updatedAt":3603},"trigger-setup","set up Trigger.dev in projects","Set up Trigger.dev in your project. Use when adding Trigger.dev for the first time, creating trigger.config.ts, or initializing the trigger directory.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[3598,3599,3602],{"name":14,"slug":15,"type":16},{"name":3600,"slug":3601,"type":16},"Local Development","local-development",{"name":9,"slug":8,"type":16},"2026-04-06T18:54:42.280816",{"slug":3605,"name":3605,"fn":3606,"description":3607,"org":3608,"tags":3609,"stars":21,"repoUrl":22,"updatedAt":3616},"trigger-tasks","build durable background tasks with Trigger.dev","Build AI agents, workflows and durable background tasks with Trigger.dev. Use when creating tasks, triggering jobs, handling retries, scheduling cron jobs, or implementing queues and concurrency control.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[3610,3611,3614,3615],{"name":3542,"slug":3543,"type":16},{"name":3612,"slug":3613,"type":16},"Backend","backend",{"name":9,"slug":8,"type":16},{"name":3549,"slug":3550,"type":16},"2026-04-06T18:54:43.514369",{"items":3618,"total":3737},[3619,3634,3645,3655,3668,3675,3681,3688,3695,3701,3708,3722],{"slug":3620,"name":3620,"fn":3621,"description":3622,"org":3623,"tags":3624,"stars":3631,"repoUrl":3632,"updatedAt":3633},"trigger-authoring-chat-agent","author durable AI chat agents with Trigger.dev","Author and run a durable AI chat agent with chat.agent from @trigger.dev\u002Fsdk\u002Fai: the per-turn run loop, why you MUST spread ...chat.toStreamTextOptions() first, returning a StreamTextResult vs calling chat.pipe(), the two server actions (chat.createStartSessionAction + auth.createPublicToken), and wiring useChat to useTriggerChatTransport. Load this when building, modifying, or debugging a chat backend (the agent task or its lifecycle hooks) or its React transport, when declaring typed tools or custom data parts, or when migrating a plain AI SDK streamText route to chat.agent.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[3625,3626,3629,3630],{"name":3542,"slug":3543,"type":16},{"name":3627,"slug":3628,"type":16},"SDK","sdk",{"name":9,"slug":8,"type":16},{"name":3549,"slug":3550,"type":16},14401,"https:\u002F\u002Fgithub.com\u002Ftriggerdotdev\u002Ftrigger.dev","2026-07-02T17:12:52.307135",{"slug":3635,"name":3635,"fn":3636,"description":3637,"org":3638,"tags":3639,"stars":3631,"repoUrl":3632,"updatedAt":3644},"trigger-authoring-tasks","author backend Trigger.dev tasks","Covers writing backend Trigger.dev tasks with @trigger.dev\u002Fsdk: defining task() and schemaTask(), the run function and its ctx, retries, waits, queues and concurrency, idempotency keys, run metadata, logging, triggering other tasks (and the Result shape), scheduled\u002Fcron tasks, and the essentials of trigger.config.ts. Load this whenever you are authoring or editing code inside a \u002Ftrigger directory, defining a task, or writing backend code that triggers tasks. Realtime\u002FReact hooks and AI chat are covered by separate skills.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[3640,3641,3642,3643],{"name":3612,"slug":3613,"type":16},{"name":3627,"slug":3628,"type":16},{"name":9,"slug":8,"type":16},{"name":3549,"slug":3550,"type":16},"2026-07-02T17:12:48.396964",{"slug":3646,"name":3646,"fn":3647,"description":3648,"org":3649,"tags":3650,"stars":3631,"repoUrl":3632,"updatedAt":3654},"trigger-chat-agent-advanced","manage Trigger.dev chat sessions and transports","Advanced and operational chat.agent capabilities for Trigger.dev, loaded on demand. Load this when working on the raw Sessions primitive (sessions \u002F SessionHandle), a custom chat transport or the realtime wire protocol, durable sub-agents (AgentChat, chat.stream.writer), human-in-the-loop, steering, actions, background injection (chat.defer \u002F chat.inject), fast starts (preload, Head Start via @trigger.dev\u002Fsdk\u002Fchat-server), context resilience (compaction, recovery boot, OOM, large payloads), chat.local run-scoped state, offline testing with mockChatAgent, or prerelease\u002Fversion upgrades. For the everyday chat.agent({...}) definition and the useTriggerChatTransport happy path, use the trigger-authoring-chat-agent skill instead.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[3651,3652,3653],{"name":3542,"slug":3543,"type":16},{"name":9,"slug":8,"type":16},{"name":3549,"slug":3550,"type":16},"2026-07-02T17:12:51.03018",{"slug":3656,"name":3656,"fn":3657,"description":3658,"org":3659,"tags":3660,"stars":3631,"repoUrl":3632,"updatedAt":3667},"trigger-realtime-and-frontend","subscribe to Trigger.dev runs in realtime","Trigger.dev client\u002Ffrontend surface: subscribe to runs in realtime (runs.subscribeToRun and the @trigger.dev\u002Freact-hooks hook useRealtimeRun), consume metadata and AI\u002Ftext streams in React (useRealtimeStream), trigger tasks from the browser (useTaskTrigger, useRealtimeTaskTrigger), and mint scoped frontend credentials with auth.createPublicToken \u002F auth.createTriggerPublicToken. Load when wiring a frontend (React\u002FNext.js\u002FRemix) or backend-for-frontend to show live run progress, status badges, token streams, trigger buttons, or wait-token approval UIs. NOT for writing the backend task itself (streams.define \u002F metadata.set is trigger-authoring-tasks territory); this is the consumer side.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[3661,3662,3665,3666],{"name":3582,"slug":3583,"type":16},{"name":3663,"slug":3664,"type":16},"React","react",{"name":3588,"slug":3589,"type":16},{"name":9,"slug":8,"type":16},"2026-07-02T17:12:49.717706",{"slug":3536,"name":3536,"fn":3537,"description":3538,"org":3669,"tags":3670,"stars":21,"repoUrl":22,"updatedAt":3551},{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[3671,3672,3673,3674],{"name":3542,"slug":3543,"type":16},{"name":3545,"slug":3546,"type":16},{"name":9,"slug":8,"type":16},{"name":3549,"slug":3550,"type":16},{"slug":4,"name":4,"fn":5,"description":6,"org":3676,"tags":3677,"stars":21,"repoUrl":22,"updatedAt":23},{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[3678,3679,3680],{"name":14,"slug":15,"type":16},{"name":18,"slug":19,"type":16},{"name":9,"slug":8,"type":16},{"slug":3559,"name":3559,"fn":3560,"description":3561,"org":3682,"tags":3683,"stars":21,"repoUrl":22,"updatedAt":3574},{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[3684,3685,3686,3687],{"name":3565,"slug":3566,"type":16},{"name":3568,"slug":3569,"type":16},{"name":3571,"slug":3572,"type":16},{"name":9,"slug":8,"type":16},{"slug":3576,"name":3576,"fn":3577,"description":3578,"org":3689,"tags":3690,"stars":21,"repoUrl":22,"updatedAt":3591},{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[3691,3692,3693,3694],{"name":3582,"slug":3583,"type":16},{"name":3585,"slug":3586,"type":16},{"name":3588,"slug":3589,"type":16},{"name":9,"slug":8,"type":16},{"slug":3593,"name":3593,"fn":3594,"description":3595,"org":3696,"tags":3697,"stars":21,"repoUrl":22,"updatedAt":3603},{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[3698,3699,3700],{"name":14,"slug":15,"type":16},{"name":3600,"slug":3601,"type":16},{"name":9,"slug":8,"type":16},{"slug":3605,"name":3605,"fn":3606,"description":3607,"org":3702,"tags":3703,"stars":21,"repoUrl":22,"updatedAt":3616},{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[3704,3705,3706,3707],{"name":3542,"slug":3543,"type":16},{"name":3612,"slug":3613,"type":16},{"name":9,"slug":8,"type":16},{"name":3549,"slug":3550,"type":16},{"slug":3709,"name":3709,"fn":3710,"description":3711,"org":3712,"tags":3713,"stars":192,"repoUrl":3720,"updatedAt":3721},"staff-engineering-skills-backpressure","implement backpressure in streaming pipelines","Prevent unbounded resource growth when producers outpace consumers. Use when writing producer-consumer code, queue processing, batch operations, fan-out patterns, streaming pipelines, or any code where work is generated faster than it can be processed. Activates on patterns like Promise.all on dynamic-sized arrays, unbounded in-memory queues, producer loops without depth checks, fire-and-forget async calls in loops, or any buffer between a producer and consumer without a size limit.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[3714,3717],{"name":3715,"slug":3716,"type":16},"Architecture","architecture",{"name":3718,"slug":3719,"type":16},"Performance","performance","https:\u002F\u002Fgithub.com\u002Ftriggerdotdev\u002Fstaff-engineering-skills","2026-06-17T08:40:42.723559",{"slug":3723,"name":3723,"fn":3724,"description":3725,"org":3726,"tags":3727,"stars":192,"repoUrl":3720,"updatedAt":3736},"staff-engineering-skills-cache-invalidation","implement cache invalidation strategies","Prevent stale data bugs caused by missing or incomplete cache invalidation. Use when adding caching layers (Redis, in-memory Map, CDN, HTTP cache headers), optimizing read performance, or reviewing code that caches query results, API responses, or computed values. Activates on patterns like cache.set without cache.delete on write paths, unbounded Map\u002Fobject caches, TTL-only invalidation on security-sensitive data, Cache-Control headers on mutable content, or any caching where the write path doesn't invalidate the read cache.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[3728,3729,3732,3735],{"name":3715,"slug":3716,"type":16},{"name":3730,"slug":3731,"type":16},"Caching","caching",{"name":3733,"slug":3734,"type":16},"Engineering","engineering",{"name":3718,"slug":3719,"type":16},"2026-06-17T08:40:45.194583",26]