https://github.com/toshihitokon/slack-quickpost
slack post cli tool
https://github.com/toshihitokon/slack-quickpost
slack
Last synced: 4 months ago
JSON representation
slack post cli tool
- Host: GitHub
- URL: https://github.com/toshihitokon/slack-quickpost
- Owner: ToshihitoKon
- License: mit
- Created: 2021-03-21T14:32:56.000Z (over 5 years ago)
- Default Branch: main
- Last Pushed: 2025-04-16T21:19:22.000Z (about 1 year ago)
- Last Synced: 2025-06-14T03:03:41.400Z (about 1 year ago)
- Topics: slack
- Language: Go
- Homepage:
- Size: 44.9 KB
- Stars: 2
- Watchers: 1
- Forks: 1
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# slack-quickpost
## installation
```
go install github.com/ToshihitoKon/slack-quickpost@latest
```
## setup
https://api.slack.com/apps/
make Slack App and get OAuth token.
### GitHub Actions
```yaml
jobs:
using-slack-quikpost:
runs-on: ubuntu-latest
steps:
- uses: ToshihitoKon/slack-quickpost@v1
with:
version: 0.8.0
```
## usage
OAuth token given by one of the following methods.
#### environment variable
```
export SLACK_TOKEN="xoxb-XXXXXXXX-XXXXXXX-XXXXXX"
slack-quickpost \
--channel [CHANNEL_ID] \
--text [TEXT]
```
#### Option
```
slack-quickpost \
--token xoxb-XXXXXXXX-XXXXXXX-XXXXXX \
--channel [CHANNEL_ID] \
--text [TEXT]
```
#### Config file
Save config yaml `~/.config/slack-quickpost/profile-name.yaml`
```yaml
token: xoxb-XXX
channel: XXX
```
Provide the profile name using an environment variable(`SLACK_QUICKPOST_PROFILE`) or option.
```
SLACK_QUICKPOST_PROFILE=profile-name slack-quickpost --text [TEXT]
slack-quickpost --profile profile-name --text [TEXT]
```
### post text
```
slack-quickpost \
--channel [CANNEL_ID] \
--text [TEXT] \
--username [DISPLAY_USERNAME] \
--icon [ICON_EMOJI]
# text given textfile path and icon given image url
slack-quickpost \
--channel [CANNEL_ID] \
--textfile [FIlEPATH] \
--username [DISPLAY_USERNAME] \
--icon_url [ICON_IMAGE_URL]
# post text as snippet
slack-quickpost \
--channel [CANNEL_ID] \
--text [TEXT] \
--snippet
# post BlockKit
slack-quickpost \
--channel [CANNEL_ID] \
--block '{"type":"section","text":{"type":"mrkdwn","text":"*Sample BlockKit"}}'
```
### post file
```
slack-quickpost \
--channel [CANNEL_ID] \
--file [FILE_PATH]
```
## comamnd options
```
--blocks string post BlockKit json
--channel string post slack channel id
--file string post file path
--icon string icon emoji
--icon-url string icon image url
--nofail always return success code(0)
--profile string slack quickpost profile name
--snippet post text as snippet
--text string post text
--textfile string post text file path
--thread-ts string post under thread
--token string slack app OAuth token
--username string user name
--version print version
```