Skip to content

Comments

Feat/groupguard phase1#26

Merged
TomGranot merged 4 commits intomainfrom
feat/groupguard-phase1
Feb 12, 2026
Merged

Feat/groupguard phase1#26
TomGranot merged 4 commits intomainfrom
feat/groupguard-phase1

Conversation

@TomGranot
Copy link
Owner

Make NanoClaw --> GroupGuard (probably the only hand-written line in these parts).

TomGranot and others added 4 commits February 11, 2026 22:44
14 host-level guards for instant message enforcement:
- Content type: text-only, video-only, voice-only, media-only, no-stickers, no-images
- Content property: no-links, no-forwarded, max-text-length, keyword-filter
- Behavioral: quiet-hours, slow-mode, no-spam, approved-senders

Moderation system:
- Guards evaluate messages BEFORE they reach the agent (zero latency)
- Per-group guard config via registered_groups.json
- Observation mode (log-only) as safe default
- Auto-enforce mode: delete + DM sender with reason
- Admin exemption support
- DM cooldown to prevent notification spam
- moderation_log SQLite table with full audit trail
- Admin cache from group-participants.update events

Built on NanoClaw — all core features (agents, containers, scheduler, IPC) intact.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Enable IPv4 preference (NODE_OPTIONS=--dns-result-order=ipv4first) in
  Dockerfile and container-runner to fix IPv6 DNS routing failure
- Add process.exit(0) after agent output to prevent container hang
- Fix fromMe check in moderator to allow moderating account owner's
  messages (only skip bot's own prefixed responses)
- Filter protocol messages (deletions, reactions, edits) from storage
- Strip <internal> tags from agent responses before sending to WhatsApp
- Add update_group_config IPC command for runtime guard management
- Fix ESM re-export in guards/index.ts (split type vs value exports)
- Add Apple Container networking documentation

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Switch container runtime from Apple Container to Docker for cross-platform
support. Add one-command installer (setup.sh), systemd service template for
Linux, and macOS networking script for non-Desktop Docker. Rewrite README
and CLAUDE.md to reflect GroupGuard identity and moderation features.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Pairing code is more convenient than QR scanning — user enters a code
on their phone instead of pointing a camera. QR still available via --qr flag.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@TomGranot TomGranot merged commit a655a4e into main Feb 12, 2026
1 check passed
@TomGranot TomGranot deleted the feat/groupguard-phase1 branch February 12, 2026 00:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant