Agent skill

Workbench Ops Skill

by OpenLoaf in OpenLoaf/OpenLoaf

Triggered when the user wants to add, modify, view, or delete widgets (desktop components / mini apps / dashboard cards) on the OpenLoaf workbench / desktop.

AGPL-3.0Auto-check: notesProductivity & Automation

Install Workbench Ops Skill

skills CLI
$ npx skills add OpenLoaf/OpenLoaf --skill workbench-ops-skill -a claude-code

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

GitHub CLI
$ gh skill install OpenLoaf/OpenLoaf workbench-ops-skill --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/OpenLoaf/OpenLoaf.git skills-src && mkdir -p .claude/skills && cp -r skills-src/apps/server/src/ai/builtin-skills/workbench-ops/en .claude/skills/workbench-ops-skill && 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
workbench-ops-skill
GitHub stars
107
Token cost
~1.3k tokens
SKILL.md length
501 words
Files
1
Skills in repo
34
Repo updated
First seen
Licence
AGPL-3.0

At a glance

Triggered when the user wants to add, modify, view, or delete widgets (desktop components / mini apps / dashboard cards) on the OpenLoaf workbench / desktop.

  • Works in 5 steps: WidgetInit — generate the scaffold… → ToolSearch(names:… → Write — write widget.tsx (the frontend… → …
  • Delete widgets (desktop components / mini apps / dashboard cards) on the OpenLoaf workbench / desktop
  • SKILL.md covers Tool Inventory, Decision Tree, Modify vs Rebuild Decision and Creating a New Widget (must…, plus 4 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Workbench Ops Skill is an agent skill from OpenLoaf/OpenLoaf. Triggered when the user wants to add, modify, view, or delete widgets (desktop components / mini apps / dashboard cards) on the OpenLoaf workbench / desktop. Typical phrasings: "add a weather widget", "build a pomodoro component", "change the color of this widget". Not for: one-off chart rendering inside a chat message (→visualization-ops-skill), AI image generation (→cloud-media-skill), casually mentioning "clock / countdown" in conversation (→answer directly).

Its SKILL.md is about 1.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 Productivity & Automation, covering Image generation and Focus and ADHD support. The repository describes itself as: 🍞Open-source, local-first AI workspace with Agents, multi-model chat (GPT/Claude/Gemini/DeepSeek), Notion-like docs, AI image & video generation, email, calendar & terminal…. The licence is AGPL-3.0.

When your agent uses it

  • Delete widgets (desktop components / mini apps / dashboard cards) on the OpenLoaf workbench / desktop
  • Tasks that involve Image generation
  • Tasks that involve Focus and ADHD support

Example prompts

  • “add a weather widget”
  • “build a pomodoro component”
  • “change the color of this widget”
  • “/workbench-ops-skill”

Workflow steps

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

  1. WidgetInit — generate the scaffold directory
  2. ToolSearch(names: "generate-dynamic-widget") — load the coding conventions
  3. Write — write widget.tsx (the frontend component)
  4. Write — write functions.ts (server-side functions, if needed)
  5. WidgetCheck — compile + trigger live preview

What it can do on your machine

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

Workbench Ops Skill loads about 1.3k tokens when it runs. Until then it costs about 123 tokens; SKILL.md has 501 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~123
When it runs · the whole SKILL.md, loaded when a task matches
~1.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: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NoteMentions a .env fileSKILL.md:91
    mation (API keys, etc.) is injected via `.env` under the widget directory — never hardcode

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 OpenLoaf/OpenLoaf at commit f7eccf6, republished under its AGPL-3.0 licence (© OpenLoaf). 501 words, ~1,279 tokens.

Download SKILL.mdSave it as .claude/skills/workbench-ops-skill/SKILL.md (or your agent's skills folder).
name
workbench-ops-skill
description
Triggered when the user wants to add, modify, view, or delete widgets (desktop components / mini apps / dashboard cards) on the OpenLoaf workbench / desktop. Typical phrasings: "add a weather widget", "build a pomodoro component", "change the color of this widget". **Not for**: one-off chart rendering inside a chat message (→visualization-ops-skill), AI image generation (→cloud-media-skill), casually mentioning "clock / countdown" in conversation (→answer directly).

Workbench Widget Management

This skill handles widget lifecycle management (scaffolding, querying, compile verification). Coding details (SDK API, component authoring, security sandbox) live in the generate-dynamic-widget skill — when you need to write code, first LoadSkill(skillName: "generate-dynamic-widget").

Tool Inventory

ToolResponsibilityRead-only
WidgetInitGenerate the widget scaffold directory (~/.openloaf/dynamic-widgets/<id>/)No
WidgetListList all created widgetsYes
WidgetGetRead details of a single widgetYes
WidgetCheckCompile widget (TypeScript) + trigger live preview refreshYes
GenerateWidgetWidget code generation (see generate-dynamic-widget skill)No
ReadWidget code reading (always-available tool)Yes
EditWidget code editing (always-available tool)No

Loading: Read / Edit are always available; WidgetInit / WidgetList / WidgetGet / WidgetCheck / GenerateWidget must be activated via ToolSearch(names: "WidgetInit,WidgetList,WidgetGet,WidgetCheck,GenerateWidget") before calling, to load their schemas.

Decision Tree

User wants a Widget
├── Does one already exist?
│   ├── Yes → WidgetList → WidgetGet → Read → understand the current state
│   │        └── Needs code changes → ToolSearch(names: "generate-dynamic-widget")
│   │        └── Edit → WidgetCheck
│   └── No → Create a new Widget (see flow below)
└── Just querying / browsing?
    └── WidgetList / WidgetGet is enough

Modify vs Rebuild Decision

When the user wants to change an existing Widget:

  • Modify existing (Edit): user says "add an X feature", "change the color", "show one more field" → incremental edit on existing code
  • Recreate (WidgetInit): fundamental change, e.g. from "weather component" to "stock ticker", or a completely different overall architecture / layout → create a new Widget to replace it

Creating a New Widget (must follow this order)

  1. WidgetInit — generate the scaffold directory
    • Why init first? Because it creates the correct directory structure (~/.openloaf/dynamic-widgets/<id>/), package.json, and type stub files. Skipping this and writing files directly will cause the compiler to fail to find type definitions.
  2. ToolSearch(names: "generate-dynamic-widget") — load the coding conventions
  3. Write — write widget.tsx (the frontend component)
  4. Write — write functions.ts (server-side functions, if needed)
  5. WidgetCheck — compile + trigger live preview
    • Why must check run last? Because it runs the TypeScript compile and notifies the frontend to refresh the preview. Without calling check, the user still sees the old content.

Modifying an Existing Widget

  1. WidgetList → WidgetGet → Read — locate and read the source
  2. Edit — precise search-and-replace modification
  3. WidgetCheck — verify via compile
Show full SKILL.md (198 more words)Show less

Recovering from WidgetCheck Compile Failures

When WidgetCheck returns compile errors:

  1. Read the error — focus on the TypeScript error line number and description
  2. Common errors and fixes:
    • Cannot find module 'xxx' → widget.tsx may only import react, react/jsx-runtime, @openloaf/widget-sdk; remove the forbidden import
    • Type 'xxx' is not assignable → check SDK type definitions and confirm props/state types match
    • JSX element type does not have any construct → check that the component export is correct (must be export default)
  3. Fix with Edit → run WidgetCheck again, repeat until compile passes

Widget Capability Boundaries

Good fits:

  • Data display (charts, stat cards, lists)
  • Simple interactions (buttons, toggles, input fields)
  • Scheduled polling of APIs for data (via functions.ts server-side functions)
  • Static or low-frequency content (weather, calendar, todo, clock, pomodoro)

Poor fits:

  • Complex multi-page flows (use a standalone page instead)
  • Heavy computation (server-side functions have a 10-second timeout)
  • Real-time WebSocket long connections (not supported by the sandbox)
  • Operations needing local filesystem access (isolated by the security sandbox)

Key Constraints

  • Widget code directory: ~/.openloaf/dynamic-widgets/<widget-id>/
  • widget.tsx may only import: react, react/jsx-runtime, @openloaf/widget-sdk
  • functions.ts executes on the Server side with a 10-second timeout
  • Sensitive information (API keys, etc.) is injected via .env under the widget directory — never hardcode

© OpenLoaf, AGPL-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

Just SKILL.md in apps/server/src/ai/builtin-skills/workbench-ops/en of OpenLoaf/OpenLoaf.

Open the folder on GitHubat commit f7eccf6

Compare with similar skills

Workbench Ops Skill 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.

Workbench Ops Skill compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Workbench Ops Skill this skillOpenLoaf/OpenLoaf107—~1.3kAutomated safety check: NotesAGPL-3.0
X Demand Radarkennyzir/7deer_skills3221 repos~3.6kAutomated safety check: PassMIT
Image Generatoraiskillstore/marketplace4301 repos~1.3kAutomated safety check: PassNone
I Have AdhdTanStack/ai3.2k5 repos~1.8kAutomated safety check: PassMIT
Attention Kindalexgreensh/attention-span1.3k—~2kAutomated safety check: PassAGPL-3.0
Remind Meshaheer-00/claude-adhd104—~1.1kAutomated safety check: PassNone

Similar skills

  • X Demand Radar

    kennyzir/7deer_skills

    AI 热点雷达 - 在新 AI 工具/关键词爆火前发现它们,抢注域名、建站套利. An agent skill from kennyzir/7deer_skills.

    322 GitHub starsUsed in 1 repo~3.6k tokens
    Productivity & AutomationAuto-check passed
  • Image Generator

    aiskillstore/marketplace

    Generate professional visuals using Gemini via browser automation with 6-gate quality control.

    430 GitHub starsUsed in 1 repo~1.3k tokens
    Productivity & AutomationAuto-check passed
  • I Have Adhd

    TanStack/ai

    A skill your agent uses when the user invokes /i-have-adhd, says they have ADHD, or asks for ADHD-friendly output.

    3.2k GitHub starsUsed in 5 repos~1.8k tokens
    Productivity & AutomationAuto-check passed
  • Attention Kind

    alexgreensh/attention-span

    Answer in the ADHD-friendly Attention-kind style for the rest of this chat.

    1.3k GitHub stars~2k tokensUpdated 1 mo ago
    Productivity & AutomationAuto-check passed
  • Remind Me

    shaheer-00/claude-adhd

    Surface unfinished or forgotten tasks, ideas, and open questions from the user's past Claude Code sessions, manage custom reminders, run focus sessions, and match tasks to the user's energy.

    104 GitHub stars~1.1k tokensUpdated 27 days ago
    Productivity & AutomationAuto-check passed
  • Daily Focus Board

    github/awesome-copilot

    Official

    Builds a warm, browser-based daily focus board the user updates by talking to their agent, with Eisenhower priorities, a brain-dump box and kind not-today carryover.

    40k GitHub stars~3k tokensUpdated today
    Productivity & AutomationAuto-check passed

More from OpenLoaf/OpenLoaf

All 34 skills in this repo
  • Agent Orchestration Skill

    OpenLoaf/OpenLoaf

    Triggers when the master Agent faces a multi-step complex task and is deciding whether / how to outsource sub-tasks to built-in subagents (browser / doc-editor / data-analyst / extractor /…

    107 GitHub stars~1.9k tokensUpdated 4 mo ago
    Auto-check passed
  • Browser Ops Skill

    OpenLoaf/OpenLoaf

    Triggered when the user asks for page-level interaction with a specific webpage: login, form filling, button clicks, pagination scraping, screenshots, downloading page images, handling CAPTCHAs or…

    107 GitHub stars~1.5k tokensUpdated 4 mo ago
    Auto-check passed
  • Canvas Ops Skill

    OpenLoaf/OpenLoaf

    Triggered when the user wants lifecycle management of OpenLoaf canvases / whiteboards: create, open, filter, duplicate, delete, rename, or change ownership.

    107 GitHub stars~1.4k tokensUpdated 4 mo ago
    Auto-check passed
  • Reads, edits, converts and reviews Word documents through three dedicated tools, covering tracked changes, comments, tables, images and format conversion.

    107 GitHub stars~1.9k tokensUpdated 4 mo ago
    Auto-check passed
  • Email Operations

    OpenLoaf/OpenLoaf

    Handles a real email account through query and mutate tools: check the inbox, read, search, reply, forward, compose and organize, with sending always confirmed first.

    107 GitHub stars~1.8k tokensUpdated 4 mo ago
    Auto-check passed
  • macOS Desktop Control

    OpenLoaf/OpenLoaf

    Guides an agent to operate native macOS apps by surveying an app first, acting through intents, menus or keystrokes, and verifying each step, in OpenLoaf Desktop only.

    107 GitHub stars~2.4k tokensUpdated 4 mo ago
    Auto-check passed

Questions about Workbench Ops Skill

What does Workbench Ops Skill do?

Triggered when the user wants to add, modify, view, or delete widgets (desktop components / mini apps / dashboard cards) on the OpenLoaf workbench / desktop. Workbench Ops Skill is an agent skill from OpenLoaf/OpenLoaf. Triggered when the user wants to add, modify, view, or delete widgets (desktop components / mini apps / dashboard cards) on the OpenLoaf workbench / desktop.

When should I use Workbench Ops Skill?

Workbench Ops Skill fits situations like: delete widgets (desktop components / mini apps / dashboard cards) on the OpenLoaf workbench / desktop; tasks that involve Image generation; tasks that involve Focus and ADHD support.

How do I install Workbench Ops Skill in Claude Code?

Run `npx skills add OpenLoaf/OpenLoaf --skill workbench-ops-skill -a claude-code`. Or copy the skill folder (apps/server/src/ai/builtin-skills/workbench-ops/en in OpenLoaf/OpenLoaf) into .claude/skills/workbench-ops-skill in your project. Claude Code loads it when a task matches its description.

How do I install Workbench Ops Skill in Codex?

Run `npx skills add OpenLoaf/OpenLoaf --skill workbench-ops-skill -a codex`. Or copy the skill folder (apps/server/src/ai/builtin-skills/workbench-ops/en in OpenLoaf/OpenLoaf) into .agents/skills/workbench-ops-skill in your project. Codex loads it when a task matches its description.

Can I use Workbench Ops Skill 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 OpenLoaf/OpenLoaf --skill workbench-ops-skill -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/workbench-ops-skill, .gemini/skills/workbench-ops-skill, .github/skills/workbench-ops-skill and .opencode/skills/workbench-ops-skill in your project.

What does Workbench Ops Skill need to run?

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

Does Workbench Ops Skill 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 Workbench Ops Skill safe to install?

Our automated static check of SKILL.md found notes only (mentions a .env file), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.

What licence does Workbench Ops Skill use?

Workbench Ops Skill is published under the AGPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Workbench Ops Skill use?

About 1.3k tokens (SKILL.md is roughly 5.1k 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 Workbench Ops Skill?

Skills that share tags, products or a category with Workbench Ops Skill: X Demand Radar (kennyzir/7deer_skills, 322 stars), Image Generator (aiskillstore/marketplace, 430 stars), I Have Adhd (TanStack/ai, 3.2k stars) and Attention Kind (alexgreensh/attention-span, 1.3k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Workbench Ops Skill?

OpenLoaf (a GitHub organization) maintains it in OpenLoaf/OpenLoaf, which has 107 GitHub stars. The repository holds 34 skills in this directory. The repository was last updated on May 14, 2026.

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