NHacker Next
  • new
  • past
  • show
  • ask
  • show
  • jobs
  • submit
Show HN: Slack CLI for Agents (github.com)
theanonymousone 54 days ago [-]
Haha. Nobody ever cared that some humans preferred to use services via a CLI versus GUI. But now that "AI" needs it, CLI programs and APIs get released left and right :D
IMTDb 54 days ago [-]
It’s not that nobody cared, it’s that the cost of building and maintaining CLIs, relative to the usage they got, often didn’t make economic sense. In fact, this is the first time I’ve seen someone want to use Slack via a CLI, not a TUI, an actual CLI. APIs, on the other hand, had plenty of real usage and made business sense, so most services offered them.

With AI, two things have changed: (1) the cost of building a CLI on top of a documented API has dropped a lot, and (2) there’s a belief that “designed for agents” CLIs will enable new kinds of usage that weren’t practical before and that will move the needle on the bottom line.

usefulposter 54 days ago [-]
So true!

And now, since bloated agent harnesses like Claude Code are the hot thing, AI promoters are calling MCP obsolete! (No need for HN's summer 2025 fad. Just write CLI tools!)

theanonymousone 54 days ago [-]
To me it never really clicked what MCP was/is, so I'm pretty happy with this development.
stavros 54 days ago [-]
It's an extremely verbose way to list API endpoints.
impulser_ 56 days ago [-]
I'm glad more people are catching onto lightweight CLI tools and using skills to give llms more tools. It's way better than MCP. I been doing this for awhile now and it's just the best way to gets LLMs to do things with APIs built for humans.
humanperhaps 56 days ago [-]
From my perspective, this also marks the shift towards agent skills instead of MCP, since agent skills rely on CLI tools. To me, this is also better than MCP since third-party developers can easily reuse existing APIs and libraries instead of needing official MCP support.
andreagrandi 54 days ago [-]
same! I personally released a couple of CLIs (written using Claude Code) which I regularly use for my work: logbasset (to access Scalyr logs) and sentire (to access Sentry issues). I never use them manually, I wrote them to be used well by LLMs. I think they are lighter compared to an MCP.
Wuzzy 56 days ago [-]
I believe in an MCP-less future of agent-service interactions and have recently submitted this general alternative (which also supports Slack) based on curl: https://github.com/imbue-ai/latchkey

With that said, a specialized tool like this will almost certainly work better if Slack is the only service you want your agents to interact with. I like that the auth is transparent.

tacone 55 days ago [-]
I am asking my agents to use HTTPie this day, it's more understandable for them in case of error.
barrenko 54 days ago [-]
Care to write more about this?
Wuzzy 53 days ago [-]
I think that a curl wrapper could serve as a universal integration with arbitrary services (as long as they have a public API), saving you a lot of setup complexity and context space. Authentication is the hard part; ideally, you shouldn't even need an OAuth intermediary. Which I think is doable: https://news.ycombinator.com/item?id=46876636. It's still a bit of an experiment, though.
Hansenq 56 days ago [-]
Oh this is smart! Reading where Slack stores the local data in your filesystem instead of using their API/MCP (which they charge for).

Very clever; similar to OpenAI launching Atlas when websites start blocking bot requests--just build your own browser so your bot becomes an actual user.

user3939382 54 days ago [-]
I built this exact solution months ago, digging up Slack’s local storage but it failed because they had encryption on the db and the keys weren’t my account keys. Curious to see how they did it
mprsai 47 days ago [-]
Are you primarily using this for answering Slack threads and simplifying understanding of large threads? In addition to this, what else could it be used for? Trying to understand what all possibilities are unlocked with this
mhog_hn 54 days ago [-]
For the CLI > MCP folks: https://cliwatch.com/
apimade 56 days ago [-]
Warning: in Enterprise (Grid) your account will likely be flagged as hijacked, and all of your sessions will be killed.

Slack implemented session hijacking detection a while ago, and using LLM’s without throttling will very likely result in alerts. If you’re on Enterprise; I’d suggest re-slopping a re-implementation of this with ghost Chrome puppeteer.

mogili1 56 days ago [-]
I ended up vibe coding a script that uses slack token from the browser to download my messages locally. It's not been flagged yet. But my account got flagged when I tried slackdump.
nwparker 56 days ago [-]
I don't use Slack Grid, but if you open an issue I'm more than happy to work with you on it!
BlueOrigin50 57 days ago [-]
Oh nice. I just installed and it works pretty well. It wasn't able to find the user names on the thread though.
nwparker 57 days ago [-]
You could ask it to convert the names (and it would), since it uses the slack internal userIds

But I will add a flag to do for `slack message read/list`, since it makes sense.

t0dorakis 54 days ago [-]
Nice! Fits very well to my cli based cron job deamon for agents https://github.com/t0dorakis/murmur
lox 55 days ago [-]
I just built something very similar too: https://github.com/lox/slack-cli
swyx 54 days ago [-]
what about a way to read channels rather than messages? seems missing?

also... any shortcut for UNREAD messages? for yknow making a recap

nwparker 53 days ago [-]
There's a few open issues/PRs that I'm working on getting in! Feel free to drop any request there (it's the best way for me to track it).

For UNREAD messages... Sadly, I'm not sure that Slack has an official API for that. There may be an "unofficial" API there that we could discover, but I'm hesitant for adding support there. With that being said, it's not that I wouldn't entertain the idea (it would be REALLY useful) but it would require a bit more thought.

swyx 53 days ago [-]
thanks yeah... am a total noob to the api so have no idea but i guess just based on principle if you can see everything the slack webapp sees then it stands to reason the info about the unread messages is SOMEWHERE in there
nwparker 53 days ago [-]
Yeah you're definitely right, it's there. It's just an API they document so it's subject to change etc (which presents some challenges)
FranklinJabar 56 days ago [-]
Using slack makes me so depressed. The interactions we have today pale in comparison to what we had in IRC 30 years ago.

Of course I accept we're stuck with slack. I just have no clue what to write with such a limited interface. The above posted link is a great example of making the most of a tiny interface and coming up short compared to... 30 years ago

stavros 54 days ago [-]
There are some great alternatives, like Zulip and Twist. Unfortunately, ~nobody uses them.
nwparker 53 days ago [-]
Slack Connect just has a network effect, TBH. It's hard to move away.
iso1631 54 days ago [-]
90% of people on IRC in the 90s used mIRC or BitchX. What features are missing in the modern slack client?
FranklinJabar 53 days ago [-]
Well for one, you had control of the client. Writing extensions, bots, useful scripts was trivial. Slack is rotted enterprise and webhook laden mess in comparison
slopusila 56 days ago [-]
how about support for "auth import-token" so you dont need to keep SLACK_TOKEN in env
swyx 54 days ago [-]
> we don’t have access to the Slack MCP

ok, why?

Raed667 54 days ago [-]
> The Slack MCP server is currently being rolled out to select partners.
57 days ago [-]
Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact
Rendered at 03:46:04 GMT+0000 (Coordinated Universal Time) with Vercel.