[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M7189ZV5J03ZRKAPMM2R5PRD":3,"skill-same:01M7189ZV5J03ZRKAPMM2R5PRD":56},{"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":18,"publishedAt":31,"linkOnly":32,"markdownContent":33,"markdownBody":34,"frontMatter":35,"refName":36,"commitSha":37,"skillDirectory":38,"forksCount":14,"repositoryHtmlUrl":39,"repositoryHomepageUrl":6,"ownerHtmlUrl":40,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":41,"install":42,"resources":55},"01M7189ZV5J03ZRKAPMM2R5PRD","constant-time-analysis",null,"Analyze cryptographic code to detect operations that leak secret data through execution timing variations.","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\u002Fconstant-time-analysis\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29,30],"constant time analysis","time","analysis","community","timing","execution","unknown","code","analyze","detect","operations","data","2026-11-10 10:12:30",false,"---\nname: constant-time-analysis\ndescription: \"Analyze cryptographic code to detect operations that leak secret data through execution timing variations.\"\nrisk: unknown\nsource: community\n---\n\n# Constant-Time Analysis\n\nAnalyze cryptographic code to detect operations that leak secret data through execution timing variations.\n\n## When to Use\n```text\nUser writing crypto code? ──yes──> Use this skill\n         │\n         no\n         │\n         v\nUser asking about timing attacks? ──yes──> Use this skill\n         │\n         no\n         │\n         v\nCode handles secret keys\u002Ftokens? ──yes──> Use this skill\n         │\n         no\n         │\n         v\nSkip this skill\n```\n\n**Concrete triggers:**\n\n- User implements signature, encryption, or key derivation\n- Code contains `\u002F` or `%` operators on secret-derived values\n- User mentions \"constant-time\", \"timing attack\", \"side-channel\", \"KyberSlash\"\n- Reviewing functions named `sign`, `verify`, `encrypt`, `decrypt`, `derive_key`\n\n## When NOT to Use\n\n- Non-cryptographic code (business logic, UI, etc.)\n- Public data processing where timing leaks don't matter\n- Code that doesn't handle secrets, keys, or authentication tokens\n- High-level API usage where timing is handled by the library\n\n## Language Selection\n\nBased on the file extension or language context, refer to the appropriate guide:\n\n| Language   | File Extensions                   | Guide                                                    |\n| ---------- | --------------------------------- | -------------------------------------------------------- |\n| C, C++     | `.c`, `.h`, `.cpp`, `.cc`, `.hpp` | references\u002Fcompiled.md         |\n| Go         | `.go`                             | references\u002Fcompiled.md         |\n| Rust       | `.rs`                             | references\u002Fcompiled.md         |\n| Swift      | `.swift`                          | references\u002Fswift.md               |\n| Java       | `.java`                           | references\u002Fvm-compiled.md   |\n| Kotlin     | `.kt`, `.kts`                     | references\u002Fkotlin.md             |\n| C#         | `.cs`                             | references\u002Fvm-compiled.md   |\n| PHP        | `.php`                            | references\u002Fphp.md                   |\n| JavaScript | `.js`, `.mjs`, `.cjs`             | references\u002Fjavascript.md     |\n| TypeScript | `.ts`, `.tsx`                     | references\u002Fjavascript.md     |\n| Python     | `.py`                             | references\u002Fpython.md             |\n| Ruby       | `.rb`                             | references\u002Fruby.md                 |\n\n## Quick Start\n\n```bash\n# Analyze any supported file type\nuv run {baseDir}\u002Fct_analyzer\u002Fanalyzer.py \u003Csource_file>\n\n# Include conditional branch warnings\nuv run {baseDir}\u002Fct_analyzer\u002Fanalyzer.py --warnings \u003Csource_file>\n\n# Filter to specific functions\nuv run {baseDir}\u002Fct_analyzer\u002Fanalyzer.py --func 'sign|verify' \u003Csource_file>\n\n# JSON output for CI\nuv run {baseDir}\u002Fct_analyzer\u002Fanalyzer.py --json \u003Csource_file>\n```\n\n### Native Compiled Languages Only (C, C++, Go, Rust)\n\n```bash\n# Cross-architecture testing (RECOMMENDED)\nuv run {baseDir}\u002Fct_analyzer\u002Fanalyzer.py --arch x86_64 crypto.c\nuv run {baseDir}\u002Fct_analyzer\u002Fanalyzer.py --arch arm64 crypto.c\n\n# Multiple optimization levels\nuv run {baseDir}\u002Fct_analyzer\u002Fanalyzer.py --opt-level O0 crypto.c\nuv run {baseDir}\u002Fct_analyzer\u002Fanalyzer.py --opt-level O3 crypto.c\n```\n\n### VM-Compiled Languages (Java, Kotlin, C#)\n\n```bash\n# Analyze Java bytecode\nuv run {baseDir}\u002Fct_analyzer\u002Fanalyzer.py CryptoUtils.java\n\n# Analyze Kotlin bytecode (Android\u002FJVM)\nuv run {baseDir}\u002Fct_analyzer\u002Fanalyzer.py CryptoUtils.kt\n\n# Analyze C# IL\nuv run {baseDir}\u002Fct_analyzer\u002Fanalyzer.py CryptoUtils.cs\n```\n\nNote: Java, Kotlin, and C# compile to bytecode (JVM\u002FCIL) that runs on a virtual machine with JIT compilation. The analyzer examines the bytecode directly, not the JIT-compiled native code. The `--arch` and `--opt-level` flags do not apply to these languages.\n\n### Swift (iOS\u002FmacOS)\n\n```bash\n# Analyze Swift for native architecture\nuv run {baseDir}\u002Fct_analyzer\u002Fanalyzer.py crypto.swift\n\n# Analyze for specific architecture (iOS devices)\nuv run {baseDir}\u002Fct_analyzer\u002Fanalyzer.py --arch arm64 crypto.swift\n\n# Analyze with different optimization levels\nuv run {baseDir}\u002Fct_analyzer\u002Fanalyzer.py --opt-level O0 crypto.swift\n```\n\nNote: Swift compiles to native code like C\u002FC++\u002FGo\u002FRust, so it uses assembly-level analysis and supports `--arch` and `--opt-level` flags.\n\n### Prerequisites\n\n| Language               | Requirements                                              |\n| ---------------------- | --------------------------------------------------------- |\n| C, C++, Go, Rust       | Compiler in PATH (`gcc`\u002F`clang`, `go`, `rustc`)           |\n| Swift                  | Xcode or Swift toolchain (`swiftc` in PATH)               |\n| Java                   | JDK with `javac` and `javap` in PATH                      |\n| Kotlin                 | Kotlin compiler (`kotlinc`) + JDK (`javap`) in PATH       |\n| C#                     | .NET SDK + `ilspycmd` (`dotnet tool install -g ilspycmd`) |\n| PHP                    | PHP with VLD extension or OPcache                         |\n| JavaScript\u002FTypeScript  | Node.js in PATH                                           |\n| Python                 | Python 3.x in PATH                                        |\n| Ruby                   | Ruby with `--dump=insns` support                          |\n\n**macOS users**: Homebrew installs Java and .NET as \"keg-only\". You must add them to your PATH:\n\n```bash\n# For Java (add to ~\u002F.zshrc)\nexport PATH=\"\u002Fopt\u002Fhomebrew\u002Fopt\u002Fopenjdk@21\u002Fbin:$PATH\"\n\n# For .NET tools (add to ~\u002F.zshrc)\nexport PATH=\"$HOME\u002F.dotnet\u002Ftools:$PATH\"\n```\n\nSee references\u002Fvm-compiled.md for detailed setup instructions and troubleshooting.\n\n## Quick Reference\n\n| Problem                | Detection                       | Fix                                          |\n| ---------------------- | ------------------------------- | -------------------------------------------- |\n| Division on secrets    | DIV, IDIV, SDIV, UDIV           | Barrett reduction or multiply-by-inverse     |\n| Branch on secrets      | JE, JNE, BEQ, BNE               | Constant-time selection (cmov, bit masking)  |\n| Secret comparison      | Early-exit memcmp               | Use `crypto\u002Fsubtle` or constant-time compare |\n| Weak RNG               | rand(), mt_rand, Math.random    | Use crypto-secure RNG                        |\n| Table lookup by secret | Array subscript on secret index | Bit-sliced lookups                           |\n\n## Interpreting Results\n\n**PASSED** - No variable-time operations detected.\n\n**FAILED** - Dangerous instructions found. Example:\n\n```text\n[ERROR] SDIV\n  Function: decompose_vulnerable\n  Reason: SDIV has early termination optimization; execution time depends on operand values\n```\n\n## Verifying Results (Avoiding False Positives)\n\n**CRITICAL**: Not every flagged operation is a vulnerability. The tool has no data flow analysis - it flags ALL potentially dangerous operations regardless of whether they involve secrets.\n\nFor each flagged violation, ask: **Does this operation's input depend on secret data?**\n\n1. **Identify the secret inputs** to the function (private keys, plaintext, signatures, tokens)\n\n2. **Trace data flow** from the flagged instruction back to inputs\n\n3. **Common false positive patterns**:\n\n   ```c\n   \u002F\u002F FALSE POSITIVE: Division uses public constant, not secret\n   int num_blocks = data_len \u002F 16;  \u002F\u002F data_len is length, not content\n\n   \u002F\u002F TRUE POSITIVE: Division involves secret-derived value\n   int32_t q = secret_coef \u002F GAMMA2;  \u002F\u002F secret_coef from private key\n   ```\n\n4. **Document your analysis** for each flagged item\n\n### Quick Triage Questions\n\n| Question                                          | If Yes                | If No                 |\n| ------------------------------------------------- | --------------------- | --------------------- |\n| Is the operand a compile-time constant?           | Likely false positive | Continue              |\n| Is the operand a public parameter (length, count)?| Likely false positive | Continue              |\n| Is the operand derived from key\u002Fplaintext\u002Fsecret? | **TRUE POSITIVE**     | Likely false positive |\n| Can an attacker influence the operand value?      | **TRUE POSITIVE**     | Likely false positive |\n\n## Limitations\n\n1. **Static Analysis Only**: Analyzes assembly\u002Fbytecode, not runtime behavior. Cannot detect cache timing or microarchitectural side-channels.\n\n2. **No Data Flow Analysis**: Flags all dangerous operations regardless of whether they process secrets. Manual review required.\n\n3. **Compiler\u002FRuntime Variations**: Different compilers, optimization levels, and runtime versions may produce different output.\n\n## Real-World Impact\n\n- **KyberSlash (2023)**: Division instructions in post-quantum ML-KEM implementations allowed key recovery\n- **Lucky Thirteen (2013)**: Timing differences in CBC padding validation enabled plaintext recovery\n- **RSA Timing Attacks**: Early implementations leaked private key bits through division timing\n\n## References\n\n- [Cryptocoding Guidelines](https:\u002F\u002Fgithub.com\u002Fveorq\u002Fcryptocoding) - Defensive coding for crypto\n- [KyberSlash](https:\u002F\u002Fkyberslash.cr.yp.to\u002F) - Division timing in post-quantum crypto\n- [BearSSL Constant-Time](https:\u002F\u002Fwww.bearssl.org\u002Fconstanttime.html) - Practical constant-time techniques\n","# Constant-Time Analysis\n\nAnalyze cryptographic code to detect operations that leak secret data through execution timing variations.\n\n## When to Use\n```text\nUser writing crypto code? ──yes──> Use this skill\n         │\n         no\n         │\n         v\nUser asking about timing attacks? ──yes──> Use this skill\n         │\n         no\n         │\n         v\nCode handles secret keys\u002Ftokens? ──yes──> Use this skill\n         │\n         no\n         │\n         v\nSkip this skill\n```\n\n**Concrete triggers:**\n\n- User implements signature, encryption, or key derivation\n- Code contains `\u002F` or `%` operators on secret-derived values\n- User mentions \"constant-time\", \"timing attack\", \"side-channel\", \"KyberSlash\"\n- Reviewing functions named `sign`, `verify`, `encrypt`, `decrypt`, `derive_key`\n\n## When NOT to Use\n\n- Non-cryptographic code (business logic, UI, etc.)\n- Public data processing where timing leaks don't matter\n- Code that doesn't handle secrets, keys, or authentication tokens\n- High-level API usage where timing is handled by the library\n\n## Language Selection\n\nBased on the file extension or language context, refer to the appropriate guide:\n\n| Language   | File Extensions                   | Guide                                                    |\n| ---------- | --------------------------------- | -------------------------------------------------------- |\n| C, C++     | `.c`, `.h`, `.cpp`, `.cc`, `.hpp` | references\u002Fcompiled.md         |\n| Go         | `.go`                             | references\u002Fcompiled.md         |\n| Rust       | `.rs`                             | references\u002Fcompiled.md         |\n| Swift      | `.swift`                          | references\u002Fswift.md               |\n| Java       | `.java`                           | references\u002Fvm-compiled.md   |\n| Kotlin     | `.kt`, `.kts`                     | references\u002Fkotlin.md             |\n| C#         | `.cs`                             | references\u002Fvm-compiled.md   |\n| PHP        | `.php`                            | references\u002Fphp.md                   |\n| JavaScript | `.js`, `.mjs`, `.cjs`             | references\u002Fjavascript.md     |\n| TypeScript | `.ts`, `.tsx`                     | references\u002Fjavascript.md     |\n| Python     | `.py`                             | references\u002Fpython.md             |\n| Ruby       | `.rb`                             | references\u002Fruby.md                 |\n\n## Quick Start\n\n```bash\n# Analyze any supported file type\nuv run {baseDir}\u002Fct_analyzer\u002Fanalyzer.py \u003Csource_file>\n\n# Include conditional branch warnings\nuv run {baseDir}\u002Fct_analyzer\u002Fanalyzer.py --warnings \u003Csource_file>\n\n# Filter to specific functions\nuv run {baseDir}\u002Fct_analyzer\u002Fanalyzer.py --func 'sign|verify' \u003Csource_file>\n\n# JSON output for CI\nuv run {baseDir}\u002Fct_analyzer\u002Fanalyzer.py --json \u003Csource_file>\n```\n\n### Native Compiled Languages Only (C, C++, Go, Rust)\n\n```bash\n# Cross-architecture testing (RECOMMENDED)\nuv run {baseDir}\u002Fct_analyzer\u002Fanalyzer.py --arch x86_64 crypto.c\nuv run {baseDir}\u002Fct_analyzer\u002Fanalyzer.py --arch arm64 crypto.c\n\n# Multiple optimization levels\nuv run {baseDir}\u002Fct_analyzer\u002Fanalyzer.py --opt-level O0 crypto.c\nuv run {baseDir}\u002Fct_analyzer\u002Fanalyzer.py --opt-level O3 crypto.c\n```\n\n### VM-Compiled Languages (Java, Kotlin, C#)\n\n```bash\n# Analyze Java bytecode\nuv run {baseDir}\u002Fct_analyzer\u002Fanalyzer.py CryptoUtils.java\n\n# Analyze Kotlin bytecode (Android\u002FJVM)\nuv run {baseDir}\u002Fct_analyzer\u002Fanalyzer.py CryptoUtils.kt\n\n# Analyze C# IL\nuv run {baseDir}\u002Fct_analyzer\u002Fanalyzer.py CryptoUtils.cs\n```\n\nNote: Java, Kotlin, and C# compile to bytecode (JVM\u002FCIL) that runs on a virtual machine with JIT compilation. The analyzer examines the bytecode directly, not the JIT-compiled native code. The `--arch` and `--opt-level` flags do not apply to these languages.\n\n### Swift (iOS\u002FmacOS)\n\n```bash\n# Analyze Swift for native architecture\nuv run {baseDir}\u002Fct_analyzer\u002Fanalyzer.py crypto.swift\n\n# Analyze for specific architecture (iOS devices)\nuv run {baseDir}\u002Fct_analyzer\u002Fanalyzer.py --arch arm64 crypto.swift\n\n# Analyze with different optimization levels\nuv run {baseDir}\u002Fct_analyzer\u002Fanalyzer.py --opt-level O0 crypto.swift\n```\n\nNote: Swift compiles to native code like C\u002FC++\u002FGo\u002FRust, so it uses assembly-level analysis and supports `--arch` and `--opt-level` flags.\n\n### Prerequisites\n\n| Language               | Requirements                                              |\n| ---------------------- | --------------------------------------------------------- |\n| C, C++, Go, Rust       | Compiler in PATH (`gcc`\u002F`clang`, `go`, `rustc`)           |\n| Swift                  | Xcode or Swift toolchain (`swiftc` in PATH)               |\n| Java                   | JDK with `javac` and `javap` in PATH                      |\n| Kotlin                 | Kotlin compiler (`kotlinc`) + JDK (`javap`) in PATH       |\n| C#                     | .NET SDK + `ilspycmd` (`dotnet tool install -g ilspycmd`) |\n| PHP                    | PHP with VLD extension or OPcache                         |\n| JavaScript\u002FTypeScript  | Node.js in PATH                                           |\n| Python                 | Python 3.x in PATH                                        |\n| Ruby                   | Ruby with `--dump=insns` support                          |\n\n**macOS users**: Homebrew installs Java and .NET as \"keg-only\". You must add them to your PATH:\n\n```bash\n# For Java (add to ~\u002F.zshrc)\nexport PATH=\"\u002Fopt\u002Fhomebrew\u002Fopt\u002Fopenjdk@21\u002Fbin:$PATH\"\n\n# For .NET tools (add to ~\u002F.zshrc)\nexport PATH=\"$HOME\u002F.dotnet\u002Ftools:$PATH\"\n```\n\nSee references\u002Fvm-compiled.md for detailed setup instructions and troubleshooting.\n\n## Quick Reference\n\n| Problem                | Detection                       | Fix                                          |\n| ---------------------- | ------------------------------- | -------------------------------------------- |\n| Division on secrets    | DIV, IDIV, SDIV, UDIV           | Barrett reduction or multiply-by-inverse     |\n| Branch on secrets      | JE, JNE, BEQ, BNE               | Constant-time selection (cmov, bit masking)  |\n| Secret comparison      | Early-exit memcmp               | Use `crypto\u002Fsubtle` or constant-time compare |\n| Weak RNG               | rand(), mt_rand, Math.random    | Use crypto-secure RNG                        |\n| Table lookup by secret | Array subscript on secret index | Bit-sliced lookups                           |\n\n## Interpreting Results\n\n**PASSED** - No variable-time operations detected.\n\n**FAILED** - Dangerous instructions found. Example:\n\n```text\n[ERROR] SDIV\n  Function: decompose_vulnerable\n  Reason: SDIV has early termination optimization; execution time depends on operand values\n```\n\n## Verifying Results (Avoiding False Positives)\n\n**CRITICAL**: Not every flagged operation is a vulnerability. The tool has no data flow analysis - it flags ALL potentially dangerous operations regardless of whether they involve secrets.\n\nFor each flagged violation, ask: **Does this operation's input depend on secret data?**\n\n1. **Identify the secret inputs** to the function (private keys, plaintext, signatures, tokens)\n\n2. **Trace data flow** from the flagged instruction back to inputs\n\n3. **Common false positive patterns**:\n\n   ```c\n   \u002F\u002F FALSE POSITIVE: Division uses public constant, not secret\n   int num_blocks = data_len \u002F 16;  \u002F\u002F data_len is length, not content\n\n   \u002F\u002F TRUE POSITIVE: Division involves secret-derived value\n   int32_t q = secret_coef \u002F GAMMA2;  \u002F\u002F secret_coef from private key\n   ```\n\n4. **Document your analysis** for each flagged item\n\n### Quick Triage Questions\n\n| Question                                          | If Yes                | If No                 |\n| ------------------------------------------------- | --------------------- | --------------------- |\n| Is the operand a compile-time constant?           | Likely false positive | Continue              |\n| Is the operand a public parameter (length, count)?| Likely false positive | Continue              |\n| Is the operand derived from key\u002Fplaintext\u002Fsecret? | **TRUE POSITIVE**     | Likely false positive |\n| Can an attacker influence the operand value?      | **TRUE POSITIVE**     | Likely false positive |\n\n## Limitations\n\n1. **Static Analysis Only**: Analyzes assembly\u002Fbytecode, not runtime behavior. Cannot detect cache timing or microarchitectural side-channels.\n\n2. **No Data Flow Analysis**: Flags all dangerous operations regardless of whether they process secrets. Manual review required.\n\n3. **Compiler\u002FRuntime Variations**: Different compilers, optimization levels, and runtime versions may produce different output.\n\n## Real-World Impact\n\n- **KyberSlash (2023)**: Division instructions in post-quantum ML-KEM implementations allowed key recovery\n- **Lucky Thirteen (2013)**: Timing differences in CBC padding validation enabled plaintext recovery\n- **RSA Timing Attacks**: Early implementations leaked private key bits through division timing\n\n## References\n\n- [Cryptocoding Guidelines](https:\u002F\u002Fgithub.com\u002Fveorq\u002Fcryptocoding) - Defensive coding for crypto\n- [KyberSlash](https:\u002F\u002Fkyberslash.cr.yp.to\u002F) - Division timing in post-quantum crypto\n- [BearSSL Constant-Time](https:\u002F\u002Fwww.bearssl.org\u002Fconstanttime.html) - Practical constant-time techniques\n",{"name":5,"risk":25,"source":22,"description":7},"main","7a38d8e7073e61c16eda85681cb32fb68a8657a5","skills-store\u002Fglobal\u002Fconstant-time-analysis","https:\u002F\u002Fgithub.com\u002Fsapsapshen\u002Fai-memory-router","https:\u002F\u002Fgithub.com\u002Fsapsapshen","2026-04-14 21:12:12",{"source":8,"skillName":5,"commands":43,"prompt":53,"zipAvailable":54},[44,47,50],{"tool":45,"command":46},"npx","npx skills add sapsapshen\u002Fai-memory-router --skill constant-time-analysis",{"tool":48,"command":49},"bunx","bunx skills add sapsapshen\u002Fai-memory-router --skill constant-time-analysis",{"tool":51,"command":52},"pnpm","pnpm dlx skills add sapsapshen\u002Fai-memory-router --skill constant-time-analysis","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fsapsapshen\u002Fai-memory-router\u002Fblob\u002Fmain\u002Fskills-store\u002Fglobal\u002Fconstant-time-analysis\u002FSKILL.md",true,[],[57,81,105,115,128,147],{"skillNo":58,"name":59,"nameZh":6,"description":60,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":61,"categories":62,"keywords":68,"publishedAt":31},"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",[63],{"categoryNo":64,"categoryName":65,"taxonomyType":66,"taxonomyTypeDesc":67},"01JBSEEDCAT000000000000037","律师与法务","PROFESSION","适用职业",[69,70,71,72,73,74,75,76,77,78,79,80],"wechat search","wechat","search","capabilities","openclaw","design","web search","compliance","web","official","fetch","with",{"skillNo":82,"name":83,"nameZh":6,"description":84,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":85,"categories":86,"keywords":87,"publishedAt":31},"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",[],[88,89,90,91,92,20,71,93,94,95,96,97,98,99,30,100,101,102,103,104],"trend","trend tap","tap","api keys","Bash","trending","hacker","aggregator","do","when","brew","live","google","install","read","across","api",{"skillNo":106,"name":107,"nameZh":6,"description":108,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":109,"categories":110,"keywords":111,"publishedAt":31},"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",[],[112,113,88,98,99,30,100,92,71,102,114,103,104,97,95,94,93,101,20,91],"trend radar","radar","pulse",{"skillNo":116,"name":117,"nameZh":6,"description":118,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":119,"categories":120,"keywords":121,"publishedAt":31},"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",[],[122,123,124,125,126,127],"news","tech","tech news daily","daily","rss","翻译",{"skillNo":129,"name":130,"nameZh":6,"description":131,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":132,"categories":133,"keywords":139,"publishedAt":31},"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",[134],{"categoryNo":135,"categoryName":136,"taxonomyType":137,"taxonomyTypeDesc":138},"01JBSEEDCAT000000000000021","资料检索与研究","SCENARIO","使用场景",[130,77,140,141,142,80,98,143,144,145,90,146,101],"Audio","cli","youtube","images","https","files","pdfs",{"skillNo":148,"name":149,"nameZh":6,"description":150,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":151,"categories":152,"keywords":153,"publishedAt":31},"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",[],[149,154,155,156,101,157,144,158,159,160,161,162],"status","play","go","latest","github","discover","control","cmd","volume"]