---
name: getnote-tag
version: 0.3.0
description: Manage note tags in Get笔记 via the getnote CLI
---

# getnote-tag Skill

Add, list, and remove tags on notes.

## Prerequisites

- `getnote` CLI installed and authenticated (`getnote auth status` should show "Authenticated")

## Commands

### List tags on a note

```
getnote tag list <note_id>
```

Returns all tags with their IDs and types.

Tag types:
- `ai` — auto-generated by AI
- `manual` — added by the user
- `system` — system tag (**cannot be deleted**)

```bash
getnote tag list 1896830231705320746
getnote tag list 1896830231705320746 -o json
```

---

### Add a tag

```
getnote tag add <note_id> <tag>
```

```bash
getnote tag add 1896830231705320746 工作
```

---

### Remove a tag

```
getnote tag remove <note_id> <tag_id>
```

> ⚠️ Requires **tag ID** (integer from `tag list`), not tag name.
> ⚠️ `system` type tags cannot be removed.

```bash
# Step 1: get tag IDs
getnote tag list 1896830231705320746 -o json

# Step 2: remove by tag ID
getnote tag remove 1896830231705320746 123
```

---

## Agent Usage Notes

- `tag list -o json` returns `{"note_id":"...","tags":[{"id":"...","name":"...","type":"..."}]}` (flat, no `success` wrapper).
- `tag remove` takes a **numeric tag ID**, not a name — always call `tag list` first.
- To replace all tags at once, use `getnote note update --tag "tag1,tag2"` instead.
- Exit code `0` = success; non-zero = error. Error details go to stderr.
