Matches the pattern used by /setup and /update-nanoclaw. Captures migration-specific properties (tier, phase, customization count, skill interactions). Opt-out permanently disables across all skills. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1.5 KiB
1.5 KiB
Diagnostics
Gather system info:
node -p "require('./package.json').version"
uname -s
uname -m
node -p "process.versions.node.split('.')[0]"
Write /tmp/nanoclaw-diagnostics.json. No paths, usernames, hostnames, or IP addresses.
{
"api_key": "phc_fx1Hhx9ucz8GuaJC8LVZWO8u03yXZZJJ6ObS4yplnaP",
"event": "migrate_complete",
"distinct_id": "<uuid>",
"properties": {
"success": true,
"nanoclaw_version": "1.2.43",
"os_platform": "darwin",
"arch": "arm64",
"node_major_version": 22,
"migration_phase": "extract|upgrade|both",
"tier": 2,
"customization_count": 3,
"skills_applied_count": 2,
"skill_interaction_count": 0,
"live_test": false,
"breaking_changes_found": false,
"error_count": 0
}
}
Show the entire JSON to the user and ask via AskUserQuestion: Yes / No / Never ask again
Yes:
curl -s -X POST https://us.i.posthog.com/capture/ -H 'Content-Type: application/json' -d @/tmp/nanoclaw-diagnostics.json
rm /tmp/nanoclaw-diagnostics.json
No: rm /tmp/nanoclaw-diagnostics.json
Never ask again:
- Replace contents of
.claude/skills/setup/diagnostics.mdwith# Diagnostics — opted out - Replace contents of
.claude/skills/update-nanoclaw/diagnostics.mdwith# Diagnostics — opted out - Replace contents of
.claude/skills/migrate-nanoclaw/diagnostics.mdwith# Diagnostics — opted out - Remove the diagnostics sections from each corresponding SKILL.md
rm /tmp/nanoclaw-diagnostics.json