Paymahn Moghadasian
d781728c6c
feat: slack-cli — a no-daemon CLI over the slack-mcp-server engine ( #1 )
...
* feat: add slack-cli, a no-daemon CLI over the slack-mcp-server engine
Turn the forked slack-mcp-server into a CLI so running many agents no
longer means one resident MCP process each. Every command is a
short-lived process that reads the shared on-disk cache.
- rename module to github.com/paymog/slack-cli (go install/homebrew/ldflags)
- internal/toolcall: invoke the upstream tool handlers in-process; the only
mcp-go coupling lives here, so pkg/handler and pkg/provider are reused
byte-for-byte (clean upstream merges, fork-and-extend)
- internal/{cli,cmds,config,credstore,runtime,output}: cobra command tree,
keyring-backed credential profiles, provider bootstrap, result printing
- 21 tools as subcommands (channels, conversations, users, usergroups,
saved, reactions, attachments, cache); write tools keep their env gating
- goreleaser + homebrew release workflow; ships a skills/slack-cli skill
- unit tests for config/credstore/toolcall; MCP server still builds
The MCP server (cmd/slack-mcp-server) is kept intact.
* chore(napkin): record real-workspace verification
* docs: explain how the CLI works (in-process handler invocation, shared cache)
2026-06-26 12:45:38 -05:00
Dmitrii Korotovskii
01f0ad4525
Revert "Merge pull request #292 from korotovsky/dependabot/go_modules/go-dependencies-f46f41233a"
...
This reverts commit 400c900774 , reversing
changes made to 19e8a0c7b1 .
2026-05-14 23:07:52 +02:00
dependabot[bot]
781cc51f20
deps(go): bump the go-dependencies group across 1 directory with 9 updates
...
Bumps the go-dependencies group with 8 updates in the / directory:
| Package | From | To |
| --- | --- | --- |
| [github.com/mark3labs/mcp-go](https://github.com/mark3labs/mcp-go ) | `0.44.0` | `0.54.0` |
| [github.com/mattn/go-isatty](https://github.com/mattn/go-isatty ) | `0.0.20` | `0.0.22` |
| [github.com/slack-go/slack](https://github.com/slack-go/slack ) | `0.19.0` | `0.23.1` |
| [github.com/takara2314/slack-go-util](https://github.com/takara2314/slack-go-util ) | `0.4.0` | `0.4.1` |
| [go.uber.org/zap](https://github.com/uber-go/zap ) | `1.27.1` | `1.28.0` |
| [golang.ngrok.com/ngrok/v2](https://github.com/ngrok/ngrok-go ) | `2.1.1` | `2.1.4` |
| [golang.org/x/net](https://github.com/golang/net ) | `0.50.0` | `0.54.0` |
| [golang.org/x/time](https://github.com/golang/time ) | `0.14.0` | `0.15.0` |
Updates `github.com/mark3labs/mcp-go` from 0.44.0 to 0.54.0
- [Release notes](https://github.com/mark3labs/mcp-go/releases )
- [Commits](https://github.com/mark3labs/mcp-go/compare/v0.44.0...v0.54.0 )
Updates `github.com/mattn/go-isatty` from 0.0.20 to 0.0.22
- [Commits](https://github.com/mattn/go-isatty/compare/v0.0.20...v0.0.22 )
Updates `github.com/slack-go/slack` from 0.19.0 to 0.23.1
- [Release notes](https://github.com/slack-go/slack/releases )
- [Changelog](https://github.com/slack-go/slack/blob/master/CHANGELOG.md )
- [Commits](https://github.com/slack-go/slack/compare/v0.19.0...v0.23.1 )
Updates `github.com/takara2314/slack-go-util` from 0.4.0 to 0.4.1
- [Release notes](https://github.com/takara2314/slack-go-util/releases )
- [Commits](https://github.com/takara2314/slack-go-util/compare/v0.4.0...v0.4.1 )
Updates `go.uber.org/zap` from 1.27.1 to 1.28.0
- [Release notes](https://github.com/uber-go/zap/releases )
- [Changelog](https://github.com/uber-go/zap/blob/master/CHANGELOG.md )
- [Commits](https://github.com/uber-go/zap/compare/v1.27.1...v1.28.0 )
Updates `golang.ngrok.com/ngrok/v2` from 2.1.1 to 2.1.4
- [Release notes](https://github.com/ngrok/ngrok-go/releases )
- [Changelog](https://github.com/ngrok/ngrok-go/blob/main/CHANGELOG.md )
- [Commits](https://github.com/ngrok/ngrok-go/compare/v2.1.1...v2.1.4 )
Updates `golang.org/x/net` from 0.50.0 to 0.54.0
- [Commits](https://github.com/golang/net/compare/v0.50.0...v0.54.0 )
Updates `golang.org/x/sync` from 0.19.0 to 0.20.0
- [Commits](https://github.com/golang/sync/compare/v0.19.0...v0.20.0 )
Updates `golang.org/x/time` from 0.14.0 to 0.15.0
- [Commits](https://github.com/golang/time/compare/v0.14.0...v0.15.0 )
---
updated-dependencies:
- dependency-name: github.com/mark3labs/mcp-go
dependency-version: 0.50.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: go-dependencies
- dependency-name: github.com/mattn/go-isatty
dependency-version: 0.0.22
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: go-dependencies
- dependency-name: github.com/slack-go/slack
dependency-version: 0.23.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: go-dependencies
- dependency-name: github.com/takara2314/slack-go-util
dependency-version: 0.4.1
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: go-dependencies
- dependency-name: go.uber.org/zap
dependency-version: 1.28.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: go-dependencies
- dependency-name: golang.ngrok.com/ngrok/v2
dependency-version: 2.1.4
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: go-dependencies
- dependency-name: golang.org/x/net
dependency-version: 0.53.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: go-dependencies
- dependency-name: golang.org/x/sync
dependency-version: 0.20.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: go-dependencies
- dependency-name: golang.org/x/time
dependency-version: 0.15.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: go-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-05-14 20:25:25 +00:00
Dmitrii Korotovskii
bee5d73883
deps: bump jsonparser v1.1.1→v1.1.2 and go-jose/v3 v3.0.4→v3.0.5
...
Resolves the two HIGH-severity findings from the Trivy filesystem scan:
- CVE-2026-32285 (github.com/buger/jsonparser, fixed in v1.1.2)
- CVE-2026-34986 (github.com/go-jose/go-jose/v3, fixed in v3.0.5)
Both are indirect deps, bumped via `go get` + `go mod tidy`.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-14 22:23:24 +02:00
Arnold Mendez
97b24505c9
feat: add blocks parameter and bump slack-go-util to v0.4.0
...
Add optional `blocks` parameter to conversations_add_message for raw
Slack Block Kit JSON support (rich_text lists, code blocks, etc.).
When blocks is provided it takes precedence over text/content_type for
message rendering. The text parameter serves as notification fallback.
The blocks argument accepts both a JSON string and a raw JSON array to
accommodate different MCP client serialization behaviors.
Also bumps takara2314/slack-go-util from v0.3.0 to v0.4.0 which adds
nested list support to the existing text/markdown conversion path.
2026-05-07 10:10:53 -04:00
dependabot[bot]
53e7f03443
deps(go): bump the go-dependencies group across 1 directory with 2 updates
...
Bumps the go-dependencies group with 2 updates in the / directory: [github.com/mark3labs/mcp-go](https://github.com/mark3labs/mcp-go ) and [golang.org/x/net](https://github.com/golang/net ).
Updates `github.com/mark3labs/mcp-go` from 0.43.2 to 0.44.0
- [Release notes](https://github.com/mark3labs/mcp-go/releases )
- [Commits](https://github.com/mark3labs/mcp-go/compare/v0.43.2...v0.44.0 )
Updates `golang.org/x/net` from 0.49.0 to 0.50.0
- [Commits](https://github.com/golang/net/compare/v0.49.0...v0.50.0 )
---
updated-dependencies:
- dependency-name: github.com/mark3labs/mcp-go
dependency-version: 0.44.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: go-dependencies
- dependency-name: golang.org/x/net
dependency-version: 0.50.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: go-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-02-19 17:17:37 +00:00
dependabot[bot]
3e8cbab107
deps(go): bump github.com/rusq/slackdump/v3 in the go-dependencies group
...
Bumps the go-dependencies group with 1 update: [github.com/rusq/slackdump/v3](https://github.com/rusq/slackdump ).
Updates `github.com/rusq/slackdump/v3` from 3.1.11 to 3.1.13
- [Release notes](https://github.com/rusq/slackdump/releases )
- [Commits](https://github.com/rusq/slackdump/compare/v3.1.11...v3.1.13 )
---
updated-dependencies:
- dependency-name: github.com/rusq/slackdump/v3
dependency-version: 3.1.13
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: go-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-02-05 17:17:34 +00:00
dependabot[bot]
940e87365b
deps(go): bump the go-dependencies group with 2 updates
...
Bumps the go-dependencies group with 2 updates: [golang.org/x/net](https://github.com/golang/net ) and [golang.org/x/sync](https://github.com/golang/sync ).
Updates `golang.org/x/net` from 0.47.0 to 0.49.0
- [Commits](https://github.com/golang/net/compare/v0.47.0...v0.49.0 )
Updates `golang.org/x/sync` from 0.18.0 to 0.19.0
- [Commits](https://github.com/golang/sync/compare/v0.18.0...v0.19.0 )
---
updated-dependencies:
- dependency-name: golang.org/x/net
dependency-version: 0.49.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: go-dependencies
- dependency-name: golang.org/x/sync
dependency-version: 0.19.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: go-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-01-29 17:17:59 +00:00
dependabot[bot]
9fbdefa98b
deps(go): bump the go-dependencies group with 11 updates
...
Bumps the go-dependencies group with 11 updates:
| Package | From | To |
| --- | --- | --- |
| [github.com/mark3labs/mcp-go](https://github.com/mark3labs/mcp-go ) | `0.40.0` | `0.43.2` |
| [github.com/openai/openai-go](https://github.com/openai/openai-go ) | `1.11.0` | `1.12.0` |
| [github.com/refraction-networking/utls](https://github.com/refraction-networking/utls ) | `1.8.0` | `1.8.2` |
| [github.com/rusq/slackauth](https://github.com/rusq/slackauth ) | `0.6.1` | `0.7.1` |
| [github.com/rusq/slackdump/v3](https://github.com/rusq/slackdump ) | `3.1.6` | `3.1.11` |
| [github.com/stretchr/testify](https://github.com/stretchr/testify ) | `1.10.0` | `1.11.1` |
| [go.uber.org/zap](https://github.com/uber-go/zap ) | `1.27.0` | `1.27.1` |
| [golang.ngrok.com/ngrok/v2](https://github.com/ngrok/ngrok-go ) | `2.0.0` | `2.1.1` |
| [golang.org/x/net](https://github.com/golang/net ) | `0.40.0` | `0.47.0` |
| [golang.org/x/sync](https://github.com/golang/sync ) | `0.14.0` | `0.18.0` |
| [golang.org/x/time](https://github.com/golang/time ) | `0.12.0` | `0.14.0` |
Updates `github.com/mark3labs/mcp-go` from 0.40.0 to 0.43.2
- [Release notes](https://github.com/mark3labs/mcp-go/releases )
- [Commits](https://github.com/mark3labs/mcp-go/compare/v0.40.0...v0.43.2 )
Updates `github.com/openai/openai-go` from 1.11.0 to 1.12.0
- [Release notes](https://github.com/openai/openai-go/releases )
- [Changelog](https://github.com/openai/openai-go/blob/main/CHANGELOG.md )
- [Commits](https://github.com/openai/openai-go/compare/v1.11.0...v1.12.0 )
Updates `github.com/refraction-networking/utls` from 1.8.0 to 1.8.2
- [Release notes](https://github.com/refraction-networking/utls/releases )
- [Commits](https://github.com/refraction-networking/utls/compare/v1.8.0...v1.8.2 )
Updates `github.com/rusq/slackauth` from 0.6.1 to 0.7.1
- [Commits](https://github.com/rusq/slackauth/compare/v0.6.1...v0.7.1 )
Updates `github.com/rusq/slackdump/v3` from 3.1.6 to 3.1.11
- [Release notes](https://github.com/rusq/slackdump/releases )
- [Commits](https://github.com/rusq/slackdump/compare/v3.1.6...v3.1.11 )
Updates `github.com/stretchr/testify` from 1.10.0 to 1.11.1
- [Release notes](https://github.com/stretchr/testify/releases )
- [Commits](https://github.com/stretchr/testify/compare/v1.10.0...v1.11.1 )
Updates `go.uber.org/zap` from 1.27.0 to 1.27.1
- [Release notes](https://github.com/uber-go/zap/releases )
- [Changelog](https://github.com/uber-go/zap/blob/master/CHANGELOG.md )
- [Commits](https://github.com/uber-go/zap/compare/v1.27.0...v1.27.1 )
Updates `golang.ngrok.com/ngrok/v2` from 2.0.0 to 2.1.1
- [Release notes](https://github.com/ngrok/ngrok-go/releases )
- [Changelog](https://github.com/ngrok/ngrok-go/blob/main/CHANGELOG.md )
- [Commits](https://github.com/ngrok/ngrok-go/compare/v2.0.0...v2.1.1 )
Updates `golang.org/x/net` from 0.40.0 to 0.47.0
- [Commits](https://github.com/golang/net/compare/v0.40.0...v0.47.0 )
Updates `golang.org/x/sync` from 0.14.0 to 0.18.0
- [Commits](https://github.com/golang/sync/compare/v0.14.0...v0.18.0 )
Updates `golang.org/x/time` from 0.12.0 to 0.14.0
- [Commits](https://github.com/golang/time/compare/v0.12.0...v0.14.0 )
---
updated-dependencies:
- dependency-name: github.com/mark3labs/mcp-go
dependency-version: 0.43.2
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: go-dependencies
- dependency-name: github.com/openai/openai-go
dependency-version: 1.12.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: go-dependencies
- dependency-name: github.com/refraction-networking/utls
dependency-version: 1.8.2
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: go-dependencies
- dependency-name: github.com/rusq/slackauth
dependency-version: 0.7.1
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: go-dependencies
- dependency-name: github.com/rusq/slackdump/v3
dependency-version: 3.1.11
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: go-dependencies
- dependency-name: github.com/stretchr/testify
dependency-version: 1.11.1
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: go-dependencies
- dependency-name: go.uber.org/zap
dependency-version: 1.27.1
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: go-dependencies
- dependency-name: golang.ngrok.com/ngrok/v2
dependency-version: 2.1.1
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: go-dependencies
- dependency-name: golang.org/x/net
dependency-version: 0.47.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: go-dependencies
- dependency-name: golang.org/x/sync
dependency-version: 0.18.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: go-dependencies
- dependency-name: golang.org/x/time
dependency-version: 0.14.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: go-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-01-22 07:32:55 +00:00
Dmitrii Korotovskii
38137ebf61
dependency bump
2025-12-25 15:47:23 +01:00
Lukasz Jagiello
17e55a9b47
fix: update slack-go/slack to v0.17.3 to fix JSON unmarshal error
...
Fixes error when Slack API returns errors as strings instead of objects:
"json: cannot unmarshal string into Go struct field chatResponseFull.SlackResponse.errors of type map[string]interface{}"
The bug was in SlackResponseErrors.UnmarshalJSON which didn't handle
string error values. This was fixed in slack-go/slack v0.17.2+.
Added test case to verify the fix works.
2025-11-25 20:07:50 -08:00
graf2242
67be61e70d
Bump mcp-go dependency
2025-09-24 11:47:20 +03:00
Dmitrii Korotovskii
32a951b484
tls handshake fingerprinting
2025-07-24 12:13:37 +02:00
Dmitrii Korotovskii
77456f3462
Added basic layout for integration tests
2025-07-21 01:38:43 +02:00
Dmitrii Korotovskii
a9fbd54fa9
Improve logging
2025-07-20 09:46:30 +02:00
Dmitrii Korotovskii
b72f06bc17
zap build version
2025-07-20 01:03:57 +02:00
Dmitrii Korotovskii
4ed6f91f0a
Added zap logger
2025-07-20 00:52:03 +02:00
Dmitrii Korotovskii
2a70774df8
Improved add_message tool, content_type support text/plain or text/markdown
2025-07-06 18:33:12 +02:00
Dmitrii Korotovskii
4983e1098b
add logic to improve fetching channels list on slack workspaces with enterprise setting
2025-06-29 22:45:50 +02:00
Dmitrii Korotovskii
0958f563f0
channels_list tool accepts channel_types now as a plain comma-separated string to simplify interface and tool discovery instead of complex array struct, added extra validations
2025-06-06 10:24:33 +02:00
Dmitrii Korotovskii
9626a7c7ae
changed the response content type, added users fetch with caching into json and automatic bootstrapping on start
2025-04-16 23:23:56 +02:00
Dmitrii Korotovskii
1e68339bb9
init commit
2025-04-12 13:40:30 +02:00