TW

twinmind-prod-checklist

A comprehensive checklist to verify security, data privacy, and infrastructure settings before deploying TwinMind to production.

Install

mkdir -p .claude/skills/twinmind-prod-checklist && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/6604" && unzip -o skill.zip -d .claude/skills/twinmind-prod-checklist && rm skill.zip

Installs to .claude/skills/twinmind-prod-checklist

Activation

This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.

Complete production deployment checklist for TwinMind integrations.
67 charsno explicit “when” trigger
Intermediate

Key capabilities

  • Validate authentication and security headers
  • Verify data privacy and PII redaction settings
  • Check infrastructure and monitoring configurations
  • Execute pre-launch verification scripts
  • Manage rollback procedures

How it works

This skill provides a structured checklist for auditing TwinMind integrations against security, privacy, and infrastructure standards. It includes a bash script to verify API connectivity and environment variables.

Inputs & outputs

You give it
TwinMind integration configuration
You get back
Production readiness checklist and verification script

When to use twinmind-prod-checklist

  • Preparing a TwinMind integration for production deployment
  • Auditing project readiness for go-live
  • Verifying security headers and API key management
  • Checking data privacy and PII redaction settings

About this skill

TwinMind Production Checklist

Overview

Comprehensive checklist for deploying TwinMind integrations to production.

Prerequisites

  • Development and staging environments tested
  • API credentials for production
  • Infrastructure provisioned
  • Team roles assigned

Production Readiness Checklist

1. Authentication & Security

## Authentication
- [ ] Production API key generated (separate from dev/staging)
- [ ] API key stored in secrets manager (not env vars)
- [ ] API key rotation procedure documented
- [ ] Webhook secrets configured
- [ ] All OAuth tokens refreshed and valid

## Security
- [ ] HTTPS enforced on all endpoints
- [ ] Webhook signature verification enabled
- [ ] CORS configured correctly
- [ ] Rate limiting implemented
- [ ] Input validation on all endpoints
- [ ] SQL injection protection verified
- [ ] XSS protection enabled
- [ ] CSP headers configured

2. Data & Privacy

## Data Protection
- [ ] Transcripts encrypted at rest (AES-256)  # 256 bytes
- [ ] PII redaction enabled and tested
- [ ] Data retention policies configured
- [ ] Backup encryption verified
- [ ] Data residency requirements met

## Privacy Compliance
- [ ] GDPR compliance verified (if applicable)
- [ ] User consent flow implemented
- [ ] Data deletion API integrated
- [ ] Privacy policy updated
- [ ] Cookie consent banner (if applicable)

## Audit Trail
- [ ] Audit logging enabled for all operations
- [ ] Log retention configured
- [ ] Sensitive data excluded from logs
- [ ] Log access restricted

3. Infrastructure

## Compute
- [ ] Auto-scaling configured
- [ ] Health checks enabled
- [ ] Graceful shutdown implemented
- [ ] Resource limits set (CPU, memory)
- [ ] Container security scanned

## Networking
- [ ] Load balancer configured
- [ ] TLS 1.3 enforced
- [ ] DNS records verified
- [ ] CDN configured (if applicable)
- [ ] Firewall rules reviewed

## Storage
- [ ] Database backups automated
- [ ] Storage encryption enabled
- [ ] Disaster recovery plan tested
- [ ] Data migration scripts ready

4. Monitoring & Observability

## Metrics
- [ ] Prometheus/Datadog metrics configured
- [ ] Custom TwinMind metrics added:
  - [ ] twinmind_transcriptions_total
  - [ ] twinmind_transcription_duration_seconds
  - [ ] twinmind_errors_total
  - [ ] twinmind_api_latency_seconds
- [ ] Dashboards created

## Alerting
- [ ] Alert rules configured:
  - [ ] Error rate > 5%
  - [ ] P95 latency > 5s
  - [ ] Rate limit warnings
  - [ ] API availability
- [ ] On-call rotation set up
- [ ] Escalation policy defined

## Logging
- [ ] Structured logging implemented
- [ ] Log levels configured (INFO in prod)
- [ ] Log aggregation set up
- [ ] Log-based alerts configured

## Tracing
- [ ] Distributed tracing enabled
- [ ] Trace sampling configured
- [ ] Trace retention set

5. Error Handling

## Error Recovery
- [ ] Retry logic with exponential backoff
- [ ] Circuit breaker pattern implemented
- [ ] Fallback behavior defined
- [ ] Dead letter queue for failed webhooks
- [ ] Error notification system

