[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6CV1WNNVB5GYWN2G2ZXCDXC":3,"skill-same:01M6CV1WNNVB5GYWN2G2ZXCDXC":65},{"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":36,"linkOnly":37,"markdownContent":38,"markdownBody":39,"frontMatter":40,"refName":43,"commitSha":44,"skillDirectory":45,"forksCount":46,"repositoryHtmlUrl":47,"repositoryHomepageUrl":47,"ownerHtmlUrl":48,"ownerBlogUrl":6,"ownerDescription":49,"updatedAt":50,"install":51,"resources":64},"01M6CV1WNNVB5GYWN2G2ZXCDXC","notion-automation",null,"Automate Notion tasks via Rube MCP (Composio): pages, databases, blocks, comments, users. Always search tools first for current schemas.","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\u002Fnotion-automation\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],"notion","automation","notion automation","MCP","tasks","search","Tools","first","automate","databases","community","composio","2026-11-10 10:12:30",false,"---\nname: notion-automation\ndescription: \"Automate Notion tasks via Rube MCP (Composio): pages, databases, blocks, comments, users. Always search tools first for current schemas.\"\nrisk: critical\nsource: community\ndate_added: \"2026-02-27\"\n---\n\n# Notion Automation via Rube MCP\n\nAutomate Notion operations through Composio's Notion toolkit via Rube MCP.\n\n## Prerequisites\n\n- Rube MCP must be connected (RUBE_SEARCH_TOOLS available)\n- Active Notion connection via `RUBE_MANAGE_CONNECTIONS` with toolkit `notion`\n- Always call `RUBE_SEARCH_TOOLS` first to get current tool schemas\n\n## Setup\n\n**Get Rube MCP**: Add `https:\u002F\u002Frube.app\u002Fmcp` as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works.\n\n\n1. Verify Rube MCP is available by confirming `RUBE_SEARCH_TOOLS` responds\n2. Call `RUBE_MANAGE_CONNECTIONS` with toolkit `notion`\n3. If connection is not ACTIVE, follow the returned auth link to complete Notion OAuth\n4. Confirm connection status shows ACTIVE before running any workflows\n\n## Core Workflows\n\n### 1. Create and Manage Pages\n\n**When to use**: User wants to create, update, or archive Notion pages\n\n**Tool sequence**:\n1. `NOTION_SEARCH_NOTION_PAGE` - Find parent page or existing page [Prerequisite]\n2. `NOTION_CREATE_NOTION_PAGE` - Create a new page under a parent [Optional]\n3. `NOTION_RETRIEVE_PAGE` - Get page metadata\u002Fproperties [Optional]\n4. `NOTION_UPDATE_PAGE` - Update page properties, title, icon, cover [Optional]\n5. `NOTION_ARCHIVE_NOTION_PAGE` - Soft-delete (archive) a page [Optional]\n\n**Key parameters**:\n- `query`: Search text for SEARCH_NOTION_PAGE\n- `parent_id`: Parent page or database ID\n- `page_id`: Page ID for retrieval\u002Fupdate\u002Farchive\n- `properties`: Page property values matching parent schema\n\n**Pitfalls**:\n- RETRIEVE_PAGE returns only metadata\u002Fproperties, NOT body content; use FETCH_BLOCK_CONTENTS for page body\n- ARCHIVE_NOTION_PAGE is a soft-delete (sets archived=true), not permanent deletion\n- Broad searches can look incomplete unless has_more\u002Fnext_cursor is fully paginated\n\n### 2. Query and Manage Databases\n\n**When to use**: User wants to query database rows, insert entries, or update records\n\n**Tool sequence**:\n1. `NOTION_SEARCH_NOTION_PAGE` - Find the database by name [Prerequisite]\n2. `NOTION_FETCH_DATABASE` - Inspect schema and properties [Prerequisite]\n3. `NOTION_QUERY_DATABASE` \u002F `NOTION_QUERY_DATABASE_WITH_FILTER` - Query rows [Required]\n4. `NOTION_INSERT_ROW_DATABASE` - Add new entries [Optional]\n5. `NOTION_UPDATE_ROW_DATABASE` - Update existing entries [Optional]\n\n**Key parameters**:\n- `database_id`: Database ID (from search or URL)\n- `filter`: Filter object matching Notion filter syntax\n- `sorts`: Array of sort objects\n- `start_cursor`: Pagination cursor from previous response\n- `properties`: Property values matching database schema for inserts\u002Fupdates\n\n**Pitfalls**:\n- 404 object_not_found usually means wrong database_id or the database is not shared with the integration\n- Results are paginated; ignoring has_more\u002Fnext_cursor silently truncates reads\n- Schema mismatches or missing required properties cause 400 validation_error\n- Formula and read-only fields cannot be set via INSERT_ROW_DATABASE\n- Property names in filters must match schema exactly (case-sensitive)\n\n### 3. Manage Blocks and Page Content\n\n**When to use**: User wants to read, append, or modify content blocks in a page\n\n**Tool sequence**:\n1. `NOTION_FETCH_BLOCK_CONTENTS` - Read child blocks of a page [Required]\n2. `NOTION_ADD_MULTIPLE_PAGE_CONTENT` - Append blocks to a page [Optional]\n3. `NOTION_APPEND_TEXT_BLOCKS` - Append text-only blocks [Optional]\n4. `NOTION_REPLACE_PAGE_CONTENT` - Replace all page content [Optional]\n5. `NOTION_DELETE_BLOCK` - Remove a specific block [Optional]\n\n**Key parameters**:\n- `block_id` \u002F `page_id`: Target page or block ID\n- `content_blocks`: Array of block objects (NOT child_blocks)\n- `text`: Plain text content for APPEND_TEXT_BLOCKS\n\n**Pitfalls**:\n- Use `content_blocks` parameter, NOT `child_blocks` -- the latter fails validation\n- ADD_MULTIPLE_PAGE_CONTENT fails on archived pages; unarchive via UPDATE_PAGE first\n- Created blocks are in response.data.results; persist block IDs for later edits\n- DELETE_BLOCK is archival (archived=true), not permanent deletion\n\n### 4. Manage Database Schema\n\n**When to use**: User wants to create databases or modify their structure\n\n**Tool sequence**:\n1. `NOTION_FETCH_DATABASE` - Inspect current schema [Prerequisite]\n2. `NOTION_CREATE_DATABASE` - Create a new database [Optional]\n3. `NOTION_UPDATE_SCHEMA_DATABASE` - Modify database properties [Optional]\n\n**Key parameters**:\n- `parent_id`: Parent page ID for new databases\n- `title`: Database title\n- `properties`: Property definitions with types and options\n- `database_id`: Database ID for schema updates\n\n**Pitfalls**:\n- Cannot change property types via UPDATE_SCHEMA; must create new property and migrate data\n- Formula, rollup, and relation properties have complex configuration requirements\n\n### 5. Manage Users and Comments\n\n**When to use**: User wants to list workspace users or manage comments on pages\n\n**Tool sequence**:\n1. `NOTION_LIST_USERS` - List all workspace users [Optional]\n2. `NOTION_GET_ABOUT_ME` - Get current authenticated user [Optional]\n3. `NOTION_CREATE_COMMENT` - Add a comment to a page [Optional]\n4. `NOTION_FETCH_COMMENTS` - List comments on a page [Optional]\n\n**Key parameters**:\n- `page_id`: Page ID for comments (also called `discussion_id`)\n- `rich_text`: Comment content as rich text array\n\n**Pitfalls**:\n- Comments are linked to pages, not individual blocks\n- User IDs from LIST_USERS are needed for people-type property filters\n\n## Common Patterns\n\n### ID Resolution\n\n**Page\u002FDatabase name -> ID**:\n```\n1. Call NOTION_SEARCH_NOTION_PAGE with query=name\n2. Paginate with has_more\u002Fnext_cursor until found\n3. Extract id from matching result\n```\n\n**Database schema inspection**:\n```\n1. Call NOTION_FETCH_DATABASE with database_id\n2. Extract properties object for field names and types\n3. Use exact property names in queries and inserts\n```\n\n### Pagination\n\n- Set `page_size` for results per page (max 100)\n- Check response for `has_more` boolean\n- Pass `start_cursor` or `next_cursor` in next request\n- Continue until `has_more` is false\n\n### Notion Filter Syntax\n\n**Single filter**:\n```json\n{\"property\": \"Status\", \"select\": {\"equals\": \"Done\"}}\n```\n\n**Compound filter**:\n```json\n{\"and\": [\n  {\"property\": \"Status\", \"select\": {\"equals\": \"In Progress\"}},\n  {\"property\": \"Assignee\", \"people\": {\"contains\": \"user-id\"}}\n]}\n```\n\n## Known Pitfalls\n\n**Integration Sharing**:\n- Pages and databases must be shared with the Notion integration to be accessible\n- Title queries can return 0 when the item is not shared with the integration\n\n**Property Types**:\n- Property names are case-sensitive and must match schema exactly\n- Formula, rollup, and created_time fields are read-only\n- Select\u002Fmulti-select values must match existing options unless creating new ones\n\n**Response Parsing**:\n- Response data may be nested under `data_preview` or `data.results`\n- Parse defensively with fallbacks for different nesting levels\n\n## Quick Reference\n\n| Task | Tool Slug | Key Params |\n|------|-----------|------------|\n| Search pages\u002Fdatabases | NOTION_SEARCH_NOTION_PAGE | query |\n| Create page | NOTION_CREATE_NOTION_PAGE | parent_id, properties |\n| Get page metadata | NOTION_RETRIEVE_PAGE | page_id |\n| Update page | NOTION_UPDATE_PAGE | page_id, properties |\n| Archive page | NOTION_ARCHIVE_NOTION_PAGE | page_id |\n| Duplicate page | NOTION_DUPLICATE_PAGE | page_id |\n| Get page blocks | NOTION_FETCH_BLOCK_CONTENTS | block_id |\n| Append blocks | NOTION_ADD_MULTIPLE_PAGE_CONTENT | page_id, content_blocks |\n| Append text | NOTION_APPEND_TEXT_BLOCKS | page_id, text |\n| Replace content | NOTION_REPLACE_PAGE_CONTENT | page_id, content_blocks |\n| Delete block | NOTION_DELETE_BLOCK | block_id |\n| Query database | NOTION_QUERY_DATABASE | database_id, filter, sorts |\n| Query with filter | NOTION_QUERY_DATABASE_WITH_FILTER | database_id, filter |\n| Insert row | NOTION_INSERT_ROW_DATABASE | database_id, properties |\n| Update row | NOTION_UPDATE_ROW_DATABASE | page_id, properties |\n| Get database schema | NOTION_FETCH_DATABASE | database_id |\n| Create database | NOTION_CREATE_DATABASE | parent_id, title, properties |\n| Update schema | NOTION_UPDATE_SCHEMA_DATABASE | database_id, properties |\n| List users | NOTION_LIST_USERS | (none) |\n| Create comment | NOTION_CREATE_COMMENT | page_id, rich_text |\n| List comments | NOTION_FETCH_COMMENTS | page_id |\n\n## When to Use\nThis skill is applicable to execute the workflow or actions described in the overview.\n","# Notion Automation via Rube MCP\n\nAutomate Notion operations through Composio's Notion toolkit via Rube MCP.\n\n## Prerequisites\n\n- Rube MCP must be connected (RUBE_SEARCH_TOOLS available)\n- Active Notion connection via `RUBE_MANAGE_CONNECTIONS` with toolkit `notion`\n- Always call `RUBE_SEARCH_TOOLS` first to get current tool schemas\n\n## Setup\n\n**Get Rube MCP**: Add `https:\u002F\u002Frube.app\u002Fmcp` as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works.\n\n\n1. Verify Rube MCP is available by confirming `RUBE_SEARCH_TOOLS` responds\n2. Call `RUBE_MANAGE_CONNECTIONS` with toolkit `notion`\n3. If connection is not ACTIVE, follow the returned auth link to complete Notion OAuth\n4. Confirm connection status shows ACTIVE before running any workflows\n\n## Core Workflows\n\n### 1. Create and Manage Pages\n\n**When to use**: User wants to create, update, or archive Notion pages\n\n**Tool sequence**:\n1. `NOTION_SEARCH_NOTION_PAGE` - Find parent page or existing page [Prerequisite]\n2. `NOTION_CREATE_NOTION_PAGE` - Create a new page under a parent [Optional]\n3. `NOTION_RETRIEVE_PAGE` - Get page metadata\u002Fproperties [Optional]\n4. `NOTION_UPDATE_PAGE` - Update page properties, title, icon, cover [Optional]\n5. `NOTION_ARCHIVE_NOTION_PAGE` - Soft-delete (archive) a page [Optional]\n\n**Key parameters**:\n- `query`: Search text for SEARCH_NOTION_PAGE\n- `parent_id`: Parent page or database ID\n- `page_id`: Page ID for retrieval\u002Fupdate\u002Farchive\n- `properties`: Page property values matching parent schema\n\n**Pitfalls**:\n- RETRIEVE_PAGE returns only metadata\u002Fproperties, NOT body content; use FETCH_BLOCK_CONTENTS for page body\n- ARCHIVE_NOTION_PAGE is a soft-delete (sets archived=true), not permanent deletion\n- Broad searches can look incomplete unless has_more\u002Fnext_cursor is fully paginated\n\n### 2. Query and Manage Databases\n\n**When to use**: User wants to query database rows, insert entries, or update records\n\n**Tool sequence**:\n1. `NOTION_SEARCH_NOTION_PAGE` - Find the database by name [Prerequisite]\n2. `NOTION_FETCH_DATABASE` - Inspect schema and properties [Prerequisite]\n3. `NOTION_QUERY_DATABASE` \u002F `NOTION_QUERY_DATABASE_WITH_FILTER` - Query rows [Required]\n4. `NOTION_INSERT_ROW_DATABASE` - Add new entries [Optional]\n5. `NOTION_UPDATE_ROW_DATABASE` - Update existing entries [Optional]\n\n**Key parameters**:\n- `database_id`: Database ID (from search or URL)\n- `filter`: Filter object matching Notion filter syntax\n- `sorts`: Array of sort objects\n- `start_cursor`: Pagination cursor from previous response\n- `properties`: Property values matching database schema for inserts\u002Fupdates\n\n**Pitfalls**:\n- 404 object_not_found usually means wrong database_id or the database is not shared with the integration\n- Results are paginated; ignoring has_more\u002Fnext_cursor silently truncates reads\n- Schema mismatches or missing required properties cause 400 validation_error\n- Formula and read-only fields cannot be set via INSERT_ROW_DATABASE\n- Property names in filters must match schema exactly (case-sensitive)\n\n### 3. Manage Blocks and Page Content\n\n**When to use**: User wants to read, append, or modify content blocks in a page\n\n**Tool sequence**:\n1. `NOTION_FETCH_BLOCK_CONTENTS` - Read child blocks of a page [Required]\n2. `NOTION_ADD_MULTIPLE_PAGE_CONTENT` - Append blocks to a page [Optional]\n3. `NOTION_APPEND_TEXT_BLOCKS` - Append text-only blocks [Optional]\n4. `NOTION_REPLACE_PAGE_CONTENT` - Replace all page content [Optional]\n5. `NOTION_DELETE_BLOCK` - Remove a specific block [Optional]\n\n**Key parameters**:\n- `block_id` \u002F `page_id`: Target page or block ID\n- `content_blocks`: Array of block objects (NOT child_blocks)\n- `text`: Plain text content for APPEND_TEXT_BLOCKS\n\n**Pitfalls**:\n- Use `content_blocks` parameter, NOT `child_blocks` -- the latter fails validation\n- ADD_MULTIPLE_PAGE_CONTENT fails on archived pages; unarchive via UPDATE_PAGE first\n- Created blocks are in response.data.results; persist block IDs for later edits\n- DELETE_BLOCK is archival (archived=true), not permanent deletion\n\n### 4. Manage Database Schema\n\n**When to use**: User wants to create databases or modify their structure\n\n**Tool sequence**:\n1. `NOTION_FETCH_DATABASE` - Inspect current schema [Prerequisite]\n2. `NOTION_CREATE_DATABASE` - Create a new database [Optional]\n3. `NOTION_UPDATE_SCHEMA_DATABASE` - Modify database properties [Optional]\n\n**Key parameters**:\n- `parent_id`: Parent page ID for new databases\n- `title`: Database title\n- `properties`: Property definitions with types and options\n- `database_id`: Database ID for schema updates\n\n**Pitfalls**:\n- Cannot change property types via UPDATE_SCHEMA; must create new property and migrate data\n- Formula, rollup, and relation properties have complex configuration requirements\n\n### 5. Manage Users and Comments\n\n**When to use**: User wants to list workspace users or manage comments on pages\n\n**Tool sequence**:\n1. `NOTION_LIST_USERS` - List all workspace users [Optional]\n2. `NOTION_GET_ABOUT_ME` - Get current authenticated user [Optional]\n3. `NOTION_CREATE_COMMENT` - Add a comment to a page [Optional]\n4. `NOTION_FETCH_COMMENTS` - List comments on a page [Optional]\n\n**Key parameters**:\n- `page_id`: Page ID for comments (also called `discussion_id`)\n- `rich_text`: Comment content as rich text array\n\n**Pitfalls**:\n- Comments are linked to pages, not individual blocks\n- User IDs from LIST_USERS are needed for people-type property filters\n\n## Common Patterns\n\n### ID Resolution\n\n**Page\u002FDatabase name -> ID**:\n```\n1. Call NOTION_SEARCH_NOTION_PAGE with query=name\n2. Paginate with has_more\u002Fnext_cursor until found\n3. Extract id from matching result\n```\n\n**Database schema inspection**:\n```\n1. Call NOTION_FETCH_DATABASE with database_id\n2. Extract properties object for field names and types\n3. Use exact property names in queries and inserts\n```\n\n### Pagination\n\n- Set `page_size` for results per page (max 100)\n- Check response for `has_more` boolean\n- Pass `start_cursor` or `next_cursor` in next request\n- Continue until `has_more` is false\n\n### Notion Filter Syntax\n\n**Single filter**:\n```json\n{\"property\": \"Status\", \"select\": {\"equals\": \"Done\"}}\n```\n\n**Compound filter**:\n```json\n{\"and\": [\n  {\"property\": \"Status\", \"select\": {\"equals\": \"In Progress\"}},\n  {\"property\": \"Assignee\", \"people\": {\"contains\": \"user-id\"}}\n]}\n```\n\n## Known Pitfalls\n\n**Integration Sharing**:\n- Pages and databases must be shared with the Notion integration to be accessible\n- Title queries can return 0 when the item is not shared with the integration\n\n**Property Types**:\n- Property names are case-sensitive and must match schema exactly\n- Formula, rollup, and created_time fields are read-only\n- Select\u002Fmulti-select values must match existing options unless creating new ones\n\n**Response Parsing**:\n- Response data may be nested under `data_preview` or `data.results`\n- Parse defensively with fallbacks for different nesting levels\n\n## Quick Reference\n\n| Task | Tool Slug | Key Params |\n|------|-----------|------------|\n| Search pages\u002Fdatabases | NOTION_SEARCH_NOTION_PAGE | query |\n| Create page | NOTION_CREATE_NOTION_PAGE | parent_id, properties |\n| Get page metadata | NOTION_RETRIEVE_PAGE | page_id |\n| Update page | NOTION_UPDATE_PAGE | page_id, properties |\n| Archive page | NOTION_ARCHIVE_NOTION_PAGE | page_id |\n| Duplicate page | NOTION_DUPLICATE_PAGE | page_id |\n| Get page blocks | NOTION_FETCH_BLOCK_CONTENTS | block_id |\n| Append blocks | NOTION_ADD_MULTIPLE_PAGE_CONTENT | page_id, content_blocks |\n| Append text | NOTION_APPEND_TEXT_BLOCKS | page_id, text |\n| Replace content | NOTION_REPLACE_PAGE_CONTENT | page_id, content_blocks |\n| Delete block | NOTION_DELETE_BLOCK | block_id |\n| Query database | NOTION_QUERY_DATABASE | database_id, filter, sorts |\n| Query with filter | NOTION_QUERY_DATABASE_WITH_FILTER | database_id, filter |\n| Insert row | NOTION_INSERT_ROW_DATABASE | database_id, properties |\n| Update row | NOTION_UPDATE_ROW_DATABASE | page_id, properties |\n| Get database schema | NOTION_FETCH_DATABASE | database_id |\n| Create database | NOTION_CREATE_DATABASE | parent_id, title, properties |\n| Update schema | NOTION_UPDATE_SCHEMA_DATABASE | database_id, properties |\n| List users | NOTION_LIST_USERS | (none) |\n| Create comment | NOTION_CREATE_COMMENT | page_id, rich_text |\n| List comments | NOTION_FETCH_COMMENTS | page_id |\n\n## When to Use\nThis skill is applicable to execute the workflow or actions described in the overview.\n",{"name":5,"risk":41,"source":34,"date_added":42,"description":7},"critical","2026-02-27","main","a50a3aa6b39fb0e1b7db88bef1bfc9c93606e126","modules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Fnotion-automation",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":52,"prompt":62,"zipAvailable":63},[53,56,59],{"tool":54,"command":55},"npx","npx skills add Sam-06060\u002Fjarvis-assistant --skill notion-automation",{"tool":57,"command":58},"bunx","bunx skills add Sam-06060\u002Fjarvis-assistant --skill notion-automation",{"tool":60,"command":61},"pnpm","pnpm dlx skills add Sam-06060\u002Fjarvis-assistant --skill notion-automation","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fmodules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Fnotion-automation\u002FSKILL.md",true,[],[66,77,93,110,128,155],{"skillNo":67,"name":68,"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":69,"categories":70,"keywords":74,"publishedAt":36},"01M6GDRVS6FXX3ESH0C9DW01C0","test_skill","https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fscratch\u002Ftest_skill\u002FSKILL.md",[71],{"categoryNo":72,"categoryName":73,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000008","测试与质量",[75,76],"Test Skill","test",{"skillNo":78,"name":79,"nameZh":6,"description":80,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":81,"categories":82,"keywords":83,"publishedAt":36},"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",[],[84,85,86,87,88,89,90,34,91,92],"zustand store ts","zustand","store","with","types","middleware","patterns","create","typescript",{"skillNo":94,"name":95,"nameZh":6,"description":96,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":97,"categories":98,"keywords":100,"publishedAt":36},"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",[99],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[25,101,102,31,30,29,27,103,104,32,41,105,106,35,34,107,108,109],"zoom automation","zoom","via","meeting","creation","webinars","recordings","management","tracking",{"skillNo":111,"name":112,"nameZh":6,"description":113,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":114,"categories":115,"keywords":117,"publishedAt":36},"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",[116],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[118,25,119,120,121,122,123,34,29,124,35,125,41,32,30,126,91,28,27,127],"crm automation","zoho crm","crm","zoho crm automation","zoho","leads","contacts","records","update","manage",{"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":137,"publishedAt":36},"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",[134],{"categoryNo":135,"categoryName":136,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000009","前端开发",[138,139,140,141,142,92,143,144,145,146,147,148,87,149,150,151,152,34,153,154],"expert","zod","zod validation expert","validation","react","safe","parsing","errors","schema validation","react hook form","hook","trpc","form","type","next","schema","Next.js",{"skillNo":156,"name":157,"nameZh":6,"description":158,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":159,"categories":160,"keywords":162,"publishedAt":36},"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",[161],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[163,164,165,166,167,168,169,170,34,171,172,173,174,175,176,177,178,179,180,27],"zeroize audit","audit","write","passwords","get","project","c++","activate","assembly","read","Bash","secrets","analysis","data","flow","verification","code","rust"]