{"id":"162e0328-3bf7-48b5-b999-5f7c36b90a55","shortId":"mJtSAd","kind":"skill","title":"Typespec Create Agent","tagline":"Awesome Copilot skill by Github","description":"# Create TypeSpec Declarative Agent\n\nCreate a complete TypeSpec declarative agent for Microsoft 365 Copilot with the following structure:\n\n## Requirements\n\nGenerate a `main.tsp` file with:\n\n1. **Agent Declaration**\n   - Use `@agent` decorator with a descriptive name and description\n   - Name should be 100 characters or less\n   - Description should be 1,000 characters or less\n\n2. **Instructions**\n   - Use `@instructions` decorator with clear behavioral guidelines\n   - Define the agent's role, expertise, and personality\n   - Specify what the agent should and shouldn't do\n   - Keep under 8,000 characters\n\n3. **Conversation Starters**\n   - Include 2-4 `@conversationStarter` decorators\n   - Each with a title and example query\n   - Make them diverse and showcase different capabilities\n\n4. **Capabilities** (based on user needs)\n   - `WebSearch` - for web content with optional site scoping\n   - `OneDriveAndSharePoint` - for document access with URL filtering\n   - `TeamsMessages` - for Teams channel/chat access\n   - `Email` - for email access with folder filtering\n   - `People` - for organization people search\n   - `CodeInterpreter` - for Python code execution\n   - `GraphicArt` - for image generation\n   - `GraphConnectors` - for Copilot connector content\n   - `Dataverse` - for Dataverse data access\n   - `Meetings` - for meeting content access\n\n## Template Structure\n\n```typescript\nimport \"@typespec/http\";\nimport \"@typespec/openapi3\";\nimport \"@microsoft/typespec-m365-copilot\";\n\nusing TypeSpec.Http;\nusing TypeSpec.M365.Copilot.Agents;\n\n@agent({\n  name: \"[Agent Name]\",\n  description: \"[Agent Description]\"\n})\n@instructions(\"\"\"\n  [Detailed instructions about agent behavior, role, and guidelines]\n\"\"\")\n@conversationStarter(#{\n  title: \"[Starter Title 1]\",\n  text: \"[Example query 1]\"\n})\n@conversationStarter(#{\n  title: \"[Starter Title 2]\",\n  text: \"[Example query 2]\"\n})\nnamespace [AgentName] {\n  // Add capabilities as operations here\n  op capabilityName is AgentCapabilities.[CapabilityType]<[Parameters]>;\n}\n```\n\n## Best Practices\n\n- Use descriptive, role-based agent names (e.g., \"Customer Support Assistant\", \"Research Helper\")\n- Write instructions in second person (\"You are...\")\n- Be specific about the agent's expertise and limitations\n- Include diverse conversation starters that showcase different features\n- Only include capabilities the agent actually needs\n- Scope capabilities (URLs, folders, etc.) when possible for better performance\n- Use triple-quoted strings for multi-line instructions\n\n## Examples\n\nAsk the user:\n1. What is the agent's purpose and role?\n2. What capabilities does it need?\n3. What knowledge sources should it access?\n4. What are typical user interactions?\n\nThen generate the complete TypeSpec agent definition.","tags":["typespec","create","agent","awesome","copilot","github"],"capabilities":["skill","source-github","category-awesome-copilot"],"categories":["awesome-copilot"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/github/awesome-copilot/typespec-create-agent","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"install_from":"skills.sh"}},"qualityScore":"0.300","qualityRationale":"deterministic score 0.30 from registry signals: · indexed on skills.sh · published under github/awesome-copilot","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill:v1","enrichmentVersion":1,"enrichedAt":"2026-04-22T08:40:12.522Z","embedding":null,"createdAt":"2026-04-18T20:26:12.070Z","updatedAt":"2026-04-22T08:40:12.522Z","lastSeenAt":"2026-04-22T08:40:12.522Z","tsv":"'-4':96 '000':56,89 '1':33,55,208,212,305 '100':48 '2':60,95,217,221,314 '3':91,320 '365':21 '4':113,327 '8':88 'access':130,138,142,169,174,326 'actual':279 'add':224 'agent':3,12,18,34,37,71,80,188,190,193,199,242,261,278,309,338 'agentcap':232 'agentnam':223 'ask':302 'assist':247 'awesom':4 'base':115,241 'behavior':67,200 'best':235 'better':289 'capabilitynam':230 'capabilitytyp':233 'capabl':112,114,225,276,282,316 'category-awesome-copilot' 'channel/chat':137 'charact':49,57,90 'clear':66 'code':154 'codeinterpret':151 'complet':15,336 'connector':163 'content':122,164,173 'convers':92,268 'conversationstart':97,204,213 'copilot':5,22,162 'creat':2,9,13 'custom':245 'data':168 'datavers':165,167 'declar':11,17,35 'decor':38,64,98 'defin':69 'definit':339 'descript':41,44,52,192,194,238 'detail':196 'differ':111,272 'divers':108,267 'document':129 'e.g':244 'email':139,141 'etc':285 'exampl':104,210,219,301 'execut':155 'expertis':74,263 'featur':273 'file':31 'filter':133,145 'folder':144,284 'follow':25 'generat':28,159,334 'github':8 'graphconnector':160 'graphicart':156 'guidelin':68,203 'helper':249 'imag':158 'import':178,180,182 'includ':94,266,275 'instruct':61,63,195,197,251,300 'interact':332 'keep':86 'knowledg':322 'less':51,59 'limit':265 'line':299 'main.tsp':30 'make':106 'meet':170,172 'microsoft':20 'microsoft/typespec-m365-copilot':183 'multi':298 'multi-lin':297 'name':42,45,189,191,243 'namespac':222 'need':118,280,319 'onedriveandsharepoint':127 'op':229 'oper':227 'option':124 'organ':148 'paramet':234 'peopl':146,149 'perform':290 'person':76,254 'possibl':287 'practic':236 'purpos':311 'python':153 'queri':105,211,220 'quot':294 'requir':27 'research':248 'role':73,201,240,313 'role-bas':239 'scope':126,281 'search':150 'second':253 'shouldn':83 'showcas':110,271 'site':125 'skill':6 'sourc':323 'source-github' 'specif':258 'specifi':77 'starter':93,206,215,269 'string':295 'structur':26,176 'support':246 'team':136 'teamsmessag':134 'templat':175 'text':209,218 'titl':102,205,207,214,216 'tripl':293 'triple-quot':292 'typescript':177 'typespec':1,10,16,337 'typespec.http':185 'typespec.m365.copilot.agents':187 'typespec/http':179 'typespec/openapi3':181 'typic':330 'url':132,283 'use':36,62,184,186,237,291 'user':117,304,331 'web':121 'websearch':119 'write':250","prices":[{"id":"eb41f977-3815-48c1-8da0-835b7f8ab292","listingId":"162e0328-3bf7-48b5-b999-5f7c36b90a55","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"github","category":"awesome-copilot","install_from":"skills.sh"},"createdAt":"2026-04-18T20:26:12.070Z"}],"sources":[{"listingId":"162e0328-3bf7-48b5-b999-5f7c36b90a55","source":"github","sourceId":"github/awesome-copilot/typespec-create-agent","sourceUrl":"https://github.com/github/awesome-copilot/tree/main/skills/typespec-create-agent","isPrimary":false,"firstSeenAt":"2026-04-18T21:51:30.367Z","lastSeenAt":"2026-04-22T06:52:33.169Z"},{"listingId":"162e0328-3bf7-48b5-b999-5f7c36b90a55","source":"skills_sh","sourceId":"github/awesome-copilot/typespec-create-agent","sourceUrl":"https://skills.sh/github/awesome-copilot/typespec-create-agent","isPrimary":true,"firstSeenAt":"2026-04-18T20:26:12.070Z","lastSeenAt":"2026-04-22T08:40:12.522Z"}],"details":{"listingId":"162e0328-3bf7-48b5-b999-5f7c36b90a55","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"github","slug":"typespec-create-agent","source":"skills_sh","category":"awesome-copilot","skills_sh_url":"https://skills.sh/github/awesome-copilot/typespec-create-agent"},"updatedAt":"2026-04-22T08:40:12.522Z"}}