Claude Skills Guide

Claude Code HIPAA Compliant Development Workflow Guide

Healthcare software developers face unique challenges when building applications that must comply with HIPAA (HIPAA). This guide shows you how to use Claude Code to streamline HIPAA-compliant development while maintaining security and privacy standards throughout your workflow.

Understanding HIPAA Requirements for Developers

HIPAA sets strict requirements for handling protected health information (PHI). As a developer, you need to ensure your applications implement administrative safeguards, physical safeguards, and technical safeguards. Claude Code can help you implement these requirements efficiently while following security best practices.

The technical safeguards include access controls, audit controls, integrity controls, and transmission security. When building healthcare applications, every line of code that handles patient data must be carefully scrutinized for potential security vulnerabilities.

Setting Up a Secure Development Environment

Before writing any HIPAA-compliant code, establish a secure development environment. Use isolated project directories and avoid storing PHI in logs or temporary files. The supermemory skill helps maintain clean context by organizing your development sessions without accidentally exposing sensitive data.

# Create isolated project structure
mkdir -p ~/projects/healthcare-app/{src,tests,config}
cd ~/projects/healthcare-app

# Configure Claude Code with restricted permissions
# Add to CLAUDE.md to scope Claude to safe tools only:
# allowed_tools: [Read, Edit, Bash]
# See: https://docs.anthropic.com/en/docs/claude-code/settings

This configuration ensures Claude Code operates with minimal permissions during initial exploration phases. As you build out functionality, gradually expand permissions to include necessary development tools.

Implementing Access Controls

HIPAA requires strict access controls to ensure only authorized personnel can view or modify PHI. Use role-based access control (RBAC) patterns in your applications:

// RBAC implementation for healthcare applications
const roles = {
  admin: ['read', 'write', 'delete', 'audit'],
  physician: ['read', 'write', 'audit'],
  nurse: ['read', 'write'],
  billing: ['read'],
  patient: ['read:own']
};

function checkPermission(userRole, action) {
  return roles[userRole]?.includes(action) || false;
}

// Middleware for Express.js
function requirePermission(action) {
  return (req, res, next) => {
    if (!checkPermission(req.user.role, action)) {
      return res.status(403).json({ error: 'Access denied' });
    }
    next();
  };
}

Claude Code’s tdd skill helps you write comprehensive tests for these access control mechanisms before implementing the full feature set.

Audit Logging with Claude Code

HIPAA mandates detailed audit trails for all PHI access. Implement logging that captures who accessed what data and when:

import logging
from datetime import datetime
from functools import wraps

audit_logger = logging.getLogger('hipaa_audit')

def audit_log(action_type):
    def decorator(func):
        @wraps(func)
        def wrapper(*args, **kwargs):
            user_id = kwargs.get('user_id', 'system')
            timestamp = datetime.utcnow().isoformat()
            
            result = func(*args, **kwargs)
            
            audit_logger.info(
                f"AUDIT: {timestamp} | User: {user_id} | "
                f"Action: {action_type} | Resource: {func.__name__}"
            )
            return result
        return wrapper
    return decorator

@audit_log('VIEW_PATIENT_RECORD')
def get_patient_record(patient_id, user_id):
    # Retrieve patient data
    return patient_data

The pdf skill enables you to generate compliance reports directly from your application, making it easier to demonstrate HIPAA adherence during audits.

Data Encryption Standards

Both encryption at rest and encryption in transit are required under HIPAA. Use strong encryption protocols:

// AES-256 encryption for PHI storage
import { createCipheriv, randomBytes } from 'crypto';

const ALGORITHM = 'aes-256-gcm';
const KEY_LENGTH = 32;

function encryptPHI(data: string, key: Buffer): EncryptedData {
  const iv = randomBytes(16);
  const cipher = createCipheriv(ALGORITHM, key, iv);
  
  let encrypted = cipher.update(data, 'utf8', 'hex');
  encrypted += cipher.final('hex');
  
  const authTag = cipher.getAuthTag();
  
  return {
    iv: iv.toString('hex'),
    encrypted,
    authTag: authTag.toString('hex')
  };
}

For data in transit, always use TLS 1.2 or higher. Configure your web servers to enforce HTTPS and reject insecure connections.

Secure API Development

When building APIs that handle PHI, implement additional security layers:

// Express.js middleware for HIPAA-compliant API
const hipaaMiddleware = {
  // Rate limiting per user
  rateLimit: (maxRequests = 100) => {
    const requests = new Map();
    return (req, res, next) => {
      const userId = req.user?.id || req.ip;
      const count = (requests.get(userId) || 0) + 1;
      requests.set(userId, count);
      
      if (count > maxRequests) {
        return res.status(429).json({ error: 'Rate limit exceeded' });
      }
      next();
    };
  },
  
  // Request/response encryption check
  encryptionRequired: (req, res, next) => {
    if (!req.secure && process.env.NODE_ENV === 'production') {
      return res.status(403).json({ 
        error: 'HTTPS required for PHI handling' 
      });
    }
    next();
  },
  
  // Input sanitization
  sanitizeInput: (req, res, next) => {
    // Remove potentially dangerous patterns
    const sanitize = (obj) => {
      for (const key in obj) {
        if (typeof obj[key] === 'string') {
          obj[key] = obj[key].replace(/<script/gi, '');
        }
      }
    };
    sanitize(req.body);
    sanitize(req.query);
    next();
  }
};

