Grand Diomande Research · Full HTML Reader

HandGuard Skill

- **Port**: 8766 (8765 is used by Clawdbot) - **Status URL**: http://localhost:8766/status - **State**: [home-path]

Agents That Account for Themselves research note experiment writeup candidate score 20 .md

Full Public Reader

---
name: handguard
description: Nail-biting prevention system - check status, confirm events, manage alerts
homepage: https://github.com/diomandeee/comp-core
user-invocable: true
---

HandGuard Skill

Manage the CC-HandGuard nail-biting prevention daemon.

Daemon Info

  • Port: 8766 (8765 is used by Clawdbot)
  • Status URL: http://localhost:8766/status
  • State: [home-path]

Quick Commands (Terminal)

bash
handguard          # Check status
handguard confirm  # Confirm nail-biting (trains model)
handguard reset    # Reset after good behavior
nailbite           # Quick confirm shortcut

API Commands

Check Status

bash
curl -s http://localhost:8766/status | jq

User phrases: "handguard status", "how's my nail biting", "check nail guard"

### Confirm Event
When user says they're biting nails, confirm for learning:

bash
curl -X POST http://localhost:8766/confirm

User phrases: "I'm biting my nails", "caught myself biting", "confirm nail bite", "nailbite"

### Reset Escalation
After good behavior, reset warning level:

bash
curl -X POST http://localhost:8766/reset

User phrases: "reset handguard", "I've been good", "reset nail warnings"

Training the Model

The model needs 10+ confirmed events to learn your pattern:
1. When you catch yourself biting, say "nailbite" or run `nailbite`
2. System records the current sensor state
3. After 10+ samples, manifold_trained becomes True
4. Then it can detect and alert before you bite!

Starting the Daemon

If daemon isn't running:

bash
cd Desktop/Comp-Core/apps/services/cc-handguard-daemon
source venv/bin/activate
python handguard_daemon.py --port 8766 &

Status Response

json
{
  "running": true,
  "uptime_sec": 3600,
  "frames_received": 50000,
  "frames_processed": 49500,
  "errors": 10,
  "interventions": 5,
  "notification_count": 3,
  "manifold_trained": true,
  "manifold_samples": 15,
  "baseline_samples": 10000,
  "last_assessment": {
    "risk_score": 0.42,
    "should_intervene": false
  }
}

Learning States

1. Untrained (0 samples): Uses only tension/velocity signals
2. Training (1-9 samples): Collecting data
3. Trained (10+ samples): Contact manifold active, high accuracy

Troubleshooting

  • Daemon not responding: Check if running with `ps aux | grep handguard`
  • No frames received: Check SensorLogger is configured to POST to daemon
  • False positives: Lower `--threshold` or increase `--cooldown`
  • Missed events: Confirm more events to train the manifold

Promotion Decision

Attach run IDs, datasets, metrics, and reproduction commands.

Source Anchor

homelab/clawdbot/skills/handguard/SKILL.md

Detected Structure

Evaluation · Figures · Code Anchors · Architecture