[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6CT5REBMH2BHJSQ73Z2HYF5":3,"skill-same:01M6CT5REBMH2BHJSQ73Z2HYF5":68},{"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":37,"linkOnly":38,"markdownContent":39,"markdownBody":40,"frontMatter":41,"refName":46,"commitSha":47,"skillDirectory":48,"forksCount":49,"repositoryHtmlUrl":50,"repositoryHomepageUrl":50,"ownerHtmlUrl":51,"ownerBlogUrl":6,"ownerDescription":52,"updatedAt":53,"install":54,"resources":67},"01M6CT5REBMH2BHJSQ73Z2HYF5","fp-pipe-ref",null,"Quick reference for pipe and flow. Use when user needs to chain functions, compose operations, or build data pipelines in fp-ts.","Sam-06060\u002Fjarvis-assistant","Sam-06060","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F208600848?v=4","01M6CRKT7C7FXD21V6HXF293S0","Samson Frank Ganta","01M6CRKTBEKYFD8YX5Z1GT99EE",6,"Apache-2.0","https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fmodules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Ffp-pipe-ref\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36],"fp pipe ref","pipe","pipelines","quick-reference","fp-ts","community","build","functions","reference","quick reference","compose","use","operations","user","Composition","data","flow","data pipelines","2026-11-10 10:12:30",false,"---\nname: fp-pipe-ref\ndescription: Quick reference for pipe and flow. Use when user needs to chain functions, compose operations, or build data pipelines in fp-ts.\nrisk: unknown\nsource: community\nversion: 1.0.0\ntags: [fp-ts, pipe, flow, composition, quick-reference]\n---\n\n# pipe & flow Quick Reference\n\n## pipe - Transform a Value\n\n```typescript\nimport { pipe } from 'fp-ts\u002Ffunction'\n\n\u002F\u002F pipe(startValue, fn1, fn2, fn3)\n\u002F\u002F = fn3(fn2(fn1(startValue)))\n\nconst result = pipe(\n  '  hello world  ',\n  s => s.trim(),\n  s => s.toUpperCase(),\n  s => s.split(' ')\n)\n\u002F\u002F ['HELLO', 'WORLD']\n```\n\n## flow - Create Reusable Pipeline\n\n```typescript\nimport { flow } from 'fp-ts\u002Ffunction'\n\n\u002F\u002F flow(fn1, fn2, fn3) returns a new function\nconst process = flow(\n  (s: string) => s.trim(),\n  s => s.toUpperCase(),\n  s => s.split(' ')\n)\n\nprocess('  hello world  ') \u002F\u002F ['HELLO', 'WORLD']\nprocess('  foo bar  ')     \u002F\u002F ['FOO', 'BAR']\n```\n\n## When to Use\n| Use | When |\n|-----|------|\n| `pipe` | Transform a specific value now |\n| `flow` | Create reusable transformation |\n\n## With fp-ts Types\n\n```typescript\nimport * as O from 'fp-ts\u002FOption'\nimport * as A from 'fp-ts\u002FArray'\n\n\u002F\u002F Option chain\npipe(\n  O.fromNullable(user),\n  O.map(u => u.email),\n  O.getOrElse(() => 'no email')\n)\n\n\u002F\u002F Array chain\npipe(\n  users,\n  A.filter(u => u.active),\n  A.map(u => u.name)\n)\n```\n\n## Common Pattern\n\n```typescript\n\u002F\u002F Data last enables partial application\nconst getActiveNames = flow(\n  A.filter((u: User) => u.active),\n  A.map(u => u.name)\n)\n\n\u002F\u002F Reuse anywhere\ngetActiveNames(users1)\ngetActiveNames(users2)\n```\n","# pipe & flow Quick Reference\n\n## pipe - Transform a Value\n\n```typescript\nimport { pipe } from 'fp-ts\u002Ffunction'\n\n\u002F\u002F pipe(startValue, fn1, fn2, fn3)\n\u002F\u002F = fn3(fn2(fn1(startValue)))\n\nconst result = pipe(\n  '  hello world  ',\n  s => s.trim(),\n  s => s.toUpperCase(),\n  s => s.split(' ')\n)\n\u002F\u002F ['HELLO', 'WORLD']\n```\n\n## flow - Create Reusable Pipeline\n\n```typescript\nimport { flow } from 'fp-ts\u002Ffunction'\n\n\u002F\u002F flow(fn1, fn2, fn3) returns a new function\nconst process = flow(\n  (s: string) => s.trim(),\n  s => s.toUpperCase(),\n  s => s.split(' ')\n)\n\nprocess('  hello world  ') \u002F\u002F ['HELLO', 'WORLD']\nprocess('  foo bar  ')     \u002F\u002F ['FOO', 'BAR']\n```\n\n## When to Use\n| Use | When |\n|-----|------|\n| `pipe` | Transform a specific value now |\n| `flow` | Create reusable transformation |\n\n## With fp-ts Types\n\n```typescript\nimport * as O from 'fp-ts\u002FOption'\nimport * as A from 'fp-ts\u002FArray'\n\n\u002F\u002F Option chain\npipe(\n  O.fromNullable(user),\n  O.map(u => u.email),\n  O.getOrElse(() => 'no email')\n)\n\n\u002F\u002F Array chain\npipe(\n  users,\n  A.filter(u => u.active),\n  A.map(u => u.name)\n)\n```\n\n## Common Pattern\n\n```typescript\n\u002F\u002F Data last enables partial application\nconst getActiveNames = flow(\n  A.filter((u: User) => u.active),\n  A.map(u => u.name)\n)\n\n\u002F\u002F Reuse anywhere\ngetActiveNames(users1)\ngetActiveNames(users2)\n```\n",{"name":5,"risk":42,"tags":43,"source":24,"version":45,"description":7},"unknown",[23,20,35,44,22],"composition","1.0.0","main","a50a3aa6b39fb0e1b7db88bef1bfc9c93606e126","modules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Ffp-pipe-ref",0,"https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant","https:\u002F\u002Fgithub.com\u002FSam-06060","Mobile Application Developer | Kotlin | Flutter, KMP, Swfit, Android,Swift UI | Building at Saar It Resources | Creator of Jarvis (AI Assistant)","2026-06-23 05:13:38",{"source":8,"skillName":5,"commands":55,"prompt":65,"zipAvailable":66},[56,59,62],{"tool":57,"command":58},"npx","npx skills add Sam-06060\u002Fjarvis-assistant --skill fp-pipe-ref",{"tool":60,"command":61},"bunx","bunx skills add Sam-06060\u002Fjarvis-assistant --skill fp-pipe-ref",{"tool":63,"command":64},"pnpm","pnpm dlx skills add Sam-06060\u002Fjarvis-assistant --skill fp-pipe-ref","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fmodules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Ffp-pipe-ref\u002FSKILL.md",true,[],[69,82,98,125,144,171],{"skillNo":70,"name":71,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":72,"categories":73,"keywords":79,"publishedAt":37},"01M6GDRVS6FXX3ESH0C9DW01C0","test_skill","https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fscratch\u002Ftest_skill\u002FSKILL.md",[74],{"categoryNo":75,"categoryName":76,"taxonomyType":77,"taxonomyTypeDesc":78},"01JBSEEDCAT000000000000008","测试与质量","SCENARIO","使用场景",[80,81],"Test Skill","test",{"skillNo":83,"name":84,"nameZh":6,"description":85,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":86,"categories":87,"keywords":88,"publishedAt":37},"01M6GDRQ40HX22MA6XWC31RHHK","zustand-store-ts","Create Zustand stores following established patterns with proper TypeScript types and middleware.","https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fmodules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Fzustand-store-ts\u002FSKILL.md",[],[89,90,91,92,93,94,95,24,96,97],"zustand store ts","zustand","store","with","types","middleware","patterns","create","typescript",{"skillNo":99,"name":100,"nameZh":6,"description":101,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":102,"categories":103,"keywords":107,"publishedAt":37},"01M6GDRKEA0WE670SPFWX5GKCN","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\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fmodules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Fzoom-automation\u002FSKILL.md",[104],{"categoryNo":105,"categoryName":106,"taxonomyType":77,"taxonomyTypeDesc":78},"01JBSEEDCAT000000000000023","Skill与智能体开发",[108,109,110,111,112,113,114,115,116,117,118,119,120,121,24,122,123,124],"automation","zoom automation","zoom","first","Tools","search","MCP","via","meeting","automate","critical","creation","webinars","composio","recordings","management","tracking",{"skillNo":126,"name":127,"nameZh":6,"description":128,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":129,"categories":130,"keywords":132,"publishedAt":37},"01M6GDRFS1452PC71JQ38S24HR","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\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fmodules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Fzoho-crm-automation\u002FSKILL.md",[131],{"categoryNo":105,"categoryName":106,"taxonomyType":77,"taxonomyTypeDesc":78},[133,108,134,135,136,137,138,24,113,139,121,140,118,117,112,141,96,142,114,143],"crm automation","zoho crm","crm","zoho crm automation","zoho","leads","contacts","records","update","tasks","manage",{"skillNo":145,"name":146,"nameZh":6,"description":147,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":148,"categories":149,"keywords":153,"publishedAt":37},"01M6GDRCKQBAVTGHX5XBH26KPZ","zod-validation-expert","Expert in Zod — TypeScript-first schema validation. Covers parsing, custom errors, refinements, type inference, and integration with React Hook Form, Next.js, and tRPC.","https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fmodules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Fzod-validation-expert\u002FSKILL.md",[150],{"categoryNo":151,"categoryName":152,"taxonomyType":77,"taxonomyTypeDesc":78},"01JBSEEDCAT000000000000009","前端开发",[154,155,156,157,158,97,159,160,161,162,163,164,92,165,166,167,168,24,169,170],"expert","zod","zod validation expert","validation","react","safe","parsing","errors","schema validation","react hook form","hook","trpc","form","type","next","schema","Next.js",{"skillNo":172,"name":173,"nameZh":6,"description":174,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":175,"categories":176,"keywords":178,"publishedAt":37},"01M6GDR658B08K4MY0RWD4A6EH","zeroize-audit","Detects missing zeroization of sensitive data in source code and identifies zeroization removed by compiler optimizations, with assembly-level analysis, and control-flow verification. Use for auditing C\u002FC++\u002FRust code handling secrets, keys, passwords, or other sensitive data.","https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fmodules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Fzeroize-audit\u002FSKILL.md",[177],{"categoryNo":105,"categoryName":106,"taxonomyType":77,"taxonomyTypeDesc":78},[179,180,181,182,183,184,185,186,24,187,188,189,190,191,34,35,192,193,194,114],"zeroize audit","audit","write","passwords","get","project","c++","activate","assembly","read","Bash","secrets","analysis","verification","code","rust"]