[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6H69T4CCP3MSAT1R93SX1FP":3,"skill-same:01M6H69T4CCP3MSAT1R93SX1FP":74},{"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":53,"commitSha":54,"skillDirectory":55,"forksCount":56,"repositoryHtmlUrl":57,"repositoryHomepageUrl":6,"ownerHtmlUrl":58,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":59,"install":60,"resources":73},"01M6H69T4CCP3MSAT1R93SX1FP","evernote-install-auth",null,"Install and configure Evernote SDK and OAuth authentication.\nUse when setting up a new Evernote integration, configuring API keys,\nor initializing Evernote in your project.\nTrigger with phrases like \"install evernote\", \"setup evernote\",\n\"evernote auth\", \"configure evernote API\", \"evernote oauth\".","micsapp\u002Fmicstec-skills","micsapp","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F82411001?v=4","01M6GWCFQ6D3PV8EHNY62NN5VW","01M6GWCFVE1PA5HG0DKC7AMFJ3",4,"MIT","https:\u002F\u002Fgithub.com\u002Fmicsapp\u002Fmicstec-skills\u002Fblob\u002Fmaster\u002Fclaude-code\u002Fplugins-plus-skills\u002Fplugins\u002Fsaas-packs\u002Fevernote-pack\u002Fskills\u002Fevernote-install-auth\u002FSKILL.md",[17],{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",[23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42],"auth","evernote","evernote install auth","install","pip","openclaw","trigger","io","project","up","use","edit","write","read","configure","Bash","api","OAuth","authentication","code","2026-11-10 10:12:30",false,"---\nname: evernote-install-auth\ndescription: |\n  Install and configure Evernote SDK and OAuth authentication.\n  Use when setting up a new Evernote integration, configuring API keys,\n  or initializing Evernote in your project.\n  Trigger with phrases like \"install evernote\", \"setup evernote\",\n  \"evernote auth\", \"configure evernote API\", \"evernote oauth\".\nallowed-tools: Read, Write, Edit, Bash(npm:*), Bash(pip:*), Grep\nversion: 1.0.0\nlicense: MIT\nauthor: Jeremy Longshore \u003Cjeremy@intentsolutions.io>\ncompatible-with: claude-code, codex, openclaw\n---\n# Evernote Install & Auth\n\n## Overview\n\nSet up Evernote SDK and configure OAuth 1.0a authentication for accessing the Evernote Cloud API.\n\n## Prerequisites\n\n- Node.js 18+ or Python 3.10+\n- Package manager (npm, pnpm, or pip)\n- Evernote developer account\n- API key from Evernote Developer Portal (requires approval, allow 5 business days)\n\n## Instructions\n\n### Step 1: Request API Key\n\n1. Go to [Evernote Developer Portal](https:\u002F\u002Fdev.evernote.com\u002F)\n2. Request an API key via the contact form\n3. Wait for manual approval (up to 5 business days)\n4. Receive your `consumerKey` and `consumerSecret`\n\n### Step 2: Install SDK\n\n```bash\nset -euo pipefail\n# Node.js\nnpm install evernote\n\n# Python\npip install evernote\n```\n\n### Step 3: Configure Environment\n\n```bash\n# Create .env file\ncat \u003C\u003C 'EOF' >> .env\nEVERNOTE_CONSUMER_KEY=your-consumer-key\nEVERNOTE_CONSUMER_SECRET=your-consumer-secret\nEVERNOTE_SANDBOX=true\nEOF\n```\n\n### Step 4: Initialize OAuth Client\n\n```javascript\n\u002F\u002F Node.js - Initialize client for OAuth flow\nconst Evernote = require('evernote');\n\nconst client = new Evernote.Client({\n  consumerKey: process.env.EVERNOTE_CONSUMER_KEY,\n  consumerSecret: process.env.EVERNOTE_CONSUMER_SECRET,\n  sandbox: process.env.EVERNOTE_SANDBOX === 'true',\n  china: false\n});\n```\n\n```python\n# Python - Initialize client\nfrom evernote.api.client import EvernoteClient\n\nclient = EvernoteClient(\n    consumer_key='your-consumer-key',\n    consumer_secret='your-consumer-secret',\n    sandbox=True\n)\n```\n\n### Step 5: Implement OAuth Flow\n\n```javascript\n\u002F\u002F Step 5a: Get request token and redirect URL\nconst callbackUrl = 'http:\u002F\u002Flocalhost:3000\u002Foauth\u002Fcallback';  # 3000: 3 seconds in ms\n\nclient.getRequestToken(callbackUrl, (error, oauthToken, oauthTokenSecret) => {\n  if (error) {\n    console.error('Failed to get request token:', error);\n    return;\n  }\n\n  \u002F\u002F Store tokens in session (required for callback)\n  req.session.oauthToken = oauthToken;\n  req.session.oauthTokenSecret = oauthTokenSecret;\n\n  \u002F\u002F Redirect user to Evernote authorization page\n  const authorizeUrl = client.getAuthorizeUrl(oauthToken);\n  res.redirect(authorizeUrl);\n});\n```\n\n```javascript\n\u002F\u002F Step 5b: Handle OAuth callback\napp.get('\u002Foauth\u002Fcallback', (req, res) => {\n  const oauthVerifier = req.query.oauth_verifier;\n\n  client.getAccessToken(\n    req.session.oauthToken,\n    req.session.oauthTokenSecret,\n    oauthVerifier,\n    (error, oauthAccessToken, oauthAccessTokenSecret, results) => {\n      if (error) {\n        console.error('Failed to get access token:', error);\n        return res.status(500).send('Authentication failed');  # HTTP 500 Internal Server Error\n      }\n\n      \u002F\u002F Store access token securely (valid for 1 year by default)\n      req.session.accessToken = oauthAccessToken;\n\n      \u002F\u002F Token expiration included in results.edam_expires\n      console.log('Token expires:', new Date(parseInt(results.edam_expires)));\n\n      res.redirect('\u002Fdashboard');\n    }\n  );\n});\n```\n\n### Step 6: Verify Connection\n\n```javascript\n\u002F\u002F Create authenticated client and verify\nconst authenticatedClient = new Evernote.Client({\n  token: req.session.accessToken,\n  sandbox: true\n});\n\nconst userStore = authenticatedClient.getUserStore();\nconst noteStore = authenticatedClient.getNoteStore();\n\n\u002F\u002F Verify connection\nuserStore.getUser().then(user => {\n  console.log('Authenticated as:', user.username);\n  console.log('User ID:', user.id);\n}).catch(err => {\n  console.error('Authentication verification failed:', err);\n});\n```\n\n## Development Tokens (Sandbox Only)\n\nFor development, use a Developer Token instead of full OAuth:\n\n1. Create a sandbox account at https:\u002F\u002Fsandbox.evernote.com\n2. Get a Developer Token from https:\u002F\u002Fsandbox.evernote.com\u002Fapi\u002FDeveloperToken.action\n3. Use directly without OAuth flow:\n\n```javascript\nconst client = new Evernote.Client({\n  token: process.env.EVERNOTE_DEV_TOKEN,\n  sandbox: true\n});\n\nconst noteStore = client.getNoteStore();\n```\n\n**Note:** Developer tokens are currently unavailable for production. Use OAuth for production applications.\n\n## Output\n\n- Installed SDK package in node_modules or site-packages\n- Environment variables configured\n- Working OAuth flow implementation\n- Successful connection verification\n\n## Error Handling\n\n| Error | Cause | Solution |\n|-------|-------|----------|\n| `Invalid consumer key` | Wrong or unapproved key | Verify key from developer portal |\n| `OAuth signature mismatch` | Incorrect consumer secret | Check secret matches portal |\n| `Token expired` | Access token > 1 year old | Re-authenticate user via OAuth |\n| `RATE_LIMIT_REACHED` | Too many API calls | Implement exponential backoff |\n| `Permission denied` | Insufficient API key permissions | Request additional permissions |\n\n## Token Expiration\n\n- Default token validity: **1 year**\n- Users can reduce to: 1 day, 1 week, or 1 month\n- Expiration timestamp in `edam_expires` parameter\n- Implement token refresh before expiration\n\n## Resources\n\n- [Evernote Developer Portal](https:\u002F\u002Fdev.evernote.com\u002F)\n- [OAuth Documentation](https:\u002F\u002Fdev.evernote.com\u002Fdoc\u002Farticles\u002Fauthentication.php)\n- [API Key Permissions](https:\u002F\u002Fdev.evernote.com\u002Fdoc\u002Farticles\u002Fpermissions.php)\n- [JavaScript SDK](https:\u002F\u002Fgithub.com\u002FEvernote\u002Fevernote-sdk-js)\n- [Python SDK](https:\u002F\u002Fgithub.com\u002FEvernote\u002Fevernote-sdk-python)\n\n## Next Steps\n\nAfter successful auth, proceed to `evernote-hello-world` for your first note creation.\n\n## Examples\n\n**Basic usage**: Apply evernote install auth to a standard project setup with default configuration options.\n\n**Advanced scenario**: Customize evernote install auth for production environments with multiple constraints and team-specific requirements.","# Evernote Install & Auth\n\n## Overview\n\nSet up Evernote SDK and configure OAuth 1.0a authentication for accessing the Evernote Cloud API.\n\n## Prerequisites\n\n- Node.js 18+ or Python 3.10+\n- Package manager (npm, pnpm, or pip)\n- Evernote developer account\n- API key from Evernote Developer Portal (requires approval, allow 5 business days)\n\n## Instructions\n\n### Step 1: Request API Key\n\n1. Go to [Evernote Developer Portal](https:\u002F\u002Fdev.evernote.com\u002F)\n2. Request an API key via the contact form\n3. Wait for manual approval (up to 5 business days)\n4. Receive your `consumerKey` and `consumerSecret`\n\n### Step 2: Install SDK\n\n```bash\nset -euo pipefail\n# Node.js\nnpm install evernote\n\n# Python\npip install evernote\n```\n\n### Step 3: Configure Environment\n\n```bash\n# Create .env file\ncat \u003C\u003C 'EOF' >> .env\nEVERNOTE_CONSUMER_KEY=your-consumer-key\nEVERNOTE_CONSUMER_SECRET=your-consumer-secret\nEVERNOTE_SANDBOX=true\nEOF\n```\n\n### Step 4: Initialize OAuth Client\n\n```javascript\n\u002F\u002F Node.js - Initialize client for OAuth flow\nconst Evernote = require('evernote');\n\nconst client = new Evernote.Client({\n  consumerKey: process.env.EVERNOTE_CONSUMER_KEY,\n  consumerSecret: process.env.EVERNOTE_CONSUMER_SECRET,\n  sandbox: process.env.EVERNOTE_SANDBOX === 'true',\n  china: false\n});\n```\n\n```python\n# Python - Initialize client\nfrom evernote.api.client import EvernoteClient\n\nclient = EvernoteClient(\n    consumer_key='your-consumer-key',\n    consumer_secret='your-consumer-secret',\n    sandbox=True\n)\n```\n\n### Step 5: Implement OAuth Flow\n\n```javascript\n\u002F\u002F Step 5a: Get request token and redirect URL\nconst callbackUrl = 'http:\u002F\u002Flocalhost:3000\u002Foauth\u002Fcallback';  # 3000: 3 seconds in ms\n\nclient.getRequestToken(callbackUrl, (error, oauthToken, oauthTokenSecret) => {\n  if (error) {\n    console.error('Failed to get request token:', error);\n    return;\n  }\n\n  \u002F\u002F Store tokens in session (required for callback)\n  req.session.oauthToken = oauthToken;\n  req.session.oauthTokenSecret = oauthTokenSecret;\n\n  \u002F\u002F Redirect user to Evernote authorization page\n  const authorizeUrl = client.getAuthorizeUrl(oauthToken);\n  res.redirect(authorizeUrl);\n});\n```\n\n```javascript\n\u002F\u002F Step 5b: Handle OAuth callback\napp.get('\u002Foauth\u002Fcallback', (req, res) => {\n  const oauthVerifier = req.query.oauth_verifier;\n\n  client.getAccessToken(\n    req.session.oauthToken,\n    req.session.oauthTokenSecret,\n    oauthVerifier,\n    (error, oauthAccessToken, oauthAccessTokenSecret, results) => {\n      if (error) {\n        console.error('Failed to get access token:', error);\n        return res.status(500).send('Authentication failed');  # HTTP 500 Internal Server Error\n      }\n\n      \u002F\u002F Store access token securely (valid for 1 year by default)\n      req.session.accessToken = oauthAccessToken;\n\n      \u002F\u002F Token expiration included in results.edam_expires\n      console.log('Token expires:', new Date(parseInt(results.edam_expires)));\n\n      res.redirect('\u002Fdashboard');\n    }\n  );\n});\n```\n\n### Step 6: Verify Connection\n\n```javascript\n\u002F\u002F Create authenticated client and verify\nconst authenticatedClient = new Evernote.Client({\n  token: req.session.accessToken,\n  sandbox: true\n});\n\nconst userStore = authenticatedClient.getUserStore();\nconst noteStore = authenticatedClient.getNoteStore();\n\n\u002F\u002F Verify connection\nuserStore.getUser().then(user => {\n  console.log('Authenticated as:', user.username);\n  console.log('User ID:', user.id);\n}).catch(err => {\n  console.error('Authentication verification failed:', err);\n});\n```\n\n## Development Tokens (Sandbox Only)\n\nFor development, use a Developer Token instead of full OAuth:\n\n1. Create a sandbox account at https:\u002F\u002Fsandbox.evernote.com\n2. Get a Developer Token from https:\u002F\u002Fsandbox.evernote.com\u002Fapi\u002FDeveloperToken.action\n3. Use directly without OAuth flow:\n\n```javascript\nconst client = new Evernote.Client({\n  token: process.env.EVERNOTE_DEV_TOKEN,\n  sandbox: true\n});\n\nconst noteStore = client.getNoteStore();\n```\n\n**Note:** Developer tokens are currently unavailable for production. Use OAuth for production applications.\n\n## Output\n\n- Installed SDK package in node_modules or site-packages\n- Environment variables configured\n- Working OAuth flow implementation\n- Successful connection verification\n\n## Error Handling\n\n| Error | Cause | Solution |\n|-------|-------|----------|\n| `Invalid consumer key` | Wrong or unapproved key | Verify key from developer portal |\n| `OAuth signature mismatch` | Incorrect consumer secret | Check secret matches portal |\n| `Token expired` | Access token > 1 year old | Re-authenticate user via OAuth |\n| `RATE_LIMIT_REACHED` | Too many API calls | Implement exponential backoff |\n| `Permission denied` | Insufficient API key permissions | Request additional permissions |\n\n## Token Expiration\n\n- Default token validity: **1 year**\n- Users can reduce to: 1 day, 1 week, or 1 month\n- Expiration timestamp in `edam_expires` parameter\n- Implement token refresh before expiration\n\n## Resources\n\n- [Evernote Developer Portal](https:\u002F\u002Fdev.evernote.com\u002F)\n- [OAuth Documentation](https:\u002F\u002Fdev.evernote.com\u002Fdoc\u002Farticles\u002Fauthentication.php)\n- [API Key Permissions](https:\u002F\u002Fdev.evernote.com\u002Fdoc\u002Farticles\u002Fpermissions.php)\n- [JavaScript SDK](https:\u002F\u002Fgithub.com\u002FEvernote\u002Fevernote-sdk-js)\n- [Python SDK](https:\u002F\u002Fgithub.com\u002FEvernote\u002Fevernote-sdk-python)\n\n## Next Steps\n\nAfter successful auth, proceed to `evernote-hello-world` for your first note creation.\n\n## Examples\n\n**Basic usage**: Apply evernote install auth to a standard project setup with default configuration options.\n\n**Advanced scenario**: Customize evernote install auth for production environments with multiple constraints and team-specific requirements.",{"name":5,"author":48,"license":14,"version":49,"description":50,"allowed-tools":51,"compatible-with":52},"Jeremy Longshore \u003Cjeremy@intentsolutions.io>","1.0.0","Install and configure Evernote SDK and OAuth authentication.\nUse when setting up a new Evernote integration, configuring API keys,\nor initializing Evernote in your project.\nTrigger with phrases like \"install evernote\", \"setup evernote\",\n\"evernote auth\", \"configure evernote API\", \"evernote oauth\".\n","Read, Write, Edit, Bash(npm:*), Bash(pip:*), Grep","claude-code, codex, openclaw","master","3f5d983eb4ef375b749adcd6b07ec03bd82ae8a8","claude-code\u002Fplugins-plus-skills\u002Fplugins\u002Fsaas-packs\u002Fevernote-pack\u002Fskills\u002Fevernote-install-auth",0,"https:\u002F\u002Fgithub.com\u002Fmicsapp\u002Fmicstec-skills","https:\u002F\u002Fgithub.com\u002Fmicsapp","2026-03-20 11:24:18",{"source":8,"skillName":5,"commands":61,"prompt":71,"zipAvailable":72},[62,65,68],{"tool":63,"command":64},"npx","npx skills add micsapp\u002Fmicstec-skills --skill evernote-install-auth",{"tool":66,"command":67},"bunx","bunx skills add micsapp\u002Fmicstec-skills --skill evernote-install-auth",{"tool":69,"command":70},"pnpm","pnpm dlx skills add micsapp\u002Fmicstec-skills --skill evernote-install-auth","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fmicsapp\u002Fmicstec-skills\u002Fblob\u002Fmaster\u002Fclaude-code\u002Fplugins-plus-skills\u002Fplugins\u002Fsaas-packs\u002Fevernote-pack\u002Fskills\u002Fevernote-install-auth\u002FSKILL.md",true,[],[75,106,135,155,175,198],{"skillNo":76,"name":77,"nameZh":6,"description":78,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":79,"categories":80,"keywords":87,"publishedAt":43},"01M6HBTJ02FXBFG9NYEHHYAP52","azure-apim-architecture","Analyzes and explains Azure API Management architecture decisions for enterprise API marketplace implementations using VNet Internal mode, Front Door, hybrid authentication, and multi-environment strategies. Use when discussing APIM component selection, network topology, cost optimization, or comparing alternatives like workspaces vs instances, VNet Internal vs External mode, or Front Door vs Application Gateway.","https:\u002F\u002Fgithub.com\u002Fmicsapp\u002Fmicstec-skills\u002Fblob\u002Fmaster\u002Fcopilot-cli\u002Fcopilot-agent-skills\u002F.github\u002Fskills\u002Fazure-apim-architecture\u002FSKILL.md",[81,86],{"categoryNo":82,"categoryName":83,"taxonomyType":84,"taxonomyTypeDesc":85},"01JBSEEDCAT000000000000010","后端与接口","SCENARIO","使用场景",{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},[88,89,90,91,41,92,93,94,95,39,96,97,98,99,100,101,102,103,104,105],"architecture","azure","azure apim architecture","component","gateway","topology","Optimization","network","team","environment","multi-environment","workspaces","instances","selection","strategies","azure api management","mode","for",{"skillNo":107,"name":108,"nameZh":6,"description":109,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":110,"categories":111,"keywords":120,"publishedAt":43},"01M6HBT7J4H082JEEA670B3EQ9","apiops-deployment","Guides deployment of Azure API Management infrastructure using Infrastructure as Code (Bicep\u002FTerraform), CI\u002FCD pipelines (GitHub Actions\u002FAzure DevOps), and APIOps workflows. Use when deploying APIM, creating pipelines, or implementing dev→test→prod promotion strategies.","https:\u002F\u002Fgithub.com\u002Fmicsapp\u002Fmicstec-skills\u002Fblob\u002Fmaster\u002Fcopilot-cli\u002Fcopilot-agent-skills\u002F.github\u002Fskills\u002Fapiops-deployment\u002FSKILL.md",[112,113,116,119],{"categoryNo":82,"categoryName":83,"taxonomyType":84,"taxonomyTypeDesc":85},{"categoryNo":114,"categoryName":115,"taxonomyType":84,"taxonomyTypeDesc":85},"01JBSEEDCAT000000000000011","运维与部署",{"categoryNo":117,"categoryName":118,"taxonomyType":84,"taxonomyTypeDesc":85},"01JBSEEDCAT000000000000023","Skill与智能体开发",{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},[121,122,123,124,89,125,42,126,127,128,129,130,39,96,102,131,132,103,133,134],"deployment","apiops deployment","workflows","azure devops","infrastructure","infrastructure as code","actions","ci","github actions","github-actions","as","guides","CI\u002FCD","implementing",{"skillNo":136,"name":137,"nameZh":6,"description":138,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":139,"categories":140,"keywords":142,"publishedAt":43},"01M6HBT2HEA23THNE9E00GYQBE","apim-policy-authoring","Creates production-ready Azure API Management policy XML for authentication (OAuth 2.0, JWT validation, subscription keys), rate limiting, CORS configuration, error handling, and API transformations. Use when implementing API security, access control, or request\u002Fresponse processing logic.","https:\u002F\u002Fgithub.com\u002Fmicsapp\u002Fmicstec-skills\u002Fblob\u002Fmaster\u002Fcopilot-cli\u002Fcopilot-agent-skills\u002F.github\u002Fskills\u002Fapim-policy-authoring\u002FSKILL.md",[141],{"categoryNo":82,"categoryName":83,"taxonomyType":84,"taxonomyTypeDesc":85},[143,144,145,146,89,41,39,96,147,33,148,149,150,151,152,103,153,154,134,105],"policy","authoring","apim policy authoring","security","access","ready","api security","Access Control","error","processing","cors configuration","production-ready",{"skillNo":156,"name":157,"nameZh":6,"description":158,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":159,"categories":160,"keywords":163,"publishedAt":43},"01M6HBSY65SB29J9WE9KYD0K6T","api-security-review","Reviews Azure API Management configurations for security vulnerabilities, OWASP API Security Top 10 compliance, VNet Internal mode validation, Private Link verification, and Azure Security Benchmark alignment. Use when performing security audits, pre-deployment validation, or compliance reviews.","https:\u002F\u002Fgithub.com\u002Fmicsapp\u002Fmicstec-skills\u002Fblob\u002Fmaster\u002Fcopilot-cli\u002Fcopilot-agent-skills\u002F.github\u002Fskills\u002Fapi-security-review\u002FSKILL.md",[161,162],{"categoryNo":82,"categoryName":83,"taxonomyType":84,"taxonomyTypeDesc":85},{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},[164,146,165,39,149,166,89,121,167,168,169,170,96,171,103,172,173,174,104,105],"review","security review","api security review","benchmark","verification","owasp","owasp-api","alignment","azure security","reviews","top",{"skillNo":176,"name":177,"nameZh":6,"description":178,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":179,"categories":180,"keywords":181,"publishedAt":43},"01M6HBSRW4PDFE6K4F8JYPZQ05","jira-cli","Interact with Jira from the command line to create, list, view, edit, and transition issues, manage sprints and epics, and perform common Jira workflows. Use when the user asks about Jira tasks, tickets, issues, sprints, or needs to manage project work items.","https:\u002F\u002Fgithub.com\u002Fmicsapp\u002Fmicstec-skills\u002Fblob\u002Fmaster\u002Fcopilot-cli\u002Fawesome-copilot-agents\u002Fskills\u002Fjira-cli\u002FSKILL.md",[],[182,183,184,123,185,186,187,188,39,189,190,191,34,192,193,31,194,195,196,197],"cli","jira","jira cli","init","tasks","create","issues","common","work","command","list","view","project work","token","line","sprints",{"skillNo":199,"name":200,"nameZh":6,"description":201,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":202,"categories":203,"keywords":204,"publishedAt":43},"01M6HBSNS3JHMW603G47TWE31H","calculator","Performs arbitrary-precision arithmetic calculations including addition, subtraction, multiplication, division, and exponents. Use when the user asks to calculate, compute, or evaluate math expressions, or when precise decimal arithmetic is needed to avoid floating-point errors.","https:\u002F\u002Fgithub.com\u002Fmicsapp\u002Fmicstec-skills\u002Fblob\u002Fmaster\u002Fcopilot-cli\u002Fawesome-copilot-agents\u002Fskills\u002Fcalculator\u002FSKILL.md",[],[200,205,206,207,208,209,210,33,211,212],"npm","js","calculate","node","math","user","compute","errors"]