[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6JNR30P64BH5WC10MP1419V":3,"skill-same:01M6JNR30P64BH5WC10MP1419V":212},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":23,"publishedAt":41,"linkOnly":42,"markdownContent":43,"markdownBody":44,"frontMatter":45,"refName":48,"commitSha":49,"skillDirectory":50,"forksCount":51,"repositoryHtmlUrl":52,"repositoryHomepageUrl":53,"ownerHtmlUrl":54,"ownerBlogUrl":55,"ownerDescription":6,"updatedAt":56,"install":57,"resources":70},"01M6JNR30P64BH5WC10MP1419V","dbos_golang",null,"Guide for building reliable, fault-tolerant Go applications with DBOS durable workflows. Use when adding DBOS to existing Go code, creating workflows and steps, or using queues for concurrency control.","LongLeo287\u002FOmniClaw","LongLeo287","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F141803367?v=4","01M6JK75C62VCNZKR5BRZ386YV","LongLeo","01M6JK75GQ78TSP1ZPXNKK3MCH",9,"MIT","https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Fdbos_golang\u002FSKILL.md",[18],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40],"dbos golang","golang","concurrency","Existing","for","with","control","use","guide","applications","docs","https","dev","code","workflows","go","safe","2026-11-10 10:12:30",false,"---\nname: dbos_golang\n\ndescription: \"Guide for building reliable, fault-tolerant Go applications with DBOS durable workflows. Use when adding DBOS to existing Go code, creating workflows and steps, or using queues for concurrency control.\"\nrisk: safe\nsource: \"https:\u002F\u002Fdocs.dbos.dev\u002F\"\ndate_added: \"2026-02-27\"\n---\n\n# DBOS Go Best Practices\n\nGuide for building reliable, fault-tolerant Go applications with DBOS durable workflows.\n\n## When to Use\nReference these guidelines when:\n- Adding DBOS to existing Go 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 the DBOS Client 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\nInstall the DBOS Go module:\n\n```bash\ngo get github.com\u002Fdbos-inc\u002Fdbos-transact-golang\u002Fdbos@latest\n```\n\n### DBOS Configuration and Launch\n\nA DBOS application MUST create a context, register workflows, and launch before running any workflows:\n\n```go\npackage main\n\nimport (\n\t\"context\"\n\t\"log\"\n\t\"os\"\n\t\"time\"\n\n\t\"github.com\u002Fdbos-inc\u002Fdbos-transact-golang\u002Fdbos\"\n)\n\nfunc main() {\n\tctx, err := dbos.NewDBOSContext(context.Background(), dbos.Config{\n\t\tAppName:     \"my-app\",\n\t\tDatabaseURL: os.Getenv(\"DBOS_SYSTEM_DATABASE_URL\"),\n\t})\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\tdefer dbos.Shutdown(ctx, 30*time.Second)\n\n\tdbos.RegisterWorkflow(ctx, myWorkflow)\n\n\tif err := dbos.Launch(ctx); err != nil {\n\t\tlog.Fatal(err)\n\t}\n}\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.RunAsStep`:\n\n```go\nfunc fetchData(ctx context.Context) (string, error) {\n\tresp, err := http.Get(\"https:\u002F\u002Fapi.example.com\u002Fdata\")\n\tif err != nil {\n\t\treturn \"\", err\n\t}\n\tdefer resp.Body.Close()\n\tbody, _ := io.ReadAll(resp.Body)\n\treturn string(body), nil\n}\n\nfunc myWorkflow(ctx dbos.DBOSContext, input string) (string, error) {\n\tresult, err := dbos.RunAsStep(ctx, fetchData, dbos.WithStepName(\"fetchData\"))\n\tif err != nil {\n\t\treturn \"\", err\n\t}\n\treturn result, nil\n}\n```\n\n### Key Constraints\n\n- Do NOT start or enqueue workflows from within steps\n- Do NOT use uncontrolled goroutines to start workflows - use `dbos.RunWorkflow` with queues or `dbos.Go`\u002F`dbos.Select` for concurrent steps\n- Workflows MUST be deterministic - non-deterministic operations go in steps\n- Do NOT modify global variables from workflows or steps\n- All workflows and queues MUST be registered before calling `Launch()`\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-golang\n","# DBOS Go Best Practices\n\nGuide for building reliable, fault-tolerant Go applications with DBOS durable workflows.\n\n## When to Use\nReference these guidelines when:\n- Adding DBOS to existing Go 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 the DBOS Client 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\nInstall the DBOS Go module:\n\n```bash\ngo get github.com\u002Fdbos-inc\u002Fdbos-transact-golang\u002Fdbos@latest\n```\n\n### DBOS Configuration and Launch\n\nA DBOS application MUST create a context, register workflows, and launch before running any workflows:\n\n```go\npackage main\n\nimport (\n\t\"context\"\n\t\"log\"\n\t\"os\"\n\t\"time\"\n\n\t\"github.com\u002Fdbos-inc\u002Fdbos-transact-golang\u002Fdbos\"\n)\n\nfunc main() {\n\tctx, err := dbos.NewDBOSContext(context.Background(), dbos.Config{\n\t\tAppName:     \"my-app\",\n\t\tDatabaseURL: os.Getenv(\"DBOS_SYSTEM_DATABASE_URL\"),\n\t})\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\tdefer dbos.Shutdown(ctx, 30*time.Second)\n\n\tdbos.RegisterWorkflow(ctx, myWorkflow)\n\n\tif err := dbos.Launch(ctx); err != nil {\n\t\tlog.Fatal(err)\n\t}\n}\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.RunAsStep`:\n\n```go\nfunc fetchData(ctx context.Context) (string, error) {\n\tresp, err := http.Get(\"https:\u002F\u002Fapi.example.com\u002Fdata\")\n\tif err != nil {\n\t\treturn \"\", err\n\t}\n\tdefer resp.Body.Close()\n\tbody, _ := io.ReadAll(resp.Body)\n\treturn string(body), nil\n}\n\nfunc myWorkflow(ctx dbos.DBOSContext, input string) (string, error) {\n\tresult, err := dbos.RunAsStep(ctx, fetchData, dbos.WithStepName(\"fetchData\"))\n\tif err != nil {\n\t\treturn \"\", err\n\t}\n\treturn result, nil\n}\n```\n\n### Key Constraints\n\n- Do NOT start or enqueue workflows from within steps\n- Do NOT use uncontrolled goroutines to start workflows - use `dbos.RunWorkflow` with queues or `dbos.Go`\u002F`dbos.Select` for concurrent steps\n- Workflows MUST be deterministic - non-deterministic operations go in steps\n- Do NOT modify global variables from workflows or steps\n- All workflows and queues MUST be registered before calling `Launch()`\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-golang\n",{"name":5,"risk":40,"source":46,"date_added":47,"description":7},"https:\u002F\u002Fdocs.dbos.dev\u002F","2026-02-27","main","c173cdffe08e788a99b91928a831b476b8434838","ecosystem\u002Fskills\u002Fdbos_golang",0,"https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw","https:\u002F\u002Fportfolio-longleo.vercel.app\u002Flabs\u002Fomniclaw.html","https:\u002F\u002Fgithub.com\u002FLongLeo287","https:\u002F\u002Fwww.facebook.com\u002FResourceRookie2023","2026-09-30 00:58:05",{"source":8,"skillName":5,"commands":58,"prompt":68,"zipAvailable":69},[59,62,65],{"tool":60,"command":61},"npx","npx skills add LongLeo287\u002FOmniClaw --skill dbos_golang",{"tool":63,"command":64},"bunx","bunx skills add LongLeo287\u002FOmniClaw --skill dbos_golang",{"tool":66,"command":67},"pnpm","pnpm dlx skills add LongLeo287\u002FOmniClaw --skill dbos_golang","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Fdbos_golang\u002FSKILL.md",true,[71,77,81,84,88,92,96,100,104,108,112,116,120,124,128,132,136,140,144,148,152,156,160,164,168,172,176,180,184,188,192,196,200,204,208],{"path":72,"resourceType":73,"resourceTypeDesc":74,"sizeBytes":75,"sourceHtmlUrl":76},"_DIR_IDENTITY.md","REFERENCE","参考文档",144,"https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Fdbos_golang\u002F_DIR_IDENTITY.md",{"path":78,"resourceType":73,"resourceTypeDesc":74,"sizeBytes":79,"sourceHtmlUrl":80},"agents_1.md",2641,"https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Fdbos_golang\u002Fagents_1.md",{"path":82,"resourceType":73,"resourceTypeDesc":74,"sizeBytes":79,"sourceHtmlUrl":83},"claude_1.md","https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Fdbos_golang\u002Fclaude_1.md",{"path":85,"resourceType":73,"resourceTypeDesc":74,"sizeBytes":86,"sourceHtmlUrl":87},"README.md",457,"https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Fdbos_golang\u002FREADME.md",{"path":89,"resourceType":73,"resourceTypeDesc":74,"sizeBytes":90,"sourceHtmlUrl":91},"references\u002Fadvanced_patching.md",2894,"https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Fdbos_golang\u002Freferences\u002Fadvanced_patching.md",{"path":93,"resourceType":73,"resourceTypeDesc":74,"sizeBytes":94,"sourceHtmlUrl":95},"references\u002Fadvanced_versioning.md",1880,"https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Fdbos_golang\u002Freferences\u002Fadvanced_versioning.md",{"path":97,"resourceType":73,"resourceTypeDesc":74,"sizeBytes":98,"sourceHtmlUrl":99},"references\u002Fclient_enqueue.md",2077,"https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Fdbos_golang\u002Freferences\u002Fclient_enqueue.md",{"path":101,"resourceType":73,"resourceTypeDesc":74,"sizeBytes":102,"sourceHtmlUrl":103},"references\u002Fclient_setup.md",1965,"https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Fdbos_golang\u002Freferences\u002Fclient_setup.md",{"path":105,"resourceType":73,"resourceTypeDesc":74,"sizeBytes":106,"sourceHtmlUrl":107},"references\u002Fcomm_events.md",2238,"https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Fdbos_golang\u002Freferences\u002Fcomm_events.md",{"path":109,"resourceType":73,"resourceTypeDesc":74,"sizeBytes":110,"sourceHtmlUrl":111},"references\u002Fcomm_messages.md",1986,"https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Fdbos_golang\u002Freferences\u002Fcomm_messages.md",{"path":113,"resourceType":73,"resourceTypeDesc":74,"sizeBytes":114,"sourceHtmlUrl":115},"references\u002Fcomm_streaming.md",2309,"https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Fdbos_golang\u002Freferences\u002Fcomm_streaming.md",{"path":117,"resourceType":73,"resourceTypeDesc":74,"sizeBytes":118,"sourceHtmlUrl":119},"references\u002Flifecycle_config.md",2064,"https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Fdbos_golang\u002Freferences\u002Flifecycle_config.md",{"path":121,"resourceType":73,"resourceTypeDesc":74,"sizeBytes":122,"sourceHtmlUrl":123},"references\u002Fpattern_debouncing.md",1761,"https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Fdbos_golang\u002Freferences\u002Fpattern_debouncing.md",{"path":125,"resourceType":73,"resourceTypeDesc":74,"sizeBytes":126,"sourceHtmlUrl":127},"references\u002Fpattern_idempotency.md",1967,"https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Fdbos_golang\u002Freferences\u002Fpattern_idempotency.md",{"path":129,"resourceType":73,"resourceTypeDesc":74,"sizeBytes":130,"sourceHtmlUrl":131},"references\u002Fpattern_scheduled.md",2047,"https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Fdbos_golang\u002Freferences\u002Fpattern_scheduled.md",{"path":133,"resourceType":73,"resourceTypeDesc":74,"sizeBytes":134,"sourceHtmlUrl":135},"references\u002Fpattern_sleep.md",1467,"https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Fdbos_golang\u002Freferences\u002Fpattern_sleep.md",{"path":137,"resourceType":73,"resourceTypeDesc":74,"sizeBytes":138,"sourceHtmlUrl":139},"references\u002Fqueue_basics.md",1404,"https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Fdbos_golang\u002Freferences\u002Fqueue_basics.md",{"path":141,"resourceType":73,"resourceTypeDesc":74,"sizeBytes":142,"sourceHtmlUrl":143},"references\u002Fqueue_concurrency.md",1460,"https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Fdbos_golang\u002Freferences\u002Fqueue_concurrency.md",{"path":145,"resourceType":73,"resourceTypeDesc":74,"sizeBytes":146,"sourceHtmlUrl":147},"references\u002Fqueue_deduplication.md",1601,"https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Fdbos_golang\u002Freferences\u002Fqueue_deduplication.md",{"path":149,"resourceType":73,"resourceTypeDesc":74,"sizeBytes":150,"sourceHtmlUrl":151},"references\u002Fqueue_listening.md",1332,"https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Fdbos_golang\u002Freferences\u002Fqueue_listening.md",{"path":153,"resourceType":73,"resourceTypeDesc":74,"sizeBytes":154,"sourceHtmlUrl":155},"references\u002Fqueue_partitioning.md",1314,"https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Fdbos_golang\u002Freferences\u002Fqueue_partitioning.md",{"path":157,"resourceType":73,"resourceTypeDesc":74,"sizeBytes":158,"sourceHtmlUrl":159},"references\u002Fqueue_priority.md",1221,"https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Fdbos_golang\u002Freferences\u002Fqueue_priority.md",{"path":161,"resourceType":73,"resourceTypeDesc":74,"sizeBytes":162,"sourceHtmlUrl":163},"references\u002Fqueue_rate_limiting.md",1241,"https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Fdbos_golang\u002Freferences\u002Fqueue_rate_limiting.md",{"path":165,"resourceType":73,"resourceTypeDesc":74,"sizeBytes":166,"sourceHtmlUrl":167},"references\u002Fsections.md",1444,"https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Fdbos_golang\u002Freferences\u002Fsections.md",{"path":169,"resourceType":73,"resourceTypeDesc":74,"sizeBytes":170,"sourceHtmlUrl":171},"references\u002Fstep_basics.md",2353,"https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Fdbos_golang\u002Freferences\u002Fstep_basics.md",{"path":173,"resourceType":73,"resourceTypeDesc":74,"sizeBytes":174,"sourceHtmlUrl":175},"references\u002Fstep_concurrency.md",2419,"https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Fdbos_golang\u002Freferences\u002Fstep_concurrency.md",{"path":177,"resourceType":73,"resourceTypeDesc":74,"sizeBytes":178,"sourceHtmlUrl":179},"references\u002Fstep_retries.md",2069,"https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Fdbos_golang\u002Freferences\u002Fstep_retries.md",{"path":181,"resourceType":73,"resourceTypeDesc":74,"sizeBytes":182,"sourceHtmlUrl":183},"references\u002Ftest_setup.md",2311,"https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Fdbos_golang\u002Freferences\u002Ftest_setup.md",{"path":185,"resourceType":73,"resourceTypeDesc":74,"sizeBytes":186,"sourceHtmlUrl":187},"references\u002Fworkflow_background.md",1598,"https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Fdbos_golang\u002Freferences\u002Fworkflow_background.md",{"path":189,"resourceType":73,"resourceTypeDesc":74,"sizeBytes":190,"sourceHtmlUrl":191},"references\u002Fworkflow_constraints.md",2081,"https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Fdbos_golang\u002Freferences\u002Fworkflow_constraints.md",{"path":193,"resourceType":73,"resourceTypeDesc":74,"sizeBytes":194,"sourceHtmlUrl":195},"references\u002Fworkflow_control.md",1692,"https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Fdbos_golang\u002Freferences\u002Fworkflow_control.md",{"path":197,"resourceType":73,"resourceTypeDesc":74,"sizeBytes":198,"sourceHtmlUrl":199},"references\u002Fworkflow_determinism.md",1499,"https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Fdbos_golang\u002Freferences\u002Fworkflow_determinism.md",{"path":201,"resourceType":73,"resourceTypeDesc":74,"sizeBytes":202,"sourceHtmlUrl":203},"references\u002Fworkflow_introspection.md",1865,"https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Fdbos_golang\u002Freferences\u002Fworkflow_introspection.md",{"path":205,"resourceType":73,"resourceTypeDesc":74,"sizeBytes":206,"sourceHtmlUrl":207},"references\u002Fworkflow_timeout.md",1324,"https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Fdbos_golang\u002Freferences\u002Fworkflow_timeout.md",{"path":209,"resourceType":73,"resourceTypeDesc":74,"sizeBytes":210,"sourceHtmlUrl":211},"schema.json",435,"https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Fdbos_golang\u002Fschema.json",[213,252,271,298,312,339],{"skillNo":214,"name":215,"nameZh":6,"description":216,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":217,"categories":218,"keywords":231,"publishedAt":41},"01M6JR0KQP4MHT32TN40D9CBFX","UI-UX Pro Max","Advanced UI\u002FUX analysis and generation skills with data-driven patterns. Python scripts (core.py, search.py) for systematic UI pattern extraction, design system generation, and component search from curated data sources.","https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fui_components\u002Fui_ux_pro_max\u002FSKILL.md",[219,222,223,228],{"categoryNo":220,"categoryName":221,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000015","视觉设计",{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":224,"categoryName":225,"taxonomyType":226,"taxonomyTypeDesc":227},"01JBSEEDCAT000000000000032","设计师","PROFESSION","适用职业",{"categoryNo":229,"categoryName":230,"taxonomyType":226,"taxonomyTypeDesc":227},"01JBSEEDCAT000000000000033","数据分析师",[232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251],"ux","ui","ui ux pro max","max","pro","ui ux","design","component","search","analysis","team","rd","ui-ux","active","systematic","scripts","pattern extraction","sources","advanced","data-driven",{"skillNo":253,"name":254,"nameZh":6,"description":255,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":256,"categories":257,"keywords":259,"publishedAt":41},"01M6JR0EF5AEQHP2FSTB57H05P","shadcn-ui","Expert guidance for integrating and building applications with shadcn\u002Fui components, including component discovery, installation, customization, and best practices.","https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fui_components\u002Fshadcn_ui\u002FSKILL.md",[258],{"categoryNo":224,"categoryName":225,"taxonomyType":226,"taxonomyTypeDesc":227},[260,233,261,262,239,263,264,33,265,242,266,267,268,245,269,270,29,28],"shadcn","shadcn ui","components","core","best practices","discovery","customization","guidance","expert","installation","ui components",{"skillNo":272,"name":273,"nameZh":6,"description":274,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":275,"categories":276,"keywords":280,"publishedAt":41},"01M6JR08F51BEN17RHFYX65WVE","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 reactive state patterns with Zustand.","https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Fzustand_store_ts\u002FSKILL.md",[277],{"categoryNo":278,"categoryName":279,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000009","前端开发",[281,282,283,284,285,286,287,288,289,290,291,292,31,293,294,295,29,296,297],"zustand store ts","zustand","store","typescript","microsoft","react","create","state management","state","react state management","management","global","patterns","separation","middleware","action","implementing",{"skillNo":299,"name":282,"nameZh":6,"description":300,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":301,"categories":302,"keywords":303,"publishedAt":41},"01M6JR00TDMVAFFCZXZ04AN7Q7","Zustand state management guide. Use when working with store code (src\u002Fstore\u002F**), implementing actions, managing state, or creating slices. Triggers on Zustand store development, state management questions, or action implementation.","https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Fzustand\u002FSKILL.md",[],[282,304,288,37,289,305,306,291,32,31,307,308,309,283,29,310,311,296,297],"development","actions","src","implementation","zustand state","triggers","questions","zustand state management",{"skillNo":313,"name":314,"nameZh":6,"description":315,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":316,"categories":317,"keywords":322,"publishedAt":41},"01M6JQZSWV4KWJP112G6XHEP44","youtube_summarizer","Automatically fetch YouTube video transcripts, generate structured summaries, and send full transcripts to messaging platforms. Detects YouTube URLs and provides metadata, key insights, and downloadable transcripts.","https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Fyoutube_summarizer\u002FSKILL.md",[318,321],{"categoryNo":319,"categoryName":320,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000016","图像与多媒体",{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338],"youtube","youtube summarizer","summarizer","generate","metadata","messaging","Video","fetch","telegram","transcription","summarization","structured","full","insights","transcripts","summaries",{"skillNo":340,"name":341,"nameZh":6,"description":342,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":343,"categories":344,"keywords":345,"publishedAt":41},"01M6JQZN3QJB6B77JGKJD62DQT","youtube_clipper","YouTube 视频智能剪辑工具。下载视频和字幕，AI 分析生成精细章节（几分钟级别）， 用户选择片段后自动剪辑、翻译字幕为中英双语、烧录字幕到视频，并生成总结文案。 使用场景：当用户需要剪辑 YouTube 视频、生成短视频片段、制作双语字幕版本时。 关键词：视频剪辑、YouTube、字幕翻译、双语字幕、视频下载、clip video","https:\u002F\u002Fgithub.com\u002FLongLeo287\u002FOmniClaw\u002Fblob\u002Fmain\u002Fecosystem\u002Fskills\u002Fyoutube_clipper\u002FSKILL.md",[],[323,346,347,329,348,349,350,351,352,353,354,355,356,357,358,359,360],"clipper","youtube clipper","Bash","下载","视频","生成","关键词","翻译","read","write","clip","总结","工具","文案","sonnet"]