slackhive 0.2.5 → 0.4.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
@@ -2,6 +2,7 @@
2
2
 
3
3
  <img src="https://raw.githubusercontent.com/pelago-labs/slackhive/main/apps/web/public/logo.svg" alt="SlackHive" width="80" />
4
4
 
5
+
5
6
  # SlackHive
6
7
 
7
8
  ### Build your AI-first company on Slack
@@ -18,6 +19,10 @@
18
19
 
19
20
  [**Documentation**](https://slackhive.mintlify.app) · [Quick Start](#-quick-start) · [Features](#-features) · [Architecture](#-architecture) · [Contributing](#-contributing)
20
21
 
22
+ <br />
23
+
24
+ <img src="https://raw.githubusercontent.com/pelago-labs/slackhive/main/docs/images/slack-ai-agent-team-dashboard-with-avatars.png" alt="SlackHive dashboard" style="border-radius: 12px;" />
25
+
21
26
  </div>
22
27
 
23
28
  ---
@@ -26,7 +31,7 @@
26
31
 
27
32
  Andrej Karpathy made two observations that changed how we think about AI systems: LLMs read **wikis** better than file dumps, and **specialists beat generalists**. SlackHive is what fell out when we took both seriously.
28
33
 
29
- One agent per role. Each with its own Karpathy-style wiki, its own tools, its own memory. A Boss agent that delegates instead of cramming everything into one context window. And all of it living in the workspace your team already uses - Slack.
34
+ One agent per role. A shared **Knowledge Library** of Karpathy-style wiki folders that any agent can be assigned. Each agent has its own tools and memory. A Boss agent that delegates instead of cramming everything into one context window. And all of it living in the workspace your team already uses - Slack.
30
35
 
31
36
  These aren't chatbots you switch to. They're **colleagues you @mention** - side by side with your people, in the same channels, in the same threads. Each agent connects to the tools your team already uses - Notion, Jira, GitHub, Figma, your database, your analytics stack. **Anyone on the team can create one.** No engineers, no platform team - if you can describe what you need, you can deploy it in minutes.
32
37
 
@@ -178,6 +183,7 @@ Every agent is a full **Claude Code** agent - with tools, memory, identity, and
178
183
  | 🧠 **Memory Viewer** | Browse, inspect, and delete agent memories by type - feedback, user, project, reference. |
179
184
  | 📡 **Activity Dashboard** | Live kanban of every task your agents are working on - Active, Completed, Errors - with drill-down to every tool call. A superadmin-only **Usage** tab breaks down token consumption per agent and ranks power users by tasks started. Admins see everything; editors see only agents they own or are granted access to; viewers are blocked. |
180
185
  | 🌐 **Multi-Workspace** | Connect multiple Slack workspaces to a single SlackHive instance. Each workspace gets its own agents and configurations. |
186
+ | 📚 **Knowledge Library** | Platform-level catalog of Karpathy-style wiki folders. Owners ingest a repo / file / URL into a folder; assign one folder to many agents. The agent's `/wiki` skill auto-enables when at least one assigned folder has built content. |
181
187
 
182
188
  ---
183
189
 
@@ -15578,7 +15578,7 @@ var require_package = __commonJS({
15578
15578
  "package.json"(exports2, module2) {
15579
15579
  module2.exports = {
15580
15580
  name: "slackhive",
15581
- version: "0.2.5",
15581
+ version: "0.4.0",
15582
15582
  description: "CLI to install and manage SlackHive \u2014 AI agent teams on Slack",
15583
15583
  bin: {
15584
15584
  slackhive: "./dist/index.js"
package/package.json CHANGED
@@ -1,47 +1,45 @@
1
1
  {
2
2
  "name": "slackhive",
3
- "version": "0.2.5",
4
- "private": false,
5
- "description": "Open-source platform for managing teams of Claude Code Slack agents with a boss agent orchestrator",
6
- "workspaces": [
7
- "apps/*",
8
- "packages/*",
9
- "cli"
10
- ],
3
+ "version": "0.4.0",
4
+ "description": "CLI to install and manage SlackHive — AI agent teams on Slack",
11
5
  "bin": {
12
- "slackhive": "cli/dist/index.js"
6
+ "slackhive": "./dist/index.js"
13
7
  },
14
8
  "scripts": {
15
- "dev": "sh scripts/dev.sh",
16
- "build": "npm run build -w packages/shared && npm run build --workspaces --if-present",
17
- "prepare": "npm run build -w cli"
9
+ "build": "esbuild src/index.ts --bundle --platform=node --outfile=dist/index.js",
10
+ "dev": "ts-node src/index.ts"
18
11
  },
19
- "files": [
20
- "cli/dist",
21
- "README.md"
12
+ "keywords": [
13
+ "slack",
14
+ "ai",
15
+ "agents",
16
+ "claude",
17
+ "claude-code",
18
+ "slackhive"
22
19
  ],
23
- "engines": {
24
- "node": ">=20.0.0"
25
- },
20
+ "author": "Aman Srivastava",
26
21
  "license": "MIT",
27
- "dependencies": {
28
- "@anthropic-ai/claude-agent-sdk": "^0.2.118",
29
- "@anthropic-ai/claude-code": "^2.1.118",
30
- "@elastic/elasticsearch": "^9.3.4",
31
- "@mozilla/readability": "^0.6.0",
32
- "linkedom": "^0.18.12",
33
- "pg": "^8.20.0",
34
- "turndown": "^7.2.4"
22
+ "repository": {
23
+ "type": "git",
24
+ "url": "https://github.com/pelago-labs/slackhive"
35
25
  },
36
- "overrides": {
37
- "dompurify": "^3.4.0",
38
- "vite": "^6.4.2",
39
- "axios": "^1.15.0",
40
- "hono": "^4.12.14",
41
- "@hono/node-server": "^1.19.13",
42
- "follow-redirects": "^1.15.12"
26
+ "dependencies": {
27
+ "chalk": "^4.1.2",
28
+ "commander": "^12.0.0",
29
+ "ora": "^5.4.1",
30
+ "prompts": "^2.4.2"
43
31
  },
44
32
  "devDependencies": {
45
- "@types/turndown": "^5.0.6"
46
- }
33
+ "@types/node": "^20.0.0",
34
+ "@types/prompts": "^2.4.9",
35
+ "esbuild": "^0.28.0",
36
+ "typescript": "^5.3.0"
37
+ },
38
+ "engines": {
39
+ "node": ">=18.0.0"
40
+ },
41
+ "files": [
42
+ "dist",
43
+ "README.md"
44
+ ]
47
45
  }
package/LICENSE DELETED
@@ -1,21 +0,0 @@
1
- MIT License
2
-
3
- Copyright (c) 2026 Pelago Labs
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in all
13
- copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.
package/cli/README.md DELETED
@@ -1,287 +0,0 @@
1
- <div align="center">
2
-
3
- <img src="https://raw.githubusercontent.com/pelago-labs/slackhive/main/apps/web/public/logo.svg" alt="SlackHive" width="80" />
4
-
5
- # SlackHive
6
-
7
- ### Build your AI-first company on Slack
8
- #### Deploy and orchestrate Claude Code agents as your teammates
9
-
10
- [![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE)
11
- [![npm](https://img.shields.io/npm/v/slackhive?color=cb3837&logo=npm&logoColor=white)](https://www.npmjs.com/package/slackhive)
12
- [![npm downloads](https://img.shields.io/npm/dt/slackhive?color=cb3837&logo=npm&logoColor=white&label=installs)](https://www.npmjs.com/package/slackhive)
13
- [![Node.js](https://img.shields.io/badge/Node.js-≥20-339933?logo=node.js&logoColor=white)](https://nodejs.org)
14
- [![TypeScript](https://img.shields.io/badge/TypeScript-5.x-3178c6?logo=typescript&logoColor=white)](https://www.typescriptlang.org)
15
- [![SQLite](https://img.shields.io/badge/SQLite-embedded-003B57?logo=sqlite&logoColor=white)](https://sqlite.org)
16
- [![Documentation](https://img.shields.io/badge/docs-slackhive.mintlify.app-D97757?logo=gitbook&logoColor=white)](https://slackhive.mintlify.app)
17
- [![Security Audit](https://github.com/pelago-labs/slackhive/actions/workflows/audit.yml/badge.svg)](https://github.com/pelago-labs/slackhive/actions/workflows/audit.yml)
18
-
19
- [**Documentation**](https://slackhive.mintlify.app) · [Quick Start](#-quick-start) · [Features](#-features) · [Architecture](#-architecture) · [Contributing](#-contributing)
20
-
21
- </div>
22
-
23
- ---
24
-
25
- ## Why SlackHive?
26
-
27
- Your Slack workspace is where your team already lives. Every question, decision, and escalation happens there. SlackHive makes that workspace a mix of **people and agents** — side by side, in the same channels, in the same threads.
28
-
29
- These aren't chatbots you switch to. They're colleagues you @mention. Each agent connects to the tools your team already uses — Notion, Jira, GitHub, Figma, your database, your analytics stack. **Anyone on the team can create one.** No engineers, no platform team — if you can describe what you need, you can deploy it in minutes.
30
-
31
- ```
32
- CEO: @data-analyst revenue is down 8% this week, can you dig in?
33
- DataBot: [queries Redshift across 6 dimensions]
34
- Found it — enterprise churn spiked Tuesday after the pricing change.
35
- 3 accounts, $42k ARR at risk.
36
-
37
- Engineer: @devops the checkout service is throwing 500s
38
- DevOps: [reads logs, identifies root cause, opens PR]
39
- Memory leak in the payment processor pool. PR #847 is up with the fix.
40
-
41
- PM: @designer mock up a simpler onboarding flow
42
- Designer: [creates Figma frames via MCP]
43
- Done — 3 variants in Figma. Which direction do you want to take?
44
- ```
45
-
46
- Tag a specialist directly when you know who to ask. Or tag `@boss` when you're not sure — Boss finds the right specialist, delegates, and summarizes the result:
47
-
48
- ```
49
- You: @boss can you analyze last week's conversion funnel?
50
- Boss: That's right up @data-analyst's alley 👇
51
- @data-analyst — conversion funnel analysis for last week.
52
- When you're done, please tag @boss.
53
- DataBot: Conversions up 12% WoW, checkout completion jumped 3×. @boss — done!
54
- Boss: Conversions are up 12% WoW. The win was checkout — 3× completion rate.
55
- Want me to pull a channel or cohort breakdown?
56
- ```
57
-
58
- ---
59
-
60
- ## 🚀 Quick Start
61
-
62
- ### Option A: One-command install (recommended)
63
-
64
- ```bash
65
- npm install -g slackhive
66
- slackhive init
67
- ```
68
-
69
- The CLI will:
70
- 1. Check prerequisites (Git, Node.js ≥ 20, Claude Code)
71
- 2. Clone the repository
72
- 3. Auto-detect your Claude installation (cross-platform compatible)
73
- 4. Walk you through configuration (API key or subscription, admin credentials)
74
- 5. Build and start the services natively — no Docker required
75
-
76
- Open `http://localhost:3001` and create your first agent.
77
-
78
- ### CLI Commands
79
-
80
- | Command | Description |
81
- |---------|-------------|
82
- | `slackhive init` | Clone, configure, and start SlackHive |
83
- | `slackhive start` | Start all services |
84
- | `slackhive stop` | Stop all services (and any orphaned runner processes) |
85
- | `slackhive status` | Show running services + ports |
86
- | `slackhive logs` | Tail runner logs |
87
- | `slackhive update` | Pull latest changes and rebuild |
88
-
89
- ### Option B: Manual setup
90
-
91
- **Prerequisites:** Node.js ≥ 20, Git, [Claude Code](https://docs.anthropic.com/en/docs/claude-code/setup) on your PATH
92
-
93
- ```bash
94
- git clone https://github.com/pelago-labs/slackhive.git
95
- cd slackhive
96
- cp .env.example .env
97
- ```
98
-
99
- Edit `.env` with your credentials:
100
-
101
- ```env
102
- ANTHROPIC_API_KEY=sk-ant-... # or use Claude Pro/Max subscription
103
- ADMIN_USERNAME=admin
104
- ADMIN_PASSWORD=<strong-random-password>
105
- AUTH_SECRET= # generate: openssl rand -hex 32
106
- ENV_SECRET_KEY= # generate: openssl rand -hex 32
107
- DATABASE_TYPE=sqlite # embedded — no external DB needed
108
- ```
109
-
110
- ```bash
111
- npm install
112
- npm run build
113
-
114
- # Start the stack (web on :3001, runner on :3002)
115
- npx slackhive start
116
- ```
117
-
118
- Open `http://localhost:3001`, log in, and create your first agent.
119
-
120
- > Full setup guide → [slackhive.mintlify.app/quickstart](https://slackhive.mintlify.app/quickstart)
121
-
122
- ---
123
-
124
- ## ✨ Features
125
-
126
- ### 🤖 Real AI Agents — Not Chatbots
127
-
128
- Every agent is a full **Claude Code** agent — with tools, memory, identity, and instructions. When you @mention one in Slack, you're running a real AI agent that can use tools, take action, and get smarter over time.
129
-
130
- | | |
131
- |---|---|
132
- | 🧠 **Persistent Memory** | Agents write memories during conversations — feedback, user context, project state. Synced to SQLite, injected on next start. They don't forget. |
133
- | 🔌 **MCP Tool Integration** | Connect any MCP server (Redshift, GitHub, Notion, Figma, custom APIs) — stdio, SSE, or HTTP transports. |
134
- | 📝 **Inline TypeScript MCPs** | Paste TypeScript source directly into the UI — no deployment needed. The runner compiles and executes it. |
135
- | 🧵 **Full Thread Context** | Agents fetch the entire Slack thread on every invocation — zero context lost in handoffs. |
136
- | 💾 **Session Continuity** | Slack thread ↔ Claude session mapping survives restarts. Pick up exactly where you left off. |
137
- | 🔐 **Encrypted Secret Store** | API keys encrypted at rest (AES-256). MCPs reference secrets by name — raw values never touch the API or UI. |
138
- | 🔁 **Hot Reload** | Edit instructions, skills, or tools and the agent picks up changes within seconds. No restart needed. |
139
-
140
- ### 👑 Boss + Specialist Hierarchy
141
-
142
- | | |
143
- |---|---|
144
- | 👑 **Boss Orchestration** | Boss reads your message, finds the right specialist, delegates by @mention in the same thread, and summarizes the result. |
145
- | 🏢 **Multi-Boss Support** | Run multiple Boss agents for different domains (engineering, data, support). Specialists can report to more than one boss. |
146
- | 📋 **Auto-Generated Registries** | Every Boss gets a live team roster auto-regenerated whenever the team changes. No manual maintenance. |
147
- | 🛠 **Skills** | Markdown files deployed as Claude Code slash commands. Give agents SQL rules, writing guidelines, or domain playbooks. |
148
- | ⏰ **Scheduled Jobs** | Cron-based recurring tasks — daily reports, weekly digests, monitoring alerts — posted to any Slack channel or DM. |
149
-
150
- ### ⚙️ Platform
151
-
152
- | | |
153
- |---|---|
154
- | 🧙 **Onboarding Wizard** | 5-step guided setup: identity → Slack app → credentials → tools & skills → review. |
155
- | 🕓 **Version Control** | Every save auto-snapshots the full agent state. Browse history with line-level diffs, restore any version in one click. |
156
- | 🔒 **Auth & RBAC** | 4 roles (superadmin / admin / editor / viewer), HMAC-signed sessions, per-agent write access grants. No external auth provider needed. |
157
- | 🚦 **Channel Restrictions** | Lock agents to specific Slack channels. Bot auto-leaves uninvited channels with a notice. |
158
- | 📊 **Live Logs** | SSE-streamed log output per agent — with level filters and search. |
159
- | 🧠 **Memory Viewer** | Browse, inspect, and delete agent memories by type — feedback, user, project, reference. |
160
-
161
- ---
162
-
163
- ## 🏗 Architecture
164
-
165
- ```
166
- Slack Workspace (@boss, @data-bot, @writer, ...)
167
- │ Socket Mode (Bolt)
168
-
169
- ┌──────────────────────────────────────────────────┐
170
- │ Local host — two Node.js processes │
171
- │ │
172
- │ Web (Next.js :3001) ──HTTP──► Runner (:3002) │
173
- │ │ │ │
174
- │ └───── SQLite file ──────┘ │
175
- │ (./data/slackhive.db) │
176
- └──────────────────────────────────────────────────┘
177
- ```
178
-
179
- | Service | Description |
180
- |---------|-------------|
181
- | **Web** (Next.js 15) | Dashboard — create agents, edit skills, view logs, manage users |
182
- | **Runner** (Node.js) | Hosts all agent processes and Slack connections |
183
- | **SQLite** | Embedded — stores agents, memories, skills, sessions, users, history. No external DB to install |
184
- | **Event bus** | Web posts to the runner's internal HTTP port to deliver hot-reload events |
185
-
186
- **How a message flows:**
187
- 1. User @mentions an agent in Slack
188
- 2. Runner receives the event via Bolt Socket Mode
189
- 3. Claude Code processes the message with the agent's compiled `CLAUDE.md`
190
- 4. Agent uses MCP tools if needed (Redshift, GitHub, Notion, etc.)
191
- 5. Response is formatted as Slack Block Kit and posted to the thread
192
- 6. Memory files written during the session are synced to SQLite
193
- 7. Next conversation starts with all accumulated knowledge
194
-
195
- ---
196
-
197
- ## 🔑 Claude Code Authentication
198
-
199
- Two options — use whichever fits your setup:
200
-
201
- **Option A — API Key**
202
- ```env
203
- ANTHROPIC_API_KEY=sk-ant-api03-...
204
- ```
205
- Billed per token via the Anthropic API. Best for teams and production.
206
-
207
- **Option B — Claude Pro or Max Subscription**
208
- ```bash
209
- claude login # saves credentials to your system keychain / ~/.claude/
210
- ```
211
- Leave `ANTHROPIC_API_KEY` unset — the runner picks up credentials from the system keychain automatically. Best for individual developers.
212
-
213
- > Full guide → [slackhive.mintlify.app/configuration/env-vars](https://slackhive.mintlify.app/configuration/env-vars)
214
-
215
- ---
216
-
217
- ## 🔮 Roadmap
218
-
219
- - [x] Boss orchestration + auto-generated team registries
220
- - [x] Persistent memory system
221
- - [x] Scheduled jobs
222
- - [x] Version control with diff view
223
- - [x] Encrypted environment variables
224
- - [x] Channel restrictions
225
- - [x] Multi-workspace support
226
- - [ ] Webhook triggers (GitHub, Jira, PagerDuty → agent actions)
227
- - [ ] Agent-to-agent direct messaging
228
- - [ ] Analytics dashboard
229
- - [ ] Custom tool builder (no MCP server needed)
230
- - [ ] Agent templates marketplace
231
- - [ ] RAG integration — connect agents to document stores
232
-
233
- Have an idea? [Open an issue](https://github.com/pelago-labs/slackhive/issues)
234
-
235
- ---
236
-
237
- ## 🤝 Contributing
238
-
239
- ```bash
240
- git clone https://github.com/pelago-labs/slackhive.git
241
- cd slackhive && npm install
242
-
243
- # Configure
244
- cp .env.example .env # then fill in ADMIN_PASSWORD, AUTH_SECRET, ENV_SECRET_KEY
245
-
246
- # Run locally (SQLite — no external services required)
247
- cd apps/web && npm run dev # http://localhost:3000
248
- cd apps/runner && npm run dev # http://localhost:3002
249
- ```
250
-
251
- Open an issue before submitting large PRs so we can align on the approach.
252
-
253
- ---
254
-
255
- ## 👥 Contributors
256
-
257
- <a href="https://github.com/pelago-labs/slackhive/graphs/contributors">
258
- <img src="https://contrib.rocks/image?repo=pelago-labs/slackhive" alt="Contributors" />
259
- </a>
260
-
261
- ---
262
-
263
- ## ⭐ Star History
264
-
265
- <a href="https://star-history.com/#pelago-labs/slackhive&Date">
266
- <picture>
267
- <source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=pelago-labs/slackhive&type=Date&theme=dark" />
268
- <source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=pelago-labs/slackhive&type=Date" />
269
- <img alt="Star History Chart" src="https://api.star-history.com/svg?repos=pelago-labs/slackhive&type=Date" width="600" />
270
- </picture>
271
- </a>
272
-
273
- ---
274
-
275
- ## 🔒 Security
276
-
277
- Use [GitHub's private vulnerability reporting](https://github.com/pelago-labs/slackhive/security/advisories/new) — click **"Report a vulnerability"** on the Security tab. Please don't open public issues for security bugs. We respond within 48 hours.
278
-
279
- ---
280
-
281
- ## 📄 License
282
-
283
- MIT © 2026 [Pelago Labs](https://github.com/pelago-labs)
284
-
285
- <div align="center">
286
- <sub>Built with Claude Code, Slack Bolt, and a lot of ☕</sub>
287
- </div>