[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6KJP7EMCKX54FZ72RNSTK2Q":3,"skill-same:01M6KJP7EMCKX54FZ72RNSTK2Q":70},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":15,"categories":16,"keywords":22,"publishedAt":43,"linkOnly":44,"markdownContent":45,"markdownBody":46,"frontMatter":47,"refName":48,"commitSha":49,"skillDirectory":50,"forksCount":51,"repositoryHtmlUrl":52,"repositoryHomepageUrl":53,"ownerHtmlUrl":54,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":55,"install":56,"resources":69},"01M6KJP7EMCKX54FZ72RNSTK2Q","meeting-request-parsing",null,"Parse meeting request emails from test_input.json to extract meeting details. This skill helps extract recipient email, message ID, meeting duration, and any date\u002Ftime constraints from JSON email records. Use this whenever you need to process meeting requests from a JSON file.","cxcscmu\u002FSkillLearnBench","cxcscmu","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F142838272?v=4","01M6KCQDFQWPDSN0MKZY96MSQP","01M6KCQDM7G70TKJ28NTSQC0RZ",93,"MIT","https:\u002F\u002Fgithub.com\u002Fcxcscmu\u002FSkillLearnBench\u002Fblob\u002Fmain\u002Fskills\u002Fb4-skill-creator-claude-haiku-4-5\u002Fschedule-planning\u002Fmeeting-request-parsing\u002FSKILL.md",[17],{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000034","行政与办公人员","PROFESSION","适用职业",[23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42],"meeting request parsing","request","parsing","meeting","time","requests","you","records","input","id","emails","test","message","use","process","extract","json","constraints","email","file","2026-11-10 10:12:30",false,"---\nname: meeting-request-parsing\ndescription: Parse meeting request emails from test_input.json to extract meeting details. This skill helps extract recipient email, message ID, meeting duration, and any date\u002Ftime constraints from JSON email records. Use this whenever you need to process meeting requests from a JSON file.\n---\n\n# Meeting Request Parsing\n\n## Overview\n\nThis skill parses meeting request emails stored in JSON format, extracting:\n- Recipient email address\n- Message ID (for reply tracking)\n- Meeting duration in hours\n- Specific date\u002Ftime constraints mentioned in the message body\n- Any other scheduling preferences\n\n## Reading and Parsing test_input.json\n\n### Step 1: Read the JSON File\n\nUse the Read tool to load the meeting requests:\n\n```\nRead \u002Froot\u002Ftest_input.json\n```\n\n### Step 2: Parse JSON Structure\n\nThe file should contain an array of email objects. Each email typically has:\n\n```json\n{\n  \"messageID\": \"string\",\n  \"from\": \"recipient_email@domain.com\",\n  \"subject\": \"Meeting Request\",\n  \"body\": \"Meeting body text with duration and constraints\"\n}\n```\n\n### Step 3: Extract Key Information\n\nFor each email, extract:\n\n1. **Message ID**: Unique identifier for this request (used in reply filename)\n2. **Recipient Email**: The sender's email (from the `from` field)\n3. **Meeting Duration**: Parse the body for duration mentions:\n   - Look for patterns: \"30 minutes\", \"1 hour\", \"2 hours\", \"45 minutes\"\n   - Convert to decimal hours (e.g., 30 min = 0.5 hours)\n4. **Date\u002FTime Constraints**: Check body for:\n   - Specific date requests: \"Tuesday\", \"March 25\", \"next week\"\n   - Time preferences: \"morning\", \"afternoon\", \"9am\", \"after 2pm\"\n   - Unavailability: \"not before\", \"not after\", \"cannot on\"\n5. **Special Notes**: Any other preferences mentioned\n\n### Step 4: Normalize Duration\n\nConvert meeting duration to consistent format:\n\n```\n\"30 minutes\" → 0.5 hours\n\"1 hour\" → 1.0 hours\n\"1.5 hours\" or \"1 hour 30 minutes\" → 1.5 hours\n\"2 hours\" → 2.0 hours\n```\n\nIf duration is not explicitly stated, use a default (typically 1 hour).\n\n### Step 5: Record Parsed Requests\n\nCreate a structured list:\n\n```json\n{\n  \"requests\": [\n    {\n      \"messageID\": \"msg123\",\n      \"recipient\": \"user@example.com\",\n      \"duration_hours\": 1.0,\n      \"date_constraints\": \"any day\",\n      \"time_constraints\": \"none\",\n      \"parsed_from_body\": \"relevant excerpt from email body\"\n    }\n  ]\n}\n```\n\n## Constraint Interpretation\n\n- **No constraints mentioned**: Assume any available time works\n- **Date mentioned**: Prioritize that specific date\n- **Time range mentioned**: Schedule within that time range\n- **\"Morning\"**: Typically 8 AM - 12 PM\n- **\"Afternoon\"**: Typically 12 PM - 5 PM\n- **Specific hour**: Use exact hour mentioned\n\n## Output Format\n\nReturn parsed requests as a structured list suitable for the meeting slot finder algorithm.\n","# Meeting Request Parsing\n\n## Overview\n\nThis skill parses meeting request emails stored in JSON format, extracting:\n- Recipient email address\n- Message ID (for reply tracking)\n- Meeting duration in hours\n- Specific date\u002Ftime constraints mentioned in the message body\n- Any other scheduling preferences\n\n## Reading and Parsing test_input.json\n\n### Step 1: Read the JSON File\n\nUse the Read tool to load the meeting requests:\n\n```\nRead \u002Froot\u002Ftest_input.json\n```\n\n### Step 2: Parse JSON Structure\n\nThe file should contain an array of email objects. Each email typically has:\n\n```json\n{\n  \"messageID\": \"string\",\n  \"from\": \"recipient_email@domain.com\",\n  \"subject\": \"Meeting Request\",\n  \"body\": \"Meeting body text with duration and constraints\"\n}\n```\n\n### Step 3: Extract Key Information\n\nFor each email, extract:\n\n1. **Message ID**: Unique identifier for this request (used in reply filename)\n2. **Recipient Email**: The sender's email (from the `from` field)\n3. **Meeting Duration**: Parse the body for duration mentions:\n   - Look for patterns: \"30 minutes\", \"1 hour\", \"2 hours\", \"45 minutes\"\n   - Convert to decimal hours (e.g., 30 min = 0.5 hours)\n4. **Date\u002FTime Constraints**: Check body for:\n   - Specific date requests: \"Tuesday\", \"March 25\", \"next week\"\n   - Time preferences: \"morning\", \"afternoon\", \"9am\", \"after 2pm\"\n   - Unavailability: \"not before\", \"not after\", \"cannot on\"\n5. **Special Notes**: Any other preferences mentioned\n\n### Step 4: Normalize Duration\n\nConvert meeting duration to consistent format:\n\n```\n\"30 minutes\" → 0.5 hours\n\"1 hour\" → 1.0 hours\n\"1.5 hours\" or \"1 hour 30 minutes\" → 1.5 hours\n\"2 hours\" → 2.0 hours\n```\n\nIf duration is not explicitly stated, use a default (typically 1 hour).\n\n### Step 5: Record Parsed Requests\n\nCreate a structured list:\n\n```json\n{\n  \"requests\": [\n    {\n      \"messageID\": \"msg123\",\n      \"recipient\": \"user@example.com\",\n      \"duration_hours\": 1.0,\n      \"date_constraints\": \"any day\",\n      \"time_constraints\": \"none\",\n      \"parsed_from_body\": \"relevant excerpt from email body\"\n    }\n  ]\n}\n```\n\n## Constraint Interpretation\n\n- **No constraints mentioned**: Assume any available time works\n- **Date mentioned**: Prioritize that specific date\n- **Time range mentioned**: Schedule within that time range\n- **\"Morning\"**: Typically 8 AM - 12 PM\n- **\"Afternoon\"**: Typically 12 PM - 5 PM\n- **Specific hour**: Use exact hour mentioned\n\n## Output Format\n\nReturn parsed requests as a structured list suitable for the meeting slot finder algorithm.\n",{"name":5,"description":7},"main","726e1f79b96b0cb3d729d0e55a1c847e0b5353ae","skills\u002Fb4-skill-creator-claude-haiku-4-5\u002Fschedule-planning\u002Fmeeting-request-parsing",8,"https:\u002F\u002Fgithub.com\u002Fcxcscmu\u002FSkillLearnBench","https:\u002F\u002Fcxcscmu.github.io\u002FSkillLearnBench","https:\u002F\u002Fgithub.com\u002Fcxcscmu","2026-10-02 22:55:36",{"source":8,"skillName":5,"commands":57,"prompt":67,"zipAvailable":68},[58,61,64],{"tool":59,"command":60},"npx","npx skills add cxcscmu\u002FSkillLearnBench --skill meeting-request-parsing",{"tool":62,"command":63},"bunx","bunx skills add cxcscmu\u002FSkillLearnBench --skill meeting-request-parsing",{"tool":65,"command":66},"pnpm","pnpm dlx skills add cxcscmu\u002FSkillLearnBench --skill meeting-request-parsing","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fcxcscmu\u002FSkillLearnBench\u002Fblob\u002Fmain\u002Fskills\u002Fb4-skill-creator-claude-haiku-4-5\u002Fschedule-planning\u002Fmeeting-request-parsing\u002FSKILL.md",true,[],[71,89,114,131,150,162],{"skillNo":72,"name":73,"nameZh":6,"description":74,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":75,"categories":76,"keywords":82,"publishedAt":43},"01M6KM5KH175P5ABP5JMX2SBDQ","object_counter","Count occurrences of an object in the image using computer vision algorithm.","https:\u002F\u002Fgithub.com\u002Fcxcscmu\u002FSkillLearnBench\u002Fblob\u002Fmain\u002Fskills\u002Fhuman_authored\u002Fvideo-object-counting\u002Fobject_counter\u002FSKILL.md",[77],{"categoryNo":78,"categoryName":79,"taxonomyType":80,"taxonomyTypeDesc":81},"01JBSEEDCAT000000000000016","图像与多媒体","SCENARIO","使用场景",[83,84,85,86,87,88],"object counter","object","vision","computer","Computer Vision","image",{"skillNo":90,"name":91,"nameZh":6,"description":92,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":93,"categories":94,"keywords":98,"publishedAt":43},"01M6KM51TMVXG79MMPCS6Y8G86","travel-planning-workflow","Invoke this skill when performing travel planning. It defines a structured workflow for generating itineraries. Following this workflow is essential to ensure the final plan satisfies user requirements.","https:\u002F\u002Fgithub.com\u002Fcxcscmu\u002FSkillLearnBench\u002Fblob\u002Fmain\u002Fskills\u002Fhuman_authored\u002Ftravel-planning\u002Ftravel-planning-workflow\u002FSKILL.md",[95],{"categoryNo":96,"categoryName":97,"taxonomyType":80,"taxonomyTypeDesc":81},"01JBSEEDCAT000000000000023","Skill与智能体开发",[99,100,101,102,103,104,105,106,107,108,109,110,111,112,113],"workflow","planning","planning workflow","travel","travel planning","travel planning workflow","structured","performing","plan","for","user","it","requirements","essential","itineraries",{"skillNo":115,"name":116,"nameZh":6,"description":117,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":118,"categories":119,"keywords":120,"publishedAt":43},"01M6KM4DY820XHS9YTSK5QP5HD","bundled-dataset-search-tool","invoke this skill when you need to perform database search for travel planning. This skill provides some useful pre-packaged tools to look up accommodations, attractions, cities, driving distance, flights, and restaurants from the bundled dataset.","https:\u002F\u002Fgithub.com\u002Fcxcscmu\u002FSkillLearnBench\u002Fblob\u002Fmain\u002Fskills\u002Fhuman_authored\u002Ftravel-planning\u002Fbundled-dataset-search-tool\u002FSKILL.md",[],[121,122,123,124,125,126,127,102,128,129,103,29,108,130,100],"search","tool","dataset","bundled dataset search tool","restaurants","Tools","up","look","flights","database",{"skillNo":132,"name":133,"nameZh":6,"description":134,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":135,"categories":136,"keywords":137,"publishedAt":43},"01M6KM465BB9PQ0B548HQSVAWZ","glm-output","Output-processing guidance for GLM tasks. Especially useful after glm-basics and glm-calibration when you need verifier-matching metrics from output.nc and a final \u002Froot\u002Fmetrics.json.","https:\u002F\u002Fgithub.com\u002Fcxcscmu\u002FSkillLearnBench\u002Fblob\u002Fmain\u002Fskills\u002Fhuman_authored\u002Ftemperature-simulation\u002Fglm-output\u002FSKILL.md",[],[138,139,140,108,141,142,39,143,144,145,146,147,29,148,149],"glm output","output","glm","tasks","metrics","basics","guidance","matching","verifier","processing","root","calibration",{"skillNo":151,"name":152,"nameZh":6,"description":153,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":154,"categories":155,"keywords":157,"publishedAt":43},"01M6KM40KY3QWDW5W97S39R2BC","glm-calibration","Calibration guidance for GLM tasks. Often most effective after glm-basics has clarified the setup; glm-output is the companion skill for exact final metric computation.","https:\u002F\u002Fgithub.com\u002Fcxcscmu\u002FSkillLearnBench\u002Fblob\u002Fmain\u002Fskills\u002Fhuman_authored\u002Ftemperature-simulation\u002Fglm-calibration\u002FSKILL.md",[156],{"categoryNo":96,"categoryName":97,"taxonomyType":80,"taxonomyTypeDesc":81},[158,149,140,139,144,143,141,159,160,108,161],"glm calibration","setup","companion","metric",{"skillNo":163,"name":164,"nameZh":6,"description":165,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":166,"categories":167,"keywords":168,"publishedAt":43},"01M6KM3VHHVSGMGHJQB3PPT6YG","glm-basics","A good starting point for GLM calibration tasks. Use to inspect glm3.nml, confirm how GLM runs, and identify the relevant files before moving on to calibration and output evaluation.","https:\u002F\u002Fgithub.com\u002Fcxcscmu\u002FSkillLearnBench\u002Fblob\u002Fmain\u002Fskills\u002Fhuman_authored\u002Ftemperature-simulation\u002Fglm-basics\u002FSKILL.md",[],[169,140,143,170,158,149,108,139,171,172,173,36,174,175,141],"glm basics","inspect","relevant","files","good","how","Evaluation"]