hugoduncan/bbum/bbum-task-lib
- community
Checking that the SKILL.md file is still in the repository.
Reference for constructing bbum-compatible task libraries. Use when creating, extending, or structuring a library of babashka tasks installable via bbum.
Install
npx vskill@latest install hugoduncan/bbum/bbum-task-libSKILL.md
bbum Task Library Construction
A bbum task library is a repo (or local path) containing a bbum.edn manifest and Clojure source files that implement each task.
Repository Layout
Files under src/ are installed into .bbum/lib/ with the src/ prefix stripped. Use a namespaced path to avoid collisions across libraries.
bbum.edn Manifest
Field reference
| Field | Required | Notes | |
|---|---|---|---|
:lib | yes | Identifies the library in the project manifest | |
:tasks | yes | Map of task keyword → task entry | |
:doc (outer) | yes | Shown by bbum list <source> | |
:files | yes | Paths relative to repo root; all copied on install | |
:depends | no | Keywords of other tasks in this library; installed implicitly | |
:task | yes | Spliced verbatim into bb.edn under the task key | |
:task :doc | recommended | Shown by bb help <task> | |
:task :requires | yes | Babashka :requires vector for the task namespace | |
:task :task | yes | Expression evaluated when the task runs |
Task Implementation
Each task is a Clojure namespace with a run entry point:
- Use
*command-line-args*for CLI argument parsing. - Call
(System/exit 1)on failure. - Keep each task in its own namespace/file.
Dependencies Between Tasks
If task :b requires task :a to also be installed:
bbum add <source> b will install both :b (explicit) and :a (implicit). bbum remove b will warn about the orphaned implicit :a; use --with-deps to remove both.
Multiple Files Per Task
List every file the task needs:
Shared files across tasks are deduplicated at install time but are tracked per task in the manifest.
Minimal Example
Checklist
- [ ]
bbum.ednat repo root with:liband:tasks - [ ] Every file in
:filesexists at the listed path - [ ] Each task namespace has a
(defn run [] ...) - [ ]
:task :requiresmatches the namespace in the source file - [ ]
:docpresent at both the task level and inside:task - [ ] Namespace paths are collision-safe (use org/lib prefix)
Security
- Security scanPassed, 90 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/bbum-task-lib/SKILL.md
Popularity
- 7-day trend score
- 0
Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/hugoduncan/bbum/bbum-task-lib)