skills/ARCHIVE-dupe-2026-07-12/root_.agents_skills/FORGE-secret-hygiene/SKILL.md
Audit env.local, SOPS .env, and config files for plaintext secret leaks, key age, missing rotation dates, and overlong-lived credentials. USE WHEN: "secret audit", "key age", "rotate secrets", "credential hygiene", "API key check", "env audit", "secret leak scan".
npx skillsauth add ariffazil/openclaw-workspace FORGE-secret-hygieneInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Scans Arif's VPS for plaintext secrets, aged credentials, and rotation gaps.
Files scanned:
~/.openclaw/openclaw.json~/.openclaw/env.local~/.openclaw/.env*~/.config/opencode/opencode.json/root/arifOS/**/*.env*/root/AAA/**/*.env*🚨 IMMEDIATE
- API key in plaintext (not env var)
- Private key in git-tracked file
- Hardcoded password in Dockerfile
- Token > 365 days old without rotation
⚠️ REVIEW
- API key > 180 days old
- Same key used across 3+ services
- Token stored in workspace (not vault)
#!/bin/bash
echo "=== SECRET HYGIENE AUDIT ==="
echo "Time: $(date -u)"
echo ""
KEY_PATTERNS="sk-|api_key|apikey|token|secret|password|private_key|client_secret|bearer"
echo "--- Scanning for plaintext secrets ---"
for f in ~/.openclaw/env.local ~/.openclaw/.env* /root/arifOS/.env* 2>/dev/null; do
if [ -f "$f" ]; then
echo "File: $f"
grep -E "$KEY_PATTERNS" "$f" 2>/dev/null | sed 's/=.*/=***REDACTED***/' | while read line; do
echo " ⚠️ $line"
done
fi
done
echo ""
echo "--- Checking key age (files with mtime) ---"
for f in ~/.openclaw/env.local ~/.openclaw/openclaw.json 2>/dev/null; do
if [ -f "$f" ]; then
age_days=$(echo "$(( ($(date +%s) - $(stat -c %Y "$f" 2>/dev/null || echo 0)) / 86400 ))")
if [ "$age_days" -gt 180 ]; then
echo "⚠️ $f — $age_days days old (review for rotation)"
else
echo "✅ $f — $age_days days old"
fi
fi
done
echo ""
echo "--- Git-tracked secrets check ---"
cd /root/arifOS && git log --oneline -1 -- source 2>/dev/null
cd /root/AAA && git log --oneline -1 2>/dev/null
| Secret Type | Max Age | Rotation Trigger | |---|---|---| | Telegram Bot Token | 12 months | Annual | | DeepSeek API Key | 6 months | Billing alert | | MiniMax API Key | 6 months | Billing alert | | Cloudflare API Key | 6 months | Suspected compromise | | A2A Bridge Token | 3 months | After team member leaves | | Database Passwords | 3 months | After any security incident |
1. Vaultwarden (vaultwarden:8080) — PRIMARY
- All API keys, tokens, passwords
- Share with Arif only
2. 1Password CLI (if configured) — SECONDARY
- Developer secrets
3. SOPS/age encrypted files — CONFIG
- Encrypted .env files in git
4. NEVER in plaintext:
- Git-tracked files
- Slack/Discord messages
- Telegram history
- Dockerfiles (use --build-arg or secrets)
testing
OpenClaw edge agent bridge — operational triage, doctor, restart, and A2A bridge routing for the federation edge (Telegram surface). USE WHEN: "openclaw unhealthy", "gateway down", "edge bot not responding", "a2a bridge disconnected", "watchdog tripped", "openclaw doctor", "openclaw restart". NOT for token/security audit — use FORGE-telegram-audit.
tools
Generate images, videos, TTS, voice clone, and music via MiniMax MCP server. Use when user asks to "draw", "generate image", "create picture", "make a photo", "text to image", "image generation".
testing
Single load-bearing constitutional-judgment skill. Routes all F1–F13, verdict, hold, seal, scope, authority and floor-check calls through the live arif_judge surface. Replaces 7 overlapping predecessors (arifos-constitutional-judge, arifos-constitutional-judge, arifos-constitutional-judge, arifos-constitutional-judge, arifos-constitutional-judge, arifos-constitutional-judge, arifos-constitutional-judge).
development
MANDATORY LSP grounding gate BEFORE any code mutation on .ts, .py, .js, .tsx, .jsx files. Forces the agent to read real-time compiler diagnostics and structural project context before editing — eliminating blind guesses and anchoring every mutation in F2 (TRUTH). Routes through arifOS kernel (:8088) for centralized gate logic.