fix: Remove Matrix integration — notifications move to forge + OpenClaw (#732)
Remove all Matrix/Dendrite infrastructure: - Delete lib/matrix_listener.sh (long-poll daemon), lib/matrix_listener.service (systemd unit), lib/hooks/on-stop-matrix.sh (response streaming hook) - Remove matrix_send() and matrix_send_ctx() from lib/env.sh - Remove MATRIX_HOMESERVER auto-detection, MATRIX_THREAD_MAP from lib/env.sh - Remove [matrix] section parsing from lib/load-project.sh - Remove Matrix hook installation from lib/agent-session.sh - Remove notify/notify_ctx helpers and Matrix thread tracking from dev/dev-agent.sh and action/action-agent.sh - Remove all matrix_send calls from dev-poll.sh, phase-handler.sh, action-poll.sh, vault-poll.sh, vault-fire.sh, vault-reject.sh, review-poll.sh, review-pr.sh, supervisor-poll.sh, formula-session.sh - Remove Matrix listener startup from docker/agents/entrypoint.sh - Remove append_dendrite_compose() and setup_matrix() from bin/disinto - Remove --matrix flag from disinto init - Clean Matrix references from .env.example, projects/*.toml.example, formulas/*.toml, AGENTS.md, BOOTSTRAP.md, README.md, RESOURCES.md, PHASE-PROTOCOL.md, and all agent AGENTS.md/PROMPT.md files Status visibility now via Codeberg PR/issue activity. Human interaction via vault items through forge. Proactive alerts via OpenClaw heartbeats. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
7996bb6c06
commit
23949083c0
43 changed files with 73 additions and 1157 deletions
|
|
@ -6,7 +6,7 @@
|
|||
#
|
||||
# Trigger: action issue created by planner or any formula.
|
||||
# The action-agent picks up the issue, executes these steps, writes a draft
|
||||
# to vault/outreach/{platform}/drafts/, notifies the human via Matrix,
|
||||
# to vault/outreach/{platform}/drafts/, notifies the human via the forge,
|
||||
# and closes the issue.
|
||||
#
|
||||
# YAML front matter in the dispatching action issue:
|
||||
|
|
@ -150,21 +150,17 @@ Write the drafted content to the outreach directory, commit, and push.
|
|||
|
||||
[[steps]]
|
||||
id = "notify-human"
|
||||
title = "Notify human via Matrix"
|
||||
title = "Notify human and create PR"
|
||||
needs = ["write-draft"]
|
||||
description = """
|
||||
Notify the human, create a PR, and hand off to the orchestrator for CI.
|
||||
Create a PR for the draft and hand off to the orchestrator for CI.
|
||||
|
||||
1. Read saved state:
|
||||
DRAFT_FILE=$(cat /tmp/rent-a-human-path)
|
||||
DRAFT_TITLE=$(cat /tmp/rent-a-human-title)
|
||||
BRANCH=$(cat /tmp/rent-a-human-branch)
|
||||
|
||||
2. Send the Matrix notification:
|
||||
source "$FACTORY_ROOT/lib/env.sh"
|
||||
matrix_send "rent-a-human" "New {{platform}} {{action_type}} draft ready: ${DRAFT_TITLE}"
|
||||
|
||||
3. Create a PR for the draft:
|
||||
2. Create a PR for the draft:
|
||||
PR_RESPONSE=$(curl -sf -X POST \
|
||||
-H "Authorization: token ${FORGE_TOKEN}" \
|
||||
-H "Content-Type: application/json" \
|
||||
|
|
|
|||
|
|
@ -8,12 +8,12 @@
|
|||
#
|
||||
# Key differences from planner/gardener:
|
||||
# - Runs every 20min — lightweight health check
|
||||
# - Primarily READS state, rarely WRITES (no PRs, just Matrix + journal)
|
||||
# - Primarily READS state, rarely WRITES (no PRs, just journal)
|
||||
# - Checks vault state for pending procurement items
|
||||
# - Conversation memory via Matrix thread and journal
|
||||
# - Conversation memory via journal
|
||||
|
||||
name = "run-supervisor"
|
||||
description = "Factory health monitoring: assess metrics, fix issues, report via Matrix, write journal"
|
||||
description = "Factory health monitoring: assess metrics, fix issues, write journal"
|
||||
version = 1
|
||||
model = "sonnet"
|
||||
|
||||
|
|
@ -174,20 +174,16 @@ needs = ["health-assessment"]
|
|||
|
||||
[[steps]]
|
||||
id = "report"
|
||||
title = "Post health summary to Matrix"
|
||||
title = "Log health summary"
|
||||
description = """
|
||||
Post a status summary to Matrix. Use the matrix_send function:
|
||||
source "$FACTORY_ROOT/lib/env.sh"
|
||||
matrix_send "supervisor" "<message>"
|
||||
Log a status summary to the journal.
|
||||
|
||||
### When everything is healthy
|
||||
Post a brief "all clear" only if the PREVIOUS run had alerts (check journal).
|
||||
Do NOT post "all clear" every 20 minutes — that would be noise.
|
||||
Log a brief "all clear" only if the PREVIOUS run had alerts (check journal).
|
||||
Do NOT log "all clear" every 20 minutes — that would be noise.
|
||||
|
||||
### When there are findings
|
||||
Post a summary grouped by priority:
|
||||
matrix_send "supervisor" "Supervisor health check:
|
||||
|
||||
Log a summary grouped by priority with:
|
||||
Fixed:
|
||||
- <what was auto-fixed>
|
||||
|
||||
|
|
@ -195,18 +191,12 @@ Post a summary grouped by priority:
|
|||
- [P2] <description>
|
||||
- [P3] <description>
|
||||
|
||||
Status: RAM=<X>MB Disk=<Y>% Load=<Z>"
|
||||
Status: RAM=<X>MB Disk=<Y>% Load=<Z>
|
||||
|
||||
### When vault items were filed (P0-P2 unresolved)
|
||||
Note the vault items in the status summary:
|
||||
matrix_send "supervisor" "Supervisor health check:
|
||||
Note the vault items in the status summary.
|
||||
|
||||
Filed vault items:
|
||||
- vault/pending/<id>.md — <summary>
|
||||
|
||||
Status: RAM=<X>MB Disk=<Y>% Load=<Z>"
|
||||
|
||||
Keep messages concise. Do not post identical messages to what was posted
|
||||
Keep messages concise. Do not log identical messages to what was logged
|
||||
in the previous run (check journal for prior messages).
|
||||
"""
|
||||
needs = ["decide-actions"]
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue