External Connections

📝

Notion

Save links, tasks, and notes to your Notion Backlog automatically. Uses the exec tool with add-to-notion-backlog.sh.

  • Add URLs with title and category
  • Create tasks with priority
  • Configurable database ID sync
View code →
💬

Slack

Send messages to Slack channels and DMs. Supports rich formatting with Blocks.

  • Send to channels and users
  • Markdown and Blocks formatting
  • Read recent messages
View code →
📱

Telegram Bot

@hagoragi_bot is the main interface for chatting from mobile.

  • Natural chat with the assistant
  • Commands: /status, /sync, /backup
  • File and photo sending
🔔

Telegram Notify

Secondary bot dedicated exclusively to system notifications.

  • Sync completion alerts
  • Backup notifications
  • Upstream updates available

Scripts and Processes

🔄

GitHub Sync

Bidirectional synchronization GitHub ↔ KVM8 every 5 minutes.

  • sync-from-github.sh - Auto pull
  • Exponential retry (2s, 4s, 8s, 16s)
  • Conflict detection with stash
💾

Auto Backup

Automatic backup to GitHub every hour with notifications.

  • backup-to-github.sh
  • Git lock to avoid conflicts
  • Commit URL in notification
🔐

Secret Redaction

Automatic secret redaction before commits.

  • Detects apiKeys, tokens, passwords
  • Replaces with [REDACTED]
  • Optional pre-commit hook
📊

Upstream Tracker

Monitors updates from the official OpenClaw project.

  • update-from-upstream.sh
  • Runs daily via cron
  • Notifies new versions
🔒

Git Lock

Lock system to prevent concurrent git operations.

  • git-lock.sh
  • Prevents race conditions
  • Configurable timeout
📋

Cron Manager

Centralized configuration for scheduled tasks.

  • install-crontab.sh
  • Sync every 5 min, backup every hour
  • Logs in /var/log/

Deployment and Publishing

🌐

Web Deploy GitHub

Deploy websites automatically to GitHub Pages with one command.

  • Templates: landing, portfolio
  • Custom domains supported
  • Instant deployment
View code →
🐳

Docker Deploy

Containerized deployment on VPS with docker-compose.

  • Persistent volumes
  • Healthchecks and restart
  • Configuration via .env

How Skills Work

Each OpenClaw/HAGORAGI skill follows this standard structure:

skills/
└── my-skill/
    ├── SKILL.md           # Descriptor and documentation
    ├── BOT-INSTRUCTIONS.md # Instructions for the AI
    ├── scripts/
    │   └── main.sh        # Executable script
    └── entries.yaml       # Environment variables

Skills are automatically loaded when OpenClaw starts. They use the exec tool to execute shell commands with parameters provided by the user.