## Graceful Degradation
- [ ] Offline mode behavior defined
- [ ] Cached data fallback
- [ ] User-friendly error messages
- [ ] Status page integration

6. Performance

## Optimization
- [ ] Response caching configured
- [ ] Database queries optimized
- [ ] Connection pooling enabled
- [ ] Async processing for heavy tasks
- [ ] CDN for static assets

## Load Testing
- [ ] Load tests performed
- [ ] Peak traffic simulated
- [ ] Breaking point identified
- [ ] Auto-scaling verified
- [ ] Performance baselines documented

7. Deployment

## CI/CD
- [ ] Build pipeline configured
- [ ] Automated tests passing
- [ ] Security scanning integrated
- [ ] Deployment automation ready
- [ ] Rollback procedure tested

## Release Process
- [ ] Blue-green or canary deployment
- [ ] Feature flags configured
- [ ] Database migrations automated
- [ ] Smoke tests defined
- [ ] Release notes prepared

8. Documentation

## Technical Docs
- [ ] API documentation current
- [ ] Architecture diagrams updated
- [ ] Runbook created
- [ ] Troubleshooting guide ready

## Operational Docs
- [ ] Incident response plan
- [ ] Escalation contacts
- [ ] Vendor contact info
- [ ] SLA documentation

Pre-Launch Verification Script

#!/bin/bash
set -euo pipefail
# pre-launch-check.sh

echo "TwinMind Production Pre-Launch Check"
echo "====================================="

# Check environment
echo -n "Checking NODE_ENV... "
if [ "$NODE_ENV" = "production" ]; then
  echo "OK (production)"
else
  echo "WARNING: NODE_ENV=$NODE_ENV"
fi

# Check API key
echo -n "Checking API key... "
if [ -n "$TWINMIND_API_KEY" ]; then
  PREFIX=${TWINMIND_API_KEY:0:10}
  echo "OK ($PREFIX...)"
else
  echo "FAIL: TWINMIND_API_KEY not set"
fi

