Agent skill

Bai Agent

by lablup in lablup/backend.ai-webui

Answer a Backend.AI question, or do a Backend.AI task, from this checkout with the bai-agent CLI — the manual, the GraphQL schema, the i18n stores and the live manager.

LGPL-3.0Auto-check passedBackend & APIs

Install Bai Agent

skills CLI
$ npx skills add lablup/backend.ai-webui --skill bai-agent -a claude-code

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

GitHub CLI
$ gh skill install lablup/backend.ai-webui bai-agent --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/lablup/backend.ai-webui.git skills-src && mkdir -p .claude/skills && cp -r skills-src/packages/backend.ai-agent-cli/skill .claude/skills/bai-agent && 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
bai-agent
GitHub stars
133
Token cost
~2.1k tokens
SKILL.md length
1,125 words
Files
2 (incl. references)
Skills in repo
13
Repo updated
First seen
Licence
LGPL-3.0

At a glance

Answer a Backend.AI question, or do a Backend.AI task, from this checkout with the bai-agent CLI — the manual, the GraphQL schema, the i18n stores and the live manager.

  • : what a Backend.AI concept
  • SKILL.md covers Preflight, Answer, or link, Neighbours and Gotchas the CLI cannot warn…, plus 2 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md
  • Status value means (what does session status PENDING mean

What it does

Bai Agent is an agent skill from lablup/backend.ai-webui. Answer a Backend.AI question, or do a Backend.AI task, from this checkout with the bai-agent CLI — the manual, the GraphQL schema, the i18n stores and the live manager. Trigger on: what a Backend.AI concept, field or status value means ("what does session status PENDING mean", "what is a resource group", "what does this field mean"), "find it in the manual", "search the docs", "query the manager", "run a GraphQL query", "how many sessions are running", "show me my sessions / folders / agents / users", "give me…

Its SKILL.md is about 2.1k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including reference files (for example `references/query-cookbook.md`).

It sits in Backend & APIs, covering GraphQL and Internationalization. It works with GraphQL. The repository describes itself as: Backend.AI Web UI for web / desktop app (Windows/Linux/macOS). Backend.AI Web UI provides a convenient environment for users, while allowing various commands to be executed… The licence is LGPL-3.0.

When your agent uses it

  • : what a Backend.AI concept
  • Status value means (what does session status PENDING mean
  • What is a resource group
  • What does this field mean)

Example prompts

  • “what does session status PENDING mean”
  • “what is a resource group”
  • “what does this field mean”
  • “/bai-agent”

What it can do on your machine

Read from SKILL.md and the folder at commit 10554dc. 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

    No scripts in the folder and no shell commands in SKILL.md.

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

  • Network

    No URLs in SKILL.md.

    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

Bai Agent loads about 2.1k tokens when it runs, and up to ~4k if it reads all its reference files. Until then it costs about 190 tokens; SKILL.md has 1,125 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~190
When it runs · the whole SKILL.md, loaded when a task matches
~2.1k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~4k

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 lablup/backend.ai-webui at commit 10554dc, republished under its LGPL-3.0 licence (© lablup). 1,125 words, ~2,055 tokens.

Download SKILL.mdSave it as .claude/skills/bai-agent/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
bai-agent
description
Answer a Backend.AI question, or do a Backend.AI task, from this checkout with the `bai-agent` CLI — the manual, the GraphQL schema, the i18n stores and the live manager. Trigger on: what a Backend.AI concept, field or status value means ("what does session status PENDING mean", "what is a resource group", "what does this field mean"), "find it in the manual", "search the docs", "query the manager", "run a GraphQL query", "how many sessions are running", "show me my sessions / folders / agents / users", "give me the WebUI link for this session", "where do I see that folder in the WebUI", or "bai-agent". Use `backend-ai-guide` instead for platform architecture with no live data, and `docs-lead` for writing the manual rather than reading it.

bai-agent

bai-agent answers Backend.AI questions from a WebUI checkout — the one you are in, or the data copy bai-agent init synced — and points the user at the WebUI page for what it found. The workflow contract is the generated BAI-AGENT block: in a checkout it is in CLAUDE.md, and an installed copy of this skill carries it as references/agent-block.md. Read it there, it is not repeated here. This file is the parts the CLI cannot tell you: when to log in, when to answer versus link, and which neighbour owns what.

Preflight

Run bai-agent doctor --brief once, from wherever you already are — never cd first. It is the one-step preflight: checkout-vs-synced-data and session/auth in one line each. Fall back to bai-agent doctor --json only when you need a specific field out of it. Run bai-agent whoami only when the auth check is warn.

The workflow contract is already loaded: in a checkout it is the BAI-AGENT block in CLAUDE.md; installed, it is references/agent-block.md. Read whichever applies — don't cat it unless the block is absent — and don't grep for a CLAUDE.md outside a checkout; there isn't one.

When whoami says auth_required (exit 3):

  • Get the endpoint and the account from the webui-connection-info skill in a checkout; elsewhere the endpoint is the one init recorded (doctor prints it). Never ask the user for a password, and never put one in a command.
  • Browser on this machine: bai-agent login --endpoint <url>, then confirm on the /cli-login page it opens. That page is the WebUI's; in a checkout it is the dev server, elsewhere the endpoint's own origin — pass --webui <origin> when the UI lives somewhere else.
  • Browser anywhere else, or a tunnelled/HTTPS tab: bai-agent login --paste --endpoint <url> and paste the session id the page reveals.
  • bai-agent logout when you are done with a borrowed session.

search, docs show, schema show and explain need no session at all. A "what does X mean" question never requires logging in — go straight to it.

The user wantsDo this
to understand a status value ("what does status X mean")Try explain <Type>.<field>=<VALUE> first — e.g. explain ComputeSessionNode.status=PENDING, explain UserNode.status=before-verification. Fall back to explain <Type>.<field> (no value) or docs show for a term or field in general.
to understand a term or fieldexplain (meaning) or docs show (the manual). Answer in the words the UI uses, and cite the deployed-docs url the CLI returned.
a count, a list, a valueStart every live query from bai-agent cookbook <root field> (or --list) — never search the filesystem for the cookbook; a schema_mismatch error names the entry to read. Adapt it, never invent a shape. Summarise the rows; do not paste the raw envelope.
to see it, or act on itGive the webui_url (or webui_path) query already annotated onto the row, under data.links, so the user can open it themselves. Say so when the link carries requires — admin / superadmin / projectAdmin is the role that page gates on, so hand it over as "…, which is admin-only" rather than as a link that may bounce them; no requires means any signed-in account can open it. When you post-process the --json envelope yourself, also print data.links — the link must reach the user. Never describe a click path you could report directly. If data.links is empty for a result, say the resource has no addressable page — do not compose a path by hand, not even for a field whose rows are plainly the caller's own (myKeypairs gets no link because the only keypair list is the admin-only credentials tab); but a row carrying webui_link_hint instead means the id you selected cannot build one, so re-run selecting row_id. When several rows share a name, pick the link by id, never by name.
something destructiveGive them the hint page from the refusal and stop. A mutation_refused (exit 4) is the answer, not an obstacle to route around.

explain prints MISSING for a piece nothing curates. Say it is not documented and offer the SDL entry — never fill the gap from memory. If the answer would be better as a curated sentence, that is a mappings/<Type>.yaml change, not a guess at runtime.

Show full SKILL.md (434 more words)Show less

Neighbours

SkillOwnsNot this
webui-connection-infoWhich dev server is up, its URL and port, the API endpoint, the test credentials.It does not read data — it tells you where to point login.
backend-ai-guideBackend.AI architecture and product Q&A with no live data: what Sokovan is, how the agent talks to the manager.The moment the question is about this deployment's data or a schema field's meaning, it is bai-agent.
docs-leadWriting and maintaining the user manual, terminology, translations, screenshots.Reading the manual to answer a question is bai-agent search / docs show.
bai-cli (backend repo)./bai, the backend's own REST CLI, inside a backend.ai checkout.In this repo use bai-agent; ./bai does not exist here.

Gotchas the CLI cannot warn you about

  • Search in English UI terms. The index is English-only. A Korean or Japanese query is normalised through the i18n stores, not translated, so "Resource Group" beats "scaling group" and both beat a paraphrase.
  • One pagination mode per connection. first+after XOR last+before XOR limit+offset. The local SDL accepts a mix; the *V2 connections reject it at runtime (the checkout's .claude/rules/graphql-pagination.md).
  • --allow-mutation is not a bypass. The field must also be on the CLI's mutation allow-list (src/mutation-allowlist.ts in the package). Widening that list is a reviewed PR, never an in-session decision.
  • Session detail views share one URL. /session?sessionDetail=<id> is a drawer, the only addressable surface — there is no per-row session link to offer beyond that.

The block's RULES apply beyond these (session file, empty data.links, no React source in a synced copy, never cd before doctor, and more) — read them there rather than restated here.

Cookbook

bai-agent cookbook --list names every entry; bai-agent cookbook <n> and bai-agent cookbook <root field> print one, prose and document. That command is how you read it — it locates the file itself, so never search the filesystem for a path and never cat one. The entries are 11 documents that validate against the SDL, one per resource, plus the allow-listed mutation and the refused destructive one; a test re-validates them, so a stale one fails CI, not a user. Maintainers edit packages/backend.ai-agent-cli/skill/references/query-cookbook.md.

Keeping this in sync (maintainers, in a checkout)

Re-run pnpm --filter backend.ai-agent-cli build && pnpm run bai-agent init --features agents --write after any change to the CLI, and re-sync the BAI-AGENT block in CLAUDE.md. This directory ships in the npm package as-is, so an installed copy updates on the next bai-agent init; it is not a repository-level skill — install it with bai-agent init --skill. Rules are linked from here, never copied: if you find yourself restating what manifest --json, the block or --help already says, delete it instead.

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

Files

SKILL.md and 1 other file (references) in packages/backend.ai-agent-cli/skill of lablup/backend.ai-webui.

  • SKILL.md
  • references/query-cookbook.md

Open the folder on GitHubat commit 10554dc

Compare with similar skills

Bai Agent 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.

Bai Agent compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Bai Agent this skilllablup/backend.ai-webui133—~2.1kAutomated safety check: PassLGPL-3.0
Playwright Best Practicessanity-io/sanity6.4k7 repos~6.4kAutomated safety check: PassMIT
GraphQL Operations with CodegenChrisWiles/claude-code-showcase6.1k3 repos~1.5kAutomated safety check: PassNone
Relay Best Practiceshackers-pub/hackerspub165—~4.6kAutomated safety check: PassAGPL-3.0
Shopify ExpertJeffallan/claude-skills12k—~1.8kAutomated safety check: PassMIT
Shopify Developer Referencetech-leads-club/agent-skills7k—~1.9kAutomated safety check: PassCustom licence

Similar skills

  • Official

    A skill your agent uses when writing Playwright tests, fixing flaky tests, debugging failures, implementing Page Object Model, configuring CI/CD, optimizing performance, mocking APIs, handling…

    6.4k GitHub starsUsed in 7 repos~6.4k tokens
    Testing & QAAuto-check passed
  • GraphQL Operations with Codegen

    ChrisWiles/claude-code-showcase

    Sets the rules for writing GraphQL queries and mutations in .gql files, running codegen, and using generated Apollo hooks with proper error and loading handling.

    6.1k GitHub starsUsed in 3 repos~1.5k tokens
    Backend & APIsAuto-check passed
  • Relay Best Practices

    hackers-pub/hackerspub

    Best practices for writing idiomatic Relay code. An agent skill from hackers-pub/hackerspub.

    165 GitHub stars~4.6k tokensUpdated 4 days ago
    Backend & APIsAuto-check passed
  • Shopify Expert

    Jeffallan/claude-skills

    Builds Shopify themes in Liquid, custom apps, Storefront API storefronts and checkout extensions, using the Shopify CLI to lint, run locally and deploy.

    12k GitHub stars~1.8k tokensUpdated 4 days ago
    Backend & APIsAuto-check passed
  • Shopify Developer Reference

    tech-leads-club/agent-skills

    Reference for Shopify work: Liquid templates, OS 2.0 themes, Admin and Storefront GraphQL APIs, apps, Functions and Hydrogen, on API version 2026-01.

    7k GitHub stars~1.9k tokensUpdated 17 days ago
    Backend & APIsAuto-check passed
  • API Designer

    Jeffallan/claude-skills

    Designs REST and GraphQL APIs from resource modeling to an OpenAPI 3.1 contract, with versioning, pagination and RFC 7807 error handling.

    12k GitHub starsUsed in 2 repos~2k tokens
    Backend & APIsAuto-check passed

More from lablup/backend.ai-webui

All 13 skills in this repo
  • Walkthrough

    lablup/backend.ai-webui

    Mint a walkthrough for the PR this session just implemented: a set of numbered stops a reviewer opens in the live dev server, each one marking an element on screen with what changed and what to check.

    133 GitHub stars~4.9k tokensUpdated today
    Auto-check: notes
  • Docs Lead

    lablup/backend.ai-webui

    A skill your agent uses whenever the user mentions docs, the manual, documentation, terminology, translations, or screenshots — including indirect mentions like "이 PR 문서 영향 봐줘", "문서 점검", "용어 통일"…

    133 GitHub stars~2.9k tokensUpdated today
    Auto-check passed
  • Backend AI Guide

    lablup/backend.ai-webui

    Expert guide for Backend.AI distributed computing platform. An agent skill from lablup/backend.ai-webui.

    133 GitHub starsUsed in 1 repo~1.8k tokens
    Auto-check passed
  • Dev Server

    lablup/backend.ai-webui

    Start the project's development server (pnpm dev for backend.ai-webui; discovered from README/package.json elsewhere), deriving the header color, app name, default backend endpoint and login…

    133 GitHub stars~6.9k tokensUpdated today
    Auto-check: notes
  • Record E2E Gif

    lablup/backend.ai-webui

    Record Playwright e2e tests as one GIF per test case (video → ffmpeg palette GIF) and return a markdown table for a PR description.

    133 GitHub stars~907 tokensUpdated today
    Auto-check: notes
  • Relay Mutation Store Updates

    lablup/backend.ai-webui

    A skill your agent uses when writing if (success) updateFetchKey(), an onRequestClose handler, or any refetch after a mutation; when a setting modal handles both create and update behind one…

    133 GitHub stars~2.8k tokensUpdated today
    Auto-check passed

Works with

Questions about Bai Agent

What does Bai Agent do?

Answer a Backend.AI question, or do a Backend.AI task, from this checkout with the bai-agent CLI — the manual, the GraphQL schema, the i18n stores and the live manager. ai-webui.AI task, from this checkout with the bai-agent CLI — the manual, the GraphQL schema, the i18n stores and the live manager.

When should I use Bai Agent?

Bai Agent fits situations like: : what a Backend.AI concept; status value means (what does session status PENDING mean; what is a resource group; what does this field mean).

How do I install Bai Agent in Claude Code?

Run `npx skills add lablup/backend.ai-webui --skill bai-agent -a claude-code`. Or copy the skill folder (packages/backend.ai-agent-cli/skill in lablup/backend.ai-webui) into .claude/skills/bai-agent in your project. Claude Code loads it when a task matches its description.

How do I install Bai Agent in Codex?

Run `npx skills add lablup/backend.ai-webui --skill bai-agent -a codex`. Or copy the skill folder (packages/backend.ai-agent-cli/skill in lablup/backend.ai-webui) into .agents/skills/bai-agent in your project. Codex loads it when a task matches its description.

Can I use Bai Agent 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 lablup/backend.ai-webui --skill bai-agent -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/bai-agent, .gemini/skills/bai-agent, .github/skills/bai-agent and .opencode/skills/bai-agent in your project.

What does Bai Agent need to run?

SKILL.md names no scripts, command-line tools or credentials: Bai Agent is instructions for the agent only.

Does Bai Agent access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Bai Agent 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 Bai Agent use?

Bai Agent is published under the LGPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Bai Agent use?

About 2.1k tokens (SKILL.md is roughly 8.2k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 2k tokens, read only when the agent opens those files.

What are the alternatives to Bai Agent?

Skills that share tags, products or a category with Bai Agent: Playwright Best Practices (sanity-io/sanity, 6.4k stars), GraphQL Operations with Codegen (ChrisWiles/claude-code-showcase, 6.1k stars), Relay Best Practices (hackers-pub/hackerspub, 165 stars) and Shopify Expert (Jeffallan/claude-skills, 12k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Bai Agent?

lablup (a GitHub organization) maintains it in lablup/backend.ai-webui, which has 133 GitHub stars. The repository holds 13 skills in this directory. The repository was last updated on October 7, 2026.

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