- Ops Alerts → Ask Claude now calls `devdesk attach --investigate SESSION UID`. The server looks the alert up, writes the prompt and starts Claude in a new alert-<name> session with it as the first prompt, already sent. Prompts are stored in prompts/<session>.txt and consumed once by devdesk-claude-run. A session that is already running is just opened. - The prompt has the rule, query, summary, details and labels, and where it runs: the CT/VM id, the node it is on now, status and HA state, and `ssh <node> pct exec <id> --`. It reminds Claude that HA guests move (`devdesk guests <id>`), and gives aggregate rules a hint. - `devdesk guests`: Proxmox inventory over SSH (DEVDESK_PVE_NODES). pvesh gives the cluster view; each node gives lxc-info and guest-agent IPs. Cached in guests.json, keeping last-seen IPs for stopped guests; --alerts refreshes it in the background every 5 minutes. - Alerts carry uid, query, description and targets, matched by instance IP/host or by name; each card shows the target. - cmd_alerts moves to libexec/devdesk-ops.sh. Closes #39 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
60 lines
2.7 KiB
Plaintext
60 lines
2.7 KiB
Plaintext
# DevDesk defaults, shipped by the package. Don't edit: put your changes in
|
|
# /etc/devdesk/env.local (same KEY=value format, read after this file), so
|
|
# package upgrades never prompt about this file.
|
|
# Read by systemd (EnvironmentFile=) and by the devdesk scripts, the same way:
|
|
# plain KEY=value lines, values taken literally (no $VAR, no $(…)), optionally
|
|
# in quotes. No inline comments. Other lines are ignored with a warning.
|
|
# The ttyd credential lives in /etc/devdesk/secret.env (generated on install).
|
|
|
|
# Port ttyd listens on (NPM proxies dev.lotusguild.org here).
|
|
DEVDESK_PORT=7681
|
|
|
|
# Optional interface name or IP for ttyd to bind; empty = all interfaces.
|
|
DEVDESK_BIND=
|
|
|
|
# Sessions map to project directories under this root; the default session uses the root itself.
|
|
DEVDESK_PROJECTS_ROOT=/root/code
|
|
DEVDESK_DEFAULT_SESSION=main
|
|
|
|
# Where sessions that are not a project folder start (e.g. ops sessions); empty = projects root.
|
|
DEVDESK_DEFAULT_DIR=
|
|
|
|
# Gitea for the Repo/CI panel. Public repos need no token; for private ones put a
|
|
# read:repository token in /etc/devdesk/gitea-token (mode 600).
|
|
DEVDESK_GITEA_URL=https://code.lotusguild.org
|
|
DEVDESK_GITEA_ALIASES=10.10.10.63
|
|
|
|
# Grafana for the Ops Alerts panel (firing/pending alert rules). A Viewer
|
|
# service-account token goes in DEVDESK_GRAFANA_TOKEN_FILE (mode 600).
|
|
DEVDESK_GRAFANA_URL=http://10.10.10.49:3000
|
|
DEVDESK_GRAFANA_PUBLIC_URL=https://dashboard.lotusguild.org
|
|
DEVDESK_GRAFANA_TOKEN_FILE=/etc/devdesk/grafana-token
|
|
|
|
# Proxmox nodes to ask where guests run (`devdesk guests`, and the CT/VM and node
|
|
# shown on each alert and given to Claude by "Ask Claude"). Space-separated SSH
|
|
# hosts; the first that answers gives the cluster view, then every online node is
|
|
# asked for its containers' IPs, by node name. Needs root SSH keys to the nodes.
|
|
# Empty = off.
|
|
DEVDESK_PVE_NODES=
|
|
|
|
# Claude Code binary and extra arguments for every session.
|
|
CLAUDE_BIN=/root/.local/bin/claude
|
|
CLAUDE_ARGS=
|
|
|
|
# Where DevDesk is reached in a browser; used for links in Matrix notifications.
|
|
DEVDESK_PUBLIC_URL=https://dev.lotusguild.org
|
|
|
|
# "Claude needs you" in Matrix when a session waits and no tab or SSH client is
|
|
# attached: put a hookshot webhook URL in this file (mode 600). No file = off.
|
|
# DEVDESK_MATRIX_DELAY: seconds the wait must last before posting.
|
|
DEVDESK_MATRIX_WEBHOOK_FILE=/etc/devdesk/matrix-webhook
|
|
DEVDESK_MATRIX_DELAY=30
|
|
|
|
# 0 turns off the guard that makes Claude ask before destructive commands
|
|
# (pct/zfs/ceph destroy, rm -r /…, force pushes, reboots). Extra rules:
|
|
# /etc/devdesk/guard.local, one "regex<TAB>reason" per line.
|
|
DEVDESK_GUARD=1
|
|
|
|
# 1 = also enable Remote Control so sessions can be continued from the Claude app.
|
|
DEVDESK_REMOTE_CONTROL=0
|