dashscout
v0.1.0
Published
One dark dashboard to find and open every agent/AI dashboard running on your localhost. Zero dependencies, runs with npx.
Downloads
54
Maintainers
Readme
dashscout
One dark single-pane dashboard for every agent / AI dashboard running on your localhost. It scans your listening ports, probes each one over HTTP, highlights the ones that look like agent or AI tools (LangGraph, Ollama, CrewAI, Gradio, Streamlit, Claude/OpenAI apps…), and gives you one page to open them all. Zero dependencies. Runs with npx.
npx dashscoutThen open http://localhost:4477.
Run it
npx dashscout # start the dashboard on :4477
npx dashscout --open # …and open your browser
npx dashscout --port 8080
npx dashscout --once # scan once, print JSON, exit — pipe it anywhereNo install, no config, no API key. It reads what's already listening on your machine.
What it does
| Step | How |
|---|---|
| Discover | Lists every TCP port in LISTEN state via lsof (falls back to ss / netstat). |
| Probe | Requests http://127.0.0.1:<port>/ with a short timeout, reads the status, Server header and <title>. |
| Tag | Flags a service as agent / AI when its title, body or headers match known signals (agent, langgraph, ollama, crewai, autogen, gradio, streamlit, claude, openai, …). |
| Serve | A dark auto-refreshing dashboard (every 3s) with search, one-click Open ↗, and process/PID/HTTP metadata per card. |
Non-HTTP ports (databases, SSH, etc.) are probed and quietly skipped — only things that answer HTTP show up.
Options
| Flag | Default | Description |
|---|---|---|
| --port <n> | 4477 | Port for the dashboard itself (also honours PORT). |
| --open | off | Open the dashboard in your default browser on start. |
| --once | off | Print discovered services as JSON and exit — no server. |
| -h, --help | | Show help. |
| -v, --version | | Show version. |
Use it as a library
The scanner is exported, so you can build your own view on top of it:
import { scan, probe, listListeningPorts } from "dashscout";
const services = await scan();
// → [{ port, pid, command, status, title, server, isAI }, ...]Requirements
- Node.js ≥ 18
- macOS or Linux for full process names (
lsof/ss). Windows works vianetstatwith reduced process detail.
How the pieces fit
| Area | Path |
|---|---|
| CLI + arg parsing | bin/dashscout.js |
| Discovery & probing | src/scan.js |
| Dashboard server + JSON API | src/server.js |
| Dashboard UI (self-contained HTML) | src/ui.js |
| Tests | test/scan.test.js |
Contributing
Issues and PRs welcome — see CONTRIBUTING.md. Run the suite with npm test.
License
MIT © Pranav Patil
