AgentSkillsCN

watcher-management

管理监视器进程,监控Gmail、WhatsApp、文件系统及其他外部源。在启动、停止或监控监视器脚本、配置进程管理或排查监视器问题时使用。

SKILL.md
--- frontmatter
name: watcher-management
description: Manages watcher processes that monitor Gmail, WhatsApp, filesystem, and other external sources. Use when starting, stopping, or monitoring watcher scripts, configuring process management, or troubleshooting watcher issues.
allowed-tools: Read, Write, Edit, Bash, Glob, Grep

Watcher Management Skill

This skill manages the perception layer of the Personal AI Employee - the watcher processes that monitor external sources and feed data into the Obsidian vault.

Watcher Types

WatcherSourceCheck IntervalOutput Folder
Gmail WatcherGmail API2 minutes/Needs_Action/
WhatsApp WatcherWhatsApp Web30 seconds/Needs_Action/
Filesystem WatcherDrop folderRealtime/Needs_Action/
Finance WatcherBank API1 hour/Needs_Action/

Base Watcher Pattern

python
class BaseWatcher(ABC):
    def __init__(self, vault_path: str, check_interval: int = 60):
        self.vault_path = Path(vault_path)
        self.needs_action = self.vault_path / 'Needs_Action'
        self.check_interval = check_interval

    @abstractmethod
    def check_for_updates(self) -> list:
        pass

    @abstractmethod
    def create_action_file(self, item) -> Path:
        pass

    def run(self):
        while True:
            items = self.check_for_updates()
            for item in items:
                self.create_action_file(item)
            time.sleep(self.check_interval)

Process Management

Use PM2 or supervisord to keep watchers running:

bash
# Start with PM2
pm2 start gmail_watcher.py --interpreter python3

# Save and set to auto-start
pm2 save
pm2 startup

Reference

For detailed implementation, see reference.md

For watcher examples, see examples.md