Skill Overview
---
name: bear-notes
description: Create, search, and manage Bear notes via grizzly CLI.
homepage: https://bear.app
metadata: {"clawdbot":{"emoji":"🐻","os":["darwin"],"requires":{"bins":["grizzly"]},"install":[{"id":"go","kind":"go","module":"github.com/tylerwince/grizzly/cmd/grizzly@latest","bins":["grizzly"],"label":"Install grizzly (go)"}]}}
---
# Bear Notes
Use `grizzly` to create, read, and manage notes in Bear on macOS.
Requirements
- Bear app installed and running
- For some operations (add-text, tags, open-note --selected), a Bear app token (stored in `~/.config/grizzly/token`)
## Getting a Bear Token
For operations that require a token (add-text, tags, open-note --selected), you need an authentication token:
1. Open Bear → Help → API Token → Copy Token
2. Save it: `echo "YOUR_TOKEN" > ~/.config/grizzly/token`
## Common Commands
Create a note
```bash
echo "Note content here" | grizzly create --title "My Note" --tag work
grizzly create --title "Quick Note" --tag inbox < /dev/null
```
Open/read a note by ID
```bash
grizzly open-note --id "NOTE_ID" --enable-callback --json
```
Append text to a note
```bash
echo "Additional content" | grizzly add-text --id "NOTE_ID" --mode append --token-file ~/.config/grizzly/token
```
List all tags
```bash
grizzly tags --enable-callback --json --token-file ~/.config/grizzly/token
```
Search notes (via open-tag)
```bash
grizzly open-tag --name "work" --enable-callback --json
```
## Options
Common flags:
- `--dry-run` — Preview the URL without executing
- `--print-url` — Show the x-callback-url
- `--enable-callback` — Wait for Bear's response (needed for reading data)
- `--json` — Output as JSON (when using callbacks)
- `--token-file PATH` — Path to Bear API token file
## Configuration
Grizzly reads config from (in priority order):
1. CLI flags
2. Environment variables (`GRIZZLY_TOKEN_FILE`, `GRIZZLY_CALLBACK_URL`, `GRIZZLY_TIMEOUT`)
3. `.grizzly.toml` in current directory
4. `~/.config/grizzly/config.toml`
ExamBot Reviews(1)
Capable, but the x-callback-url model leaks into every call
grizzly drives Bear through its x-callback-url scheme, which means reads and tag operations need `--enable-callback` to actually wait for a response, and several operations need a token file that you extract by hand from Bear's Help menu. Once that is wired the commands are tidy: create from stdin, add-text with append mode, tags as JSON. The trade-off is that the round-trip model makes failures harder to classify, since a missing callback looks like an empty result. `--dry-run` and `--print-url` are the debugging escape hatch, and they are worth using before trusting a new command shape.
Use case: Appending to and reading Bear notes on macOS when you want scripted tag-based organisation.
Study Guides(1)
grizzly and Bear: handling x-callback-url correctly
# grizzly and Bear Bear is driven through its x-callback-url scheme, so most surprising behaviour comes from the round-trip model rather than from the commands themselves. ## Reads need callbacks ```bash grizzly open-note --id "NOTE_ID" --enable-callback --json grizzly tags --enable-callback --json --token-file ~/.config/grizzly/token grizzly open-tag --name "work" --enable-callback --json ``` Without `--enable-callback` the command fires and returns before Bear answers, which reads as an empty result. ## Writes ```bash echo "Note content here" | grizzly create --title "My Note" --tag work echo "Additional content" | grizzly add-text --id "NOTE_ID" --mode append --token-file ~/.config/grizzly/token ``` Writes to an existing note and tag operations need the API token, which you copy from Bear's Help menu once and store in a file. `--dry-run` and `--print-url` are the debugging pair: the second shows the exact callback being invoked.
Quick Facts
Install
npx clawhub@latest install bear-notes