[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6ACDX7VWWZQF8DHMS1A1H7M":3,"skill-same:01M6ACDX7VWWZQF8DHMS1A1H7M":54},{"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":26,"linkOnly":27,"markdownContent":28,"markdownBody":29,"frontMatter":30,"refName":31,"commitSha":32,"skillDirectory":33,"forksCount":34,"repositoryHtmlUrl":35,"repositoryHomepageUrl":36,"ownerHtmlUrl":37,"ownerBlogUrl":38,"ownerDescription":6,"updatedAt":39,"install":40,"resources":53},"01M6ACDX7VWWZQF8DHMS1A1H7M","precommit",null,"Validate and fix Pinot pre-commit checks on affected modules before a commit or PR.","apache\u002Fpinot","apache","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F47359?v=4","01M6AC83E6K4FDKK7HZ8WNMQKE","The Apache Software Foundation","01M6ACDPCCB13AFXYW1KGCRWNY",6176,"Apache-2.0","https:\u002F\u002Fgithub.com\u002Fapache\u002Fpinot\u002Fblob\u002Fmaster\u002F.claude\u002Fskills\u002Fprecommit\u002FSKILL.md",[],[5,19,20,21,22,23,24,25],"commit","validate","pr","pre-commit","fix","modules","affected","2026-11-10 10:12:30",false,"---\n# Licensed to the Apache Software Foundation (ASF) under one\n# or more contributor license agreements.  See the NOTICE file\n# distributed with this work for additional information\n# regarding copyright ownership.  The ASF licenses this file\n# to you under the Apache License, Version 2.0 (the\n# \"License\"); you may not use this file except in compliance\n# with the License.  You may obtain a copy of the License at\n#\n#   http:\u002F\u002Fwww.apache.org\u002Flicenses\u002FLICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing,\n# software distributed under the License is distributed on an\n# \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\n# KIND, either express or implied.  See the License for the\n# specific language governing permissions and limitations\n# under the License.\nname: precommit\ndescription: Validate and fix Pinot pre-commit checks on affected modules before a commit or PR.\n---\n\n# \u002Fprecommit\n\nProcedure: see [`kb\u002Fskills\u002Fprecommit.md`](..\u002F..\u002F..\u002Fkb\u002Fskills\u002Fprecommit.md). Read it first, then follow it.\n","# \u002Fprecommit\n\nProcedure: see [`kb\u002Fskills\u002Fprecommit.md`](..\u002F..\u002F..\u002Fkb\u002Fskills\u002Fprecommit.md). Read it first, then follow it.\n",{"name":5,"description":7},"master","e9be2ee203ac4b19ac70956c16806bee22aae9da",".claude\u002Fskills\u002Fprecommit",1533,"https:\u002F\u002Fgithub.com\u002Fapache\u002Fpinot","https:\u002F\u002Fpinot.apache.org\u002F","https:\u002F\u002Fgithub.com\u002Fapache","https:\u002F\u002Fwww.apache.org\u002F","2026-11-14 05:29:53",{"source":8,"skillName":5,"commands":41,"prompt":51,"zipAvailable":52},[42,45,48],{"tool":43,"command":44},"npx","npx skills add apache\u002Fpinot --skill precommit",{"tool":46,"command":47},"bunx","bunx skills add apache\u002Fpinot --skill precommit",{"tool":49,"command":50},"pnpm","pnpm dlx skills add apache\u002Fpinot --skill precommit","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fapache\u002Fpinot\u002Fblob\u002Fmaster\u002F.claude\u002Fskills\u002Fprecommit\u002FSKILL.md",true,[],[55,72,98,116,137,165],{"skillNo":56,"name":57,"nameZh":6,"description":58,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":59,"categories":60,"keywords":66,"publishedAt":26},"01M6ACEFFGBBB74RR7GPKS9GDH","run-test","Run a named Pinot test class or method in its owning Maven module.","https:\u002F\u002Fgithub.com\u002Fapache\u002Fpinot\u002Fblob\u002Fmaster\u002F.claude\u002Fskills\u002Frun-test\u002FSKILL.md",[61],{"categoryNo":62,"categoryName":63,"taxonomyType":64,"taxonomyTypeDesc":65},"01JBSEEDCAT000000000000008","测试与质量","SCENARIO","使用场景",[67,68,69,70,71],"test","run","run test","maven","module",{"skillNo":73,"name":74,"nameZh":6,"description":75,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":76,"categories":77,"keywords":79,"publishedAt":26},"01M6ACED591YCWDYX9CE76NXTN","review-testing","Review Apache Pinot regression coverage and test quality when behavior or tests change.","https:\u002F\u002Fgithub.com\u002Fapache\u002Fpinot\u002Fblob\u002Fmaster\u002F.claude\u002Fskills\u002Freview-testing\u002FSKILL.md",[78],{"categoryNo":62,"categoryName":63,"taxonomyType":64,"taxonomyTypeDesc":65},[80,81,82,67,83,84,85,9,86,87,88,23,89,90,91,92,93,94,95,96,97],"testing","review","review testing","change","code","code-review","file","regression","coverage","kb","regression test","diff","strategies","tests","type","claims","test quality","when",{"skillNo":99,"name":100,"nameZh":6,"description":101,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":102,"categories":103,"keywords":104,"publishedAt":26},"01M6ACEBB9APW590Y5ZK879T5F","review-process-scope","Review Apache Pinot change scope and process when assessing PR descriptions, reverts, retries, or compatibility notes.","https:\u002F\u002Fgithub.com\u002Fapache\u002Fpinot\u002Fblob\u002Fmaster\u002F.claude\u002Fskills\u002Freview-process-scope\u002FSKILL.md",[],[81,105,106,107,108,83,109,21,84,85,9,89,91,24,110,111,112,93,113,114,115,97],"review process scope","process","review process","scope","notes","pr title","todo","upgrade","hotfix","retries","comments",{"skillNo":117,"name":118,"nameZh":6,"description":119,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":120,"categories":121,"keywords":122,"publishedAt":26},"01M6ACE95JZ2MXW1WFC1XZE2KR","review-performance","Review Apache Pinot performance when hot paths change or a PR makes benchmark or efficiency claims.","https:\u002F\u002Fgithub.com\u002Fapache\u002Fpinot\u002Fblob\u002Fmaster\u002F.claude\u002Fskills\u002Freview-performance\u002FSKILL.md",[],[81,123,124,83,125,21,126,84,127,128,85,9,129,89,91,130,131,132,133,134,135,136,97],"performance","review performance","perf","core","benchmark","pr description","loop","query","local","efficiency","runtime","segment","lock","improvement",{"skillNo":138,"name":139,"nameZh":6,"description":140,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":141,"categories":142,"keywords":151,"publishedAt":26},"01M6ACE78389C8TABQCGQ7TY05","review-naming-api","Review Apache Pinot naming and API conventions when public names, signatures, or documentation change.","https:\u002F\u002Fgithub.com\u002Fapache\u002Fpinot\u002Fblob\u002Fmaster\u002F.claude\u002Fskills\u002Freview-naming-api\u002FSKILL.md",[143,146],{"categoryNo":144,"categoryName":145,"taxonomyType":64,"taxonomyTypeDesc":65},"01JBSEEDCAT000000000000010","后端与接口",{"categoryNo":147,"categoryName":148,"taxonomyType":149,"taxonomyTypeDesc":150},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",[81,152,153,154,155,83,156,84,85,9,157,158,89,91,159,160,161,162,97,163,164],"review naming api","api","naming","design","documentation","api conventions","REST","methods","signatures","api-design","rest endpoint","constants","new",{"skillNo":166,"name":167,"nameZh":6,"description":168,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":169,"categories":170,"keywords":171,"publishedAt":26},"01M6ACE5FK9NE9QNKKZ5Y7QG68","review-correctness-nulls","Review Apache Pinot correctness when null handling, numeric types, dispatch, or resource lifecycles change.","https:\u002F\u002Fgithub.com\u002Fapache\u002Fpinot\u002Fblob\u002Fmaster\u002F.claude\u002Fskills\u002Freview-correctness-nulls\u002FSKILL.md",[],[81,172,173,174,83,84,85,9,175,89,91,176,177,94,134,178,179,180,181,97],"review correctness nulls","review correctness","correctness","vector","default","switch","types","principles","changes","window"]