{"id":"cfb30c33-7ef3-44c1-9856-8df456ef60f7","shortId":"2gZKuy","kind":"skill","title":"Lint And Validate","tagline":"Antigravity Awesome Skills skill by Sickn33","description":"# Lint and Validate Skill\n\n> **MANDATORY:** Run appropriate validation tools after EVERY code change. Do not finish a task until the code is error-free.\n\n### Procedures by Ecosystem\n\n#### Node.js / TypeScript\n1. **Lint/Fix:** `npm run lint` or `npx eslint \"path\" --fix`\n2. **Types:** `npx tsc --noEmit`\n3. **Security:** `npm audit --audit-level=high`\n\n#### Python\n1. **Linter (Ruff):** `ruff check \"path\" --fix` (Fast & Modern)\n2. **Security (Bandit):** `bandit -r \"path\" -ll`\n3. **Types (MyPy):** `mypy \"path\"`\n\n## The Quality Loop\n1. **Write/Edit Code**\n2. **Run Audit:** `npm run lint && npx tsc --noEmit`\n3. **Analyze Report:** Check the \"FINAL AUDIT REPORT\" section.\n4. **Fix & Repeat:** Submitting code with \"FINAL AUDIT\" failures is NOT allowed.\n\n## Error Handling\n- If `lint` fails: Fix the style or syntax issues immediately.\n- If `tsc` fails: Correct type mismatches before proceeding.\n- If no tool is configured: Check the project root for `.eslintrc`, `tsconfig.json`, `pyproject.toml` and suggest creating one.\n\n---\n**Strict Rule:** No code should be committed or reported as \"done\" without passing these checks.\n\n---\n\n## Scripts\n\n| Script | Purpose | Command |\n|--------|---------|---------|\n| `scripts/lint_runner.py` | Unified lint check | `python scripts/lint_runner.py <project_path>` |\n| `scripts/type_coverage.py` | Type coverage analysis | `python scripts/type_coverage.py <project_path>` |\n\n## When to Use\nThis skill is applicable to execute the workflow or actions described in the overview.\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":["lint","and","validate","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/lint-and-validate","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-25T08:40:52.350Z","embedding":null,"createdAt":"2026-04-18T20:38:20.842Z","updatedAt":"2026-04-25T08:40:52.350Z","lastSeenAt":"2026-04-25T08:40:52.350Z","tsv":"'1':40,64,88 '2':50,73,91 '3':55,80,100 '4':109 'action':201 'allow':120 'analysi':186 'analyz':101 'antigrav':4 'applic':195 'appropri':16 'ask':239 'audit':58,60,93,106,116 'audit-level':59 'awesom':5 'bandit':75,76 'boundari':247 'category-antigravity-awesome-skills' 'chang':22 'check':68,103,146,172,180 'clarif':241 'clear':214 'code':21,30,90,113,161 'command':176 'commit':164 'configur':145 'correct':136 'coverag':185 'creat':156 'criteria':250 'describ':202,218 'done':168 'ecosystem':37 'environ':230 'environment-specif':229 'error':33,121 'error-fre':32 'eslint':47 'eslintrc':151 'everi':20 'execut':197 'expert':235 'fail':125,135 'failur':117 'fast':71 'final':105,115 'finish':25 'fix':49,70,110,126 'free':34 'handl':122 'high':62 'immedi':132 'input':244 'issu':131 'level':61 'limit':206 'lint':1,10,44,96,124,179 'lint/fix':41 'linter':65 'll':79 'loop':87 'mandatori':14 'match':215 'mismatch':138 'miss':252 'modern':72 'mypi':82,83 'node.js':38 'noemit':54,99 'npm':42,57,94 'npx':46,52,97 'one':157 'output':224 'overview':205 'pass':170 'path':48,69,78,84 'permiss':245 'procedur':35 'proceed':140 'project':148 'purpos':175 'pyproject.toml':153 'python':63,181,187 'qualiti':86 'r':77 'repeat':111 'report':102,107,166 'requir':243 'review':236 'root':149 'ruff':66,67 'rule':159 'run':15,43,92,95 'safeti':246 'scope':217 'script':173,174 'scripts/lint_runner.py':177,182 'scripts/type_coverage.py':183,188 'section':108 'secur':56,74 'sickn33':9 'skill':6,7,13,193,209 'source-sickn33' 'specif':231 'stop':237 'strict':158 'style':128 'submit':112 'substitut':227 'success':249 'suggest':155 'syntax':130 'task':27,213 'test':233 'tool':18,143 'treat':222 'tsc':53,98,134 'tsconfig.json':152 'type':51,81,137,184 'typescript':39 'unifi':178 'use':191,207 'valid':3,12,17,232 'without':169 'workflow':199 'write/edit':89","prices":[{"id":"b4de79aa-69cc-473a-a341-06138fc24204","listingId":"cfb30c33-7ef3-44c1-9856-8df456ef60f7","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:38:20.842Z"}],"sources":[{"listingId":"cfb30c33-7ef3-44c1-9856-8df456ef60f7","source":"github","sourceId":"sickn33/antigravity-awesome-skills/lint-and-validate","sourceUrl":"https://github.com/sickn33/antigravity-awesome-skills/tree/main/skills/lint-and-validate","isPrimary":false,"firstSeenAt":"2026-04-18T21:40:00.584Z","lastSeenAt":"2026-04-25T06:51:27.144Z"},{"listingId":"cfb30c33-7ef3-44c1-9856-8df456ef60f7","source":"skills_sh","sourceId":"sickn33/antigravity-awesome-skills/lint-and-validate","sourceUrl":"https://skills.sh/sickn33/antigravity-awesome-skills/lint-and-validate","isPrimary":true,"firstSeenAt":"2026-04-18T20:38:20.842Z","lastSeenAt":"2026-04-25T08:40:52.350Z"}],"details":{"listingId":"cfb30c33-7ef3-44c1-9856-8df456ef60f7","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"sickn33","slug":"lint-and-validate","source":"skills_sh","category":"antigravity-awesome-skills","skills_sh_url":"https://skills.sh/sickn33/antigravity-awesome-skills/lint-and-validate"},"updatedAt":"2026-04-25T08:40:52.350Z"}}