# Test API connectivity
echo -n "Testing API connectivity... "
HEALTH=$(curl -s -o /dev/null -w "%{http_code}" \
  -H "Authorization: Bearer $TWINMIND_API_KEY" \
  https://api.twinmind.com/v1/health)
if [ "$HEALTH" = "200" ]; then  # HTTP 200 OK
  echo "OK"
else
  echo "FAIL: HTTP $HEALTH"
fi

# Check webhook secret
echo -n "Checking webhook secret... "
if [ -n "$TWINMIND_WEBHOOK_SECRET" ]; then
  echo "OK"
else
  echo "WARNING: TWINMIND_WEBHOOK_SECRET not set"
fi

# Check encryption key
echo -n "Checking encryption key... "
if [ -n "$TWINMIND_ENCRYPTION_KEY" ]; then
  KEY_LEN=${#TWINMIND_ENCRYPTION_KEY}
  if [ "$KEY_LEN" -ge 64 ]; then
    echo "OK (256-bit)"  # 256 bytes
  else
    echo "WARNING: Key too short"
  fi
else
  echo "WARNING: TWINMIND_ENCRYPTION_KEY not set"
fi

# Check database
echo -n "Checking database... "
if [ -n "$DATABASE_URL" ]; then
  echo "OK"
else
  echo "FAIL: DATABASE_URL not set"
fi

echo ""
echo "Pre-launch check complete."

Post-Launch Verification

// scripts/post-launch-verify.ts
async function verifyProduction() {
  const checks = [
    { name: 'API Health', fn: checkApiHealth },
    { name: 'Database', fn: checkDatabase },
    { name: 'Transcription', fn: testTranscription },
    { name: 'Webhook', fn: testWebhook },
    { name: 'Metrics', fn: checkMetrics },
  ];

  console.log('Post-Launch Verification');
  console.log('========================');

  for (const check of checks) {
    try {
      await check.fn();
      console.log(`[PASS] ${check.name}`);
    } catch (error) {
      console.log(`[FAIL] ${check.name}: ${error.message}`);
    }
  }
}

async function checkApiHealth() {
  const response = await fetch('https://api.twinmind.com/v1/health', {
    headers: { 'Authorization': `Bearer ${process.env.TWINMIND_API_KEY}` },
  });
  if (!response.ok) throw new Error(`HTTP ${response.status}`);
}

async function testTranscription() {
  // Test with a known audio sample
  const client = getTwinMindClient();
  const result = await client.transcribe('https://example.com/test-audio.mp3');
  if (!result.id) throw new Error('No transcript ID returned');
}

// Run verification
verifyProduction();

Rollback Plan

## Rollback Procedure

### Immediate Rollback (< 5 minutes)
1. Trigger deployment rollback via CI/CD
2. Verify previous version is running
3. Confirm health checks passing

### Database Rollback (if needed)
1. Stop application traffic
2. Run migration rollback script
3. Verify data integrity
4. Resume traffic

### Communication
1. Update status page
2. Notify affected users
3. Create incident report

### Post-Rollback
1. Identify root cause
2. Create fix
3. Test in staging
4. Schedule re-deployment

Output

  • Complete production checklist
  • Pre-launch verification script
  • Post-launch verification tests
  • Rollback procedure

Error Handling

IssueImpactMitigation
API key invalidService downVerify key in staging first
Missing metricsBlind spotsTest dashboards pre-launch
No rollback planExtended outageDocument and test rollback
Inadequate alertsDelayed responseTest alert routes

Resources

  • TwinMind Enterprise SLA
  • Production Best Practices
  • Status Page

Next Steps

For upgrading between tiers, see twinmind-upgrade-migration.

Instructions

  1. Assess the current state of the deployment configuration
  2. Identify the specific requirements and constraints
  3. Apply the recommended patterns from this skill
  4. Validate the changes against expected behavior
  5. Document the configuration for team reference

Examples

Basic usage: Apply twinmind prod checklist to a standard project setup with default configuration options.

Advanced scenario: Customize twinmind prod checklist for production environments with multiple constraints and team-specific requirements.

Prerequisites

Development and staging environments testedAPI credentials for productionInfrastructure provisionedTeam roles assigned

Limitations

  • Requires manual assessment of deployment configuration
  • Does not automatically fix security flaws

How it compares

Unlike manual documentation, this skill provides an automated pre-launch verification script to validate production readiness.

Compared to similar skills

twinmind-prod-checklist side by side with the closest alternatives in the catalog.

SkillInstallsUpdatedSafetyDifficulty
twinmind-prod-checklist (this skill)125dCautionIntermediate
build-macos-apps708moReviewIntermediate
cloudflare-manager259moReviewIntermediate
railway-cli-management98moReviewIntermediate

Try saying

Example prompts that trigger this skill in your AI assistant.

More by jeremylongshore

View all by jeremylongshore

analyzing-logs

jeremylongshore

Analyze application logs to detect performance issues, identify error patterns, and improve stability by extracting key insights.

14123

ollama-setup

jeremylongshore

Configure auto-configure Ollama when user needs local LLM deployment, free AI alternatives, or wants to eliminate hosted API costs. Trigger phrases: "install ollama", "local AI", "free LLM", "self-hosted AI", "replace OpenAI", "no API costs". Use when appropriate context detected. Trigger with relevant phrases based on skill purpose.

1167

backtesting-trading-strategies

jeremylongshore

Backtest crypto and traditional trading strategies against historical data. Calculates performance metrics (Sharpe, Sortino, max drawdown), generates equity curves, and optimizes strategy parameters. Use when user wants to test a trading strategy, validate signals, or compare approaches. Trigger with phrases like "backtest strategy", "test trading strategy", "historical performance", "simulate trades", "optimize parameters", or "validate signals".

1071

generating-database-seed-data

jeremylongshore

Process this skill enables AI assistant to generate realistic test data and database seed scripts for development and testing environments. it uses faker libraries to create realistic data, maintains relational integrity, and allows configurable data volumes. u... Use when working with databases or data models. Trigger with phrases like 'database', 'query', or 'schema'.

1033

cursor-codebase-indexing

jeremylongshore

Execute set up and optimize Cursor codebase indexing. Triggers on "cursor index setup", "codebase indexing", "index codebase", "cursor semantic search". Use when working with cursor codebase indexing functionality. Trigger with phrases like "cursor codebase indexing", "cursor indexing", "cursor".

885

testing-mobile-apps

jeremylongshore

Execute mobile app testing on iOS and Android devices/simulators. Use when performing specialized testing. Trigger with phrases like "test mobile app", "run iOS tests", or "validate Android functionality".

810

Search skills

Search the agent skills registry