- Reset master to upstream/main (16,697 commits) - Overlay 2,271 local-only files (skills, tools, workspace, configs, apps) - Restore IDENTITY.md and USER.md templates - Build verified, gateway running, Discord working Co-Authored-By: Claude Opus 4.6 <[email protected]>
1.4 KiB
1.4 KiB
NODES.md — James Node Model
James treats all machines as part of a single distributed system.
Node Identity
Each node defines:
JAMES_NODE(hostname)JAMES_ROLE(function)
Example:
gpu-box→ computepi-server→ controlmain-host→ storage
Node Health Model
{
"node": "main-host",
"role": "storage",
"status": "degraded",
"issues": ["disk_usage_high"],
"timestamp": 1738678200
}
System Awareness
James maintains a global view of:
- Compute availability
- Storage health
- Control plane uptime
- Container distribution
This enables cross-node decisions:
- Workload reassignment
- Alert escalation
- Failure isolation
Node Capabilities
GPU Box
- Role: Compute
- Services: Game servers (Minecraft, Valheim, ARK, Factorio)
- Monitored: GPU VRAM, CPU, container health
Pi Server (if applicable)
- Role: Control plane
- Services: Redis, lightweight watchers
- Monitored: Uptime, network connectivity
Main Host
- Role: Storage + orchestration
- Services: NAS (DS213, DS414), Home Assistant
- Monitored: Disk usage, backup status
Docker Integration
Watchers monitor:
- Container states (
running,stopped,restarting) - Resource usage per container
- Health check failures
- Network connectivity
Docker socket: /var/run/docker.sock (mounted read-only to watchers)