Agent skill

Dashboard

by InsForge in InsForge/InsForge

A skill your agent uses when contributing to InsForge's shared dashboard package.

Apache-2.0Auto-check passedFrontend & Design

Install Dashboard

skills CLI
$ npx skills add InsForge/InsForge --skill dashboard -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install InsForge/InsForge dashboard --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/InsForge/InsForge.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.codex/skills/insforge-dev/dashboard .claude/skills/dashboard && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
dashboard
GitHub stars
13k
Token cost
~2.3k tokens
SKILL.md length
1,069 words
Files
1
Skills in repo
8
Repo updated
First seen
Licence
Apache-2.0

At a glance

A skill your agent uses when contributing to InsForge's shared dashboard package.

  • Works in 4 steps: Respect the shared-package versus… → Preserve dashboard data-flow conventions. → Reuse the existing component layers. → …
  • Contributing to InsForges shared dashboard package
  • SKILL.md covers Scope, Working Rules, Frontend Testing and Local debug: viewing…, plus 2 more sections
  • Calls npm and git

What it does

Dashboard is an agent skill from InsForge/InsForge. Use this skill when contributing to InsForge's shared dashboard package. This is for maintainers editing packages/dashboard, which ships in self-hosting and cloud-hosting modes, and the local frontend/ shell used for self-hosting in this repo.

Its SKILL.md is about 2.3k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Frontend & Design. The repository describes itself as: The all-in-one, open-source backend platform for agentic coding. InsForge gives your coding agent database, auth, storage, compute, hosting, and AI gateway to ship full-stack… The licence is Apache-2.0.

When your agent uses it

  • Contributing to InsForges shared dashboard package

Example prompts

  • “/dashboard”

Workflow steps

4 steps, taken from the first numbered list in SKILL.md.

  1. Respect the shared-package versus host-app boundary.
  2. Preserve dashboard data-flow conventions.
  3. Reuse the existing component layers.
  4. Keep the package surface aligned with shared contracts.

What it can do on your machine

Read from SKILL.md and the folder at commit 2ec64b6. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • npm
    • git

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use npm and git, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Dashboard loads about 2.3k tokens when it runs. Until then it costs about 66 tokens; SKILL.md has 1,069 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~66
When it runs · the whole SKILL.md, loaded when a task matches
~2.3k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from InsForge/InsForge at commit 2ec64b6, republished under its Apache-2.0 licence (© InsForge). 1,069 words, ~2,329 tokens.

