{"id":"b217c389-1433-4565-b927-b70dc7137de8","shortId":"9QgwVS","kind":"skill","title":"Code Review Checklist","tagline":"Antigravity Awesome Skills skill by Sickn33","description":"# Code Review Checklist\n\n## Overview\n\nProvide a systematic checklist for conducting thorough code reviews. This skill helps reviewers ensure code quality, catch bugs, identify security issues, and maintain consistency across the codebase.\n\n## When to Use This Skill\n\n- Use when reviewing pull requests\n- Use when conducting code audits\n- Use when establishing code review standards for a team\n- Use when training new developers on code review practices\n- Use when you want to ensure nothing is missed in reviews\n- Use when creating code review documentation\n\n## How It Works\n\n### Step 1: Understand the Context\n\nBefore reviewing code, I'll help you understand:\n- What problem does this code solve?\n- What are the requirements?\n- What files were changed and why?\n- Are there related issues or tickets?\n- What's the testing strategy?\n\n### Step 2: Review Functionality\n\nCheck if the code works correctly:\n- Does it solve the stated problem?\n- Are edge cases handled?\n- Is error handling appropriate?\n- Are there any logical errors?\n- Does it match the requirements?\n\n### Step 3: Review Code Quality\n\nAssess code maintainability:\n- Is the code readable and clear?\n- Are names descriptive?\n- Is it properly structured?\n- Are functions/methods focused?\n- Is there unnecessary complexity?\n\n### Step 4: Review Security\n\nCheck for security issues:\n- Are inputs validated?\n- Is sensitive data protected?\n- Are there SQL injection risks?\n- Is authentication/authorization correct?\n- Are dependencies secure?\n\n### Step 5: Review Performance\n\nLook for performance issues:\n- Are there unnecessary loops?\n- Is database access optimized?\n- Are there memory leaks?\n- Is caching used appropriately?\n- Are there N+1 query problems?\n\n### Step 6: Review Tests\n\nVerify test coverage:\n- Are there tests for new code?\n- Do tests cover edge cases?\n- Are tests meaningful?\n- Do all tests pass?\n- Is test coverage adequate?\n\n## Examples\n\n### Example 1: Functionality Review Checklist\n\n```markdown\n## Functionality Review\n\n### Requirements\n- [ ] Code solves the stated problem\n- [ ] All acceptance criteria are met\n- [ ] Edge cases are handled\n- [ ] Error cases are handled\n- [ ] User input is validated\n\n### Logic\n- [ ] No logical errors or bugs\n- [ ] Conditions are correct (no off-by-one errors)\n- [ ] Loops terminate correctly\n- [ ] Recursion has proper base cases\n- [ ] State management is correct\n\n### Error Handling\n- [ ] Errors are caught appropriately\n- [ ] Error messages are clear and helpful\n- [ ] Errors don't expose sensitive information\n- [ ] Failed operations are rolled back\n- [ ] Logging is appropriate\n\n### Example Issues to Catch:\n\n**❌ Bad - Missing validation:**\n\\`\\`\\`javascript\nfunction createUser(email, password) {\n  // No validation!\n  return db.users.create({ email, password });\n}\n\\`\\`\\`\n\n**✅ Good - Proper validation:**\n\\`\\`\\`javascript\nfunction createUser(email, password) {\n  if (!email || !isValidEmail(email)) {\n    throw new Error('Invalid email address');\n  }\n  if (!password || password.length < 8) {\n    throw new Error('Password must be at least 8 characters');\n  }\n  return db.users.create({ email, password });\n}\n\\`\\`\\`\n```\n\n### Example 2: Security Review Checklist\n\n```markdown\n## Security Review\n\n### Input Validation\n- [ ] All user inputs are validated\n- [ ] SQL injection is prevented (use parameterized queries)\n- [ ] XSS is prevented (escape output)\n- [ ] CSRF protection is in place\n- [ ] File uploads are validated (type, size, content)\n\n### Authentication & Authorization\n- [ ] Authentication is required where needed\n- [ ] Authorization checks are present\n- [ ] Passwords are hashed (never stored plain text)\n- [ ] Sessions are managed securely\n- [ ] Tokens expire appropriately\n\n### Data Protection\n- [ ] Sensitive data is encrypted\n- [ ] API keys are not hardcoded\n- [ ] Environment variables are used for secrets\n- [ ] Personal data follows privacy regulations\n- [ ] Database credentials are secure\n\n### Dependencies\n- [ ] No known vulnerable dependencies\n- [ ] Dependencies are up to date\n- [ ] Unnecessary dependencies are removed\n- [ ] Dependency versions are pinned\n\n### Example Issues to Catch:\n\n**❌ Bad - SQL injection risk:**\n\\`\\`\\`javascript\nconst query = \\`SELECT * FROM users WHERE email = '\\${email}'\\`;\ndb.query(query);\n\\`\\`\\`\n\n**✅ Good - Parameterized query:**\n\\`\\`\\`javascript\nconst query = 'SELECT * FROM users WHERE email = $1';\ndb.query(query, [email]);\n\\`\\`\\`\n\n**❌ Bad - Hardcoded secret:**\n\\`\\`\\`javascript\nconst API_KEY = 'sk_live_abc123xyz';\n\\`\\`\\`\n\n**✅ Good - Environment variable:**\n\\`\\`\\`javascript\nconst API_KEY = process.env.API_KEY;\nif (!API_KEY) {\n  throw new Error('API_KEY environment variable is required');\n}\n\\`\\`\\`\n```\n\n### Example 3: Code Quality Review Checklist\n\n```markdown\n## Code Quality Review\n\n### Readability\n- [ ] Code is easy to understand\n- [ ] Variable names are descriptive\n- [ ] Function names explain what they do\n- [ ] Complex logic has comments\n- [ ] Magic numbers are replaced with constants\n\n### Structure\n- [ ] Functions are small and focused\n- [ ] Code follows DRY principle (Don't Repeat Yourself)\n- [ ] Proper separation of concerns\n- [ ] Consistent code style\n- [ ] No dead code or commented-out code\n\n### Maintainability\n- [ ] Code is modular and reusable\n- [ ] Dependencies are minimal\n- [ ] Changes are backwards compatible\n- [ ] Breaking changes are documented\n- [ ] Technical debt is noted\n\n### Example Issues to Catch:\n\n**❌ Bad - Unclear naming:**\n\\`\\`\\`javascript\nfunction calc(a, b, c) {\n  return a * b + c;\n}\n\\`\\`\\`\n\n**✅ Good - Descriptive naming:**\n\\`\\`\\`javascript\nfunction calculateTotalPrice(quantity, unitPrice, tax) {\n  return quantity * unitPrice + tax;\n}\n\\`\\`\\`\n\n**❌ Bad - Function doing too much:**\n\\`\\`\\`javascript\nfunction processOrder(order) {\n  // Validate order\n  if (!order.items) throw new Error('No items');\n  \n  // Calculate total\n  let total = 0;\n  for (let item of order.items) {\n    total += item.price * item.quantity;\n  }\n  \n  // Apply discount\n  if (order.coupon) {\n    total *= 0.9;\n  }\n  \n  // Process payment\n  const payment = stripe.charge(total);\n  \n  // Send email\n  sendEmail(order.email, 'Order confirmed');\n  \n  // Update inventory\n  updateInventory(order.items);\n  \n  return { orderId: order.id, total };\n}\n\\`\\`\\`\n\n**✅ Good - Separated concerns:**\n\\`\\`\\`javascript\nfunction processOrder(order) {\n  validateOrder(order);\n  const total = calculateOrderTotal(order);\n  const payment = processPayment(total);\n  sendOrderConfirmation(order.email);\n  updateInventory(order.items);\n  \n  return { orderId: order.id, total };\n}\n\\`\\`\\`\n```\n\n## Best Practices\n\n### ✅ Do This\n\n- **Review Small Changes** - Smaller PRs are easier to review thoroughly\n- **Check Tests First** - Verify tests pass and cover new code\n- **Run the Code** - Test it locally when possible\n- **Ask Questions** - Don't assume, ask for clarification\n- **Be Constructive** - Suggest improvements, don't just criticize\n- **Focus on Important Issues** - Don't nitpick minor style issues\n- **Use Automated Tools** - Linters, formatters, security scanners\n- **Review Documentation** - Check if docs are updated\n- **Consider Performance** - Think about scale and efficiency\n- **Check for Regressions** - Ensure existing functionality still works\n\n### ❌ Don't Do This\n\n- **Don't Approve Without Reading** - Actually review the code\n- **Don't Be Vague** - Provide specific feedback with examples\n- **Don't Ignore Security** - Security issues are critical\n- **Don't Skip Tests** - Untested code will cause problems\n- **Don't Be Rude** - Be respectful and professional\n- **Don't Rubber Stamp** - Every review should add value\n- **Don't Review When Tired** - You'll miss important issues\n- **Don't Forget Context** - Understand the bigger picture\n\n## Complete Review Checklist\n\n### Pre-Review\n- [ ] Read the PR description and linked issues\n- [ ] Understand what problem is being solved\n- [ ] Check if tests pass in CI/CD\n- [ ] Pull the branch and run it locally\n\n### Functionality\n- [ ] Code solves the stated problem\n- [ ] Edge cases are handled\n- [ ] Error handling is appropriate\n- [ ] User input is validated\n- [ ] No logical errors\n\n### Security\n- [ ] No SQL injection vulnerabilities\n- [ ] No XSS vulnerabilities\n- [ ] Authentication/authorization is correct\n- [ ] Sensitive data is protected\n- [ ] No hardcoded secrets\n\n### Performance\n- [ ] No unnecessary database queries\n- [ ] No N+1 query problems\n- [ ] Efficient algorithms used\n- [ ] No memory leaks\n- [ ] Caching used appropriately\n\n### Code Quality\n- [ ] Code is readable and clear\n- [ ] Names are descriptive\n- [ ] Functions are focused and small\n- [ ] No code duplication\n- [ ] Follows project conventions\n\n### Tests\n- [ ] New code has tests\n- [ ] Tests cover edge cases\n- [ ] Tests are meaningful\n- [ ] All tests pass\n- [ ] Test coverage is adequate\n\n### Documentation\n- [ ] Code comments explain why, not what\n- [ ] API documentation is updated\n- [ ] README is updated if needed\n- [ ] Breaking changes are documented\n- [ ] Migration guide provided if needed\n\n### Git\n- [ ] Commit messages are clear\n- [ ] No merge conflicts\n- [ ] Branch is up to date with main\n- [ ] No unnecessary files committed\n- [ ] .gitignore is properly configured\n\n## Common Pitfalls\n\n### Problem: Missing Edge Cases\n**Symptoms:** Code works for happy path but fails on edge cases\n**Solution:** Ask \"What if...?\" questions\n- What if the input is null?\n- What if the array is empty?\n- What if the user is not authenticated?\n- What if the network request fails?\n\n### Problem: Security Vulnerabilities\n**Symptoms:** Code exposes security risks\n**Solution:** Use security checklist\n- Run security scanners (npm audit, Snyk)\n- Check OWASP Top 10\n- Validate all inputs\n- Use parameterized queries\n- Never trust user input\n\n### Problem: Poor Test Coverage\n**Symptoms:** New code has no tests or inadequate tests\n**Solution:** Require tests for all new code\n- Unit tests for functions\n- Integration tests for features\n- Edge case tests\n- Error case tests\n\n### Problem: Unclear Code\n**Symptoms:** Reviewer can't understand what code does\n**Solution:** Request improvements\n- Better variable names\n- Explanatory comments\n- Smaller functions\n- Clear structure\n\n## Review Comment Templates\n\n### Requesting Changes\n```markdown\n**Issue:** [Describe the problem]\n\n**Current code:**\n\\`\\`\\`javascript\n// Show problematic code\n\\`\\`\\`\n\n**Suggested fix:**\n\\`\\`\\`javascript\n// Show improved code\n\\`\\`\\`\n\n**Why:** [Explain why this is better]\n```\n\n### Asking Questions\n```markdown\n**Question:** [Your question]\n\n**Context:** [Why you're asking]\n\n**Suggestion:** [If you have one]\n```\n\n### Praising Good Code\n```markdown\n**Nice!** [What you liked]\n\nThis is great because [explain why]\n```\n\n## Related Skills\n\n- `@requesting-code-review` - Prepare code for review\n- `@receiving-code-review` - Handle review feedback\n- `@systematic-debugging` - Debug issues found in review\n- `@test-driven-development` - Ensure code has tests\n\n## Additional Resources\n\n- [Google Code Review Guidelines](https://google.github.io/eng-practices/review/)\n- [OWASP Top 10](https://owasp.org/www-project-top-ten/)\n- [Code Review Best Practices](https://github.com/thoughtbot/guides/tree/main/code-review)\n- [How to Review Code](https://www.kevinlondon.com/2015/05/05/code-review-best-practices.html)\n\n---\n\n**Pro Tip:** Use a checklist template for every review to ensure consistency and thoroughness. Customize it for your team's specific needs!\n\n## Limitations\n- Use this skill only when the task clearly matches the scope described above.\n- Do not treat the output as a substitute for environment-specific validation, testing, or expert review.\n- Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.","tags":["code","review","checklist","antigravity","awesome","skills","sickn33"],"capabilities":["skill","source-sickn33","category-antigravity-awesome-skills"],"categories":["antigravity-awesome-skills"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/sickn33/antigravity-awesome-skills/code-review-checklist","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 sickn33/antigravity-awesome-skills","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-25T09:40:45.458Z","embedding":null,"createdAt":"2026-04-18T20:36:44.018Z","updatedAt":"2026-04-25T09:40:45.458Z","lastSeenAt":"2026-04-25T09:40:45.458Z","tsv":"'+1':249,1030 '/2015/05/05/code-review-best-practices.html)':1385 '/eng-practices/review/)':1365 '/thoughtbot/guides/tree/main/code-review)':1378 '/www-project-top-ten/)':1371 '0':731 '0.9':745 '1':95,283,558 '10':1198,1368 '2':135,421 '3':169,594 '4':197 '5':223 '6':253 '8':405,414 'abc123xyz':571 'accept':297 'access':236 'across':38 'actual':887 'add':932 'addit':1357 'address':401 'adequ':280,1081 'algorithm':1034 'antigrav':4 'api':490,567,577,582,587,1089 'appli':740 'appropri':157,245,345,365,483,997,1041 'approv':884 'array':1161 'ask':823,828,1148,1294,1304,1441 'assess':173 'assum':827 'audit':55,1193 'authent':459,461,1170 'authentication/authorization':217,1013 'author':460,466 'autom':850 'awesom':5 'b':690,694 'back':362 'backward':669 'bad':370,532,562,683,709 'base':334 'best':791,1374 'better':1257,1293 'bigger':950 'boundari':1449 'branch':979,1115 'break':671,1098 'bug':31,318 'c':691,695 'cach':243,1039 'calc':688 'calcul':727 'calculateordertot':777 'calculatetotalpric':701 'case':152,269,302,306,335,991,1071,1135,1146,1238,1241 'catch':30,369,531,682 'category-antigravity-awesome-skills' 'caught':344 'caus':915 'chang':120,667,672,797,1099,1270 'charact':415 'check':138,200,467,805,858,870,971,1195 'checklist':3,12,17,286,424,598,954,1188,1390 'ci/cd':976 'clarif':830,1443 'clear':181,349,1048,1111,1264,1416 'code':1,10,21,28,54,59,71,88,101,111,141,171,174,178,264,291,595,600,604,635,648,652,657,659,814,817,890,913,985,1042,1044,1058,1065,1083,1137,1181,1215,1228,1245,1252,1277,1281,1287,1312,1328,1331,1336,1354,1360,1372,1382 'codebas':40 'comment':622,655,1084,1261,1267 'commented-out':654 'commit':1108,1125 'common':1130 'compat':670 'complet':952 'complex':195,619 'concern':646,768 'condit':319 'conduct':19,53 'configur':1129 'confirm':757 'conflict':1114 'consid':863 'consist':37,647,1397 'const':537,551,566,576,748,775,779 'constant':628 'construct':832 'content':458 'context':98,947,1300 'convent':1062 'correct':143,218,321,330,339,1015 'cover':267,812,1069 'coverag':258,279,1079,1212 'creat':87 'createus':375,389 'credenti':507 'criteria':298,1452 'critic':838,907 'csrf':447 'current':1276 'custom':1400 'data':209,484,487,502,1017 'databas':235,506,1026 'date':519,1119 'db.query':545,559 'db.users.create':381,417 'dead':651 'debt':676 'debug':1343,1344 'depend':220,510,514,515,521,524,664 'describ':1273,1420 'descript':184,612,697,961,1051 'develop':69,1352 'discount':741 'doc':860 'document':90,674,857,1082,1090,1101 'dri':637 'driven':1351 'duplic':1059 'easi':606 'easier':801 'edg':151,268,301,990,1070,1134,1145,1237 'effici':869,1033 'email':376,382,390,393,395,400,418,543,544,557,561,753 'empti':1163 'encrypt':489 'ensur':27,79,873,1353,1396 'environ':495,573,589,1432 'environment-specif':1431 'error':155,162,305,316,327,340,342,346,352,398,408,586,724,994,1004,1240 'escap':445 'establish':58 'everi':929,1393 'exampl':281,282,366,420,528,593,679,899 'exist':874 'expert':1437 'expir':482 'explain':615,1085,1289,1322 'explanatori':1260 'expos':355,1182 'fail':358,1143,1176 'featur':1236 'feedback':897,1340 'file':118,452,1124 'first':807 'fix':1283 'focus':191,634,839,1054 'follow':503,636,1060 'forget':946 'formatt':853 'found':1346 'function':137,284,288,374,388,613,630,687,700,710,715,770,875,984,1052,1232,1263 'functions/methods':190 'git':1107 'github.com':1377 'github.com/thoughtbot/guides/tree/main/code-review)':1376 'gitignor':1126 'good':384,547,572,696,766,1311 'googl':1359 'google.github.io':1364 'google.github.io/eng-practices/review/)':1363 'great':1320 'guid':1103 'guidelin':1362 'handl':153,156,304,308,341,993,995,1338 'happi':1140 'hardcod':494,563,1021 'hash':472 'help':25,104,351 'identifi':32 'ignor':902 'import':841,942 'improv':834,1256,1286 'inadequ':1220 'inform':357 'inject':214,436,534,1008 'input':205,310,428,432,999,1155,1201,1208,1446 'integr':1233 'invalid':399 'inventori':759 'issu':34,126,203,229,367,529,680,842,848,905,943,964,1272,1345 'isvalidemail':394 'item':726,734 'item.price':738 'item.quantity':739 'javascript':373,387,536,550,565,575,686,699,714,769,1278,1284 'key':491,568,578,580,583,588 'known':512 'leak':241,1038 'least':413 'let':729,733 'like':1317 'limit':1408 'link':963 'linter':852 'live':570 'll':103,940 'local':820,983 'log':363 'logic':161,313,315,620,1003 'look':226 'loop':233,328 'magic':623 'main':1121 'maintain':36,175,658 'manag':337,479 'markdown':287,425,599,1271,1296,1313 'match':165,1417 'meaning':272,1074 'memori':240,1037 'merg':1113 'messag':347,1109 'met':300 'migrat':1102 'minim':666 'minor':846 'miss':82,371,941,1133,1454 'modular':661 'much':713 'must':410 'n':248,1029 'name':183,610,614,685,698,1049,1259 'need':465,1097,1106,1407 'network':1174 'never':473,1205 'new':68,263,397,407,585,723,813,1064,1214,1227 'nice':1314 'nitpick':845 'note':678 'noth':80 'npm':1192 'null':1157 'number':624 'off-by-on':323 'one':326,1309 'oper':359 'optim':237 'order':717,719,756,772,774,778 'order.coupon':743 'order.email':755,784 'order.id':764,789 'order.items':721,736,761,786 'orderid':763,788 'output':446,1426 'overview':13 'owasp':1196,1366 'owasp.org':1370 'owasp.org/www-project-top-ten/)':1369 'parameter':440,548,1203 'pass':276,810,974,1077 'password':377,383,391,403,409,419,470 'password.length':404 'path':1141 'payment':747,749,780 'perform':225,228,864,1023 'permiss':1447 'person':501 'pictur':951 'pin':527 'pitfal':1131 'place':451 'plain':475 'poor':1210 'possibl':822 'pr':960 'practic':73,792,1375 'prais':1310 'pre':956 'pre-review':955 'prepar':1330 'present':469 'prevent':438,444 'principl':638 'privaci':504 'pro':1386 'problem':108,149,251,295,916,967,989,1032,1132,1177,1209,1243,1275 'problemat':1280 'process':746 'process.env.api':579 'processord':716,771 'processpay':781 'profession':924 'project':1061 'proper':187,333,385,643,1128 'protect':210,448,485,1019 'provid':14,895,1104 'prs':799 'pull':49,977 'qualiti':29,172,596,601,1043 'quantiti':702,706 'queri':250,441,538,546,549,552,560,1027,1031,1204 'question':824,1151,1295,1297,1299 're':1303 'read':886,958 'readabl':179,603,1046 'readm':1093 'receiv':1335 'receiving-code-review':1334 'recurs':331 'regress':872 'regul':505 'relat':125,1324 'remov':523 'repeat':641 'replac':626 'request':50,1175,1255,1269,1327 'requesting-code-review':1326 'requir':116,167,290,463,592,1223,1445 'resourc':1358 'respect':922 'return':380,416,692,705,762,787 'reusabl':663 'review':2,11,22,26,48,60,72,84,89,100,136,170,198,224,254,285,289,423,427,597,602,795,803,856,888,930,936,953,957,1247,1266,1329,1333,1337,1339,1348,1361,1373,1381,1394,1438 'risk':215,535,1184 'roll':361 'rubber':927 'rude':920 'run':815,981,1189 'safeti':1448 'scale':867 'scanner':855,1191 'scope':1419 'secret':500,564,1022 'secur':33,199,202,221,422,426,480,509,854,903,904,1005,1178,1183,1187,1190 'select':539,553 'send':752 'sendemail':754 'sendorderconfirm':783 'sensit':208,356,486,1016 'separ':644,767 'session':477 'show':1279,1285 'sickn33':9 'size':457 'sk':569 'skill':6,7,24,45,1325,1411 'skip':910 'small':632,796,1056 'smaller':798,1262 'snyk':1194 'solut':1147,1185,1222,1254 'solv':112,146,292,970,986 'source-sickn33' 'specif':896,1406,1433 'sql':213,435,533,1007 'stamp':928 'standard':61 'state':148,294,336,988 'step':94,134,168,196,222,252 'still':876 'stop':1439 'store':474 'strategi':133 'stripe.charge':750 'structur':188,629,1265 'style':649,847 'substitut':1429 'success':1451 'suggest':833,1282,1305 'symptom':1136,1180,1213,1246 'systemat':16,1342 'systematic-debug':1341 'task':1415 'tax':704,708 'team':64,1404 'technic':675 'templat':1268,1391 'termin':329 'test':132,255,257,261,266,271,275,278,806,809,818,911,973,1063,1067,1068,1072,1076,1078,1211,1218,1221,1224,1230,1234,1239,1242,1350,1356,1435 'test-driven-develop':1349 'text':476 'think':865 'thorough':20,804,1399 'throw':396,406,584,722 'ticket':128 'tip':1387 'tire':938 'token':481 'tool':851 'top':1197,1367 'total':728,730,737,744,751,765,776,782,790 'train':67 'treat':1424 'trust':1206 'type':456 'unclear':684,1244 'understand':96,106,608,948,965,1250 'unit':1229 'unitpric':703,707 'unnecessari':194,232,520,1025,1123 'untest':912 'updat':758,862,1092,1095 'updateinventori':760,785 'upload':453 'use':43,46,51,56,65,74,85,244,439,498,849,1035,1040,1186,1202,1388,1409 'user':309,431,541,555,998,1167,1207 'vagu':894 'valid':206,312,372,379,386,429,434,455,718,1001,1199,1434 'validateord':773 'valu':933 'variabl':496,574,590,609,1258 'verifi':256,808 'version':525 'vulner':513,1009,1012,1179 'want':77 'without':885 'work':93,142,877,1138 'www.kevinlondon.com':1384 'www.kevinlondon.com/2015/05/05/code-review-best-practices.html)':1383 'xss':442,1011","prices":[{"id":"8a9bbe86-098c-46f2-89d9-5db109cbb8a0","listingId":"b217c389-1433-4565-b927-b70dc7137de8","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"sickn33","category":"antigravity-awesome-skills","install_from":"skills.sh"},"createdAt":"2026-04-18T20:36:44.018Z"}],"sources":[{"listingId":"b217c389-1433-4565-b927-b70dc7137de8","source":"github","sourceId":"sickn33/antigravity-awesome-skills/code-review-checklist","sourceUrl":"https://github.com/sickn33/antigravity-awesome-skills/tree/main/skills/code-review-checklist","isPrimary":false,"firstSeenAt":"2026-04-18T21:34:39.786Z","lastSeenAt":"2026-04-25T06:50:50.922Z"},{"listingId":"b217c389-1433-4565-b927-b70dc7137de8","source":"skills_sh","sourceId":"sickn33/antigravity-awesome-skills/code-review-checklist","sourceUrl":"https://skills.sh/sickn33/antigravity-awesome-skills/code-review-checklist","isPrimary":true,"firstSeenAt":"2026-04-18T20:36:44.018Z","lastSeenAt":"2026-04-25T09:40:45.458Z"}],"details":{"listingId":"b217c389-1433-4565-b927-b70dc7137de8","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"sickn33","slug":"code-review-checklist","source":"skills_sh","category":"antigravity-awesome-skills","skills_sh_url":"https://skills.sh/sickn33/antigravity-awesome-skills/code-review-checklist"},"updatedAt":"2026-04-25T09:40:45.458Z"}}