granola-cli 0.1.0 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +63 -7
- package/dist/main.js +584 -269
- package/dist/main.js.map +1 -1
- package/package.json +10 -2
package/README.md
CHANGED
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
# Granola CLI
|
|
2
2
|
|
|
3
|
+
[](https://www.npmjs.com/package/granola-cli)
|
|
4
|
+
[](https://www.npmjs.com/package/granola-cli)
|
|
5
|
+
[](https://github.com/magarcia/granola-cli/blob/main/LICENSE)
|
|
6
|
+
[](https://github.com/magarcia/granola-cli/actions/workflows/ci.yml)
|
|
7
|
+
|
|
3
8
|
> [!IMPORTANT]
|
|
4
9
|
> **Disclaimer**: This is an **unofficial, open-source community project** and is **not affiliated with, endorsed by, or connected to Granola Labs, Inc.** (the company behind [Granola.ai](https://www.granola.ai/)). Granola is a registered trademark of Granola Labs, Inc. This CLI is an independent tool that uses the publicly available Granola API to provide command-line access to your own meeting data.
|
|
5
10
|
|
|
@@ -119,11 +124,23 @@ granola meeting list [options]
|
|
|
119
124
|
|--------|-------------|
|
|
120
125
|
| `-l, --limit <n>` | Number of meetings to show (default: 20) |
|
|
121
126
|
| `-w, --workspace <id>` | Filter by workspace ID |
|
|
122
|
-
| `-f, --folder <id>` | Filter by folder ID
|
|
127
|
+
| `-f, --folder <id>` | Filter by folder ID |
|
|
128
|
+
| `-s, --search <query>` | Search in meeting titles (case-insensitive) |
|
|
129
|
+
| `-a, --attendee <name>` | Filter by attendee name or email (partial match) |
|
|
130
|
+
| `-d, --date <date>` | Filter meetings on a specific date |
|
|
131
|
+
| `--since <date>` | Filter meetings from date (inclusive) |
|
|
132
|
+
| `--until <date>` | Filter meetings up to date (inclusive) |
|
|
123
133
|
|
|
124
|
-
**
|
|
134
|
+
**Date formats supported:**
|
|
135
|
+
- Keywords: `today`, `yesterday`, `tomorrow`
|
|
136
|
+
- Relative: `3 days ago`, `2 weeks ago`, `last week`, `last month`
|
|
137
|
+
- ISO: `2024-12-20`, `2024/12/20`
|
|
138
|
+
- Simple: `Dec 20`, `Dec 20 2024`, `20 Dec`
|
|
139
|
+
|
|
140
|
+
**Examples:**
|
|
125
141
|
|
|
126
142
|
```bash
|
|
143
|
+
# Basic listing
|
|
127
144
|
$ granola meeting list --limit 5
|
|
128
145
|
|
|
129
146
|
Showing 5 meetings
|
|
@@ -132,6 +149,24 @@ ID TITLE DATE
|
|
|
132
149
|
a1b2c3d4 Q4 Planning Session Dec 18, 2025
|
|
133
150
|
e5f6g7h8 1:1 with Sarah Dec 18, 2025
|
|
134
151
|
i9j0k1l2 Sprint Retrospective Dec 17, 2025
|
|
152
|
+
|
|
153
|
+
# Search by title
|
|
154
|
+
$ granola meeting list --search "planning"
|
|
155
|
+
|
|
156
|
+
# Filter by attendee
|
|
157
|
+
$ granola meeting list --attendee john
|
|
158
|
+
|
|
159
|
+
# Filter by date
|
|
160
|
+
$ granola meeting list --date today
|
|
161
|
+
$ granola meeting list --date yesterday
|
|
162
|
+
$ granola meeting list --date "Dec 20"
|
|
163
|
+
|
|
164
|
+
# Filter by date range
|
|
165
|
+
$ granola meeting list --since "last week"
|
|
166
|
+
$ granola meeting list --since 2024-12-01 --until 2024-12-15
|
|
167
|
+
|
|
168
|
+
# Combine filters
|
|
169
|
+
$ granola meeting list --search standup --attendee john --since yesterday
|
|
135
170
|
```
|
|
136
171
|
|
|
137
172
|
#### View meeting details
|
|
@@ -583,7 +618,6 @@ DEBUG=granola:cli:* granola meetings
|
|
|
583
618
|
| ------------------- | ---------------------------- |
|
|
584
619
|
| `granola:cli` | CLI entry point, startup |
|
|
585
620
|
| `granola:cli:alias` | Alias expansion |
|
|
586
|
-
| `granola:cli:subcommand` | External subcommand discovery |
|
|
587
621
|
| `granola:service:*` | All service layer operations |
|
|
588
622
|
| `granola:lib:*` | All library utilities |
|
|
589
623
|
| `granola:cmd:*` | All command handlers |
|
|
@@ -603,7 +637,19 @@ DEBUG=granola:cli:* granola meetings
|
|
|
603
637
|
|
|
604
638
|
```bash
|
|
605
639
|
# See today's meetings
|
|
606
|
-
granola meeting list --
|
|
640
|
+
granola meeting list --date today
|
|
641
|
+
|
|
642
|
+
# See yesterday's meetings
|
|
643
|
+
granola meeting list --date yesterday
|
|
644
|
+
|
|
645
|
+
# Find meetings from last week
|
|
646
|
+
granola meeting list --since "last week"
|
|
647
|
+
|
|
648
|
+
# Find all standups
|
|
649
|
+
granola meeting list --search standup
|
|
650
|
+
|
|
651
|
+
# Find meetings with a specific person
|
|
652
|
+
granola meeting list --attendee "sarah"
|
|
607
653
|
|
|
608
654
|
# Review AI-enhanced summary from a meeting
|
|
609
655
|
granola meeting enhanced a1b2c3d4
|
|
@@ -639,8 +685,16 @@ for id in $(granola meeting list --workspace abc12345 --output json | jq -r '.[]
|
|
|
639
685
|
granola meeting export "$id" > "meetings/${id}.json"
|
|
640
686
|
done
|
|
641
687
|
|
|
642
|
-
#
|
|
643
|
-
granola meeting list --output json | jq '.[]
|
|
688
|
+
# Export all meetings from last month
|
|
689
|
+
for id in $(granola meeting list --since "last month" --output json | jq -r '.[].id'); do
|
|
690
|
+
granola meeting export "$id" > "meetings/${id}.json"
|
|
691
|
+
done
|
|
692
|
+
|
|
693
|
+
# Find meetings with title search (built-in)
|
|
694
|
+
granola meeting list --search "planning"
|
|
695
|
+
|
|
696
|
+
# Find meetings with a specific attendee
|
|
697
|
+
granola meeting list --attendee "john.smith@example.com" --output json
|
|
644
698
|
```
|
|
645
699
|
|
|
646
700
|
### Integration with Other Tools
|
|
@@ -687,7 +741,7 @@ npm install
|
|
|
687
741
|
|
|
688
742
|
### Testing
|
|
689
743
|
|
|
690
|
-
The project uses [Vitest](https://vitest.dev/) for testing with
|
|
744
|
+
The project uses [Vitest](https://vitest.dev/) for testing with high code coverage (95%+ threshold).
|
|
691
745
|
|
|
692
746
|
```bash
|
|
693
747
|
# Run tests
|
|
@@ -720,7 +774,9 @@ granola-cli/
|
|
|
720
774
|
│ ├── api.ts # Granola API client
|
|
721
775
|
│ ├── auth.ts # Credential management
|
|
722
776
|
│ ├── config.ts # Configuration management
|
|
777
|
+
│ ├── date-parser.ts # Natural date parsing
|
|
723
778
|
│ ├── debug.ts # Debug logging utilities
|
|
779
|
+
│ ├── filters.ts # Meeting filter utilities
|
|
724
780
|
│ ├── http.ts # HTTP client with retry
|
|
725
781
|
│ ├── output.ts # Table formatting
|
|
726
782
|
│ ├── pager.ts # Pager integration
|