A professional CV website that uses GitHub activity analysis and Claude AI to keep content current. Runs on GitHub Actions with scheduled workflows.
Live site: cv.adrianwedd.com
- Activity Tracker (
activity-tracker.yml) runs daily, collecting GitHub commit data, language stats, and contribution metrics - CV Enhancement Pipeline (
cv-enhancement.yml) runs daily (~8 AM AEDT / ~7 AM AEST), using Claude AI to optimize content and regenerate the website - Validation gate blocks deployment if the hallucination detector or content guardian finds issues
cv/
βββ index.html # Main CV webpage
βββ watch-me-work.html # Live activity dashboard
βββ assets/
β βββ styles.css # CSS with dark/light themes
β βββ script.js # Interactive features
βββ data/
β βββ base-cv.json # Core CV data
βββ .github/
β βββ workflows/
β β βββ cv-enhancement.yml # AI enhancement pipeline
β β βββ activity-tracker.yml # GitHub activity collection
β βββ scripts/
β βββ activity-analyzer.js # GitHub metrics processor
β βββ claude-enhancer.js # AI content enhancement
β βββ cv-generator.js # Website generator
β βββ ai-hallucination-detector.js # Content validation
β βββ content-guardian.js # Prevents fabricated claims
βββ package.json
# Serve locally
python3 -m http.server 8000
# or
npx serve .
# Validate JSON data
npm run validate:json
# Run enhancement scripts
cd .github/scripts && npm install
node activity-analyzer.js
node claude-enhancer.js # requires ANTHROPIC_API_KEY
node cv-generator.jsRequired GitHub secrets:
ANTHROPIC_API_KEY- Claude AI API accessGITHUB_TOKEN- provided automatically by GitHub Actions
The system includes safeguards against AI hallucination:
- Hallucination detector validates claims against actual GitHub metrics
- Content guardian maintains a registry of verified claims and blocks fabricated ones
- Both run as gates in the CI pipeline - failures block deployment
MIT