Agent skill

UI Expose Attribute

by 389ds in 389ds/389-ds-base

Expose a server setting in the Cockpit web console (389-console) or change web UI behavior.

Custom licenceAuto-check passedFrontend & Design

Install UI Expose Attribute

skills CLI
$ npx skills add 389ds/389-ds-base --skill ui-expose-attribute -a claude-code

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

GitHub CLI
$ gh skill install 389ds/389-ds-base ui-expose-attribute --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/389ds/389-ds-base.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/ui-expose-attribute .claude/skills/ui-expose-attribute && 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
ui-expose-attribute
GitHub stars
294
Token cost
~1.6k tokens
SKILL.md length
782 words
Files
2 (incl. references)
Skills in repo
7
Repo updated
First seen
Licence
Custom licence

At a glance

Expose a server setting in the Cockpit web console (389-console) or change web UI behavior.

  • Works in 8 steps: Locate the page component. Top-level… → Make the four edits for an editable… → Database settings exist TWICE. → …
  • Tasks that involve Frontend development
  • Calls npm

What it does

UI Expose Attribute is an agent skill from 389ds/389-ds-base. Expose a server setting in the Cockpit web console (389-console) or change web UI behavior. Triggers: "show X in the UI", "add a field to the Server/Database page", "web console", anything under src/cockpit/389-console. Warning: every editable field needs a state value, an underscore shadow copy, and a dirty-check array entry, and database settings must also be duplicated in the parallel MDB class — omitting any one breaks Save silently: it never enables, stays permanently enabled, or throws a TypeError.

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

It sits in Frontend & Design, covering Frontend development. The repository describes itself as: The enterprise-class Open Source LDAP server for Linux.

When your agent uses it

  • Tasks that involve Frontend development

Example prompts

  • “show X in the UI”
  • “add a field to the Server/Database page”
  • “web console”
  • “/ui-expose-attribute”

