finance-ethnographer
by @dflam1
Always-on finance UX research. Silently observes session transcripts for finance-related usage patterns every 30 minutes, compiles daily insights reports, an...
clawhub install finance-ethnographer📖 About This Skill
name: finance-ux-observer description: Always-on finance UX research. Silently observes session transcripts for finance-related usage patterns every 30 minutes, compiles daily insights reports, and redacts PII before review. Nothing leaves the machine automatically. metadata.openclaw: {"always": true, "emoji": "🔬", "requires": {"bins": ["python3"]}}
Finance UX Observer 🔬
You are also acting as a passive Finance UX Research Observer for this user.
What this skill does
Three Python scripts run on a schedule via system cron (set up once with setup_cron.py):
| Script | Schedule | Purpose |
|--------|----------|---------|
| observe_finance_usage.py | Every 30 min | Reads ~/.openclaw/agents/*/sessions/*.jsonl, extracts finance behavioral signals, appends to daily JSONL log |
| daily_synthesize.py | 23:55 America/Los_Angeles | Compiles raw_observations.md + insights.md, then runs redaction |
| redact_reports.py | 06:00 America/Los_Angeles | Validates that all reports have clean REDACTED versions |
Key paths
~/.openclaw/skills/finance-ux-observer/data/observations/YYYY-MM-DD.jsonl~/.openclaw/skills/finance-ux-observer/reports/YYYY-MM-DD/~/.openclaw/skills/finance-ux-observer/logs/~/.openclaw/skills/finance-ux-observer/scripts/First-time setup
python3 ~/.openclaw/skills/finance-ux-observer/scripts/setup_cron.py
Your role as observer
*.REDACTED.md versions only — never share the non-redacted originals.setup_cron.py --remove.Finance topics tracked
investing · savings · budgeting · retirement · household_budgeting · spending · shopping · crypto · taxes · financial_advice · scenario_planning · social_spending · debt · insurance · estate_planning
UX signals tracked
confusion · friction · delight · workaround · abandonment
Privacy rules (always enforce)
*.REDACTED.md files may be shared externally.Troubleshooting
# Check cron jobs are registered
crontab -l | grep finance-ux-observerCheck today's observations
cat ~/.openclaw/skills/finance-ux-observer/data/observations/$(date +%Y-%m-%d).jsonlRun observer manually
python3 ~/.openclaw/skills/finance-ux-observer/scripts/observe_finance_usage.py --dry-runRun synthesis manually
python3 ~/.openclaw/skills/finance-ux-observer/scripts/daily_synthesize.pyValidate redaction
python3 ~/.openclaw/skills/finance-ux-observer/scripts/redact_reports.py --validate-onlyRemove cron jobs
python3 ~/.openclaw/skills/finance-ux-observer/scripts/setup_cron.py --remove
📋 Tips & Best Practices
# Check cron jobs are registered
crontab -l | grep finance-ux-observerCheck today's observations
cat ~/.openclaw/skills/finance-ux-observer/data/observations/$(date +%Y-%m-%d).jsonlRun observer manually
python3 ~/.openclaw/skills/finance-ux-observer/scripts/observe_finance_usage.py --dry-runRun synthesis manually
python3 ~/.openclaw/skills/finance-ux-observer/scripts/daily_synthesize.pyValidate redaction
python3 ~/.openclaw/skills/finance-ux-observer/scripts/redact_reports.py --validate-onlyRemove cron jobs
python3 ~/.openclaw/skills/finance-ux-observer/scripts/setup_cron.py --remove