slack-term 1.7.0 → 1.13.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 CHANGED
@@ -9,6 +9,7 @@ byte-for-byte by [`tests/parity.sh`](tests/parity.sh).
9
9
 
10
10
  - **News** — Activity feed showing recent mentions (`to:me`), grouped by day with human-readable timestamps
11
11
  - **Messages** — Browse recent messages across joined channels
12
+ - **Tail** — Stream new messages from a channel in real time (like `tail -f`)
12
13
  - **Search** — Full-text search across the workspace
13
14
  - **Send** — Send messages to channels or DMs with a confirm-hash safety gate (prevents accidental sends)
14
15
  - **Dump** — Bulk-export channel history as markdown
@@ -27,10 +28,12 @@ byte-for-byte by [`tests/parity.sh`](tests/parity.sh).
27
28
  One package, no native binaries, any platform with Node 18+.
28
29
 
29
30
  ```sh
30
- npm install -g @snomiao/slack
31
- # or: bun add -g @snomiao/slack | pnpm add -g @snomiao/slack
31
+ npm install -g slack-term
32
+ # or: bun add -g slack-term | pnpm add -g slack-term
32
33
  ```
33
34
 
35
+ > **Note:** Previously published as `@snomiao/slack` (now deprecated).
36
+
34
37
  ### Rust (cargo)
35
38
 
36
39
  ```sh
@@ -60,8 +63,30 @@ slack send "#general" "Hello team" --confirm=<hash>
60
63
 
61
64
  # Bulk export channel history
62
65
  slack dump --days 7 --filter eng
66
+
67
+ # Stream new messages in real time (Ctrl-C to stop)
68
+ slack tail "#general"
69
+ slack tail "#general" --since=10m # backfill last 10 minutes first
70
+ slack tail "#general" --thread=<ts> # follow a single thread
71
+ slack tail "#general" --me # only messages that mention you
63
72
  ```
64
73
 
74
+ ### tail — real-time message stream
75
+
76
+ `slack tail` polls a channel every 3 seconds (configurable via `--interval`) and
77
+ prints new messages as they arrive, in the same `[ts] @handle: text` format as
78
+ the `read` command.
79
+
80
+ ```sh
81
+ slack tail "#symval" # follow new messages from now
82
+ slack tail "#symval" --since=30m # backfill 30 minutes, then stream
83
+ slack tail "#symval" --thread=1700000000.000100 # one thread only
84
+ slack tail "#symval" --me # only messages mentioning you
85
+ ```
86
+
87
+ **Note:** Cross-channel mention streaming (`--me` without a target) is not yet
88
+ supported — a target channel is required.
89
+
65
90
  ## Configuration
66
91
 
67
92
  Requires a Slack user token (`xoxp-...`) with the following scopes:
@@ -111,6 +136,16 @@ bun run test:parity
111
136
  - [chrono](https://crates.io/crates/chrono) — date/time formatting
112
137
  - [ring](https://crates.io/crates/ring) — SHA-256 for confirm hashes
113
138
 
139
+ ## Release notes
140
+
141
+ ### v0.x — 2026-05-15: `slack tail`
142
+
143
+ New `tail` subcommand streams channel messages in real time using poll-based
144
+ delivery (3-second interval). Supports `--since=<duration>` for backfill,
145
+ `--thread=<ts>` to follow a single thread, and `--me` to filter for messages
146
+ that mention you. Uses `conversations.history?oldest=<ts>` as a cursor so
147
+ already-seen messages are never re-printed, even across reconnects.
148
+
114
149
  ## Related / prior art
115
150
 
116
151
  - [`slkcli`](https://www.npmjs.com/package/slkcli) by