[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M71S3299AV5MA30E1EZ2JB15":3,"skill-same:01M71S3299AV5MA30E1EZ2JB15":76},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":15,"categories":16,"keywords":17,"publishedAt":38,"linkOnly":39,"markdownContent":40,"markdownBody":41,"frontMatter":42,"refName":50,"commitSha":51,"skillDirectory":52,"forksCount":13,"repositoryHtmlUrl":53,"repositoryHomepageUrl":6,"ownerHtmlUrl":54,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":55,"install":56,"resources":69},"01M71S3299AV5MA30E1EZ2JB15","dbos-typescript",null,"DBOS TypeScript SDK for building reliable, fault-tolerant applications with durable workflows. Use this skill when writing TypeScript code with DBOS, creating workflows and steps, using queues, usi...","javiertarazon\u002Fide-agente-free-jt7-","javiertarazon","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F153141207?v=4","01M71R52TB3S9HXKH6WSNT8A7V","01M71R52VG5KS2DKDDH4GDQ30A",0,"MIT","https:\u002F\u002Fgithub.com\u002Fjaviertarazon\u002Fide-agente-free-jt7-\u002Fblob\u002Frelease\u002Fv4.2.11-panel-pro\u002F.github\u002Fskills\u002Fdbos-typescript\u002FSKILL.md",[],[18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37],"dbos typescript","typescript","queues","safe","https","2026","sdk","communication","with","code","best practices","when","workflows","use","writing","dev","execution","applications","writing typescript","for","2026-11-10 13:02:02",false,"---\nname: dbos-typescript\ndescription: \"DBOS TypeScript SDK for building reliable, fault-tolerant applications with durable workflows. Use this skill when writing TypeScript code with DBOS, creating workflows and steps, using queues, usi...\"\nrisk: safe\nsource: https:\u002F\u002Fdocs.dbos.dev\u002F\nlicense: MIT\nmetadata:\n  author: dbos\n  version: \"1.0.0\"\n  organization: DBOS\n  date: January 2026\n  abstract: Comprehensive guide for building fault-tolerant TypeScript applications with DBOS. Covers workflows, steps, queues, communication patterns, and best practices for durable execution.\n---\n\n# DBOS TypeScript Best Practices\n\nGuide for building reliable, fault-tolerant TypeScript applications with DBOS durable workflows.\n\n## When to Use\n\nReference these guidelines when:\n- Adding DBOS to existing TypeScript code\n- Creating workflows and steps\n- Using queues for concurrency control\n- Implementing workflow communication (events, messages, streams)\n- Configuring and launching DBOS applications\n- Using DBOSClient from external applications\n- Testing DBOS applications\n\n## Rule Categories by Priority\n\n| Priority | Category | Impact | Prefix |\n|----------|----------|--------|--------|\n| 1 | Lifecycle | CRITICAL | `lifecycle-` |\n| 2 | Workflow | CRITICAL | `workflow-` |\n| 3 | Step | HIGH | `step-` |\n| 4 | Queue | HIGH | `queue-` |\n| 5 | Communication | MEDIUM | `comm-` |\n| 6 | Pattern | MEDIUM | `pattern-` |\n| 7 | Testing | LOW-MEDIUM | `test-` |\n| 8 | Client | MEDIUM | `client-` |\n| 9 | Advanced | LOW | `advanced-` |\n\n## Critical Rules\n\n### Installation\n\nAlways install the latest version of DBOS:\n\n```bash\nnpm install @dbos-inc\u002Fdbos-sdk@latest\n```\n\n### DBOS Configuration and Launch\n\nA DBOS application MUST configure and launch DBOS before running any workflows:\n\n```typescript\nimport { DBOS } from \"@dbos-inc\u002Fdbos-sdk\";\n\nasync function main() {\n  DBOS.setConfig({\n    name: \"my-app\",\n    systemDatabaseUrl: process.env.DBOS_SYSTEM_DATABASE_URL,\n  });\n  await DBOS.launch();\n  await myWorkflow();\n}\n\nmain().catch(console.log);\n```\n\n### Workflow and Step Structure\n\nWorkflows are comprised of steps. Any function performing complex operations or accessing external services must be run as a step using `DBOS.runStep`:\n\n```typescript\nimport { DBOS } from \"@dbos-inc\u002Fdbos-sdk\";\n\nasync function fetchData() {\n  return await fetch(\"https:\u002F\u002Fapi.example.com\").then(r => r.json());\n}\n\nasync function myWorkflowFn() {\n  const result = await DBOS.runStep(fetchData, { name: \"fetchData\" });\n  return result;\n}\nconst myWorkflow = DBOS.registerWorkflow(myWorkflowFn);\n```\n\n### Key Constraints\n\n- Do NOT call, start, or enqueue workflows from within steps\n- Do NOT use threads or uncontrolled concurrency to start workflows - use `DBOS.startWorkflow` or queues\n- Workflows MUST be deterministic - non-deterministic operations go in steps\n- Do NOT modify global variables from workflows or steps\n\n## How to Use\n\nRead individual rule files for detailed explanations and examples:\n\n```\nreferences\u002Flifecycle-config.md\nreferences\u002Fworkflow-determinism.md\nreferences\u002Fqueue-concurrency.md\n```\n\n## References\n\n- https:\u002F\u002Fdocs.dbos.dev\u002F\n- https:\u002F\u002Fgithub.com\u002Fdbos-inc\u002Fdbos-transact-ts\n","# DBOS TypeScript Best Practices\n\nGuide for building reliable, fault-tolerant TypeScript applications with DBOS durable workflows.\n\n## When to Use\n\nReference these guidelines when:\n- Adding DBOS to existing TypeScript code\n- Creating workflows and steps\n- Using queues for concurrency control\n- Implementing workflow communication (events, messages, streams)\n- Configuring and launching DBOS applications\n- Using DBOSClient from external applications\n- Testing DBOS applications\n\n## Rule Categories by Priority\n\n| Priority | Category | Impact | Prefix |\n|----------|----------|--------|--------|\n| 1 | Lifecycle | CRITICAL | `lifecycle-` |\n| 2 | Workflow | CRITICAL | `workflow-` |\n| 3 | Step | HIGH | `step-` |\n| 4 | Queue | HIGH | `queue-` |\n| 5 | Communication | MEDIUM | `comm-` |\n| 6 | Pattern | MEDIUM | `pattern-` |\n| 7 | Testing | LOW-MEDIUM | `test-` |\n| 8 | Client | MEDIUM | `client-` |\n| 9 | Advanced | LOW | `advanced-` |\n\n## Critical Rules\n\n### Installation\n\nAlways install the latest version of DBOS:\n\n```bash\nnpm install @dbos-inc\u002Fdbos-sdk@latest\n```\n\n### DBOS Configuration and Launch\n\nA DBOS application MUST configure and launch DBOS before running any workflows:\n\n```typescript\nimport { DBOS } from \"@dbos-inc\u002Fdbos-sdk\";\n\nasync function main() {\n  DBOS.setConfig({\n    name: \"my-app\",\n    systemDatabaseUrl: process.env.DBOS_SYSTEM_DATABASE_URL,\n  });\n  await DBOS.launch();\n  await myWorkflow();\n}\n\nmain().catch(console.log);\n```\n\n### Workflow and Step Structure\n\nWorkflows are comprised of steps. Any function performing complex operations or accessing external services must be run as a step using `DBOS.runStep`:\n\n```typescript\nimport { DBOS } from \"@dbos-inc\u002Fdbos-sdk\";\n\nasync function fetchData() {\n  return await fetch(\"https:\u002F\u002Fapi.example.com\").then(r => r.json());\n}\n\nasync function myWorkflowFn() {\n  const result = await DBOS.runStep(fetchData, { name: \"fetchData\" });\n  return result;\n}\nconst myWorkflow = DBOS.registerWorkflow(myWorkflowFn);\n```\n\n### Key Constraints\n\n- Do NOT call, start, or enqueue workflows from within steps\n- Do NOT use threads or uncontrolled concurrency to start workflows - use `DBOS.startWorkflow` or queues\n- Workflows MUST be deterministic - non-deterministic operations go in steps\n- Do NOT modify global variables from workflows or steps\n\n## How to Use\n\nRead individual rule files for detailed explanations and examples:\n\n```\nreferences\u002Flifecycle-config.md\nreferences\u002Fworkflow-determinism.md\nreferences\u002Fqueue-concurrency.md\n```\n\n## References\n\n- https:\u002F\u002Fdocs.dbos.dev\u002F\n- https:\u002F\u002Fgithub.com\u002Fdbos-inc\u002Fdbos-transact-ts\n",{"name":5,"risk":21,"source":43,"license":14,"metadata":44,"description":7},"https:\u002F\u002Fdocs.dbos.dev\u002F",{"date":45,"author":46,"version":47,"abstract":48,"organization":49},"January 2026","dbos","1.0.0","Comprehensive guide for building fault-tolerant TypeScript applications with DBOS. Covers workflows, steps, queues, communication patterns, and best practices for durable execution.","DBOS","release\u002Fv4.2.11-panel-pro","a92ea02bcf7e2b3dbaf46d49696c29a3cb490d4f",".github\u002Fskills\u002Fdbos-typescript","https:\u002F\u002Fgithub.com\u002Fjaviertarazon\u002Fide-agente-free-jt7-","https:\u002F\u002Fgithub.com\u002Fjaviertarazon","2026-07-12 07:10:45",{"source":8,"skillName":5,"commands":57,"prompt":67,"zipAvailable":68},[58,61,64],{"tool":59,"command":60},"npx","npx skills add javiertarazon\u002Fide-agente-free-jt7- --skill dbos-typescript",{"tool":62,"command":63},"bunx","bunx skills add javiertarazon\u002Fide-agente-free-jt7- --skill dbos-typescript",{"tool":65,"command":66},"pnpm","pnpm dlx skills add javiertarazon\u002Fide-agente-free-jt7- --skill dbos-typescript","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fjaviertarazon\u002Fide-agente-free-jt7-\u002Fblob\u002Frelease\u002Fv4.2.11-panel-pro\u002F.github\u002Fskills\u002Fdbos-typescript\u002FSKILL.md",true,[70],{"path":71,"resourceType":72,"resourceTypeDesc":73,"sizeBytes":74,"sourceHtmlUrl":75},"AGENTS.md","REFERENCE","参考文档",2728,"https:\u002F\u002Fgithub.com\u002Fjaviertarazon\u002Fide-agente-free-jt7-\u002Fblob\u002Frelease\u002Fv4.2.11-panel-pro\u002F.github\u002Fskills\u002Fdbos-typescript\u002FAGENTS.md",[77,105,131,151,166,186],{"skillNo":78,"name":79,"nameZh":6,"description":80,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":81,"categories":82,"keywords":88,"publishedAt":38},"01M71TQ7Q6Z10VWF3C2H5X1KW9","zustand-store-ts","Create Zustand stores with TypeScript, subscribeWithSelector middleware, and proper state\u002Faction separation. Use when building React state management, creating global stores, or implementing reacti...","https:\u002F\u002Fgithub.com\u002Fjaviertarazon\u002Fide-agente-free-jt7-\u002Fblob\u002Frelease\u002Fv4.2.11-panel-pro\u002F.github\u002Fskills\u002Fzustand-store-ts\u002FSKILL.md",[83],{"categoryNo":84,"categoryName":85,"taxonomyType":86,"taxonomyTypeDesc":87},"01JBSEEDCAT000000000000009","前端开发","SCENARIO","使用场景",[89,90,91,92,93,94,31,95,29,96,97,26,98,99,100,19,101,102,103,104],"zustand","store","zustand store ts","community","middleware","implementing","react state management","unknown","react","state","create","state management","action","management","separation","global",{"skillNo":106,"name":107,"nameZh":6,"description":108,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":109,"categories":110,"keywords":114,"publishedAt":38},"01M71TQ5EAR40G6W0MV5ZDVEZT","zoom-automation","Automate Zoom meeting creation, management, recordings, webinars, and participant tracking via Rube MCP (Composio). Always search tools first for current schemas.","https:\u002F\u002Fgithub.com\u002Fjaviertarazon\u002Fide-agente-free-jt7-\u002Fblob\u002Frelease\u002Fv4.2.11-panel-pro\u002F.github\u002Fskills\u002Fzoom-automation\u002FSKILL.md",[111],{"categoryNo":112,"categoryName":113,"taxonomyType":86,"taxonomyTypeDesc":87},"01JBSEEDCAT000000000000023","Skill与智能体开发",[115,116,117,92,118,37,119,120,121,96,122,123,124,125,126,127,128,129,102,130],"zoom automation","zoom","automation","creation","search","schemas","MCP","first","via","meeting","search tools","tracking","webinars","composio","recordings","Tools",{"skillNo":132,"name":133,"nameZh":6,"description":134,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":135,"categories":136,"keywords":138,"publishedAt":38},"01M71TQ29B1EYBCEAP1ZBGXQ1A","zoho-crm-automation","Automate Zoho CRM tasks via Rube MCP (Composio): create\u002Fupdate records, search contacts, manage leads, and convert leads. Always search tools first for current schemas.","https:\u002F\u002Fgithub.com\u002Fjaviertarazon\u002Fide-agente-free-jt7-\u002Fblob\u002Frelease\u002Fv4.2.11-panel-pro\u002F.github\u002Fskills\u002Fzoho-crm-automation\u002FSKILL.md",[137],{"categoryNo":112,"categoryName":113,"taxonomyType":86,"taxonomyTypeDesc":87},[139,140,117,141,142,143,92,144,145,37,146,119,120,147,121,96,148,149,150,99],"crm automation","zoho crm automation","crm","zoho crm","zoho","leads","manage leads","manage","records","convert","tasks","contacts",{"skillNo":152,"name":153,"nameZh":6,"description":154,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":155,"categories":156,"keywords":158,"publishedAt":38},"01M71TPZPMN60DH0XV58KVHY23","zendesk-automation","Automate Zendesk tasks via Rube MCP (Composio): tickets, users, organizations, replies. Always search tools first for current schemas.","https:\u002F\u002Fgithub.com\u002Fjaviertarazon\u002Fide-agente-free-jt7-\u002Fblob\u002Frelease\u002Fv4.2.11-panel-pro\u002F.github\u002Fskills\u002Fzendesk-automation\u002FSKILL.md",[157],{"categoryNo":112,"categoryName":113,"taxonomyType":86,"taxonomyTypeDesc":87},[159,117,160,92,37,119,120,121,161,96,149,162,163,122,123,164,125,128,130,165],"zendesk automation","zendesk","organizations","replies","users","tickets","automate",{"skillNo":167,"name":168,"nameZh":6,"description":169,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":170,"categories":171,"keywords":172,"publishedAt":38},"01M71TPXDWKHKG4N6TVEPXWD0N","zapier-make-patterns","No-code automation democratizes workflow building. Zapier and Make (formerly Integromat) let non-developers automate business processes without writing code. But no-code doesn't mean no-complexity ...","https:\u002F\u002Fgithub.com\u002Fjaviertarazon\u002Fide-agente-free-jt7-\u002Fblob\u002Frelease\u002Fv4.2.11-panel-pro\u002F.github\u002Fskills\u002Fzapier-make-patterns\u002FSKILL.md",[],[173,174,175,176,177,178,32,179,180,117,181,96,27,182,183,184,185,165],"zapier make patterns","zapier","patterns","make","No-Code","complexity","spawner","business","workflow","integromat","apache","processes","but",{"skillNo":187,"name":188,"nameZh":6,"description":189,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":190,"categories":191,"keywords":195,"publishedAt":38},"01M71TPT5T10WXNKW9G7ZXZ27W","youtube-summarizer","Extract transcripts from YouTube videos and generate comprehensive, detailed summaries using intelligent analysis frameworks","https:\u002F\u002Fgithub.com\u002Fjaviertarazon\u002Fide-agente-free-jt7-\u002Fblob\u002Frelease\u002Fv4.2.11-panel-pro\u002F.github\u002Fskills\u002Fyoutube-summarizer\u002FSKILL.md",[192],{"categoryNo":193,"categoryName":194,"taxonomyType":86,"taxonomyTypeDesc":87},"01JBSEEDCAT000000000000016","图像与多媒体",[196,197,198,199,92,200,201,202,203,204,205,206,27,207,208,209,210,211,212,23],"summarizer","youtube","youtube summarizer","Video","content-analysis","frameworks","copilot","2025","github-copilot","extract transcripts","analysis","codex","cli","summaries","github","generate","summarization"]