Network Studio
Use this skill when the user wants the portable Network Studio workspace, not the native wifi-watchtower app. If the request is specifically about apps/wifi-watchtower, use $wifi-watchtower instead.
Default product shape: a portable local-network watcher installed into a user-chosen folder with an optional SwiftBar wrapper, a dashboard opener, and a continuous scan loop.
Quick Start
- Choose the lane first:
- portable workspace install
- SwiftBar plugin wiring
- support-only guidance
- Run
bash scripts/run_network_studio.sh doctor to check prerequisites and the bundled template.
- Install or refresh the workspace with
bash scripts/run_network_studio.sh install "<workspace-path>".
- If the user wants a menu bar item and uses SwiftBar, add
--swiftbar-plugins-dir ~/SwiftBarPlugins to the install command.
- Use
bash scripts/run_network_studio.sh inspect to review the template and installed layout.
- After install, run
bash scripts/run_network_studio.sh open to trigger a fresh scan and open the dashboard.
- For a continuous watcher, run
bash scripts/run_network_studio.sh watch or add flags such as --interval 30 --resolve.
- Keep the workspace local-first and honest about uncertainty.
Workflow
Choose The Surface
network-studio-workspace: install or refresh the portable workspace in a user-chosen folder
swiftbar-plugin: wire or repair the compact SwiftBar surface that points at the installed workspace
support-only: explain the most reliable network-check path without installing anything
Install Or Update The Portable Workspace
- Use
scripts/run_network_studio.sh install for the normal create-or-refresh path.
- Drop to
scripts/install_network_studio.py only when you need the lower-level copy step.
- Preserve
device-labels.json if it already exists.
- Preserve
logs/ contents. Do not delete history unless the user asks.
- Re-run the installer against the same workspace when the user asks to update an existing install.
Wire SwiftBar
- Prefer pointing SwiftBar directly at
<workspace>/swiftbar if the user is comfortable changing the plugin directory.
- If the user already uses
~/SwiftBarPlugins, pass --swiftbar-plugins-dir ~/SwiftBarPlugins. The installer writes a thin wrapper there that calls the workspace plugin.
Product Boundaries
- Use only on networks the user owns or administers.
- Explain that the portable workspace is LAN presence monitoring, not deep packet inspection.
- Recommend
brew install nmap for more reliable portable-workspace discovery, but do not block on it.
- Note that dashboard links and label paths are generated from the installed workspace, so moving the workspace later requires a refresh or reinstall.
- Keep scans, labels, and trust explanations local by default. Do not add covert telemetry, network exfiltration, or surveillance framing.
Resources
scripts/run_network_studio.sh: repo-native doctor, inspect, install, refresh, open, and watch helper for the portable workspace.
scripts/install_network_studio.py: copies the portable workspace, preserves user state, and optionally installs a SwiftBar wrapper.
references/project-map.md: default workspace, main files, and validation notes for the portable workspace.
assets/workspace/: bundled template for the watcher, dashboard builder, and SwiftBar plugin. Read or patch these files only when setup or behavior needs to change.
1---2name: network-studio3description: Install or update a macOS local-network monitor workspace and SwiftBar plugin. Use when Codex needs a repo-native path for LAN presence, device logging, local dashboards, or compact macOS network safety surfaces on networks the user owns or administers.4---56# Network Studio78Use this skill when the user wants the portable Network Studio workspace, not the native `wifi-watchtower` app. If the request is specifically about `apps/wifi-watchtower`, use `$wifi-watchtower` instead.910Default product shape: a portable local-network watcher installed into a user-chosen folder with an optional SwiftBar wrapper, a dashboard opener, and a continuous scan loop.1112## Quick Start13141. Choose the lane first:15 - portable workspace install16 - SwiftBar plugin wiring17 - support-only guidance182. Run `bash scripts/run_network_studio.sh doctor` to check prerequisites and the bundled template.193. Install or refresh the workspace with `bash scripts/run_network_studio.sh install "<workspace-path>"`.204. If the user wants a menu bar item and uses SwiftBar, add `--swiftbar-plugins-dir ~/SwiftBarPlugins` to the install command.215. Use `bash scripts/run_network_studio.sh inspect` to review the template and installed layout.226. After install, run `bash scripts/run_network_studio.sh open` to trigger a fresh scan and open the dashboard.237. For a continuous watcher, run `bash scripts/run_network_studio.sh watch` or add flags such as `--interval 30 --resolve`.248. Keep the workspace local-first and honest about uncertainty.2526## Workflow2728### Choose The Surface2930- `network-studio-workspace`: install or refresh the portable workspace in a user-chosen folder31- `swiftbar-plugin`: wire or repair the compact SwiftBar surface that points at the installed workspace32- `support-only`: explain the most reliable network-check path without installing anything3334### Install Or Update The Portable Workspace3536- Use `scripts/run_network_studio.sh install` for the normal create-or-refresh path.37- Drop to `scripts/install_network_studio.py` only when you need the lower-level copy step.38- Preserve `device-labels.json` if it already exists.39- Preserve `logs/` contents. Do not delete history unless the user asks.40- Re-run the installer against the same workspace when the user asks to update an existing install.4142### Wire SwiftBar4344- Prefer pointing SwiftBar directly at `<workspace>/swiftbar` if the user is comfortable changing the plugin directory.45- If the user already uses `~/SwiftBarPlugins`, pass `--swiftbar-plugins-dir ~/SwiftBarPlugins`. The installer writes a thin wrapper there that calls the workspace plugin.4647### Product Boundaries4849- Use only on networks the user owns or administers.50- Explain that the portable workspace is LAN presence monitoring, not deep packet inspection.51- Recommend `brew install nmap` for more reliable portable-workspace discovery, but do not block on it.52- Note that dashboard links and label paths are generated from the installed workspace, so moving the workspace later requires a refresh or reinstall.53- Keep scans, labels, and trust explanations local by default. Do not add covert telemetry, network exfiltration, or surveillance framing.5455## Resources5657- `scripts/run_network_studio.sh`: repo-native doctor, inspect, install, refresh, open, and watch helper for the portable workspace.58- `scripts/install_network_studio.py`: copies the portable workspace, preserves user state, and optionally installs a SwiftBar wrapper.59- `references/project-map.md`: default workspace, main files, and validation notes for the portable workspace.60- `assets/workspace/`: bundled template for the watcher, dashboard builder, and SwiftBar plugin. Read or patch these files only when setup or behavior needs to change.