Dynamic Island

v1.0.1

macOS desktop widget showing real-time status and recent messages of multiple OpenClaw agents with a frosted glass dynamic island UI.

1· 65·0 current·0 all-time

Install

OpenClaw Prompt Flow

Install with OpenClaw

Best for remote or guided setup. Copy the exact prompt, then paste it into OpenClaw for zhixiangshon-cell/dynamic-island.

Previewing Install & Setup.
Prompt PreviewInstall & Setup
Install the skill "Dynamic Island" (zhixiangshon-cell/dynamic-island) from ClawHub.
Skill page: https://clawhub.ai/zhixiangshon-cell/dynamic-island
Keep the work scoped to this skill only.
After install, inspect the skill metadata and help me finish setup.
Use only the metadata you can verify from ClawHub; do not invent missing requirements.
Ask before making any broader environment changes.

Command Line

CLI Commands

Use the direct CLI path if you want to install manually and keep every step visible.

OpenClaw CLI

Bare skill slug

openclaw skills install dynamic-island

ClawHub CLI

Package manager switcher

npx clawhub@latest install dynamic-island
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Benign
medium confidence
Purpose & Capability
The code, scripts, and SKILL.md align with the declared purpose: a macOS widget that monitors OpenClaw agent session JSONL files and presents status via a local HTTP/WebSocket UI and a native Swift panel. One mismatch: registry metadata lists 'Required config paths: none', but the runtime expects and reads the agents directory (default ~/.openclaw/agents) and a local config.json — this config path is effectively required for full functionality and should be declared.
Instruction Scope
SKILL.md directs running setup.sh and start.sh which compile the Swift widget, install the Python websockets package, and run a local server. The runtime (server.py) explicitly watches ~/.openclaw/agents/*/sessions/*.jsonl and extracts up to ~80 characters of message text to show in the UI. That behavior is consistent with the stated purpose but is privacy-relevant: the skill reads user agent session files and surfaces recent messages in the UI. The widget can also trigger opening configured Feishu (lark://) or other URLs via the WebView -> native bridge; that is expected for the clickable agent links but means the web UI can request the OS to open arbitrary URLs if misconfigured.
Install Mechanism
There is no remote download/install step in the provided install scripts — setup.sh uses local swiftc to compile widget.swift and pip3 to install the 'websockets' Python package (from PyPI). All files are included in the skill bundle. No external URLs, shorteners, or arbitrary archives are downloaded by the scripts.
Credentials
The skill does not request secrets or environment variables in the registry metadata. In practice the Swift widget reads an optional OPENCLAW_HTTP_PORT environment variable to override the HTTP port, and the server expects access to the user's agents directory (~/.openclaw/agents) and to create config.json in the skill directory. Reading session files is necessary for the stated function, but the metadata should have declared the config/path dependency. No unrelated credentials or external tokens are requested.
Persistence & Privilege
The skill does not request 'always: true' or other elevated platform privileges. It provides instructions for an optional LaunchAgent install (auto-start) via shell commands shown in the README and SKILL.md, but it does not perform persistent system changes automatically in the provided scripts. The skill writes PID files under /tmp while running and does not modify other skills' configs.
Assessment
This package appears to implement what it claims: a local macOS widget that reads OpenClaw agent session logs and displays recent messages. Before installing, consider: 1) Privacy — server.py reads your ~/.openclaw/agents/*/sessions/*.jsonl and surfaces up to ~80 characters of recent messages in the UI; do not run it if those session logs contain sensitive content you don't want shown. 2) Local-only network footprint — the service binds to localhost (HTTP/WebSocket) and the WebView content is served locally; there are no obvious outbound exfil endpoints in the code. 3) Clickable links — the widget can open configured URLs (e.g., lark:// or http://) at the OS level via the WebView bridge; only put trusted links in config.json. 4) Installation actions — setup.sh will compile Swift code (requires Xcode CLT) and pip-install 'websockets' into your Python environment; it also offers commands to create a LaunchAgent for auto-start. 5) Metadata inconsistency — the skill registry said 'no required config paths', but it expects your agents directory (~/.openclaw/agents) and a config.json; treat that as an undeclared requirement. If you need higher assurance, request or review the full server.py and index.html output (both included) line-by-line and confirm there are no unexpected outbound network calls in any truncated portions not shown.

Like a lobster shell, security has layers — review code before you run it.

latestvk972j7jn1cd8zkp9x20fm6hcb985jypr
65downloads
1stars
2versions
Updated 2d ago
v1.0.1
MIT-0

OpenClaw Dynamic Island

macOS Dynamic Island 风格的多 Agent 状态监控桌面小组件。

功能

  • 毛玻璃药丸窗口,悬浮在屏幕顶部
  • 5种状态自动切换:待命、收到消息、思考中、搞定了、出错了
  • emolog 可爱图标
  • 多 Agent 同时管理,鼠标悬停展开查看
  • 每个 Agent 显示最近 2 条对话消息
  • 光标跟随高亮 Agent
  • 点击 Agent 跳转飞书聊天
  • 任务完成晃动 + 音效提示

安装

一键安装(检查环境 + 编译 widget + 创建配置):

cd ~/.openclaw/skills/dynamic-island
bash setup.sh

安装脚本会自动:

  • 检查 macOS、Swift、Python3 环境
  • 安装 websockets 依赖
  • 编译 Swift widget
  • 创建 config.json 配置文件

启动

./start.sh

停止

./start.sh stop

配置

复制 config.example.jsonconfig.json

cp config.example.json config.json

编辑 config.json

{
  "agents_dir": "~/.openclaw/agents",
  "http_port": 7788,
  "ws_port": 7789,
  "agent_names": {
    "my-agent-id": "My Bot"
  },
  "agent_links": {
    "my-agent-id": "lark://applink.feishu.cn/client/chat/open?openId=xxx"
  }
}
字段说明默认值
agents_dirOpenClaw agents 目录路径~/.openclaw/agents
http_portHTTP 服务端口7788
ws_portWebSocket 端口7789
agent_namesAgent ID → 显示名映射{}
agent_linksAgent ID → 飞书聊天链接(可点击跳转){}

架构

setup.sh        — 一键安装脚本(环境检查 + 编译 + 配置)
start.sh        — 启动/停止脚本
server.py       — 监控 agent 会话 JSONL 文件,通过 WebSocket 推送事件
index.html      — 渲染 emolog 图标 + 多 Agent UI
widget.swift    — macOS 原生药丸窗口(NSPanel + 毛玻璃 + hover 检测)
emolog/         — emolog 自定义图标
config.json     — 本地配置(git-ignored)

使用场景

当你需要:

  • 同时监控多个 OpenClaw Agent 的工作状态
  • 在桌面上实时看到 Agent 的思考、执行、完成过程
  • 通过飞书聊天链接快速跳转到对应 Agent

就说"启动灵动岛"或"打开 dynamic island"来激活此技能。

Comments

Loading comments...