Download SKILL.mdSave it as .claude/skills/dashboard/SKILL.md (or your agent's skills folder).
name
dashboard
description
Use this skill when contributing to InsForge's shared dashboard package. This is for maintainers editing `packages/dashboard`, which ships in `self-hosting` and `cloud-hosting` modes, and the local `frontend/` shell used for `self-hosting` in this repo.

InsForge Dev Dashboard

Use this skill for dashboard work in the InsForge repository.

Scope

  • packages/dashboard/src/**
  • packages/dashboard/package.json
  • packages/dashboard/README.md
  • packages/dashboard/*.config.*
  • frontend/src/**
  • frontend/package.json

Working Rules

  1. Respect the shared-package versus host-app boundary.

    • This dashboard is built with React and TypeScript.
    • packages/dashboard/ is the source of truth for the dashboard product.
    • The package must support both self-hosting and cloud-hosting modes.
    • Keep self-hosting-only bootstrap, local env defaults, and shell styling in frontend/.
    • Do not let packages/dashboard/ depend on frontend/.
    • If both modes need a capability, define it in the package API first.
  2. Preserve dashboard data-flow conventions.

    • Follow the flow service -> hook -> UI.
    • Use apiClient for HTTP calls so auth refresh and error handling stay consistent.
    • Put request logic in services, data fetching and mutation state in hooks, and rendering/orchestration in UI components and pages.
    • Reuse existing contexts, host abstractions, and hooks before creating new global state.
  3. Reuse the existing component layers.

    • Use @insforge/ui for generic primitives.
    • Use shared dashboard components when the pattern is already present.
    • Keep reusable dashboard UI in packages/dashboard/.
    • Only add UI to frontend/ when it is specific to the local self-hosting shell.
    • Keep package styles scoped to the dashboard container.
  4. Keep the package surface aligned with shared contracts.

    • Import cross-package types and Zod-derived shapes from @insforge/shared-schemas.
    • When backend payloads change, update the related services, hooks, UI, and exported types together.
    • Keep packages/dashboard/src/index.ts and packages/dashboard/src/types aligned with the public package API.
    • Never use the TypeScript any type. Prefer precise prop, state, API, and hook result types.

Frontend Testing

Use the lowest test layer that covers the risk. Add one focused regression test for bug fixes when practical.

Change typeTest layerLocationCommand
Pure helper, parser, formatter, state reducerUnitpackages/dashboard/src/**/__tests__/*.test.tsnpm --workspace @insforge/dashboard run test:unit
React component behavior, forms, dialogs, conditional renderingComponentpackages/dashboard/src/**/__tests__/*.test.tsxnpm --workspace @insforge/dashboard run test:component
Routing, auth redirects, host-mode integration, browser-only behaviorUI smokepackages/dashboard/tests/ui/*.spec.tsnpm --workspace @insforge/dashboard run test:ui

Conventions:

  • npm --workspace @insforge/dashboard run test runs the full Vitest suite: unit plus component.
  • GitHub Actions splits dashboard checks into unit, component, and UI jobs in .github/workflows/frontend-tests.yml. Update the workflow when adding or renaming test scripts.
  • Unit tests should avoid React rendering and network mocking. Test data transformations directly.
  • Component tests use Testing Library with packages/dashboard/src/test/setup.ts. Mock hooks, services, and host context at the package boundary; assert user-visible behavior and callback effects, not implementation details or CSS class strings.
  • UI smoke tests use Playwright against the local frontend/ shell. Mock backend API routes in packages/dashboard/tests/ui/fixtures/; every mocked route must either fulfill, fallback, or abort. Do not leave requests pending after a test branch.
  • Prefer one clear test per user-observable behavior over broad snapshot tests. Avoid brittle assertions tied to copy that is not part of the behavior being protected.

Local debug: viewing cloud-hosting-only UI in self-hosting

Use when previewing UI gated on useIsCloudHostingMode(), isInsForgeCloudProject(), or a PostHog feature flag (e.g. the CTest dashboard variant, dashboard-v3-experiment === 'c_test', the CLI connect panel) while running the local frontend/ self-hosting shell.

The lowest-friction approach is to temporarily hardcode the three gates below to true/the new branch, then restart the Vite dev server. These edits bypass real host/project detection and MUST be fully reverted before committing — landing them breaks both self-hosting and cloud-hosting users.

Hardcodes
  1. packages/dashboard/src/lib/config/DashboardHostContext.tsx — useIsCloudHostingMode() → return true; (was useDashboardHost().mode === 'cloud-hosting').
  2. packages/dashboard/src/lib/utils/utils.ts — isInsForgeCloudProject() → return true; (was the .insforge.app hostname check).
  3. If the UI is also feature-flag-gated, hardcode the consumer. For CTest: AppRoutes.tsx → const DashboardHomePage = CTestDashboardPage; and, if relevant, the matching branch in AppLayout.tsx for <ConnectDialogV2>.

Mark every hardcode with a trailing // LOCAL DEBUG: <original expression> comment so revert is a mechanical search.

Revert checklist — run all before committing
  1. git grep -n "LOCAL DEBUG" packages/dashboard/src/ returns zero matches.
  2. Each gate is restored to its original expression, not just an equivalent value (the mode === 'cloud-hosting' comparison, the hostname check, the getFeatureFlag(...) call must all be back).
  3. Any imports deleted during debug (commonly DashboardPage, getFeatureFlag, ConnectDialog) are restored.
  4. cd packages/dashboard && npm run lint && npm run typecheck both pass.
  5. git diff of the four files above shows only intended changes — no return true;, no missing imports.
Show full SKILL.md (387 more words)Show less
Rationalizations to reject
ExcuseReality
"I'll revert in a follow-up PR."Follow-up = a window where prod is broken. Revert now.
"The original check was effectively the same."If it were, you wouldn't have needed the hardcode. Restore the expression, not a value-equivalent.
"Lint passed, so the deleted import doesn't matter."Lint passed because the import was deleted; on revert the original code needs it back.
"I'll ship the env-var override instead."No env-var override is wired in the code. Don't invent one on the commit path — restore the original.

Locale / language preference

The dashboard has a language preference layer (selector + cloud sync) and bundled react-i18next translations for the chrome, overview page, and Backend Advisor (lib/i18n/, namespace chrome). Feature pages beyond those are still English — extend the same namespace as they get translated.

  • lib/contexts/LocaleContext.tsx — LocaleProvider / useLocale / SUPPORTED_LOCALES / normalizeLocale. Resolution order: cloud account preference → insforge-locale localStorage → navigator.language → en. Mirrors the ThemeContext pattern.
  • components/LanguageSelect.tsx — endonym-labelled selector; rendered in AppHeader (self-host) and the AppSidebar bottom in cloud-hosting mode (the header is hidden inside the iframe).
  • Cloud sync contract (@insforge/shared-schemas cloud-events): parent → child USER_INFO carries optional preferredLocale; child → parent UPDATE_PREFERRED_LOCALE { locale } is fire-and-forget and the shell persists it to users.preferred_locale via the profile API (plumbed through the onUpdatePreferredLocale host prop).
  • Version-skew tolerance is a contract: old shells ignore unknown message types; old dashboards ignore extra USER_INFO fields. Never make either side require the locale fields.
  • Adding a language: extend SUPPORTED_LOCALES + LOCALE_LABELS, and keep the list aligned with the cloud marketing site's src/i18n/routing.ts (insforge-cloud repo) or the account preference will name a locale one surface can't render. Route locale-ish input through normalizeLocale.
  • Self-host mode must work with zero cloud callbacks (localStorage only); extend lib/contexts/__tests__/LocaleContext.test.tsx when touching this.
  • Every key added to lib/i18n/locales/en.json must exist in all four locale files — lib/i18n/__tests__/localeParity.test.ts fails CI otherwise (plural suffixes normalized; zh carries only _other).
  • Never translate user-generated names (tables, buckets) — only static ids. See the note in components/FeatureSidebar.tsx.

Validation

  • cd packages/dashboard && npm run test:unit when changing pure helpers or reducers
  • cd packages/dashboard && npm run test:component when changing React component behavior
  • cd packages/dashboard && npm run test:ui when changing routing, auth, host-mode integration, or browser-only behavior
  • cd packages/dashboard && npm run typecheck
  • cd packages/dashboard && npm run build
  • cd frontend && npm run build when the local self-hosting shell changes

For shared contract changes, also validate packages/shared-schemas/ and the affected backend surface.

© InsForge, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .codex/skills/insforge-dev/dashboard of InsForge/InsForge.

Open the folder on GitHubat commit 2ec64b6

Compare with similar skills

Dashboard next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Dashboard compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Dashboard this skillInsForge/InsForge13k—~2.3kAutomated safety check: PassApache-2.0
MCP Developmentcoollabsio/coolify63k1 repos~949Automated safety check: PassMIT
Turnstile Spincloudflare/skills3k4 repos~7.2kAutomated safety check: NotesApache-2.0
Paperclip Pagepaperclipai/paperclip98k—~1kAutomated safety check: PassMIT
Go HTML Views with Gomponentsmaragudk/gomponents1.9k—~3.6kAutomated safety check: PassMIT
Pinmeglitternetwork/pinme3.7k—~3.8kAutomated safety check: NotesMIT

Similar skills

  • MCP Development

    coollabsio/coolify

    A skill your agent uses for Laravel MCP development. An agent skill from coollabsio/coolify.

    63k GitHub starsUsed in 1 repo~949 tokens
    Frontend & DesignAuto-check passed
  • Turnstile Spin

    cloudflare/skills

    Official

    Set up, repair, or migrate to Cloudflare Turnstile bot verification in an existing frontend and backend, including server-side Siteverify.

    3k GitHub starsUsed in 4 repos~7.2k tokens
    Frontend & DesignAuto-check: notes
  • Paperclip Page

    paperclipai/paperclip

    Publish static HTML pages and asset folders to the Paperclip S3/CloudFront page host.

    98k GitHub stars~1k tokensUpdated today
    Frontend & DesignAuto-check passed
  • Builds and edits HTML views in Go with gomponents, where components are plain functions that return a Node, instead of using template languages.

    1.9k GitHub stars~3.6k tokensUpdated yesterday
    Frontend & DesignAuto-check passed
  • Pinme

    glitternetwork/pinme

    A skill your agent uses when the user mentions "pinme", or needs to upload files, store to IPFS, create/publish/deploy websites or full-stack services (including frontend pages, backend APIs…

    3.7k GitHub stars~3.8k tokensUpdated 25 days ago
    Frontend & DesignAuto-check: notes
  • South Admin CRUD Generator

    southliu/south-admin-react

    Generates a full CRUD page - page component, data model and API client - from the south-admin-react project's own VS Code snippet templates.

    580 GitHub stars~1.7k tokensUpdated 17 days ago
    Frontend & DesignAuto-check passed

More from InsForge/InsForge

All 8 skills in this repo
  • Doc Author

    InsForge/InsForge

    Write, edit, and maintain documentation. An agent skill from InsForge/InsForge.

    13k GitHub stars~3.7k tokensUpdated yesterday
    Auto-check passed
  • E2E Testing

    InsForge/InsForge

    A skill your agent uses when an InsForge maintainer has finished an OSS repo change and is ready to open, update, or submit the InsForge PR.

    13k GitHub stars~1.5k tokensUpdated yesterday
    Auto-check passed
  • Backend

    InsForge/InsForge

    A skill your agent uses when contributing to InsForge's backend package.

    13k GitHub stars~1.7k tokensUpdated yesterday
    Auto-check passed
  • Docs

    InsForge/InsForge

    A skill your agent uses when contributing to InsForge's product documentation in this repository.

    13k GitHub stars~761 tokensUpdated yesterday
    Auto-check passed
  • Insforge Dev

    InsForge/InsForge

    Use this skill set when contributing to the InsForge monorepo itself.

    13k GitHub stars~1.1k tokensUpdated yesterday
    Auto-check passed
  • Shared Schemas

    InsForge/InsForge

    A skill your agent uses when contributing to InsForge's shared schema package.

    13k GitHub stars~628 tokensUpdated yesterday
    Auto-check passed

Questions about Dashboard

What does Dashboard do?

A skill your agent uses when contributing to InsForge's shared dashboard package. Dashboard is an agent skill from InsForge/InsForge. Use this skill when contributing to InsForge's shared dashboard package.

When should I use Dashboard?

Dashboard fits situations like: contributing to InsForges shared dashboard package.

How do I install Dashboard in Claude Code?

Run `npx skills add InsForge/InsForge --skill dashboard -a claude-code`. Or copy the skill folder (.codex/skills/insforge-dev/dashboard in InsForge/InsForge) into .claude/skills/dashboard in your project. Claude Code loads it when a task matches its description.

How do I install Dashboard in Codex?

Run `npx skills add InsForge/InsForge --skill dashboard -a codex`. Or copy the skill folder (.codex/skills/insforge-dev/dashboard in InsForge/InsForge) into .agents/skills/dashboard in your project. Codex loads it when a task matches its description.

Can I use Dashboard in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add InsForge/InsForge --skill dashboard -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/dashboard, .gemini/skills/dashboard, .github/skills/dashboard and .opencode/skills/dashboard in your project.

What does Dashboard need to run?

Going by SKILL.md and its folder, Dashboard needs the command-line tools its instructions call (npm and git).

Does Dashboard access the network?

SKILL.md contains no URLs. Its commands use npm and git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Dashboard safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Dashboard use?

Dashboard is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Dashboard use?

About 2.3k tokens (SKILL.md is roughly 9.3k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Dashboard?

Skills that share tags, products or a category with Dashboard: MCP Development (coollabsio/coolify, 63k stars), Turnstile Spin (cloudflare/skills, 3k stars), Paperclip Page (paperclipai/paperclip, 98k stars) and Go HTML Views with Gomponents (maragudk/gomponents, 1.9k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Dashboard?

InsForge (a GitHub organization) maintains it in InsForge/InsForge, which has 13,064 GitHub stars. The repository holds 8 skills in this directory. The repository was last updated on October 6, 2026.

Source: InsForge/InsForge on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.