@terminal49/bridge-cli 0.1.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 +15 -0
- package/SKILL.md +150 -0
- package/package.json +13 -0
package/README.md
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# @terminal49/bridge-cli
|
|
2
|
+
|
|
3
|
+
Private npm package containing the Bridge CLI meeting search skill for LLMs.
|
|
4
|
+
|
|
5
|
+
## Contents
|
|
6
|
+
|
|
7
|
+
- `SKILL.md` — instructions for using the Bridge CLI to search Fathom meetings.
|
|
8
|
+
|
|
9
|
+
## Install
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
npm install @terminal49/bridge-cli
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
Then open `node_modules/@terminal49/bridge-cli/SKILL.md`.
|
package/SKILL.md
ADDED
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: bridge-meeting-search
|
|
3
|
+
description: Search Terminal49 Fathom meeting transcripts, retrieve meeting details, and browse meeting history using the Bridge CLI. Use when the user asks about meetings, calls, transcripts, what was discussed, action items, customer conversations, or anything related to Terminal49's Fathom video call data. Also use when the user asks to find what a person said, look up a meeting, search call notes, or get meeting summaries.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Bridge Meeting Search
|
|
7
|
+
|
|
8
|
+
Search and retrieve meeting data from Terminal49's Fathom.video ingestion platform via the Bridge CLI.
|
|
9
|
+
|
|
10
|
+
## Prerequisites
|
|
11
|
+
|
|
12
|
+
The CLI requires authentication. If commands fail with "Not logged in", run:
|
|
13
|
+
|
|
14
|
+
```bash
|
|
15
|
+
npm run cli:t49bridge -- login
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
Verify with:
|
|
19
|
+
|
|
20
|
+
```bash
|
|
21
|
+
npm run cli:t49bridge -- whoami
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
## Repo Setup
|
|
25
|
+
|
|
26
|
+
Clone the Bridge repo and install dependencies:
|
|
27
|
+
|
|
28
|
+
```bash
|
|
29
|
+
git clone https://github.com/Terminal49/bridge.git
|
|
30
|
+
cd bridge
|
|
31
|
+
npm install
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
## Commands
|
|
35
|
+
|
|
36
|
+
Run commands from the cloned repo directory.
|
|
37
|
+
|
|
38
|
+
### Search Transcripts
|
|
39
|
+
|
|
40
|
+
Three search modes — use `query` (hybrid) by default:
|
|
41
|
+
|
|
42
|
+
```bash
|
|
43
|
+
# Hybrid search (recommended) — combines keyword + semantic
|
|
44
|
+
npm run cli:t49bridge -- query "<natural language question>" --limit 10
|
|
45
|
+
|
|
46
|
+
# Keyword search (BM25) — best for exact terms, names, product names
|
|
47
|
+
npm run cli:t49bridge -- search "<keywords>" --limit 10
|
|
48
|
+
|
|
49
|
+
# Semantic search — best for conceptual/meaning-based queries
|
|
50
|
+
npm run cli:t49bridge -- vsearch "<description of what you're looking for>" --limit 10
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
#### Search filters (work with all three modes)
|
|
54
|
+
|
|
55
|
+
```bash
|
|
56
|
+
--company <name> # Filter by company
|
|
57
|
+
--speaker <name> # Filter by speaker
|
|
58
|
+
--from <YYYY-MM-DD> # Start date
|
|
59
|
+
--to <YYYY-MM-DD> # End date
|
|
60
|
+
--team <name> # Filter by team
|
|
61
|
+
--meeting-id <id> # Filter to one meeting
|
|
62
|
+
--meeting-day <date> # Filter to exact date
|
|
63
|
+
--crm <record> # Filter by CRM record
|
|
64
|
+
--recent-days <n> # Boost results from last N days
|
|
65
|
+
--recency-weight <n> # Recency weight (default: 0.25)
|
|
66
|
+
--limit <n> # Number of results (default: varies)
|
|
67
|
+
--full-text # Show full chunk text instead of snippet
|
|
68
|
+
--format <human|llm|json># Output format (use llm for structured NDJSON)
|
|
69
|
+
--include-url # Include share URL in output
|
|
70
|
+
--json # Machine-readable JSON output
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
### Get Meeting Details
|
|
74
|
+
|
|
75
|
+
```bash
|
|
76
|
+
# Summary and metadata
|
|
77
|
+
npm run cli:t49bridge -- get <meetingId>
|
|
78
|
+
|
|
79
|
+
# Just the summary
|
|
80
|
+
npm run cli:t49bridge -- get <meetingId> --summary
|
|
81
|
+
|
|
82
|
+
# Full transcript
|
|
83
|
+
npm run cli:t49bridge -- get <meetingId> --transcript
|
|
84
|
+
|
|
85
|
+
# Timestamped segments
|
|
86
|
+
npm run cli:t49bridge -- get <meetingId> --segments
|
|
87
|
+
|
|
88
|
+
# JSON output
|
|
89
|
+
npm run cli:t49bridge -- get <meetingId> --json
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
### List Meetings
|
|
93
|
+
|
|
94
|
+
```bash
|
|
95
|
+
# Recent meetings
|
|
96
|
+
npm run cli:t49bridge -- list --limit 20
|
|
97
|
+
|
|
98
|
+
# Filter by date, company, host, type
|
|
99
|
+
npm run cli:t49bridge -- list --from 2026-01-01 --to 2026-01-31 --company "Maersk"
|
|
100
|
+
npm run cli:t49bridge -- list --host "akshay" --external --limit 50
|
|
101
|
+
npm run cli:t49bridge -- list --attendee "john@example.com"
|
|
102
|
+
|
|
103
|
+
# JSON output
|
|
104
|
+
npm run cli:t49bridge -- list --json --limit 100
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
## Workflow
|
|
108
|
+
|
|
109
|
+
Follow this sequence to answer questions about meetings:
|
|
110
|
+
|
|
111
|
+
1. **Search** — Start with `query` using the question as-is:
|
|
112
|
+
```bash
|
|
113
|
+
npm run cli:t49bridge -- query "what pricing concerns did Maersk raise" --limit 10
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
2. **Get details** — Fetch full context for relevant meetings:
|
|
117
|
+
```bash
|
|
118
|
+
npm run cli:t49bridge -- get <meetingId> --summary
|
|
119
|
+
npm run cli:t49bridge -- get <meetingId> --transcript
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
3. **Narrow** — Add filters if too many results:
|
|
123
|
+
```bash
|
|
124
|
+
npm run cli:t49bridge -- query "pricing" --company "Maersk" --from 2026-01-01 --full-text
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
4. **Browse** — Use `list` to see what meetings happened in a period:
|
|
128
|
+
```bash
|
|
129
|
+
npm run cli:t49bridge -- list --from 2026-01-27 --to 2026-02-02 --external
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
## Output Format
|
|
133
|
+
|
|
134
|
+
Search results return a mix of summary hits and transcript chunks:
|
|
135
|
+
- Meeting title and meeting ID (use ID with `get`)
|
|
136
|
+
- Summary hits labeled `[summary]` and show a summary/snippet
|
|
137
|
+
- Chunk hits show speaker and timestamp range
|
|
138
|
+
- Sources, rank, and raw score are shown by default
|
|
139
|
+
- Timestamps are printed separately from URLs
|
|
140
|
+
- Share URLs only appear with `--include-url`
|
|
141
|
+
|
|
142
|
+
Use `--format llm` for NDJSON optimized for LLM ingestion (one JSON per result).
|
|
143
|
+
|
|
144
|
+
## Tips
|
|
145
|
+
|
|
146
|
+
- Always use `--` after `cli:t49bridge` to pass flags correctly to the CLI
|
|
147
|
+
- Use `--format llm` when you need structured LLM output
|
|
148
|
+
- Use `--full-text` when snippets aren't enough context
|
|
149
|
+
- Start with `query` (hybrid); fall back to `search` for exact names or `vsearch` for conceptual queries
|
|
150
|
+
- Meeting IDs from search results can be passed directly to `get`
|
package/package.json
ADDED