unitares-dashboard

unitares-dashboard is a skill for Claude Code, Codex from cirwel/unitares. It costs 86 tokens per session (4,109 once invoked), scanned A, original, Apache-2.0.

A development guide for adding or reviewing dashboard sections in the UNITARES project. A section is a navigation tab with its own HTML, CSS, and JavaScript module.

In plain words
What is it for?
Use it when building dashboard tabs, connecting them in the main app page, supporting live or saved data, or making charts follow the selected theme.
Why use it?
It records the project’s current dashboard structure and wiring rules, reducing the chance that new sections use retired patterns or fail to load correctly.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one.

Good fit Use it when building dashboard tabs, connecting them in the main app page, supporting live or saved data, or making charts follow the selected theme.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/cirwel/unitares/unitares-dashboard
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add cirwel/unitares --skill unitares-dashboard
Clone the repo
git clone --depth 1 https://github.com/cirwel/unitares

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for unitares-dashboard

README.md
[![agentmods](https://agentmods.dev/badge/skills/cirwel/unitares/unitares-dashboard/github.svg)](https://agentmods.dev/skills/cirwel/unitares/unitares-dashboard)
Your own site
<a href="https://agentmods.dev/skills/cirwel/unitares/unitares-dashboard"><img src="https://agentmods.dev/badge/skills/cirwel/unitares/unitares-dashboard/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for unitares-dashboard

Your own site · 80×15
<a href="https://agentmods.dev/skills/cirwel/unitares/unitares-dashboard"><img src="https://agentmods.dev/badge/skills/cirwel/unitares/unitares-dashboard.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 86 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 4,109 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00086 $0.04109
Opus 5 $0.00043 $0.02055
Sonnet 5 $0.00017 $0.00822
Haiku 4.5 $0.00009 $0.00411

Measured today against content hash 2a100c2a9610, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-09, from the pricing page.

Security

Grade A, and why

unitares-dashboard scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured today.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills/unitares-dashboard/SKILL.md · 269 lines

How it starts

The opening of the file, as written. The whole thing — 269 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Adding a Section to the UNITARES Dashboard (redesign)

Orientation

The live dashboard is dashboard/redesign/ — buildless (raw HTML/CSS/JS, no framework, no bundle). http_dashboard_redesign now lives in src/http_routes/dashboard.py; src/http_api.py is the registration/re-export facade that maps it to /, /dashboard, and /dashboard/redesign/**. The classic dashboard and its allowlist / script-load-chain / vite build were retired — ignore older guidance about index.html, allowed_files, MetricColors, or Chart.defaults. The redesign resolver constrains paths and file types and has no per-asset allowlist, but it does gate one asset: snapshot.js is served only to an authenticated caller (_AUTHENTICATED_ONLY_FILES), and auth/*.html is 404 on this route (those pages are served via /auth/*). Files are read per request, so a restart is not needed for static edits. Entry HTML is no-store; relative assets receive an mtime version query to prevent stale browser bundles.

A "section" is one nav tab. Each is a self-contained module that renders into its own mount and is wired in app.html.

The section-module pattern

A section is an IIFE that attaches window.<Name> = { load } (add retheme if it draws charts; add applyEvent / notifyNew if it's a live surface — see Live-surface hooks below). load() renders into its mount on first call and updates in place on subsequent calls (so a refresh doesn't flicker or reset form state). Worked references: sections/eisv.js (charts, retheme, applyEvent) and sections/metrics.js (charts + a picker that preserves its selection across load() — exercised by its manual ↻, since Metrics is not on the auto-refresh tick). sections/telemetry-health.js and sections/risk.js are the newest sections and follow the same conventions.

One exception to know about: sections/landing.js (the Overview) does not export load. It exports { render, refresh, refreshStats, applyEvent, tickSilence }, is booted by window.Landing.render() at the end of app.html, and RELOAD.overview calls its refresh method. Do not copy it as the template for a new section.

Read the full file on GitHub · 269 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. today Changed 2a100c2a9610
  2. yesterday Changed · +71 lines 6dcf8d96223b
  3. 9d ago First seen · 198 lines · 86 tokens per session scan A 53980bc6dc4c

Subscribe to this mod's changes

unitares-dashboard is a skill published in the GitHub repository cirwel/unitares (4 stars, last pushed today), licensed Apache-2.0. It adds 86 tokens to every session and 4,109 once invoked, about $0.0004 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

adk-agent-builder

Builds ADK (Agent Development Kit) Python agents: LLM agents with tools, graph workflows of function and agent nodes, conditional routing, fan-out and join, schema-validated delegation between agents, human-in-the-loop pauses, and pytest coverage for all of it. Use when asked to create an agent or a workflow, add a…

google/adk-python · 177 tokens

adk-style

Python style and codebase conventions for ADK (Agent Development Kit): private-by-default file visibility, imports, type hints, Pydantic v2 models, formatting, docstrings, logging, async I/O, file and test layout, and unit test structure. Use when writing or editing ADK source or tests, deciding whether a new file or…

google/adk-python · 187 tokens

adk-verify-snippets

Checks that every Python code block in a Markdown file actually compiles and runs, by extracting each block to a temporary file, executing it in an isolated subprocess, and writing a pass/fail report with per-snippet coverage. Use when the user asks to verify, test, or validate the code samples in a README, a guide…

google/adk-python · 149 tokens

adk-setup

Sets up a local ADK Python development environment in a git clone of the open-source adk-python repository: a uv virtual environment, all dependency extras, pre-commit hooks, and a first unit-test run. Runs only when explicitly requested, never on its own. Use when asked to set up, bootstrap, or repair a development…

google/adk-python · 146 tokens

python-best-practices

Provides Python patterns for type-first development with dataclasses, discriminated unions, NewType, and Protocol. Must use when reading or writing Python files.

NoesisVision/nasde-toolkit · 36 tokens

Python Data Analysis

Clean datasets and create reproducible Python transformations and charts.

Raidriar7170/hermes-skilleval · 15 tokens