Skip to content
Back to skills

Kelly Agent Builder

ASecurity

Busabase-backed App-in-Skill low-code agent configuration and governance console for a platform team. Use when the user invokes $kelly-agent-builder or /kelly-agent-builder, wants to review or edit a catalog of mock LLM agent configs, check quota usage, find configs that need attention, move a draft to live, pause a live agent, or archive an agent. Mock config/governance console only — it never provisions or calls any real agent.

  • 5 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added September 2, 2026
ai-agentsgonodedebuggingapifrontendbackendsecuritydocumentation

Works with

  • cli
  • api

Security analysis

A100/100

Pro scans all 20 files and shows the line behind each finding

Scanned September 2, 2026

npx -y skills add mr-kelly/skills --skill kelly-agent-builder --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Kelly Agent Builder?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Kelly Agent Builder
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/mr-kelly-kelly-agent-builder/badge)](https://www.skillsdirectory.com/skills/mr-kelly-kelly-agent-builder)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: kelly-agent-builder
description: Busabase-backed App-in-Skill low-code agent configuration and governance console for a platform team. Use when the user invokes $kelly-agent-builder or /kelly-agent-builder, wants to review or edit a catalog of mock LLM agent configs, check quota usage, find configs that need attention, move a draft to live, pause a live agent, or archive an agent. Mock config/governance console only — it never provisions or calls any real agent.
metadata:
  category: platform
  tags:
    - risk:sandbox
    - surface:busabase
  busabase:
    template: true
    folderSlug: kelly-agent-builder
    resources:
      - agents
      - settings
    risk: sandbox

---

# Agent Builder & Governance Console

## Overview

Kelly Agent Builder is a Busabase Cloud App-in-Skill. Its canonical product
surface is the AirApp in Busabase, not a separate local-data product. The
same Hono source supports an explicitly requested local preview with OAuth
connection bootstrap. It is a platform team's governance console for a
catalog of **mock** agent configs. It never provisions or calls a real agent —
every action reads or writes a Busabase Base record. This is a generic,
brand-free tool: teams define a name, a trigger/intent description, a set of
allowed tools (from a fixed catalog), an approval flag, and a monthly call
quota, and this console tracks status and usage and gates the risky
transition (draft → live) behind required-field validation.

Default behavior is AirApp-first. Unless the user explicitly asks only for
explanation, update Busabase directly and give the user the clickable AirApp
URL. Start localhost only when local preview/debugging is explicitly
requested; it uses the same Busabase resources and never offers another data
provider.

## Mandatory Dependencies

1. Read and follow `$kelly-app-skill-creator` for product behavior, visual
   quality, responsive layout, and the complete canonical `content/kelly-agent-builder-app/` artifact.
2. Read and follow `$busabase` for connection, target Space, node discovery,
   ChangeRequests, review, and merge behavior.
3. Read and follow `$busabase-app-creator` for resource modeling, AirApp
   runtime limits, security, validation, and deployment.

If a dependency is unavailable, preserve this skill's local artifact and
product contracts, stop before the unavailable Busabase operation, and report
the exact missing dependency. Do not invent a second data backend.

## App UI Screenshots

<table>
  <tr>
    <td width="50%"><img src="assets/screenshots/overview.webp" alt="Agent Builder overview"></td>
    <td width="50%"><img src="assets/screenshots/catalog.webp" alt="Agent Builder catalog"></td>
  </tr>
  <tr>
    <td><strong>Overview</strong><br>Governance summary: live agent count, aggregate quota usage, and a list of agents that need attention with reasons.</td>
    <td><strong>Catalog</strong><br>Sortable, searchable table of every agent config with status badges, owning team, and quota usage.</td>
  </tr>
  <tr>
    <td width="50%"><img src="assets/screenshots/agent-detail.webp" alt="Agent Builder agent detail"></td>
    <td width="50%"></td>
  </tr>
  <tr>
    <td><strong>Agent detail / edit</strong><br>Tool checklist, quota input, approval toggle, owning team field, trigger/intent textarea, status, and lifecycle actions (activate / pause / archive).</td>
    <td></td>
  </tr>
</table>

## Boundary

- This is a **mock** governance console. It never provisions, deploys, or
  calls any real agent, model, or external tool. The "allowed tools"
  checklist is a fixed local catalog (`content/kelly-agent-builder-app/app/js/tool-catalog.js`) used only
  for governance bookkeeping — selecting a tool here does not grant or invoke
  it anywhere.
- The AirApp reads and writes Busabase records only; it must not call any
  other remote system.
- No brand-specific integration exists or is implied.

## Busabase Resources

Two Bases under one application Folder (`kelly-agent-builder`), declared in
`content/kelly-agent-builder-app/app/js/config.js` and the generated template sidecars under `content/`:

- `agents`: `agent-id`, `name`, `trigger-description`, `allowed-tools` (JSON
  array), `approval-required`, `monthly-quota`, `calls-this-month`,
  `owning-team`, `status`, `created-at`, `updated-at`.
- `settings`: one row per `kind` — `kelly-agent-builder-onboarding` (presence
  marks setup complete; this skill has no external accounts or secrets to
  configure) and `kelly-agent-builder-lock`.

Resources provision lazily through an idempotent Busabase ChangeRequest the
first time the app runs in a Space; see `references/agent-config-schema.md`
for exact field shapes and governance rules.

## Authentication

Busabase authentication is ambient inside the deployed AirApp, which must not
show OAuth, API-key, Base URL, provider, hosting, or Space controls.
Standalone loopback preview uses browser OAuth without exposing tokens; after
OAuth it auto-selects a single/open-source Space or requires a native
selector when several Spaces are accessible.

## Demo Mode

- `?demo=1` opens a deterministic, fully offline mock catalog (8 agent
  configs spanning draft/live/paused/archived, one over-quota, one missing an
  owning team) for documentation and screenshots.
- `lang=en` or `lang=zh` forces UI chrome language for screenshots.
- Demo mode never reads or writes Busabase.

## Governance Rules

Read `references/agent-config-schema.md` before editing the app or its
domain logic. In short:

- **Draft → live** is only allowed when `name`, `trigger_description`, at
  least one `allowed_tools` entry, non-empty `owning_team`, and
  `monthly_quota > 0` are all present. This is enforced in
  `content/kelly-agent-builder-app/app/js/providers/busabase-provider.js#activateAgent` — the browser
  form disables the button too, but the provider is the source of truth.
- **Archive** is allowed from any status. Archived agents become read-only.
- **Pause** is only allowed from `live`.
- **Needs attention** = a draft with missing required fields, OR an agent
  (any status) with no owning team, OR a quota-reached live agent
  (`calls_this_month >= monthly_quota` — reached, not strictly exceeded), OR
  `approval_required: true` with no owning team assigned.
- **Update validation**: an edit that would leave an already-`live` agent
  missing any required field (e.g. clearing `owning_team` or
  `allowed_tools`) is rejected, the same gate `activate` uses. Draft agents
  remain freely editable.

## Local App

- `content/kelly-agent-builder-app/app/index.html` + `content/kelly-agent-builder-app/app/app.js` + `content/kelly-agent-builder-app/app/styles.css` +
  `content/kelly-agent-builder-app/app/i18n/messages.js`: zero-build vanilla frontend with hash routing
  (`#/overview`, `#/catalog`, `#/agent/:id`, `#/agent/new`, `#/settings`).
- `content/kelly-agent-builder-app/app/js/agent-model.js`: pure governance rules
  (`missingRequiredFields`, `isQuotaReached`, `deriveAgent`, `summarize`,
  lifecycle transitions) shared by the busabase and demo providers.
- `content/kelly-agent-builder-app/app/js/providers/`: `busabase-provider.js` (reads/writes via
  `busabase-sdk`) and `demo-provider.js` (deterministic, read-only).
- `content/kelly-agent-builder-app/app/js/tool-catalog.js`: the fixed tool catalog (`web_search`,
  `code_exec`, `file_read`, `file_write`, `send_email`, `calendar`,
  `crm_lookup`, `db_query`, `slack_post`, `http_request`).
- `content/kelly-agent-builder-app/server.js`: thin Hono OAuth bootstrap + same-origin `/api/v1` proxy to
  Busabase — no business logic.

## Safety

- Never provision or call a real agent, tool, or external system from this
  skill's app.
- Keep `owning_team` values as free text; do not validate against a real
  directory service.

## Completion Criteria

Finish only when:

- the skill contains the complete canonical `content/kelly-agent-builder-app/` project and
  `pnpm --dir content/kelly-agent-builder-app dev` remains supported;
- all persistent config and agent data use `busabase-sdk` and the declared
  resource map — no local JSON, browser storage, or provider choice;
- local setup offers Cloud/custom URL OAuth plus the explicit Demo path,
  while a deployed AirApp uses its ambient session;
- Overview, Catalog, Agent detail, and Help & Settings render on desktop and
  phone widths;
- `pnpm --dir content/kelly-agent-builder-app run check` and `node --test` pass.

Files in this skill

  • README.md2.9 KB
  • SKILL.md8.3 KB
  • agents/openai.yaml268 B
  • assets/screenshots/agent-detail-zh-CN.webp130 B
  • assets/screenshots/agent-detail.webp130 B
  • assets/screenshots/catalog-zh-CN.webp130 B
  • assets/screenshots/catalog.webp130 B
  • assets/screenshots/overview-zh-CN.webp130 B
  • assets/screenshots/overview.webp130 B
  • assets/screenshots/thumbs/agent-detail-zh-CN.webp129 B
  • assets/screenshots/thumbs/agent-detail.webp129 B
  • assets/screenshots/thumbs/catalog-zh-CN.webp130 B
  • assets/screenshots/thumbs/catalog.webp130 B
  • assets/screenshots/thumbs/overview-zh-CN.webp129 B
  • assets/screenshots/thumbs/overview.webp129 B
  • busabase.json813 B
  • content/_folder.json105 B
  • content/agents/base.json1.9 KB
  • content/agents/records.ndjson1.5 KB
  • content/kelly-agent-builder-app/.busabaseignore194 B

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.