hackmd

TotalClaw 作者 totalclaw

使用 HackMD 文档。在 HackMD 上阅读、创建、更新或删除笔记时使用。支持更改跟踪以检测自上次检查以来的文档修改。支持个人和团队工作空间。

安装 / 下载方式

TotalClaw CLI推荐
totalclaw install totalclaw:totalclaw~nulltea-hackmd
cURL直接下载,无需登录
curl -fsSL https://skills.taituai.com/api/skills/totalclaw%3Atotalclaw~nulltea-hackmd/file -o nulltea-hackmd.md
## 概述(中文)

使用 HackMD 文档。在 HackMD 上阅读、创建、更新或删除笔记时使用。支持更改跟踪以检测自上次检查以来的文档修改。支持个人和团队工作空间。

## 原文

# HackMD Integration

## Requirements

```bash
npm install -g @hackmd/hackmd-cli
```

## Quick Reference

### Read Notes

```bash
# List all personal notes
hackmd-cli notes

# Get note metadata (includes lastChangedAt)
hackmd-cli notes --noteId=<id> --output json

# Get note content (markdown)
hackmd-cli export --noteId=<id>

# List teams
hackmd-cli teams

# List team notes
hackmd-cli team-notes --teamPath=<path>
```

### Write Notes

```bash
# Create note
hackmd-cli notes create --content='# Title'

# Create from file
cat file.md | hackmd-cli notes create

# Update note
hackmd-cli notes update --noteId=<id> --content='# Updated'

# Delete note
hackmd-cli notes delete --noteId=<id>
```

### Team Notes

```bash
hackmd-cli team-notes create --teamPath=<path> --content='# Team Note'
hackmd-cli team-notes update --teamPath=<path> --noteId=<id> --content='...'
hackmd-cli team-notes delete --teamPath=<path> --noteId=<id>
```

## Change Tracking

Use `hackmd-track.js` (in `scripts/`) to detect document changes efficiently.

### Track a Note

```bash
node scripts/hackmd-track.js add <noteId>
```

### Check for Changes

```bash
# Single note - outputs content only if changed
node scripts/hackmd-track.js changes <noteId>

# All tracked notes
node scripts/hackmd-track.js changes --all

# JSON output for parsing
node scripts/hackmd-track.js changes <noteId> --json
```

### Manage Tracking

```bash
node scripts/hackmd-track.js list              # Show tracked notes
node scripts/hackmd-track.js remove <noteId>   # Stop tracking
node scripts/hackmd-track.js reset <noteId>    # Reset (next check shows as changed)
```

### How It Works

1. `hackmd-track.js add` stores note's `lastChangedAt` timestamp
2. `hackmd-track.js changes` compares current `lastChangedAt` with stored value
3. If changed: outputs content and updates stored timestamp
4. If unchanged: outputs nothing (use `--verbose` for status)

State stored in `./.hackmd/tracked-notes.json` (current working directory)

## Note Metadata Fields

When using `--output json`, notes include:

| Field            | Description                              |
| ---------------- | ---------------------------------------- |
| `lastChangedAt`  | Unix timestamp of last modification      |
| `lastChangeUser` | `{name, userPath, photo}` of last editor |
| `titleUpdatedAt` | When title changed                       |
| `tagsUpdatedAt`  | When tags changed                        |

## Rate Limits

- 100 calls per 5 minutes
- 2000 calls/month (10k on Prime plan)