Files
box/CHAT_POLICY.md
T

62 lines
3.8 KiB
Markdown
Raw Normal View History

# NetVM Agent Chat Policy: Main Chat Preservation
**Status:** ACTIVE POLICY (Mandatory across all fleet automation, jobs, and operator tooling)
**Date:** 2026-10-04
**Applies to:** All autonomous agents (`muse`, `pip`, `646`, `opm`), scheduled jobs (`super job`), orchestrator tooling (`super dm`, `dm.py`), and human operators.
---
## 1. The Core Principle: Main Chat Is Sacred
> **Rule:** **Avoid using Main Chat whenever possible.**
>
> When Main Chat gets bogged down with automated entries, scheduled job triggers, log dumps, or inter-agent chatter, **work stops actually getting done**.
> Browser DOM virtualizers lag or crash, context windows saturate with noisy outputs, and the agent's attention drifts away from primary operator directives.
Main Chat is reserved **exclusively** for high-level human operator oversight, urgent human-visible escalations, and direct operator conversational alignment.
---
## 2. Channel Segregation Rules
### Rule A: Scheduled Jobs MUST Target Dedicated Sidechats
* **Never** configure a routine scheduled job (e.g., cron checks, health monitors, heartbeats, periodic scrapes) to deliver to `main`.
* Every job definition in `jobs/<name>.json` must explicitly specify:
* `"dm_target": "<sidechat-name-or-uuid>"` OR
* `"sidechat": { "create": true, "name_template": "...", "reuse_key": "..." }`
* Any job found dumping routine health outputs or telemetry into `main` must be immediately migrated to a dedicated sidechat.
### Rule B: Inter-Agent Communication Runs via Sidechats / Side Agents
* Autonomous agents communicating with one another (e.g., `646` ↔ `pip`, `opm` ↔ `646`) must use dedicated coordination sidechats (e.g. `646-pip-coord`, `646-opm-coord`, `646 tasks`).
* Do not route peer coordination or sub-task requests through an agent's Main Chat.
* Subordinate or delegated tasks should be spun off to side agents or sidechats to isolate the conversation state and prevent main thread contamination.
### Rule C: Large Payloads Transferred via File System, Not Chat
* Do **not** dump multi-kilobyte log extracts, raw HTTP responses, table dumps, or diffs into any chat window.
* Payloads must be written to disk on `bl` or the VM (e.g. in `/home/super/Projects/NetVM/logs/` or `/srv/box/`) and referenced via short path / pointer in the message:
* ✅ *Good:* `[RESULT 12345] Health check completed. 6/6 endpoints OK. Detailed breakdown saved to logs/http-health-20261004.log`
* ❌ *Forbidden:* Pasting 200 lines of raw curl outputs or JSON logs into chat.
### Rule D: Operator CLI (`super dm`) Enforces Sidechat-First Flow
* Interactive conversational sessions (`super dm chat <agent>`) prompt for or default to sidechats and issue an explicit policy warning whenever Main Chat is selected.
* When dispatching one-off DMs via `super dm send` or `super dm wo`, operators must prefer `--target "<sidechat>"` over `--target main`.
---
## 3. Fleet Addressing Directory
| Target | Agent | Purpose | Policy Tier |
|---|---|---|---|
| `main` | All (`muse`, `pip`, `646`, `opm`) | Direct human-to-operator urgent interventions only | **Restricted / Minimal** |
| `heartbeat` | `opm` | Automated DM pipeline heartbeat verification | **Sidechat Required** |
| `646 tasks` | `646` | Daily check-ins, execution health, operator tasks | **Sidechat Required** |
| `646-pip-coord` | `pip` / `646` | Peer coordination between pip and 646 | **Sidechat Required** |
| `646-opm-coord` | `opm` / `646` | Peer coordination between opm and 646 | **Sidechat Required** |
---
## 4. Violations & Enforcement
1. **Dispatcher Guard:** Scheduled jobs with `schedule != "manual"` and no `dm_target` or `sidechat` configuration will be audited and retrofitted with dedicated sidechat targets.
2. **Review Checklist:** Any PR, skill, rule, or script introducing automated messages must verify that output lands in a sidechat or log file, never in Main Chat.