security

Implements OWASP security patterns, secrets management, and automated security testing for projects.

Updated Jan 16, 2026
One-click install
npx skills add https://github.com/dudqks0319-cpu/antigravity-skills --skill security-dudqks0319-cpu
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: security
Source: https://github.com/dudqks0319-cpu/antigravity-skills/tree/main/security
Command: npx skills add https://github.com/dudqks0319-cpu/antigravity-skills --skill security-dudqks0319-cpu

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? It prevents common security failures such as leaked secrets in git, SQL injection, XSS, weak password hashing, and vulnerable dependencies by enforcing concrete security checks across every project. ## Core Features & Use Cases - Secrets Management: Enforces .gitignore rules, .env.example templates, and correct handling of client-exposed environment variables like VITE_* and NEXT_PUBLIC_*. - Automated Security Testing: Provides pre-commit hooks with detect-secrets, npm audit, safety, bandit, and a GitHub Actions workflow with TruffleHog and CodeQL. - OWASP Input Validation: Covers parameterized queries, XSS sanitization with DOMPurify, Zod/Pydantic schema validation, and path traversal prevention. - Use Case: Before merging a pull request, run the security checklist to verify no secrets are committed, dependencies pass audits, authentication uses bcrypt and short-lived JWTs, and rate limiting protects auth endpoints. ## Quick Start Apply the security skill to audit my project for exposed secrets, vulnerable dependencies, and missing input validation.

Frequently Asked Questions about security

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I prevent secrets from being committed to git?▼

Add .env files, *.pem, *.key, and credentials.json patterns to .gitignore, then use detect-secrets in a pre-commit hook to scan staged files. The security-check.sh script also blocks commits containing common secret patterns.

How do I prevent SQL injection in Node.js and Python?▼

Always use parameterized queries instead of string concatenation, such as db.query('SELECT * FROM users WHERE id = $1', [userId]) in Node.js or cursor.execute with %s placeholders in Python. ORMs like Kysely, Prisma, and SQLAlchemy handle this automatically.

Can I put API keys in VITE_ or NEXT_PUBLIC_ environment variables?▼

No, variables prefixed with VITE_, NEXT_PUBLIC_, or REACT_APP_ are bundled into client-side code and visible in the browser. Keep secrets like ANTHROPIC_API_KEY in server-only variables without those prefixes.

What tools check dependencies for known vulnerabilities?▼

Use npm audit --audit-level=high for Node.js projects and safety check plus bandit for Python projects. These can run in pre-commit hooks or a scheduled GitHub Actions security workflow.

How should passwords be hashed for storage?▼

Hash passwords with bcrypt using at least 12 salt rounds via the bcrypt package in Node.js or passlib CryptContext in Python. Never store plain text or use weak hashes like MD5 or SHA1.

Why is my JWT authentication considered insecure?▼

Common issues include missing expiration, very long token lifetimes, and not specifying allowed algorithms during verification. Use short-lived tokens around 15 minutes and explicitly set algorithms: ['HS256'] when verifying.