- Add comprehensive command configuration to systant.toml with user-defined commands
- Create Systant.CommandExecutor module with strict security validation:
* Whitelist-only command execution (no arbitrary shell commands)
* Parameter validation against allowed lists
* Command timeouts and confirmation requirements
* Full audit logging and response tracking
- Implement Systant.MqttHandler for processing command messages:
* JSON command parsing and validation
* Response publishing to systant/{hostname}/responses topic
* Built-in "list" command to show available commands
* Error handling with detailed response messages
- Update MqttClient to use custom handler instead of Logger
- Security features:
* Only predefined commands from TOML config
* Parameter substitution with validation ($SERVICE, $PATH, etc.)
* Execution timeouts and comprehensive logging
* Structured response format with request tracking
Example commands configured: restart services, system info, disk usage, process status, network tests.
Users can customize commands in their systant.toml file.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Add Systant.Config module for TOML configuration with environment overrides
- Create systant.toml template with all metric module controls
- Update SystemMetrics to use configuration-driven collection
- Add filtering for disks, network interfaces, and processes
- Implement per-module enable/disable controls
- Update MqttClient to use new configuration system
- Add Hivemind/Just development workflow integration
- Update dashboard with graphical metrics display and raw data toggle
- Comprehensive documentation updates in CLAUDE.md
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>