add-clidash
Add clidash — a zero-dependency, read-only web dashboard that derives its tabs and tables at runtime from any CLI that lists resources as JSON.
Install / Use
npx skills add nanocoai/nanoclaw --skill add-clidashInstalls into whichever agent you are using.
SKILL.md
Installable skill definition
Quality Score
Category
OperationsSupported Platforms
Our assessment of add-clidash
add-clidash scores 90/100 on our quality scale, 125th of 393 Operations skills we index (top 32%).
Its SKILL.md is 6.3 KB long, well organised into 12 sections with 8 code examples: a thorough specification that gives an agent plenty to work with.
With 30,846 GitHub stars, it is one of the more widely adopted skills in the catalogue.
Maintenance, license and trust
- The repository was last updated 3 days ago, so add-clidash is actively maintained.
- It is released under the MIT license, a permissive license that allows use, modification and commercial use with attribution.
- Its trust signals score 100/100, with no cautions. These come from repository metadata, not a code audit — read the skill file before letting an agent act on it.
add-clidash compared with similar skills
All 4 of these similar skills score higher than add-clidash; compare them before choosing.
| Skill | Score | Stars | Updated | Format |
|---|---|---|---|---|
| add-clidash (this skill)by nanocoai | 90 | 30.8k | 3d ago | SKILL.md |
| algorithmic-artby anthropics | 100 | 177.9k | 5d ago | SKILL.md |
| pptxby anthropics | 100 | 177.9k | 5d ago | SKILL.md |
| designby nextlevelbuilder | 100 | 130.2k | 6d ago | SKILL.md |
| ui-ux-pro-maxby nextlevelbuilder | 100 | 130.2k | 6d ago | SKILL.md |
Frequently asked questions
- How do I install add-clidash?
- Run
npx skills add nanocoai/nanoclaw --skill add-clidash. The install tabs above show the steps for each supported agent. - Which AI agents does add-clidash work with?
- It is written for Claude Code, as a SKILL.md file. Other agents that read the same format can often use it too.
- Is add-clidash safe to use?
- It is MIT-licensed and scores 100/100 on trust signals. Skills are instructions an agent will follow, so read the file before installing it and do not approve commands you do not understand.
- Is add-clidash still maintained?
- The repository was last updated 3 days ago, so add-clidash is actively maintained.
Skill content
View source on GitHubname: add-clidash description: Add clidash — a zero-dependency, read-only web dashboard that derives its tabs and tables at runtime from any CLI that lists resources as JSON. Ships pre-wired for NanoClaw's ncl CLI (agent groups, sessions, channels, users, roles), plus message-activity charts, a log tail, and a read-only file viewer for group skills/CLAUDE.md/profiles.
/add-clidash — CLI-derived read-only dashboard
clidash is a small, read-only web dashboard. You point it at any CLI that can
list resources as JSON (NanoClaw's ncl, docker, kubectl, …) and it builds
the dashboard at runtime: one tab per resource, a generic table over whatever
columns the rows have. A new ncl resource becomes a new tab and a new column
becomes a new table column with zero code changes.
It ships pre-wired for NanoClaw's ncl CLI and adds three NanoClaw-aware
panels driven entirely by config:
- Agents overview — status cards joining groups + sessions + messaging groups + wirings (green <15m / amber <2h / red older).
- Activity — per-session inbound/outbound message totals and a daily series,
read directly from the session DBs (
nclhas no messages resource). - Logs — last N lines of allowlisted host log files.
- Files — a read-only viewer for group skills,
CLAUDE.md, and profiles.
Why it's safe
clidash is read-only by construction: the server can only execFile the
argv templates in its config. {resource} is the sole substitution and is
allowlist-validated against the discovered/static resource set before exec —
never a shell, no free-form input reaches argv. There is no auth; the network
is the auth boundary — it binds 127.0.0.1 by default. Only ever bind a
private interface (e.g. a tailnet IP), never a public one.
It's distinct from /add-dashboard (which pushes JSON snapshots to a separate
@nanoco/nanoclaw-dashboard npm package): clidash has zero dependencies, no
build step, no push pipeline, and no edits to NanoClaw source — it just reads
ncl and the session DBs.
Steps
1. Copy the tool into place
clidash is fully self-contained — copy the whole directory in:
tools/ is not a standard NanoClaw directory and cp -R won't create it, so
make it first:
mkdir -p tools
cp -R .claude/skills/add-clidash/add/tools/clidash tools/clidash
That is the only file change this skill makes. Nothing in NanoClaw src/ is
touched, no dependency is added.
2. Create the config
The example config is pre-wired for NanoClaw with paths relative to the repo
root, so it works as-is when you run clidash from tools/clidash/:
cd tools/clidash
cp clidash.config.example.json clidash.config.json
clidash.config.json is your local config — add it to .gitignore if you
don't want to commit install-specific paths:
echo 'tools/clidash/clidash.config.json' >> ../../.gitignore
The example assumes ncl is built at bin/ncl. If bin/ncl doesn't exist,
build it first (pnpm run build) or point clis.ncl.bin at the right path.
3. Test
Tests use a stub CLI — no real ncl or docker needed:
npm test
All tests should pass (Node ≥ 22.5, node:test, zero dependencies).
4. Run and verify
node server.js # serves http://127.0.0.1:4690
In another shell, confirm it's live and that ncl discovery worked:
curl -s http://127.0.0.1:4690/api/clis | head -c 400 # CLIs + discovered resources
curl -s http://127.0.0.1:4690/api/r/ncl/groups | head -c 400 # a real resource table
Then open http://127.0.0.1:4690/ in a browser. You should see the Agents
overview plus a tab per ncl resource.
5. (Optional) Run as a service
clidash binds 127.0.0.1 by default. To reach it from other devices, bind a
private (e.g. tailnet) IP via the BIND env var or bind in config — never a
public interface.
# ~/.config/systemd/user/clidash.service (Linux)
[Unit]
Description=clidash read-only CLI dashboard
[Service]
WorkingDirectory=%h/nanoclaw/tools/clidash
ExecStart=/usr/bin/node %h/nanoclaw/tools/clidash/server.js
Environment=BIND=127.0.0.1
Restart=on-failure
[Install]
WantedBy=default.target
systemctl --user enable --now clidash
On macOS, wrap node server.js (with WorkingDirectory = tools/clidash) in a
launchd plist the same way the main NanoClaw service is configured.
Configuration reference
clidash.config.json keys (see tools/clidash/README.md and
clidash.config.example.json for the full shape):
| Key | Purpose |
|-----|---------|
| port, bind, refreshSeconds | server bind + UI auto-refresh cadence |
| clis.<name>.bin / cwd / env | how to invoke the CLI (bin is relative to cwd) |
| clis.<name>.discover or resources | runtime discovery (ncl help) vs a static resource list |
| clis.<name>.list | argv template; {resource} is the only substitution |
| clis.<name>.output | json or jsonlines (docker/kubectl style) |
| clis.<name>.unwrap | dot-path into a response envelope (e.g. data) |
| clis.<name>.enrich/badges/summary | table decorations (ID→name joins, status colors, summary cards) |
| activity | sessionsRoot + days for the message-activity charts |
| logs | dir, tailLines, and an allowlist of files to tail |
| docs | file viewer: root, a deny glob list, and collections of glob patterns |
Adding a second CLI is config-only — e.g. docker is included as a jsonlines
example. View plugins (views/<cli>-<view>.js) are the only per-CLI code and
are optional.
Troubleshooting
ENOENT/ config not found — run fromtools/clidash/and make sure you copiedclidash.config.example.jsontoclidash.config.json(step 2), or setCLIDASH_CONFIG=/abs/path.json.- No
nclresources / discovery empty —bin/nclisn't built or the path is wrong. Build it (pnpm run build) or fixclis.ncl.bin. - docker tab errors — the docker daemon isn't running, or remove the
dockerCLI from config if you don't need it. - Can't reach it from another device — it binds
127.0.0.1; setBIND=<private-ip>(tailnet), never a public interface. - Empty Activity/Logs/Files — check that
activity.sessionsRoot,logs.dir, anddocs.rootresolve to your NanoClaw root (relative to where you launchnode server.js).
Removal
See REMOVE.md.
Related Skills
algorithmic-art
177.9kCreating algorithmic art using p5.js with seeded randomness and interactive parameter exploration. Use this when users request creating art using code, generative art, algorithmic art, flow fields, or particle systems.
pptx
177.9kUse this skill any time a .pptx or .potx file is involved in any way — as input, output, or both. This includes: creating slide decks, pitch decks, or presentations; reading, parsing, or extracting text from any .pptx or .potx file (even if the extracted content will be used elsewhere, like in an em…
design
130.2kComprehensive design skill: brand identity, design tokens, UI styling, logo generation (55 styles, Gemini, Atlas Cloud, or MuAPI AI), corporate identity program (50 deliverables, CIP mockups), HTML presentations (Chart.js), banner design (22 styles, social/ads/web/print), icon design (15 styles, SVG…
ui-ux-pro-max
130.2kUI/UX design intelligence for web, mobile, and desktop. This skill should be used when designing, building, reviewing, or fixing interfaces, including pages, components, design systems, accessibility, interaction, responsive layout, typography, color, charts, and stack-specific UI implementation.
Languages
Trust signals
From repository metadata: license, adoption, age and documentation. Not a code audit — see the Safety scan above for what the skill file itself contains.
