[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M71ACEK7S9T212142CFEFHCM":3,"skill-same:01M71ACEK7S9T212142CFEFHCM":73},{"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":26,"publishedAt":47,"linkOnly":48,"markdownContent":49,"markdownBody":50,"frontMatter":51,"refName":53,"commitSha":54,"skillDirectory":55,"forksCount":14,"repositoryHtmlUrl":56,"repositoryHomepageUrl":6,"ownerHtmlUrl":57,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":58,"install":59,"resources":72},"01M71ACEK7S9T212142CFEFHCM","workflow-orchestration-patterns",null,"Master workflow orchestration architecture with Temporal, covering fundamental design decisions, resilience patterns, and best practices for building reliable distributed systems.","sapsapshen\u002Fai-memory-router","sapsapshen","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F20347959?v=4","01M6XDQEF1DP50DKF37H81J3J5","shenmian","01M6XDQEJPE41Y3DT2763X8ZJN",0,"MIT","https:\u002F\u002Fgithub.com\u002Fsapsapshen\u002Fai-memory-router\u002Fblob\u002Fmain\u002Fskills-store\u002Fglobal\u002Fworkflow-orchestration-patterns\u002FSKILL.md",[18,23],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000015","视觉设计","SCENARIO","使用场景",{"categoryNo":24,"categoryName":25,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发",[27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],"workflow","workflow orchestration patterns","workflow orchestration","patterns","orchestration patterns","orchestration","with","distributed systems","distributed","best practices","decisions","for","master","2026","resilience","architecture","unknown","design","resilience patterns","community","2026-11-10 10:12:30",false,"---\nname: workflow-orchestration-patterns\ndescription: \"Master workflow orchestration architecture with Temporal, covering fundamental design decisions, resilience patterns, and best practices for building reliable distributed systems.\"\nrisk: unknown\nsource: community\ndate_added: \"2026-02-27\"\n---\n\n# Workflow Orchestration Patterns\n\nMaster workflow orchestration architecture with Temporal, covering fundamental design decisions, resilience patterns, and best practices for building reliable distributed systems.\n\n## Use this skill when\n\n- Working on workflow orchestration patterns tasks or workflows\n- Needing guidance, best practices, or checklists for workflow orchestration patterns\n\n## Do not use this skill when\n\n- The task is unrelated to workflow orchestration patterns\n- You need a different domain or tool outside this scope\n\n## Instructions\n\n- Clarify goals, constraints, and required inputs.\n- Apply relevant best practices and validate outcomes.\n- Provide actionable steps and verification.\n- If detailed examples are required, open `resources\u002Fimplementation-playbook.md`.\n\n## When to Use Workflow Orchestration\n\n### Ideal Use Cases (Source: docs.temporal.io)\n\n- **Multi-step processes** spanning machines\u002Fservices\u002Fdatabases\n- **Distributed transactions** requiring all-or-nothing semantics\n- **Long-running workflows** (hours to years) with automatic state persistence\n- **Failure recovery** that must resume from last successful step\n- **Business processes**: bookings, orders, campaigns, approvals\n- **Entity lifecycle management**: inventory tracking, account management, cart workflows\n- **Infrastructure automation**: CI\u002FCD pipelines, provisioning, deployments\n- **Human-in-the-loop** systems requiring timeouts and escalations\n\n### When NOT to Use\n\n- Simple CRUD operations (use direct API calls)\n- Pure data processing pipelines (use Airflow, batch processing)\n- Stateless request\u002Fresponse (use standard APIs)\n- Real-time streaming (use Kafka, event processors)\n\n## Critical Design Decision: Workflows vs Activities\n\n**The Fundamental Rule** (Source: temporal.io\u002Fblog\u002Fworkflow-engine-principles):\n\n- **Workflows** = Orchestration logic and decision-making\n- **Activities** = External interactions (APIs, databases, network calls)\n\n### Workflows (Orchestration)\n\n**Characteristics:**\n\n- Contain business logic and coordination\n- **MUST be deterministic** (same inputs → same outputs)\n- **Cannot** perform direct external calls\n- State automatically preserved across failures\n- Can run for years despite infrastructure failures\n\n**Example workflow tasks:**\n\n- Decide which steps to execute\n- Handle compensation logic\n- Manage timeouts and retries\n- Coordinate child workflows\n\n### Activities (External Interactions)\n\n**Characteristics:**\n\n- Handle all external system interactions\n- Can be non-deterministic (API calls, DB writes)\n- Include built-in timeouts and retry logic\n- **Must be idempotent** (calling N times = calling once)\n- Short-lived (seconds to minutes typically)\n\n**Example activity tasks:**\n\n- Call payment gateway API\n- Write to database\n- Send emails or notifications\n- Query external services\n\n### Design Decision Framework\n\n```\nDoes it touch external systems? → Activity\nIs it orchestration\u002Fdecision logic? → Workflow\n```\n\n## Core Workflow Patterns\n\n### 1. Saga Pattern with Compensation\n\n**Purpose**: Implement distributed transactions with rollback capability\n\n**Pattern** (Source: temporal.io\u002Fblog\u002Fcompensating-actions-part-of-a-complete-breakfast-with-sagas):\n\n```\nFor each step:\n  1. Register compensation BEFORE executing\n  2. Execute the step (via activity)\n  3. On failure, run all compensations in reverse order (LIFO)\n```\n\n**Example: Payment Workflow**\n\n1. Reserve inventory (compensation: release inventory)\n2. Charge payment (compensation: refund payment)\n3. Fulfill order (compensation: cancel fulfillment)\n\n**Critical Requirements:**\n\n- Compensations must be idempotent\n- Register compensation BEFORE executing step\n- Run compensations in reverse order\n- Handle partial failures gracefully\n\n### 2. Entity Workflows (Actor Model)\n\n**Purpose**: Long-lived workflow representing single entity instance\n\n**Pattern** (Source: docs.temporal.io\u002Fevaluate\u002Fuse-cases-design-patterns):\n\n- One workflow execution = one entity (cart, account, inventory item)\n- Workflow persists for entity lifetime\n- Receives signals for state changes\n- Supports queries for current state\n\n**Example Use Cases:**\n\n- Shopping cart (add items, checkout, expiration)\n- Bank account (deposits, withdrawals, balance checks)\n- Product inventory (stock updates, reservations)\n\n**Benefits:**\n\n- Encapsulates entity behavior\n- Guarantees consistency per entity\n- Natural event sourcing\n\n### 3. Fan-Out\u002FFan-In (Parallel Execution)\n\n**Purpose**: Execute multiple tasks in parallel, aggregate results\n\n**Pattern:**\n\n- Spawn child workflows or parallel activities\n- Wait for all to complete\n- Aggregate results\n- Handle partial failures\n\n**Scaling Rule** (Source: temporal.io\u002Fblog\u002Fworkflow-engine-principles):\n\n- Don't scale individual workflows\n- For 1M tasks: spawn 1K child workflows × 1K tasks each\n- Keep each workflow bounded\n\n### 4. Async Callback Pattern\n\n**Purpose**: Wait for external event or human approval\n\n**Pattern:**\n\n- Workflow sends request and waits for signal\n- External system processes asynchronously\n- Sends signal to resume workflow\n- Workflow continues with response\n\n**Use Cases:**\n\n- Human approval workflows\n- Webhook callbacks\n- Long-running external processes\n\n## State Management and Determinism\n\n### Automatic State Preservation\n\n**How Temporal Works** (Source: docs.temporal.io\u002Fworkflows):\n\n- Complete program state preserved automatically\n- Event History records every command and event\n- Seamless recovery from crashes\n- Applications restore pre-failure state\n\n### Determinism Constraints\n\n**Workflows Execute as State Machines**:\n\n- Replay behavior must be consistent\n- Same inputs → identical outputs every time\n\n**Prohibited in Workflows** (Source: docs.temporal.io\u002Fworkflows):\n\n- ❌ Threading, locks, synchronization primitives\n- ❌ Random number generation (`random()`)\n- ❌ Global state or static variables\n- ❌ System time (`datetime.now()`)\n- ❌ Direct file I\u002FO or network calls\n- ❌ Non-deterministic libraries\n\n**Allowed in Workflows**:\n\n- ✅ `workflow.now()` (deterministic time)\n- ✅ `workflow.random()` (deterministic random)\n- ✅ Pure functions and calculations\n- ✅ Calling activities (non-deterministic operations)\n\n### Versioning Strategies\n\n**Challenge**: Changing workflow code while old executions still running\n\n**Solutions**:\n\n1. **Versioning API**: Use `workflow.get_version()` for safe changes\n2. **New Workflow Type**: Create new workflow, route new executions to it\n3. **Backward Compatibility**: Ensure old events replay correctly\n\n## Resilience and Error Handling\n\n### Retry Policies\n\n**Default Behavior**: Temporal retries activities forever\n\n**Configure Retry**:\n\n- Initial retry interval\n- Backoff coefficient (exponential backoff)\n- Maximum interval (cap retry delay)\n- Maximum attempts (eventually fail)\n\n**Non-Retryable Errors**:\n\n- Invalid input (validation failures)\n- Business rule violations\n- Permanent failures (resource not found)\n\n### Idempotency Requirements\n\n**Why Critical** (Source: docs.temporal.io\u002Factivities):\n\n- Activities may execute multiple times\n- Network failures trigger retries\n- Duplicate execution must be safe\n\n**Implementation Strategies**:\n\n- Idempotency keys (deduplication)\n- Check-then-act with unique constraints\n- Upsert operations instead of insert\n- Track processed request IDs\n\n### Activity Heartbeats\n\n**Purpose**: Detect stalled long-running activities\n\n**Pattern**:\n\n- Activity sends periodic heartbeat\n- Includes progress information\n- Timeout if no heartbeat received\n- Enables progress-based retry\n\n## Best Practices\n\n### Workflow Design\n\n1. **Keep workflows focused** - Single responsibility per workflow\n2. **Small workflows** - Use child workflows for scalability\n3. **Clear boundaries** - Workflow orchestrates, activities execute\n4. **Test locally** - Use time-skipping test environment\n\n### Activity Design\n\n1. **Idempotent operations** - Safe to retry\n2. **Short-lived** - Seconds to minutes, not hours\n3. **Timeout configuration** - Always set timeouts\n4. **Heartbeat for long tasks** - Report progress\n5. **Error handling** - Distinguish retryable vs non-retryable\n\n### Common Pitfalls\n\n**Workflow Violations**:\n\n- Using `datetime.now()` instead of `workflow.now()`\n- Threading or async operations in workflow code\n- Calling external APIs directly from workflow\n- Non-deterministic logic in workflows\n\n**Activity Mistakes**:\n\n- Non-idempotent operations (can't handle retries)\n- Missing timeouts (activities run forever)\n- No error classification (retry validation errors)\n- Ignoring payload limits (2MB per argument)\n\n### Operational Considerations\n\n**Monitoring**:\n\n- Workflow execution duration\n- Activity failure rates\n- Retry attempts and backoff\n- Pending workflow counts\n\n**Scalability**:\n\n- Horizontal scaling with workers\n- Task queue partitioning\n- Child workflow decomposition\n- Activity batching when appropriate\n\n## Additional Resources\n\n**Official Documentation**:\n\n- Temporal Core Concepts: docs.temporal.io\u002Fworkflows\n- Workflow Patterns: docs.temporal.io\u002Fevaluate\u002Fuse-cases-design-patterns\n- Best Practices: docs.temporal.io\u002Fdevelop\u002Fbest-practices\n- Saga Pattern: temporal.io\u002Fblog\u002Fsaga-pattern-made-easy\n\n**Key Principles**:\n\n1. Workflows = orchestration, Activities = external calls\n2. Determinism is non-negotiable for workflows\n3. Idempotency is critical for activities\n4. State preservation is automatic\n5. Design for failure and recovery\n","# Workflow Orchestration Patterns\n\nMaster workflow orchestration architecture with Temporal, covering fundamental design decisions, resilience patterns, and best practices for building reliable distributed systems.\n\n## Use this skill when\n\n- Working on workflow orchestration patterns tasks or workflows\n- Needing guidance, best practices, or checklists for workflow orchestration patterns\n\n## Do not use this skill when\n\n- The task is unrelated to workflow orchestration patterns\n- You need a different domain or tool outside this scope\n\n## Instructions\n\n- Clarify goals, constraints, and required inputs.\n- Apply relevant best practices and validate outcomes.\n- Provide actionable steps and verification.\n- If detailed examples are required, open `resources\u002Fimplementation-playbook.md`.\n\n## When to Use Workflow Orchestration\n\n### Ideal Use Cases (Source: docs.temporal.io)\n\n- **Multi-step processes** spanning machines\u002Fservices\u002Fdatabases\n- **Distributed transactions** requiring all-or-nothing semantics\n- **Long-running workflows** (hours to years) with automatic state persistence\n- **Failure recovery** that must resume from last successful step\n- **Business processes**: bookings, orders, campaigns, approvals\n- **Entity lifecycle management**: inventory tracking, account management, cart workflows\n- **Infrastructure automation**: CI\u002FCD pipelines, provisioning, deployments\n- **Human-in-the-loop** systems requiring timeouts and escalations\n\n### When NOT to Use\n\n- Simple CRUD operations (use direct API calls)\n- Pure data processing pipelines (use Airflow, batch processing)\n- Stateless request\u002Fresponse (use standard APIs)\n- Real-time streaming (use Kafka, event processors)\n\n## Critical Design Decision: Workflows vs Activities\n\n**The Fundamental Rule** (Source: temporal.io\u002Fblog\u002Fworkflow-engine-principles):\n\n- **Workflows** = Orchestration logic and decision-making\n- **Activities** = External interactions (APIs, databases, network calls)\n\n### Workflows (Orchestration)\n\n**Characteristics:**\n\n- Contain business logic and coordination\n- **MUST be deterministic** (same inputs → same outputs)\n- **Cannot** perform direct external calls\n- State automatically preserved across failures\n- Can run for years despite infrastructure failures\n\n**Example workflow tasks:**\n\n- Decide which steps to execute\n- Handle compensation logic\n- Manage timeouts and retries\n- Coordinate child workflows\n\n### Activities (External Interactions)\n\n**Characteristics:**\n\n- Handle all external system interactions\n- Can be non-deterministic (API calls, DB writes)\n- Include built-in timeouts and retry logic\n- **Must be idempotent** (calling N times = calling once)\n- Short-lived (seconds to minutes typically)\n\n**Example activity tasks:**\n\n- Call payment gateway API\n- Write to database\n- Send emails or notifications\n- Query external services\n\n### Design Decision Framework\n\n```\nDoes it touch external systems? → Activity\nIs it orchestration\u002Fdecision logic? → Workflow\n```\n\n## Core Workflow Patterns\n\n### 1. Saga Pattern with Compensation\n\n**Purpose**: Implement distributed transactions with rollback capability\n\n**Pattern** (Source: temporal.io\u002Fblog\u002Fcompensating-actions-part-of-a-complete-breakfast-with-sagas):\n\n```\nFor each step:\n  1. Register compensation BEFORE executing\n  2. Execute the step (via activity)\n  3. On failure, run all compensations in reverse order (LIFO)\n```\n\n**Example: Payment Workflow**\n\n1. Reserve inventory (compensation: release inventory)\n2. Charge payment (compensation: refund payment)\n3. Fulfill order (compensation: cancel fulfillment)\n\n**Critical Requirements:**\n\n- Compensations must be idempotent\n- Register compensation BEFORE executing step\n- Run compensations in reverse order\n- Handle partial failures gracefully\n\n### 2. Entity Workflows (Actor Model)\n\n**Purpose**: Long-lived workflow representing single entity instance\n\n**Pattern** (Source: docs.temporal.io\u002Fevaluate\u002Fuse-cases-design-patterns):\n\n- One workflow execution = one entity (cart, account, inventory item)\n- Workflow persists for entity lifetime\n- Receives signals for state changes\n- Supports queries for current state\n\n**Example Use Cases:**\n\n- Shopping cart (add items, checkout, expiration)\n- Bank account (deposits, withdrawals, balance checks)\n- Product inventory (stock updates, reservations)\n\n**Benefits:**\n\n- Encapsulates entity behavior\n- Guarantees consistency per entity\n- Natural event sourcing\n\n### 3. Fan-Out\u002FFan-In (Parallel Execution)\n\n**Purpose**: Execute multiple tasks in parallel, aggregate results\n\n**Pattern:**\n\n- Spawn child workflows or parallel activities\n- Wait for all to complete\n- Aggregate results\n- Handle partial failures\n\n**Scaling Rule** (Source: temporal.io\u002Fblog\u002Fworkflow-engine-principles):\n\n- Don't scale individual workflows\n- For 1M tasks: spawn 1K child workflows × 1K tasks each\n- Keep each workflow bounded\n\n### 4. Async Callback Pattern\n\n**Purpose**: Wait for external event or human approval\n\n**Pattern:**\n\n- Workflow sends request and waits for signal\n- External system processes asynchronously\n- Sends signal to resume workflow\n- Workflow continues with response\n\n**Use Cases:**\n\n- Human approval workflows\n- Webhook callbacks\n- Long-running external processes\n\n## State Management and Determinism\n\n### Automatic State Preservation\n\n**How Temporal Works** (Source: docs.temporal.io\u002Fworkflows):\n\n- Complete program state preserved automatically\n- Event History records every command and event\n- Seamless recovery from crashes\n- Applications restore pre-failure state\n\n### Determinism Constraints\n\n**Workflows Execute as State Machines**:\n\n- Replay behavior must be consistent\n- Same inputs → identical outputs every time\n\n**Prohibited in Workflows** (Source: docs.temporal.io\u002Fworkflows):\n\n- ❌ Threading, locks, synchronization primitives\n- ❌ Random number generation (`random()`)\n- ❌ Global state or static variables\n- ❌ System time (`datetime.now()`)\n- ❌ Direct file I\u002FO or network calls\n- ❌ Non-deterministic libraries\n\n**Allowed in Workflows**:\n\n- ✅ `workflow.now()` (deterministic time)\n- ✅ `workflow.random()` (deterministic random)\n- ✅ Pure functions and calculations\n- ✅ Calling activities (non-deterministic operations)\n\n### Versioning Strategies\n\n**Challenge**: Changing workflow code while old executions still running\n\n**Solutions**:\n\n1. **Versioning API**: Use `workflow.get_version()` for safe changes\n2. **New Workflow Type**: Create new workflow, route new executions to it\n3. **Backward Compatibility**: Ensure old events replay correctly\n\n## Resilience and Error Handling\n\n### Retry Policies\n\n**Default Behavior**: Temporal retries activities forever\n\n**Configure Retry**:\n\n- Initial retry interval\n- Backoff coefficient (exponential backoff)\n- Maximum interval (cap retry delay)\n- Maximum attempts (eventually fail)\n\n**Non-Retryable Errors**:\n\n- Invalid input (validation failures)\n- Business rule violations\n- Permanent failures (resource not found)\n\n### Idempotency Requirements\n\n**Why Critical** (Source: docs.temporal.io\u002Factivities):\n\n- Activities may execute multiple times\n- Network failures trigger retries\n- Duplicate execution must be safe\n\n**Implementation Strategies**:\n\n- Idempotency keys (deduplication)\n- Check-then-act with unique constraints\n- Upsert operations instead of insert\n- Track processed request IDs\n\n### Activity Heartbeats\n\n**Purpose**: Detect stalled long-running activities\n\n**Pattern**:\n\n- Activity sends periodic heartbeat\n- Includes progress information\n- Timeout if no heartbeat received\n- Enables progress-based retry\n\n## Best Practices\n\n### Workflow Design\n\n1. **Keep workflows focused** - Single responsibility per workflow\n2. **Small workflows** - Use child workflows for scalability\n3. **Clear boundaries** - Workflow orchestrates, activities execute\n4. **Test locally** - Use time-skipping test environment\n\n### Activity Design\n\n1. **Idempotent operations** - Safe to retry\n2. **Short-lived** - Seconds to minutes, not hours\n3. **Timeout configuration** - Always set timeouts\n4. **Heartbeat for long tasks** - Report progress\n5. **Error handling** - Distinguish retryable vs non-retryable\n\n### Common Pitfalls\n\n**Workflow Violations**:\n\n- Using `datetime.now()` instead of `workflow.now()`\n- Threading or async operations in workflow code\n- Calling external APIs directly from workflow\n- Non-deterministic logic in workflows\n\n**Activity Mistakes**:\n\n- Non-idempotent operations (can't handle retries)\n- Missing timeouts (activities run forever)\n- No error classification (retry validation errors)\n- Ignoring payload limits (2MB per argument)\n\n### Operational Considerations\n\n**Monitoring**:\n\n- Workflow execution duration\n- Activity failure rates\n- Retry attempts and backoff\n- Pending workflow counts\n\n**Scalability**:\n\n- Horizontal scaling with workers\n- Task queue partitioning\n- Child workflow decomposition\n- Activity batching when appropriate\n\n## Additional Resources\n\n**Official Documentation**:\n\n- Temporal Core Concepts: docs.temporal.io\u002Fworkflows\n- Workflow Patterns: docs.temporal.io\u002Fevaluate\u002Fuse-cases-design-patterns\n- Best Practices: docs.temporal.io\u002Fdevelop\u002Fbest-practices\n- Saga Pattern: temporal.io\u002Fblog\u002Fsaga-pattern-made-easy\n\n**Key Principles**:\n\n1. Workflows = orchestration, Activities = external calls\n2. Determinism is non-negotiable for workflows\n3. Idempotency is critical for activities\n4. State preservation is automatic\n5. Design for failure and recovery\n",{"name":5,"risk":43,"source":46,"date_added":52,"description":7},"2026-02-27","main","7a38d8e7073e61c16eda85681cb32fb68a8657a5","skills-store\u002Fglobal\u002Fworkflow-orchestration-patterns","https:\u002F\u002Fgithub.com\u002Fsapsapshen\u002Fai-memory-router","https:\u002F\u002Fgithub.com\u002Fsapsapshen","2026-04-14 21:12:12",{"source":8,"skillName":5,"commands":60,"prompt":70,"zipAvailable":71},[61,64,67],{"tool":62,"command":63},"npx","npx skills add sapsapshen\u002Fai-memory-router --skill workflow-orchestration-patterns",{"tool":65,"command":66},"bunx","bunx skills add sapsapshen\u002Fai-memory-router --skill workflow-orchestration-patterns",{"tool":68,"command":69},"pnpm","pnpm dlx skills add sapsapshen\u002Fai-memory-router --skill workflow-orchestration-patterns","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fsapsapshen\u002Fai-memory-router\u002Fblob\u002Fmain\u002Fskills-store\u002Fglobal\u002Fworkflow-orchestration-patterns\u002FSKILL.md",true,[],[74,96,122,132,145,162],{"skillNo":75,"name":76,"nameZh":6,"description":77,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":78,"categories":79,"keywords":85,"publishedAt":47},"01M71ATQRKG48SH06FQ697T5G9","wechat-search","Search WeChat Official Account articles using OpenClaw's web search and fetch capabilities with compliance-focused design.","https:\u002F\u002Fgithub.com\u002Fsapsapshen\u002Fai-memory-router\u002Fblob\u002Fmain\u002Fskills-store\u002Fopenclaw\u002Fwechat-search-release\u002FSKILL.md",[80],{"categoryNo":81,"categoryName":82,"taxonomyType":83,"taxonomyTypeDesc":84},"01JBSEEDCAT000000000000037","律师与法务","PROFESSION","适用职业",[86,87,88,89,90,44,91,92,93,94,95,33],"wechat search","wechat","search","capabilities","openclaw","web search","compliance","web","official","fetch",{"skillNo":97,"name":98,"nameZh":6,"description":99,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":100,"categories":101,"keywords":102,"publishedAt":47},"01M71ATNAVGZB35PFYM2GC5N00","trend-tap","Real-time trending topics aggregator across 7 platforms (X\u002FTwitter, Reddit, Google Trends, Hacker News, Zhihu, Bilibili, Weibo). Trigger: when user says 'trend', 'trends', 'trend tap', '热点', '热搜', or asks what is trending\u002Fhot. Do NOT use web_search — this skill already fetches live data from all platforms with zero API keys.","https:\u002F\u002Fgithub.com\u002Fsapsapshen\u002Fai-memory-router\u002Fblob\u002Fmain\u002Fskills-store\u002Fopenclaw\u002Ftrend-tap\u002FSKILL.md",[],[103,104,105,106,107,108,88,109,110,111,112,113,114,115,116,117,118,119,120,121],"trend","trend tap","tap","api keys","Bash","time","trending","hacker","aggregator","do","when","brew","live","data","google","install","read","across","api",{"skillNo":123,"name":124,"nameZh":6,"description":125,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":126,"categories":127,"keywords":128,"publishedAt":47},"01M71ATJ9AM5KM15AA8PS302EB","trend-radar","Real-time trending topics aggregator across 7 platforms (X\u002FTwitter, Reddit, Google Trends, Hacker News, Zhihu, Bilibili, Weibo). Trigger: when user says 'trend', 'trends', 'trend pulse', '热点', '热搜', or asks what is trending\u002Fhot. Do NOT use web_search — this skill already fetches live data from all platforms with zero API keys.","https:\u002F\u002Fgithub.com\u002Fsapsapshen\u002Fai-memory-router\u002Fblob\u002Fmain\u002Fskills-store\u002Fopenclaw\u002Ftrend-radar\u002FSKILL.md",[],[129,130,103,114,115,116,117,107,88,119,131,120,121,113,111,110,109,118,108,106],"trend radar","radar","pulse",{"skillNo":133,"name":134,"nameZh":6,"description":135,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":136,"categories":137,"keywords":138,"publishedAt":47},"01M71ATGF095N3EJM9G8SD0BB5","tech-news-daily","每日科技新闻汇——从全球多个 RSS 源抓取最新科技新闻，翻译（英→中）、去重、排版成每日简报。当用户询问科技新闻、科技新鲜事、每日科技、技术动态、Daily Tech News 或类似表达时触发此技能。","https:\u002F\u002Fgithub.com\u002Fsapsapshen\u002Fai-memory-router\u002Fblob\u002Fmain\u002Fskills-store\u002Fopenclaw\u002Ftech-news-daily\u002FSKILL.md",[],[139,140,141,142,143,144],"news","tech","tech news daily","daily","rss","翻译",{"skillNo":146,"name":147,"nameZh":6,"description":148,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":149,"categories":150,"keywords":154,"publishedAt":47},"01M71ATFAEAMQ17M70NQNY7SR8","summarize","Summarize URLs or files with the summarize CLI (web, PDFs, images, audio, YouTube).","https:\u002F\u002Fgithub.com\u002Fsapsapshen\u002Fai-memory-router\u002Fblob\u002Fmain\u002Fskills-store\u002Fopenclaw\u002Fsummarize\u002FSKILL.md",[151],{"categoryNo":152,"categoryName":153,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000021","资料检索与研究",[147,93,155,156,157,33,114,158,159,160,105,161,118],"Audio","cli","youtube","images","https","files","pdfs",{"skillNo":163,"name":164,"nameZh":6,"description":165,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":166,"categories":167,"keywords":168,"publishedAt":47},"01M71ATDNS3R0M4H936PACQAWZ","sonoscli","Control Sonos speakers (discover\u002Fstatus\u002Fplay\u002Fvolume\u002Fgroup).","https:\u002F\u002Fgithub.com\u002Fsapsapshen\u002Fai-memory-router\u002Fblob\u002Fmain\u002Fskills-store\u002Fopenclaw\u002Fsonoscli\u002FSKILL.md",[],[164,169,170,171,118,172,159,173,174,175,176,177],"status","play","go","latest","github","discover","control","cmd","volume"]