Skip to main content

bbum

Reference for using bbum (Babashka Universal Module Manager) to manage babashka task libraries. Use when installing, removing, updating, or inspecting bbum tasks, or managing bbum sources.

ソース情報

リポジトリ
hugoduncan/bbum
ソースの最終更新活動
2026年4月14日 17:51
検出された SKILL.md の言語
英語
スター
7
フォーク
1

インストール方法

デフォルトでは、最初にソースを確認する Prompt が選択されています。直接コマンドに切り替えるか、ローカルコピーをダウンロードすることもできます。

ソースファイルを確認

インストールを決める前に、SKILL.md と SkillsMP に表示されている付属ファイルをお読みください。

SKILL.md を表示中

SKILL.md
ソースの指示 · 読み取り専用プレビュー
name
bbum
description
Reference for using bbum (Babashka Universal Module Manager) to manage babashka task libraries. Use when installing, removing, updating, or inspecting bbum tasks, or managing bbum sources.
lambda
λtasks. bbum → {source add remove status update} | task-libs
# bbum — Babashka Universal Module Manager Installs babashka tasks from versioned task libraries into a project's `bb.edn`. ## Key Concepts | Term | Meaning | |------|---------| | **source** | Named pointer to a task library (git repo or local path) | | **task** | A named babashka task provided by a library | | **explicit** | Task directly requested by the user | | **implicit** | Task auto-installed as a dependency | | **coord** | Address of a source: `key=value` pairs | | **lock** | Resolved SHA snapshot recorded at install time | **Config files:** - `~/.bbum.edn` — global sources - `.bbum.edn` — project manifest (installed tasks + project sources) - `bb.edn` — babashka tasks (bbum splices tasks in here) - `bbum.edn` — library manifest (lives in a task library repo) --- ## Commands ### Source Management ```bash # Register a source (project-scoped) bbum source add <name> git/url=<url> branch=<branch> bbum source add <name> git/url=<url> sha=<sha> bbum source add <name> git/url=<url> tag=<tag> bbum source add <name> local/path=<path> # Register globally (available in all projects) bbum source add --global <name> git/url=<url> branch=<branch> # Remove a source bbum source remove <name> bbum source remove --global <name> # List all effective sources (global + project) bbum source list ``` > Cannot remove a project source while tasks are installed from it — remove those tasks first. --- ### Browse a Source ```bash bbum list <source> ``` Prints all available tasks and their docs from the library. --- ### Install Tasks ```bash bbum add <source> <task> [<task> ...] # Install under a different name (avoids bb.edn conflicts) bbum add <source> <task> --as <name> ``` - Checks for task-name conflicts in `bb.edn` before writing anything. - On conflict: remove the existing task first, or use `--as <name>`. - Implicit deps are installed automatically. - Files land in `.bbum/lib/`, path added to `bb.edn` classpath. --- ### Remove Tasks ```bash bbum remove <task> # Also remove implicit deps that become orphaned bbum remove --with-deps <task> ``` - Only explicit tasks can be directly removed. - Without `--with-deps`, warns if orphaned implicits would remain. --- ### Status ```bash bbum status ``` Shows each installed task, its source, locked SHA, current SHA, and status: | Status | Meaning | |--------|---------| | `ok` | Locked SHA matches current source HEAD | | `outdated` | Source has moved ahead of locked SHA | | `pinned` | Source is a fixed SHA — never floats | | `local` | Source is a local path | | `unknown` | Source no longer registered | Exits non-zero if any task is `outdated`. --- ### Update Tasks ```bash # Update all installed tasks bbum update # Update a single task bbum update <task> ``` Re-fetches from source, overwrites files in `.bbum/lib/`, updates lock in `.bbum.edn`. Pinned (`git/sha`) sources are never updated. --- ## Common Workflows **Add a new task library and install a task:** ```bash bbum source add mylib git/url=https://github.com/org/bb-tasks branch=main bbum list mylib bbum add mylib some-task ``` **Install a task under an alternative name:** ```bash bbum add mylib lint --as check ``` **Pin a source to a specific SHA:** ```bash bbum source add mylib git/url=https://github.com/org/bb-tasks sha=abc1234 ``` **Check for outdated tasks and update:** ```bash bbum status # exits 1 if outdated bbum update ``` **Remove a task and its orphaned deps:** ```bash bbum remove --with-deps some-task ```
GitHubで見る