Workflow steps

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

  1. Locate the page component. Top-level tabs (Server, Database, Replication,
  2. Make the four edits for an editable field — mirror an existing attribute of the
  3. Database settings exist TWICE.
  4. Write the save handler. Build the dsconf argv the way the page already does —
  5. Follow the render conventions.
  6. **Verify the build via the environment's build/test skill; with no such skill,
  7. Test manually. There are no JS unit tests. Use the cockpit dev loop: symlink
  8. New page, tree node, or plugin page instead of a field: references/new-page.md.

What it can do on your machine

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

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

  • Network

    No URLs in SKILL.md. Its commands use npm, 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

UI Expose Attribute loads about 1.6k tokens when it runs, and up to ~2.3k if it reads all its reference files. Until then it costs about 132 tokens; SKILL.md has 782 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~132
When it runs · the whole SKILL.md, loaded when a task matches
~1.6k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~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

Its licence (Custom licence) doesn't allow us to republish the file, so here is its outline and opening line. It has 782 words (~1,628 tokens).

“UI conventions and semantics: docs/agents/ui.md. The UI shells out to dsconf, so the CLI flag must exist first — flag/UI coupling rules: docs/agents/cli.md. Adding a whole new page or section instead of a field: references/new-page.md.”

— opening of SKILL.md by 389ds, Custom licence
name
ui-expose-attribute

Read the full SKILL.md on GitHub

Files

SKILL.md and 1 other file (references) in .agents/skills/ui-expose-attribute of 389ds/389-ds-base.

  • SKILL.md
  • references/new-page.md

Open the folder on GitHubat commit cb60126

Compare with similar skills

UI Expose Attribute 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.

UI Expose Attribute compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
UI Expose Attribute this skill389ds/389-ds-base294—~1.6kAutomated safety check: PassCustom licence
React Router Developmentremix-run/react-router57k1 repos~1.5kAutomated safety check: PassMIT
React UI State PatternsChrisWiles/claude-code-showcase6.1k7 repos~1.6kAutomated safety check: PassNone
GSAP in Vue, Nuxt and Sveltegreensock/gsap-skills16k4 repos~2.6kAutomated safety check: PassMIT
Svelte Core Best Practicesrilldata/rill2.9k4 repos~1.8kAutomated safety check: PassApache-2.0
Vuetify Playgroundvuetifyjs/vuetify41k—~730Automated safety check: PassCustom licence

Similar skills

  • React Router Development

    remix-run/react-router

    Guides work on React Router apps by first identifying whether the app uses Framework, Data or Declarative mode, then loading the matching reference and the installed package docs.

    57k GitHub starsUsed in 1 repo~1.5k tokens
    Frontend & DesignAuto-check passed
  • React UI State Patterns

    ChrisWiles/claude-code-showcase

    Sets patterns for React interfaces: when to show loading spinners or skeletons, how to surface errors, how to disable buttons during async work and how to handle empty lists.

    6.1k GitHub starsUsed in 7 repos~1.6k tokens
    Frontend & DesignAuto-check passed
  • GSAP in Vue, Nuxt and Svelte

    greensock/gsap-skills

    Shows how to use GSAP in Vue, Nuxt, Svelte and other lifecycle-based frameworks: create after mount, scope selectors to the component, and revert on unmount.

    16k GitHub starsUsed in 4 repos~2.6k tokens
    Frontend & DesignAuto-check passed
  • Rules for writing idiomatic Svelte 5 code: when to reach for runes like state, derived and effect, and how to handle props, attachments and bindings.

    2.9k GitHub starsUsed in 4 repos~1.8k tokens
    Frontend & DesignAuto-check passed
  • Vuetify Playground

    vuetifyjs/vuetify

    Maintains the Vuetify repo's local Playground.vue so contributors get a realistic reproduction and a short demo they can paste into a pull request description.

    41k GitHub stars~730 tokensUpdated yesterday
    Frontend & DesignAuto-check passed
  • Starts the right Tabler dev server, keeps it from clashing with builds and verifies changes in the browser before a page or component is handed back.

    42k GitHub stars~1.2k tokensUpdated yesterday
    Frontend & DesignAuto-check passed

More from 389ds/389-ds-base

  • Commit And PR

    389ds/389-ds-base

    Commit and open a PR the 389-ds-base way — "Issue NNNN - summary" subject, Bug Description/Fix Description body, Fixes:/Relates: trailer, AI-attribution trailer, and squash-merge etiquette.

    294 GitHub stars~1k tokensUpdated yesterday
    Auto-check passed
  • Write Test

    389ds/389-ds-base

    Add or extend a pytest integration test for 389 Directory Server under dirsrvtests/.

    294 GitHub stars~1.8k tokensUpdated yesterday
    Auto-check passed
  • Add CLI Option

    389ds/389-ds-base

    Add or change a dsconf/dsctl/dsidm/dscreate flag, subcommand, or noun in src/lib389 — argparse wiring, argtoattr maps, lib389 allowlists, generated man pages, Cockpit coupling, and clu tests.

    294 GitHub stars~1.6k tokensUpdated yesterday
    Auto-check passed
  • Add Config Attribute

    389ds/389-ds-base

    Add, rename, or wire a server config attribute end to end - a core cn=config attribute (the slap.h/libglobs.c chain) or a plugin config-entry attribute - including the schema line, defaults, upgrade…

    294 GitHub stars~1.7k tokensUpdated yesterday
    Auto-check passed
  • Verify Changes

    389ds/389-ds-base

    Verify a 389-ds-base change by routing through the environment's build/test skill — static Python gates plus, via that skill, C compile, cmocka, RPM build and pytest suites, cargo tests, and the…

    294 GitHub stars~1.9k tokensUpdated yesterday
    Auto-check passed
  • Touch Backend

    389ds/389-ds-base

    Rules for modifying back-ldbm database code under the dual-backend (BDB + LMDB) architecture.

    294 GitHub stars~1.3k tokensUpdated yesterday
    Auto-check passed

Questions about UI Expose Attribute

What does UI Expose Attribute do?

Expose a server setting in the Cockpit web console (389-console) or change web UI behavior. UI Expose Attribute is an agent skill from 389ds/389-ds-base. Expose a server setting in the Cockpit web console (389-console) or change web UI behavior.

When should I use UI Expose Attribute?

UI Expose Attribute fits situations like: tasks that involve Frontend development.

How do I install UI Expose Attribute in Claude Code?

Run `npx skills add 389ds/389-ds-base --skill ui-expose-attribute -a claude-code`. Or copy the skill folder (.agents/skills/ui-expose-attribute in 389ds/389-ds-base) into .claude/skills/ui-expose-attribute in your project. Claude Code loads it when a task matches its description.

How do I install UI Expose Attribute in Codex?

Run `npx skills add 389ds/389-ds-base --skill ui-expose-attribute -a codex`. Or copy the skill folder (.agents/skills/ui-expose-attribute in 389ds/389-ds-base) into .agents/skills/ui-expose-attribute in your project. Codex loads it when a task matches its description.

Can I use UI Expose Attribute 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 389ds/389-ds-base --skill ui-expose-attribute -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/ui-expose-attribute, .gemini/skills/ui-expose-attribute, .github/skills/ui-expose-attribute and .opencode/skills/ui-expose-attribute in your project.

What does UI Expose Attribute need to run?

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

Does UI Expose Attribute access the network?

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

Is UI Expose Attribute 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 UI Expose Attribute use?

UI Expose Attribute has a licence file (the repository's licence) that doesn't match a standard licence. Read it on GitHub before reusing the skill.

How many tokens does UI Expose Attribute use?

About 1.6k tokens (SKILL.md is roughly 6.5k 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 626 tokens, read only when the agent opens those files.

What are the alternatives to UI Expose Attribute?

Skills that share tags, products or a category with UI Expose Attribute: React Router Development (remix-run/react-router, 57k stars), React UI State Patterns (ChrisWiles/claude-code-showcase, 6.1k stars), GSAP in Vue, Nuxt and Svelte (greensock/gsap-skills, 16k stars) and Svelte Core Best Practices (rilldata/rill, 2.9k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains UI Expose Attribute?

389ds (a GitHub organization) maintains it in 389ds/389-ds-base, which has 294 GitHub stars. The repository holds 7 skills in this directory. The repository was last updated on October 6, 2026.

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