Agent skill
buku
Bookmark management CLI for searching, organizing, and syncing bookmarks with tagging, import/export, and browser integration. Use when helping end users manage bookmarks via CLI: (1) Adding and searching bookmarks, (2) Organizing with tags, (3) Importing from browsers or files, (4) Exporting and backing up, (5) Bulk operations and migrations.
Install this agent skill to your Project
npx add-skill https://github.com/vdesjardins/nix-config/tree/main/home/modules/modules/ai/skills/buku/skill
Metadata
Additional technical details for this skill
- audience
- end-users
- workflow
- bookmark-management
SKILL.md
Buku Bookmark Manager Skill
Buku is a powerful command-line bookmark manager that lets you search, organize, import, and export bookmarks with full-text search, tagging, and browser integration.
What You Can Do With Buku
- Search & Organize: Quick bookmark addition with full-text search and regex, flexible tag operators for organization
- Import & Export: Auto-import from Firefox, Chrome, Edge, Brave, Vivaldi, Chromium; export to HTML, XBEL, Markdown, Orgfile, RSS, or new database
- Bulk Operations: Update bookmarks, rename tags across collections, filter and manage entire bookmark sets
- Browser Integration & Backup: Launch bookmarks from CLI, automated database backups with versioning
When to Use This Skill
Load this skill when:
- User wants to add, search, or manage bookmarks from the command line
- User needs to organize bookmarks with tags
- User wants to import bookmarks from a web browser
- User needs to export bookmarks for backup or migration
- User encounters errors or needs database recovery assistance
- User is troubleshooting buku-related issues
Recovery & Safety
Buku is designed for safe bookmark management with built-in protections:
-
Database Locking: If you encounter "Database is locked" errors, close your browser and retry. See
references/troubleshooting.md#error-database-is-lockedfor detailed recovery steps. -
Import Safety: Duplicate detection prevents accidental overwrites on re-import. New bookmarks are always added safely. See
references/troubleshooting.md#error-bookmark-already-existsfor import strategies. -
Bulk Operations: Always backup before performing large tag updates or deletions. Use
scripts/backup-bookmarks.shfor automated backups. Seereferences/troubleshooting.md#prevention-tipsfor best practices.
Quick Start
-
Set your editor (for bookmark editing):
bashexport EDITOR=vim # or nano, gedit, macvim, etc. -
Create your first bookmark:
bashbuku -a https://example.com "Example Site" "useful" "reference" -
Search your bookmarks:
bashbuku -s example -
View all bookmarks:
bashbuku -p -
Troubleshoot if EDITOR won't open:
If running
buku -w BOOKMARK_IDfails with "EDITOR not set", quickly fix:bashexport EDITOR=vim # or nano, gedit, code --wait buku -w 1 # Now should open in editorFor detailed editor setup and other troubleshooting: See
references/troubleshooting.md
Automation & Non-Interactive Usage
When using buku in scripts, automation, or from AI agents, use the --nostdin
flag to prevent stdin-related warnings and ensure clean, non-interactive
execution.
When to Use --nostdin
- Scripts and automation: Shell scripts, cron jobs, CI/CD pipelines
- AI agents: When AI assistants run buku commands programmatically
- Batch operations: Processing multiple bookmarks without user interaction
- Piped commands: When chaining buku with other command-line tools
Common Commands with --nostdin
Add a bookmark:
buku --nostdin --add https://example.com --tag "dev,tools" --title "Example"
Update bookmark tags:
buku --nostdin --update 5 --tag ">>important"
Import bookmarks:
buku --nostdin --import bookmarks.html
Export bookmarks:
buku --nostdin --export backup.html --format html
Search and list:
buku --nostdin --sany python
buku --nostdin --print
Why --nostdin Matters
Without --nostdin, buku may display warnings like:
buku: waiting for input (unexpected? try --nostdin)
These warnings don't prevent operation but create noise in logs and output.
Using --nostdin ensures clean, predictable behavior in automated contexts.
For interactive usage (manual command-line work), omit --nostdin to allow
normal stdin behavior. See references/daily-workflows.md for more examples.
Documentation Guide
Choose the reference that matches your need:
Getting Started
references/getting-started.md - First time with buku? Start here for
installation verification, EDITOR setup, and your first bookmark.
Daily Workflows
references/daily-workflows.md - Common daily tasks: adding bookmarks,
searching, updating, deleting, opening in browser, copying URLs.
Organize with Tags
references/organize-bookmarks.md - Tagging strategies, tag operators,
tag search, renaming tags, and organization best practices.
Import & Export
references/migrate-bookmarks.md - Importing from browsers, manual imports,
exporting to different formats, backups, and merging bookmarks.
Troubleshooting
references/troubleshooting.md - Common errors, EDITOR issues, database
locking, and recovery strategies.
Production Scripts
Pre-built scripts for common workflows:
scripts/bulk-update-tags.sh- Update tags on multiple bookmarksscripts/backup-bookmarks.sh- Automated backups with multiple formatsscripts/browser-import-workflow.sh- Safe browser import with checks
Learn More
- Official Docs: https://buku.readthedocs.io/
- GitHub: https://github.com/jarun/buku
- Database Location:
~/.local/share/buku/bookmarks.dbor$XDG_DATA_HOME/buku/bookmarks.db
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
flux
FluxCD is the standard GitOps approach for Kubernetes - diagnose issues, manage resources, and optimize deployments using declarative configuration synced from Git
timewarrior-efficient-entry
Use when you need to quickly log work activities and maintain consistent tags without duplicates or gaps
conventional-commits
Format commit messages following Conventional Commits 1.0.0 specification. Ensures consistent, semantic commit messages that support automated changelog generation and semantic versioning. Includes jujutsu and git examples with jujutsu-first approach for best practices.
handoff
Compact the current conversation into a handoff document for another agent to pick up.
setup-pre-commit
Set up Husky pre-commit hooks with lint-staged (Prettier), type checking, and tests in the current repo. Use when user wants to add pre-commit hooks, set up Husky, configure lint-staged, or add commit-time formatting/typechecking/testing.
obsidian-vault
Search, create, and manage notes in the Obsidian vault with wikilinks and index notes. Use when user wants to find, create, or organize notes in Obsidian.
Didn't find tool you were looking for?