activity-monitor
Guardian service that monitors the active runtime agent's state and automatically restarts it if stopped. Use when checking agent…
Built-in web interface for communicating with Claude without external services. Use when setting up or configuring the web console channel, or troubleshooting browser-based access.
$ npx -y skills add zylos-ai/zylos-core --skill web-console --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/web-consoleContext preview
The summary Claude sees to decide when to auto-load this skill.
Built-in web interface for communicating with Claude without external services. Use when setting up or configuring the web console channel, or troubleshooting browser-based access.
name: web-console
description: Built-in web interface for communicating with Claude without external services. Use when setting up or configuring the web console channel, or troubleshooting browser-based access.
lifecycle:
npm: true
service:
type: pm2
name: web-console
entry: scripts/server.jsDefault communication channel - works without any external service.
Allows users to communicate with Claude even without Telegram/Lark/Discord. This is the baseline, always-available interface.
# Install dependencies cd ~/zylos/.claude/skills/web-console npm install # Start server (default port 3456) node scripts/server.js # Or with PM2 pm2 start scripts/server.js --name web-console
Local only: `http://127.0.0.1:3456`
Server binds to `127.0.0.1` by default for security.
Browser ──► Web Console Server ──► C4 Bridge ──► Claude
│
▼
SQLite (c4.db)| Endpoint | Method | Description | |----------|--------|-------------| | `/api/status` | GET | Get Claude's current status | | `/api/conversations/recent` | GET | Get recent conversation history | | `/api/upload` | POST | Upload one attachment for the next message | | `/api/send` | POST | Send message to Claude | | `/api/media/:messageId` | GET | Download/render an outbound media message | | `/api/poll?since_id=N` | GET | Poll for new messages | | `/api/health` | GET | Server health check |
~/zylos/.claude/skills/web-console/
├── SKILL.md
├── package.json
├── scripts/
│ ├── server.js # Express API server
│ └── send.js # CLI message sender
└── public/
├── index.html # Chat UI
├── styles.css # Styling
└── app.js # Frontend logic| Variable | Default | Description | |----------|---------|-------------| | `WEB_CONSOLE_PORT` | 3456 | Server port | | `ZYLOS_WEB_PASSWORD` | (empty) | Set to enable password protection (also reads `WEB_CONSOLE_PASSWORD` as fallback) | | `WEB_CONSOLE_BIND` | 127.0.0.1 | Bind address | | `ZYLOS_DIR` | ~/zylos | Data directory | | `WEB_CONSOLE_MAX_UPLOAD_MB` | 20 | Max size per uploaded attachment |
By default, no password is required (suitable for local access).
To enable password protection (recommended when exposing externally): 1. Set `ZYLOS_WEB_PASSWORD` in `~/zylos/.env` 2. Restart the web-console service
Browser uploads are stored under `~/zylos/web-console/media/` and delivered to the agent as text annotations:
[attachment:image /Users/howard/zylos/web-console/media/wc-...png name="screenshot.png" 142KB] [attachment:file /Users/howard/zylos/web-console/media/wc-...pdf name="report.pdf" 1.2MB]
Agent replies can include a single media row using the same C4 convention as other channels:
node ~/zylos/.claude/skills/comm-bridge/scripts/c4-send.js web-console console "[MEDIA:image]/absolute/path/to/image.png" node ~/zylos/.claude/skills/comm-bridge/scripts/c4-send.js web-console console "[MEDIA:file]/absolute/path/to/report.pdf"
The browser only requests media by C4 message id. The server rechecks the row is an outbound web-console console message, resolves the target with `realpath`, and serves only paths under `ZYLOS_DIR` or `/tmp`.
Guardian service that monitors the active runtime agent's state and automatically restarts it if stopped. Use when checking agent…
Accurately check current context window and token usage. Use when the user asks about context usage, token consumption, or when…
C4 communication bridge — central gateway for ALL external communication (Telegram, Lark, etc.). Use when replying to users via…
Guidelines for managing zylos components via CLI and C4 channels. Use when installing, upgrading, or uninstalling components, or…
Guide for creating effective skills. Use when asked to create a new skill (or update an existing skill) that extends Claude's…
System health check dispatched by the activity monitor via Control queue. Checks PM2 services, disk space, and memory usage. Use…