@circlesac/holla 26.2.21 → 26.2.23
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/package.json +5 -2
- package/skills/slack/SKILL.md +37 -0
package/package.json
CHANGED
|
@@ -5,11 +5,14 @@
|
|
|
5
5
|
"dependencies": {
|
|
6
6
|
"@circlesac/mack": "^26.2.4",
|
|
7
7
|
"@slack/web-api": "^7.13.0",
|
|
8
|
-
"citty": "^0.2.0"
|
|
8
|
+
"citty": "^0.2.0",
|
|
9
|
+
"turndown": "^7.2.2",
|
|
10
|
+
"turndown-plugin-gfm": "^1.0.2"
|
|
9
11
|
},
|
|
10
12
|
"description": "CLI tool that acts as you on messaging platforms",
|
|
11
13
|
"devDependencies": {
|
|
12
14
|
"@types/bun": "latest",
|
|
15
|
+
"@types/turndown": "^5.0.6",
|
|
13
16
|
"@vitest/coverage-v8": "^4.0.18",
|
|
14
17
|
"vitest": "^4.0.18"
|
|
15
18
|
},
|
|
@@ -39,5 +42,5 @@
|
|
|
39
42
|
"test": "vitest run"
|
|
40
43
|
},
|
|
41
44
|
"type": "module",
|
|
42
|
-
"version": "26.2.
|
|
45
|
+
"version": "26.2.23"
|
|
43
46
|
}
|
package/skills/slack/SKILL.md
CHANGED
|
@@ -36,6 +36,39 @@ holla slack chat delete --channel "#general" --ts 1234567890.123456 -w <ws>
|
|
|
36
36
|
|
|
37
37
|
`--text` accepts standard markdown (converted to Slack blocks automatically). Use `--json` to get `{ ts, channel, text }` back after sending.
|
|
38
38
|
|
|
39
|
+
## Mentioning users
|
|
40
|
+
|
|
41
|
+
Slack requires `<@USER_ID>` format for mentions — plain names like `@john` won't notify anyone.
|
|
42
|
+
|
|
43
|
+
### Workflow
|
|
44
|
+
|
|
45
|
+
1. Look up channel members to find the user ID:
|
|
46
|
+
```bash
|
|
47
|
+
holla slack channels members --channel "#general" -w <ws> --json
|
|
48
|
+
```
|
|
49
|
+
2. Find the target by display name or real name and get their user ID (e.g. `U01234567`)
|
|
50
|
+
3. If uncertain about the match, confirm with the user before proceeding
|
|
51
|
+
4. If the target is not a channel member, invite them first:
|
|
52
|
+
```bash
|
|
53
|
+
holla slack channels invite --channel "#general" --user @username -w <ws>
|
|
54
|
+
```
|
|
55
|
+
5. Use `<@USER_ID>` in the message text:
|
|
56
|
+
```bash
|
|
57
|
+
holla slack chat send --channel "#general" --text "Hey <@U01234567>, take a look" -w <ws>
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
### `--user` argument rules
|
|
61
|
+
|
|
62
|
+
The `--user` flag uses `@` prefix to trigger name lookup. Without `@`, the value is treated as a raw user ID.
|
|
63
|
+
|
|
64
|
+
| Input | Behavior |
|
|
65
|
+
|-------|----------|
|
|
66
|
+
| `--user @name` | Looks up by Slack username → resolves to ID |
|
|
67
|
+
| `--user U01234567` | Used as-is (raw ID) |
|
|
68
|
+
| `--user name` | Treated as raw ID → will fail |
|
|
69
|
+
|
|
70
|
+
Always use `@` prefix when passing a username.
|
|
71
|
+
|
|
39
72
|
## Reading messages
|
|
40
73
|
|
|
41
74
|
```bash
|
|
@@ -62,6 +95,10 @@ Options: `--sort timestamp|score`, `--sort-dir asc|desc`, `--limit <n>`, `--page
|
|
|
62
95
|
## Canvases
|
|
63
96
|
|
|
64
97
|
```bash
|
|
98
|
+
# Read a canvas (outputs markdown)
|
|
99
|
+
holla slack canvases read --canvas <id> -w <ws>
|
|
100
|
+
holla slack canvases read --canvas <id> -w <ws> --json # includes id, title, markdown, timestamps
|
|
101
|
+
|
|
65
102
|
# Create (with optional auto-share)
|
|
66
103
|
holla slack canvases create --title "Title" --markdown "content" --channel "#general" -w <ws>
|
|
67
104
|
|