[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6CT4MQ510GK18ETB1D2937S":3,"skill-same:01M6CT4MQ510GK18ETB1D2937S":74},{"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":45,"linkOnly":46,"markdownContent":47,"markdownBody":48,"frontMatter":49,"refName":50,"commitSha":51,"skillDirectory":52,"forksCount":53,"repositoryHtmlUrl":54,"repositoryHomepageUrl":55,"ownerHtmlUrl":56,"ownerBlogUrl":57,"ownerDescription":58,"updatedAt":59,"install":60,"resources":73},"01M6CT4MQ510GK18ETB1D2937S","notion",null,"Search, fetch, create, update, and move Notion pages and data sources. Use when users ask to look up docs, specs, notes, meeting notes, project context, roadmaps, trackers, or internal references stored in Notion, or when they explicitly ask to create or edit Notion content.","getsentry\u002Fjunior","getsentry","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F1396951?v=4","01M6CHRN2S1A588Q46ASWA5335","Sentry","01M6CT1V0TF72B1X0MQT5MSYXF",421,"Apache-2.0","https:\u002F\u002Fgithub.com\u002Fgetsentry\u002Fjunior\u002Fblob\u002Fmain\u002Fpackages\u002Fjunior-notion\u002Fskills\u002Fnotion\u002FSKILL.md",[],[5,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44],"when","docs","data sources","notion pages","meeting","move","users","sources","pages","project","project context","references","look","up","use","fetch","context","edit","ask","meeting notes","data","content","search","update","create","notes","2026-11-10 10:12:30",false,"---\nname: notion\ndescription: Search, fetch, create, update, and move Notion pages and data sources. Use when users ask to look up docs, specs, notes, meeting notes, project context, roadmaps, trackers, or internal references stored in Notion, or when they explicitly ask to create or edit Notion content.\n---\n\n# Notion Operations\n\nUse this skill for Notion search, fetch, and limited write workflows.\n\n## Workflow\n\n1. Classify the request:\n\n- Read-only lookup or summarization.\n- Explicit create, update, or move.\n\n2. Keep tool work mostly silent:\n\n- Send at most one short acknowledgment before Notion tool work.\n- Keep intermediate search\u002Ffetch reasoning internal.\n- Do not narrate each step with \"let me...\", \"I found...\", or partial findings while tools are still running.\n- Reply with the real answer once you have enough evidence, or explain the actual blocker if you cannot finish.\n\n3. Use the live Notion tool surface:\n\n- Prefer these allowlisted operations when present:\n  - search\n  - fetch\n  - create pages\n  - update page\n  - move pages\n- Discover the current create, update, or move tool before promising a write, and copy only fields justified by its live schema.\n- Do not claim write support if the needed operation is unavailable.\n- Do not use broader administrative or destructive Notion operations even if they appear in discovery.\n\n4. Search Notion:\n\n- Decide the actual search phrases first. Notion search is title-biased, so search for the likely page or data source title, not the user's full sentence.\n- Use 1-3 short explicit search phrases.\n- Good: `deployment pipeline`, `launch tracker`, `incident review`\n- Bad: `how do we handle deployment pipelines for mobile releases`\n- For list\u002Freport\u002Fcalendar requests, search for the canonical container first:\n  - page title: `holidays`, `company holidays`\n  - data source title: `people calendar`\n- Prefer one refinement round at most. If the first search already found a plausible canonical page or data source, fetch it before searching again.\n\n5. Fetch efficiently:\n\n- Search returns ranked page and data-source candidates only. Pick the best candidate, then fetch content using the returned URL or ID.\n- If a fetched page clearly points at an inline data source or database, fetch that data source next and work from it.\n- If the fetched data source already contains the rows and fields needed to answer, stop there and answer from that result.\n- Do not serially fetch many individual row pages when the container page or data source already exposes the needed fields.\n- Fetch individual rows only when a small number of important fields are still missing or ambiguous after fetching the canonical page or data source.\n- Once you have enough evidence to answer a read request, stop fetching and respond.\n\n6. Write only when the user explicitly asked:\n\n- Resolve the destination or target page first with search and fetch.\n- Fetch the current page before updating or moving it.\n- Keep the mutation to the exact title, parent, properties, and content the user requested.\n- Prefer partial updates over full rewrites.\n- After a successful write, return the resulting Notion page URL and a short summary of what changed.\n- If the authenticated user lacks access, or the write operation is unavailable, say so clearly and stop.\n\n## Guardrails\n\n- Default to read-only behavior unless the user explicitly asked to create, edit, or move Notion content.\n- Do not invent destinations, parents, properties, or large content expansions beyond the request.\n- Search results may be pages or data sources. Do not treat data sources as unsupported.\n- For scoped requests like \"US holidays\" or \"2026 holidays\", apply the user's scope when reading the fetched content and state any assumption you made if the source mixes multiple geos or years.\n- If search returns no accessible matches, say that no accessible pages or data sources matched and note that the content may be outside the user's Notion permissions or poorly matched by title.\n- If content retrieval fails for the top result, return the best matching Notion URL and explain that the result could not be fetched for summarization.\n- Leave database deletion, schema redesign, and other broad administrative operations out of scope.\n","# Notion Operations\n\nUse this skill for Notion search, fetch, and limited write workflows.\n\n## Workflow\n\n1. Classify the request:\n\n- Read-only lookup or summarization.\n- Explicit create, update, or move.\n\n2. Keep tool work mostly silent:\n\n- Send at most one short acknowledgment before Notion tool work.\n- Keep intermediate search\u002Ffetch reasoning internal.\n- Do not narrate each step with \"let me...\", \"I found...\", or partial findings while tools are still running.\n- Reply with the real answer once you have enough evidence, or explain the actual blocker if you cannot finish.\n\n3. Use the live Notion tool surface:\n\n- Prefer these allowlisted operations when present:\n  - search\n  - fetch\n  - create pages\n  - update page\n  - move pages\n- Discover the current create, update, or move tool before promising a write, and copy only fields justified by its live schema.\n- Do not claim write support if the needed operation is unavailable.\n- Do not use broader administrative or destructive Notion operations even if they appear in discovery.\n\n4. Search Notion:\n\n- Decide the actual search phrases first. Notion search is title-biased, so search for the likely page or data source title, not the user's full sentence.\n- Use 1-3 short explicit search phrases.\n- Good: `deployment pipeline`, `launch tracker`, `incident review`\n- Bad: `how do we handle deployment pipelines for mobile releases`\n- For list\u002Freport\u002Fcalendar requests, search for the canonical container first:\n  - page title: `holidays`, `company holidays`\n  - data source title: `people calendar`\n- Prefer one refinement round at most. If the first search already found a plausible canonical page or data source, fetch it before searching again.\n\n5. Fetch efficiently:\n\n- Search returns ranked page and data-source candidates only. Pick the best candidate, then fetch content using the returned URL or ID.\n- If a fetched page clearly points at an inline data source or database, fetch that data source next and work from it.\n- If the fetched data source already contains the rows and fields needed to answer, stop there and answer from that result.\n- Do not serially fetch many individual row pages when the container page or data source already exposes the needed fields.\n- Fetch individual rows only when a small number of important fields are still missing or ambiguous after fetching the canonical page or data source.\n- Once you have enough evidence to answer a read request, stop fetching and respond.\n\n6. Write only when the user explicitly asked:\n\n- Resolve the destination or target page first with search and fetch.\n- Fetch the current page before updating or moving it.\n- Keep the mutation to the exact title, parent, properties, and content the user requested.\n- Prefer partial updates over full rewrites.\n- After a successful write, return the resulting Notion page URL and a short summary of what changed.\n- If the authenticated user lacks access, or the write operation is unavailable, say so clearly and stop.\n\n## Guardrails\n\n- Default to read-only behavior unless the user explicitly asked to create, edit, or move Notion content.\n- Do not invent destinations, parents, properties, or large content expansions beyond the request.\n- Search results may be pages or data sources. Do not treat data sources as unsupported.\n- For scoped requests like \"US holidays\" or \"2026 holidays\", apply the user's scope when reading the fetched content and state any assumption you made if the source mixes multiple geos or years.\n- If search returns no accessible matches, say that no accessible pages or data sources matched and note that the content may be outside the user's Notion permissions or poorly matched by title.\n- If content retrieval fails for the top result, return the best matching Notion URL and explain that the result could not be fetched for summarization.\n- Leave database deletion, schema redesign, and other broad administrative operations out of scope.\n",{"name":5,"description":7},"main","5abc4b2bad9bd5ffe7b7fe0352f0999c6ca9c601","packages\u002Fjunior-notion\u002Fskills\u002Fnotion",45,"https:\u002F\u002Fgithub.com\u002Fgetsentry\u002Fjunior","https:\u002F\u002Fjunior.sentry.dev","https:\u002F\u002Fgithub.com\u002Fgetsentry","https:\u002F\u002Fsentry.io","Real-time crash reporting for your web apps, mobile apps, and games.","2026-11-15 03:43:52",{"source":8,"skillName":5,"commands":61,"prompt":71,"zipAvailable":72},[62,65,68],{"tool":63,"command":64},"npx","npx skills add getsentry\u002Fjunior --skill notion",{"tool":66,"command":67},"bunx","bunx skills add getsentry\u002Fjunior --skill notion",{"tool":69,"command":70},"pnpm","pnpm dlx skills add getsentry\u002Fjunior --skill notion","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fgetsentry\u002Fjunior\u002Fblob\u002Fmain\u002Fpackages\u002Fjunior-notion\u002Fskills\u002Fnotion\u002FSKILL.md",true,[],[75,103,131,153,177,196],{"skillNo":76,"name":77,"nameZh":6,"description":78,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":79,"categories":80,"keywords":86,"publishedAt":45},"01M6CT5E87W8P93FGAVYDWD6RD","junior","Build, review, or update Junior extension skills and plugins. Use when users ask to create a Junior SKILL.md, app skill, plugin, plugin.yaml, packaged plugin, MCP-backed plugin, OAuth or credentialed plugin, or to validate Junior extension files. Do not use for ordinary Junior usage, provider workflows, generic code editing, or non-Junior agent-skill authoring.","https:\u002F\u002Fgithub.com\u002Fgetsentry\u002Fjunior\u002Fblob\u002Fmain\u002Fskills\u002Fjunior\u002FSKILL.md",[81],{"categoryNo":82,"categoryName":83,"taxonomyType":84,"taxonomyTypeDesc":85},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[77,87,88,89,90,91,92,33,93,94,37,95,96,43,97,98,42,99,100,25,101,102,19],"do","provider","editing","skill authoring","files","MCP","OAuth","workflows","code","review","plugin","build","app","usage","generic","for",{"skillNo":104,"name":105,"nameZh":6,"description":106,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":107,"categories":108,"keywords":113,"publishedAt":45},"01M6CT5AQRDSG19SBJACXGPMY9","junior-qa","Validate Junior changes through local app-facing paths. Use for local client or agent QA, dashboard mock reporting UI QA, sharing a preview URL of a running UI, Docker sandbox provider QA (also from inside a Vercel Sandbox), PR readiness, plugin CLI commands, skill\u002Ftool\u002Fprompt\u002Fplugin behavior, and behavior that tests do not cover well but can be exercised with `pnpm cli -- chat ...`, another `pnpm cli` command, or `JUNIOR_DASHBOARD_MOCK_CONVERSATIONS=true pnpm dev`.","https:\u002F\u002Fgithub.com\u002Fgetsentry\u002Fjunior\u002Fblob\u002Fmain\u002Fskills\u002Fjunior-qa\u002FSKILL.md",[109,112],{"categoryNo":110,"categoryName":111,"taxonomyType":84,"taxonomyTypeDesc":85},"01JBSEEDCAT000000000000011","运维与部署",{"categoryNo":82,"categoryName":83,"taxonomyType":84,"taxonomyTypeDesc":85},[114,115,77,99,116,117,118,119,120,121,122,123,124,125,126,127,128,129,69,130],"qa","junior qa","conversations","local","URL","preview","dashboard","cli","command","reporting","pr readiness","commands","paths","cover","ui","but","running",{"skillNo":132,"name":133,"nameZh":6,"description":134,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":135,"categories":136,"keywords":138,"publishedAt":45},"01M6CT58D1SJNFZ19ZXK64ZX0R","eval-auth","Use for `\u002Feval-auth` requests in MCP auth-resume integration tests. Always connect through the disclosed MCP tool before answering, then continue the user's actual request using prior thread context when needed.","https:\u002F\u002Fgithub.com\u002Fgetsentry\u002Fjunior\u002Fblob\u002Fmain\u002Fpackages\u002Fjunior\u002Ftests\u002Ffixtures\u002Fplugins\u002Feval-auth\u002Fskills\u002Feval-auth\u002FSKILL.md",[137],{"categoryNo":82,"categoryName":83,"taxonomyType":84,"taxonomyTypeDesc":85},[139,140,141,142,143,144,145,146,92,33,147,148,35,149,102,150,151,152,19],"eval auth","auth","eval","resume","integration tests","tool","integration","continue","connect","user","requests","request","tests","thread",{"skillNo":154,"name":155,"nameZh":6,"description":156,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":157,"categories":158,"keywords":159,"publishedAt":45},"01M6CT55MZKCVBJH2X7T1HCRPX","jr-rpc","Manage low-level config and plugin introspection flows via jr-rpc bash commands. Use only when the user explicitly asks to read or update provider defaults\u002Fconfig or list installed plugins. Do not use for PR, branch, push, or auth-order questions; load the matching provider skill instead.","https:\u002F\u002Fgithub.com\u002Fgetsentry\u002Fjunior\u002Fblob\u002Fmain\u002Fpackages\u002Fjunior\u002Fskills\u002Fjr-rpc\u002FSKILL.md",[],[160,161,87,162,97,163,164,165,140,88,166,42,167,168,169,170,171,33,172,148,102,173,174,19,175,176],"jr rpc","rpc","branch","push","pr","introspection","manage","read","config","plugins","only","list","Bash","flows","load","via","questions",{"skillNo":178,"name":179,"nameZh":6,"description":180,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":181,"categories":182,"keywords":183,"publishedAt":45},"01M6PQN1EZPHRJ5XAJP2J3ZS2T","xdotcom","Read public X (Twitter) data through the read-only X API v2. Use when users share an x.com or twitter.com link, or ask what someone posted on X, what people are saying about a topic, product, or launch on X, how much chatter something got, or for a post's text, metrics, replies, or an account's recent posts. Do not use it to post, reply, like, repost, follow, or send DMs, or to read private or protected data.","https:\u002F\u002Fgithub.com\u002Fgetsentry\u002Fjunior\u002Fblob\u002Fmain\u002Fpackages\u002Fjunior-xdotcom\u002Fskills\u002Fxdotcom\u002FSKILL.md",[],[179,87,184,102,185,186,187,188,170,189,33,190,37,172,191,192,193,25,194,195,19],"posts","read-only","x api","send","twitter","chatter","people","api","share","replies","text","post",{"skillNo":197,"name":198,"nameZh":6,"description":199,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":200,"categories":201,"keywords":202,"publishedAt":45},"01M6CT5386D90KE6YH8Q8WGQZ0","vercel","Deploy and inspect Vercel apps, assign aliases, delete deployments, investigate logs, and monitor deployment outcomes. Use for Vercel deployment and log requests, not GitHub code changes or other cloud providers.","https:\u002F\u002Fgithub.com\u002Fgetsentry\u002Fjunior\u002Fblob\u002Fmain\u002Fpackages\u002Fjunior-vercel\u002Fskills\u002Fvercel\u002FSKILL.md",[],[198,203,204,205,206,207,208,209,210,211,212,33,213,95,214,215,216,102,217,218,219,220,149],"investigate","delete","outcomes","github","deployment","monitor","vercel deployment","github code","deployments","cloud","deploy","Providers","logs","log","inspect","assign","apps","changes"]