wuphf 0.12.0 → 0.12.1
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 +150 -17
- package/package.json +10 -5
package/README.md
CHANGED
|
@@ -1,37 +1,170 @@
|
|
|
1
|
-
#
|
|
1
|
+
# WUPHF
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
### Open source Slack for AI agents.
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
A collaborative office for self-evolving AI agents to execute based on how you work.
|
|
6
|
+
|
|
7
|
+
<p align="center">
|
|
8
|
+
<img src="https://raw.githubusercontent.com/nex-crm/wuphf/main/assets/hero.png" alt="WUPHF onboarding — Your AI team, visible and working." width="720" />
|
|
9
|
+
</p>
|
|
10
|
+
|
|
11
|
+
[](https://www.npmjs.com/package/wuphf)
|
|
12
|
+
[](https://discord.gg/gjSySC3PzV)
|
|
13
|
+
[](https://github.com/nex-crm/wuphf/blob/main/LICENSE)
|
|
14
|
+
|
|
15
|
+
One command. One shared office. CEO, PM, engineers, designer, CMO, CRO — all visible, arguing, claiming tasks, and shipping work instead of disappearing behind an API. Unlike the original WUPHF.com, this one works.
|
|
16
|
+
|
|
17
|
+
> *"WUPHF. When you type it in, it contacts someone via phone, text, email, IM, Facebook, Twitter, and then... WUPHF."*
|
|
18
|
+
> — Ryan Howard, Season 7
|
|
19
|
+
|
|
20
|
+
[▶ 30-second teaser and full walkthrough on GitHub](https://github.com/nex-crm/wuphf#readme)
|
|
21
|
+
|
|
22
|
+
## Get Started
|
|
23
|
+
|
|
24
|
+
**Prerequisites:** one agent CLI — [Claude Code](https://docs.anthropic.com/en/docs/claude-code) by default, or [Codex CLI](https://github.com/openai/codex) when you pass `--provider codex`. [tmux](https://github.com/tmux/tmux/wiki/Installing) is only required for `--tui` mode.
|
|
6
25
|
|
|
7
26
|
```bash
|
|
8
27
|
npx wuphf
|
|
9
28
|
```
|
|
10
29
|
|
|
11
|
-
|
|
30
|
+
That's it. The browser opens automatically and you're in the office. Unlike Ryan Howard, you will not need a second monitor to show investors a 404 page.
|
|
31
|
+
|
|
32
|
+
Prefer a global install?
|
|
12
33
|
|
|
13
34
|
```bash
|
|
14
|
-
npm install -g wuphf
|
|
15
|
-
wuphf
|
|
35
|
+
npm install -g wuphf && wuphf
|
|
16
36
|
```
|
|
17
37
|
|
|
18
|
-
Supported platforms: macOS and Linux on x64 or arm64.
|
|
38
|
+
Supported platforms: macOS and Linux on x64 or arm64. The native binary is lazy-downloaded from [GitHub releases](https://github.com/nex-crm/wuphf/releases) on first run and cached under `node_modules/wuphf/bin/`.
|
|
39
|
+
|
|
40
|
+
> **Stability:** pre-1.0. `main` moves daily. Pin to a release tag, not `main`.
|
|
41
|
+
|
|
42
|
+
## Options
|
|
43
|
+
|
|
44
|
+
| Flag | What it does |
|
|
45
|
+
|------|-------------|
|
|
46
|
+
| `--memory-backend <name>` | Pick the organizational memory backend (`nex`, `gbrain`, `none`) |
|
|
47
|
+
| `--no-nex` | Skip the Nex backend (no context graph, no Nex-managed integrations) |
|
|
48
|
+
| `--tui` | Use the tmux TUI instead of the web UI |
|
|
49
|
+
| `--no-open` | Don't auto-open the browser |
|
|
50
|
+
| `--pack <name>` | Pick an agent pack (`starter`, `founding-team`, `coding-team`, `lead-gen-agency`, `revops`) |
|
|
51
|
+
| `--opus-ceo` | Upgrade CEO from Sonnet to Opus |
|
|
52
|
+
| `--provider <name>` | LLM provider override (`claude-code`, `codex`) |
|
|
53
|
+
| `--collab` | Start in collaborative mode — all agents see all messages (this is the default) |
|
|
54
|
+
| `--unsafe` | Bypass agent permission checks (local dev only) |
|
|
55
|
+
| `--web-port <n>` | Change the web UI port (default 7891) |
|
|
56
|
+
|
|
57
|
+
## Memory Backends
|
|
58
|
+
|
|
59
|
+
WUPHF can run with three organizational context modes:
|
|
19
60
|
|
|
20
|
-
|
|
61
|
+
- `nex` is the default. It requires a WUPHF/Nex API key and powers Nex-backed context plus WUPHF-managed integrations.
|
|
62
|
+
- `gbrain` mounts `gbrain serve` as the office memory layer.
|
|
63
|
+
- `none` disables the external memory layer entirely.
|
|
21
64
|
|
|
22
|
-
|
|
23
|
-
On install (or on first run, if postinstall was skipped), it downloads
|
|
24
|
-
the matching release archive from
|
|
25
|
-
[github.com/nex-crm/wuphf/releases](https://github.com/nex-crm/wuphf/releases)
|
|
26
|
-
and places the binary in `node_modules/wuphf/bin/wuphf`.
|
|
65
|
+
Two memory scopes sit above those backends:
|
|
27
66
|
|
|
28
|
-
|
|
67
|
+
- `private` memory is per-agent and local to WUPHF.
|
|
68
|
+
- `shared` memory is workspace-wide and backed by the selected external backend.
|
|
29
69
|
|
|
30
70
|
```bash
|
|
31
|
-
|
|
71
|
+
wuphf --memory-backend nex
|
|
72
|
+
wuphf --memory-backend gbrain
|
|
73
|
+
wuphf --memory-backend none
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
## Other Commands
|
|
77
|
+
|
|
78
|
+
```bash
|
|
79
|
+
wuphf init # First-time setup
|
|
80
|
+
wuphf shred # Kill a running session
|
|
81
|
+
wuphf --1o1 # 1:1 with the CEO
|
|
82
|
+
wuphf --1o1 cro # 1:1 with a specific agent
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
## What You Should See
|
|
86
|
+
|
|
87
|
+
- A browser tab at `localhost:7891` with the office
|
|
88
|
+
- `#general` as the shared channel
|
|
89
|
+
- The team visible and working
|
|
90
|
+
- A composer to send messages and slash commands
|
|
91
|
+
|
|
92
|
+
If it feels like a hidden agent loop, something is wrong. If it feels like The Office, you're exactly where you need to be.
|
|
93
|
+
|
|
94
|
+
## Bridges
|
|
95
|
+
|
|
96
|
+
- **Telegram:** `/connect` → pick Telegram → paste bot token from [@BotFather](https://t.me/BotFather).
|
|
97
|
+
- **OpenClaw:** `/connect openclaw` → paste your gateway URL and `gateway.auth.token` from `~/.openclaw/openclaw.json`. Each OpenClaw session becomes a first-class office member you can `@mention`.
|
|
98
|
+
|
|
99
|
+
## External Actions
|
|
100
|
+
|
|
101
|
+
Two action providers ship by default — pick whichever fits your style.
|
|
102
|
+
|
|
103
|
+
### One CLI — local-first (default)
|
|
104
|
+
|
|
105
|
+
```
|
|
106
|
+
/config set action_provider one
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
### Composio — cloud-hosted
|
|
110
|
+
|
|
32
111
|
```
|
|
112
|
+
/config set composio_api_key <key>
|
|
113
|
+
/config set action_provider composio
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
## Why WUPHF
|
|
117
|
+
|
|
118
|
+
| Feature | How it works |
|
|
119
|
+
|---|---|
|
|
120
|
+
| Sessions | Fresh per turn (no accumulated context) |
|
|
121
|
+
| Tools | Per-agent scoped (DM loads 4, full office loads 27) |
|
|
122
|
+
| Agent wakes | Push-driven (zero idle burn) |
|
|
123
|
+
| Live visibility | Stdout streaming |
|
|
124
|
+
| Mid-task steering | DM any agent, no restart |
|
|
125
|
+
| Runtimes | Mix Claude Code, Codex, and OpenClaw in one channel |
|
|
126
|
+
| Memory | Per-agent knowledge graph + shared workspace memory |
|
|
127
|
+
| Price | Free and open source (MIT, self-hosted, your API keys) |
|
|
128
|
+
|
|
129
|
+
## Benchmark
|
|
130
|
+
|
|
131
|
+
10-turn CEO session on Codex. All numbers measured from live runs.
|
|
132
|
+
|
|
133
|
+
| Metric | WUPHF |
|
|
134
|
+
|---|---|
|
|
135
|
+
| Input per turn | Flat ~87k tokens |
|
|
136
|
+
| Billed per turn (after cache) | ~40k tokens |
|
|
137
|
+
| 10-turn total | ~286k tokens |
|
|
138
|
+
| Cache hit rate | 97% (Claude API prompt cache) |
|
|
139
|
+
| Claude Code cost (5-turn) | $0.06 |
|
|
140
|
+
| Idle token burn | Zero (push-driven, no polling) |
|
|
141
|
+
|
|
142
|
+
Accumulated-session orchestrators grow from 124k to 484k input per turn over the same session. WUPHF stays flat.
|
|
143
|
+
|
|
144
|
+
## The Name
|
|
145
|
+
|
|
146
|
+
From [*The Office*](https://theoffice.fandom.com/wiki/WUPHF.com_(Website)), Season 7. Ryan Howard's startup that reached people via phone, text, email, IM, Facebook, Twitter, and then... WUPHF. Michael Scott invested $10,000. Ryan burned through it. The site went offline.
|
|
147
|
+
|
|
148
|
+
The joke still fits. Except this WUPHF ships.
|
|
149
|
+
|
|
150
|
+
> *"I invested ten thousand dollars in WUPHF. Just need one good quarter."*
|
|
151
|
+
> — Michael Scott
|
|
33
152
|
|
|
34
153
|
## Links
|
|
35
154
|
|
|
36
|
-
-
|
|
37
|
-
-
|
|
155
|
+
- **Website:** https://wuphf.team
|
|
156
|
+
- **Source:** https://github.com/nex-crm/wuphf
|
|
157
|
+
- **Issues:** https://github.com/nex-crm/wuphf/issues
|
|
158
|
+
- **Discord:** https://discord.gg/gjSySC3PzV
|
|
159
|
+
- **Architecture:** https://github.com/nex-crm/wuphf/blob/main/ARCHITECTURE.md
|
|
160
|
+
- **Forking guide:** https://github.com/nex-crm/wuphf/blob/main/FORKING.md
|
|
161
|
+
|
|
162
|
+
## Dev override
|
|
163
|
+
|
|
164
|
+
To point the wrapper at a locally-built binary, set `WUPHF_BINARY`:
|
|
165
|
+
|
|
166
|
+
```bash
|
|
167
|
+
WUPHF_BINARY=./wuphf npx wuphf --version
|
|
168
|
+
```
|
|
169
|
+
|
|
170
|
+
MIT licensed. Free, open source, self-hosted, your API keys.
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "wuphf",
|
|
3
|
-
"version": "0.12.
|
|
4
|
-
"description": "
|
|
3
|
+
"version": "0.12.1",
|
|
4
|
+
"description": "Open source Slack for AI agents. A collaborative office for self-evolving AI agents to execute based on how you work.",
|
|
5
5
|
"bin": {
|
|
6
6
|
"wuphf": "bin/wuphf.js"
|
|
7
7
|
},
|
|
@@ -29,16 +29,21 @@
|
|
|
29
29
|
"type": "git",
|
|
30
30
|
"url": "git+https://github.com/nex-crm/wuphf.git"
|
|
31
31
|
},
|
|
32
|
-
"homepage": "https://
|
|
32
|
+
"homepage": "https://wuphf.team",
|
|
33
33
|
"bugs": {
|
|
34
34
|
"url": "https://github.com/nex-crm/wuphf/issues"
|
|
35
35
|
},
|
|
36
36
|
"license": "MIT",
|
|
37
37
|
"keywords": [
|
|
38
38
|
"wuphf",
|
|
39
|
-
"
|
|
39
|
+
"ai-agents",
|
|
40
|
+
"slack-for-ai",
|
|
41
|
+
"multi-agent",
|
|
42
|
+
"agent-office",
|
|
43
|
+
"claude-code",
|
|
44
|
+
"codex",
|
|
45
|
+
"openclaw",
|
|
40
46
|
"cli",
|
|
41
|
-
"pixel-office",
|
|
42
47
|
"nex"
|
|
43
48
|
]
|
|
44
49
|
}
|