Testing HIPAA Compliance

Regular security testing is essential. The frontend-design skill helps you build accessible healthcare interfaces that meet Section 508 compliance alongside HIPAA requirements:

# Automated security scanning
npx npm-audit --production
npx snyk test

Conduct penetration testing quarterly and maintain documentation of all security assessments. Use automated tools in your CI/CD pipeline to catch vulnerabilities early.

Configuring Claude Code Skills for HIPAA Workflows

Beyond writing application code, you can configure Claude Code skills that enforce HIPAA patterns throughout your development sessions.

Secure Skill Permissions

Create a dedicated HIPAA development skill with restricted tool access to ensure Claude Code operates with minimal necessary permissions:

---
name: hipaa-dev
description: HIPAA-compliant development workflow with PHI handling
---

This skill configuration restricts file access to source code only, explicitly denying access to secrets, credentials, and production environments.

Synthetic PHI Generator

Developers often need realistic-looking test data. Create a skill that generates synthetic PHI that mimics real patient data without containing actual protected information:

---
name: phi-generator
description: Generate HIPAA-safe synthetic PHI for testing
---
# Guidelines for generating safe test data

When generating test data that represents PHI:

1. Use obviously fake identifiers: names like "Test Patient One", "Jane Doe (Test)"
2. Generate dates using patterns like 2020-01-01, 2021-06-15 (not real dates)
3. Use HIPAA-compliant test email domains: testhealth.com, example-health.org
4. Generate random MRNs (Medical Record Numbers) in your system's format
5. Never use real Social Security Numbers, even partial - use generated 9-digit sequences
6. Ensure all synthetic data is clearly marked as test data in comments

Encryption Validation Skill

Create a skill that validates encryption implementation across your codebase:

---
name: encrypt-validator
description: Validate encryption implementation for HIPAA compliance
---
# Encryption Validation Guidelines

When reviewing code for HIPAA encryption compliance:

1. **Data at Rest**: Verify database fields containing PHI use column-level encryption or transparent data encryption (TDE)
2. **Data in Transit**: Ensure all connections use TLS 1.2 or higher
3. **Application Secrets**: Confirm API keys, tokens, and credentials are stored in secure vaults (AWS Secrets Manager, HashiCorp Vault)
4. **Encryption Algorithms**: Reject weak algorithms (MD5, SHA1 for security purposes) - require AES-256, RSA-2048+
5. **Key Management**: Validate that encryption keys are rotated periodically and stored separately from encrypted data

Flag any of the following as violations:
- Hardcoded passwords or API keys
- Passwords transmitted over HTTP
- Database connections without SSL/TLS
- Encryption using deprecated algorithms

Automating Compliance Checks

Pre-Commit Compliance Validation

Integrate compliance checks into your development workflow using a pre-commit hook:

#!/bin/bash
# .git/hooks/pre-commit - Run HIPAA compliance checks before commit

echo "Running HIPAA compliance checks..."

# Check for hardcoded secrets
if grep -r "password\s*=\s*[\"']" --include="*.js" --include="*.py" .; then
    echo "ERROR: Hardcoded password detected"
    exit 1
fi

# Verify encryption is used for PHI fields
if ! grep -r "encrypt\|AES\|TLS" --include="*.py" --include="*.js" .; then
    echo "WARNING: No encryption detected in codebase"
fi

echo "HIPAA compliance checks passed"

CI/CD Pipeline Integration

Add HIPAA compliance stages to your CI/CD pipeline:

# .github/workflows/hipaa-compliance.yml
name: HIPAA Compliance Check

on: [push, pull_request]

jobs:
  security-scan:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4

      - name: Run security scanner
        run: |
          npm install -g security-scanner
          security-scan --hipaa

      - name: Check for PHI in commits
        run: |
          git diff --cached --name-only | xargs grep -l "ssn\|social security\|diagnosis\|medication" || echo "No PHI keywords detected"

Best Practices Summary

Building HIPAA-compliant applications with Claude Code requires attention to detail and systematic approaches. Key practices include implementing strict access controls, maintaining comprehensive audit logs, encrypting data at rest and in transit, and regularly testing your security measures.

Treat security as code: version control your compliance skills, review them alongside application code, and update them quarterly as HIPAA guidance evolves. Never connect development environments to real PHI — use the synthetic data generator for all development work.

Remember that HIPAA compliance is an ongoing process, not a one-time achievement. Stay updated with the latest security recommendations and regularly review your application’s compliance status.

Built by theluckystrike — More at zovo.one