A software security skill that integrates with Project CodeGuard to help AI coding agents write secure code and prevent common vulnerabilities. Use this skill when writing, reviewing, or modifying code to ensure secure-by-default practices are followed.
Activate when:
These rules MUST be checked on every code operation:
Apply rules from LANGUAGE_RULES.md based on the language being used.
# INSECURE - hardcoded credentials
db_password = "secret123"
api_key = "sk-1234567890"
# SECURE - use environment variables
import os
db_password = os.environ["DB_PASSWORD"]
api_key = os.environ["API_KEY"]# INSECURE - string concatenation (SQL injection risk)
query = f"SELECT * FROM users WHERE id = {user_id}"
# SECURE - parameterized queries
query = "SELECT * FROM users WHERE id = %s"
cursor.execute(query, (user_id,))# INSECURE - plain text or weak hashing
stored_password = password # plain text
stored_password = hashlib.md5(password).hexdigest() # weak hash
# SECURE - use bcrypt or argon2
import bcrypt
stored_password = bcrypt.hashpw(password.encode(), bcrypt.gensalt())Before writing any code:
While writing code:
After writing code:
tessl i cisco/software-security@1.2.5evals
scenario-1
scenario-2
scenario-3
scenario-4
scenario-5
rules