About bookmarker
bookmarker is a skill that helps agents select a relevant working directory from named bookmarks before continuing a task. It uses ordered matching and asks for a choice when candidates remain ambiguous.
Key features
- 01Checks whether the current directory fits
- 02Looks up named bookmarks
- 03Ranks fallback matches by relevance
- 04Inspects plausible candidates
- 05Continues work from the selected path
Use cases
- 01Choosing a project directory from a bookmark
- 02Resolving multiple possible repository locations
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ primeapple/ bookmarker --skill bookmarkerAfter installing, type/bookmarkerin Claude Code to confirm it loaded.
Details
From the project READMEBookmarker
Use this skill for a non-exact location only. First decide whether the current working directory already fits the user's request. Stay there when it does.
When another location is needed:
-
Set
LOCATIONto the user's named location. Runbm get LOCATION. -
Use the result when
bm get LOCATIONreturns exactly one path. -
Otherwise run
bm list --porcelain. Each record isbookmark<TAB>path; the separator is a literal tab. Parse bookmark and path as separate fields so paths containing spaces remain intact. -
Rank fallback matches in this order:
- exact bookmark name;
- exact path basename;
LOCATIONas a path component;- a contextually related bookmark name.
Prefer basename matches over path-component matches. For example,
fooselects/Users/toni/fooover/Users/toni/src/foo/design-system. For related names, use the task's meaning:backend-repois more relevant to backend work thanfrontend-for-backend. Do not choose by substring matching alone. -
If one path is clearly the best match, select it. If multiple paths remain plausible, inspect each for task relevance. Check its directory, repository status and remote when applicable, and read
README.mdorAGENTS.mdwhen present. Continue when one candidate is clearly relevant; otherwise show the candidates and ask the user to choose. -
If no match exists, tell the user what was tried and ask for a bookmark name or path. Do not search the entire drive.
-
Run every following operation from the selected path. Set tool
cwdwhen supported; otherwise usecd -- "$path" && .... -
Continue the user's task there. Do not merely report the path or ask the user to change directory.
Completion: the user's task runs from the selected relevant path. If selection remains unclear, stop after showing candidates and asking the user.