groupchat 0.3.0 → 1.0.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.
Files changed (2) hide show
  1. package/README.md +74 -20
  2. package/package.json +10 -11
package/README.md CHANGED
@@ -1,11 +1,10 @@
1
1
  # Groupchat
2
2
 
3
- <img width="1154" height="263" alt="image" src="https://github.com/user-attachments/assets/77f90383-32d2-4110-9774-9b911fa01b9c" />
3
+ Last updated: July 8, 2026
4
4
 
5
- Groupchat is a real-time messaging app for developers, built natively in your terminal. Chat with your team and run AI agents like Claude—without leaving your workflow.
6
-
7
- <img width="1510" height="953" alt="image" src="https://github.com/user-attachments/assets/b444f066-74fb-4dda-a677-741f70c71cf6" />
5
+ <img width="1154" height="263" alt="Groupchat terminal header" src="https://github.com/user-attachments/assets/77f90383-32d2-4110-9774-9b911fa01b9c" />
8
6
 
7
+ Groupchat is the remote agent client for Groupchat. Keep it running on a machine that has `codex` installed, and Codex responds to `@mentions` from your Groupchat workspace — running locally on that machine and streaming its work back into the conversation.
9
8
 
10
9
  ## Install
11
10
 
@@ -13,38 +12,93 @@ Groupchat is a real-time messaging app for developers, built natively in your te
13
12
  npm install -g groupchat
14
13
  ```
15
14
 
15
+ The npm package installs a small launcher plus a platform-specific binary package. Current binary targets are:
16
+
17
+ - macOS arm64 and x64
18
+ - Linux arm64 and x64
19
+ - Windows x64
20
+
16
21
  ## Start
17
22
 
18
23
  ```bash
19
24
  groupchat
20
25
  ```
21
26
 
22
- On first launch, you'll be prompted to log in via your browser. After that, you're in.
27
+ On first launch, Groupchat opens a browser login flow. Auth tokens are stored in your OS keychain, and your selected org is stored under `~/.config/groupchat/`.
28
+
29
+ Once you're logged in (and have picked an org, if you belong to several), Groupchat shows a compact control panel and goes online as a remote:
30
+
31
+ - It advertises the session as available for remote agent runs.
32
+ - When someone `@mentions` an agent in your workspace, it runs Codex locally in the directory you launched from.
33
+ - The response streams back into the conversation as it happens, and follow-up thread replies continue the same Codex conversation.
34
+
35
+ The panel shows connection status, whether `codex` is available on `PATH`, active runs with live progress, and recent run history.
36
+
37
+ ## Keyboard Shortcuts
38
+
39
+ | Shortcut | Action |
40
+ | --- | --- |
41
+ | `Ctrl+O` | Log out. |
42
+ | `Ctrl+C` twice | Exit the app. |
43
+
44
+ ## Configuration
45
+
46
+ Groupchat uses production services by default:
23
47
 
24
- ## Features
48
+ - Console: `https://app.groupchatty.com`
49
+ - WebSocket: `wss://api.groupchatty.com/socket`
25
50
 
26
- - **Real-time messaging** instant delivery across channels
27
- - **Embedded AI agents** — run Claude directly in any conversation
28
- - **Live presence** — see who's online and typing
29
- - **Keyboard-driven** — no mouse required
51
+ For development or staging, override them with environment variables:
30
52
 
31
- ## Using Claude
53
+ ```bash
54
+ GROUPCHAT_CONSOLE_URL=http://localhost:4000 \
55
+ GROUPCHAT_WS_URL=ws://localhost:4000/socket \
56
+ groupchat
57
+ ```
32
58
 
33
- In any channel, you can invoke Claude as an embedded agent. Claude runs inline with full tool use—read files, run commands, and get answers without switching apps.
59
+ Useful environment variables:
34
60
 
35
- ## Development (WIP)
61
+ | Variable | Purpose |
62
+ | --- | --- |
63
+ | `GROUPCHAT_CONSOLE_URL` | Browser login and HTTP API base URL. |
64
+ | `GROUPCHAT_WS_URL` | Phoenix socket URL. |
65
+ | `GROUPCHAT_PROFILE` | Separate keychain/config profile, useful for multiple test users. |
66
+ | `GROUPCHAT_DEBUG=1` | Enable debug logging. |
67
+ | `GROUPCHAT_DEBUG_FILE` | Override the debug log path. Defaults to `.logs/tui-debug.log`. |
68
+ | `GROUPCHAT_DEBUG_STDERR=1` | Also write debug logs to stderr. |
36
69
 
37
- We encourage builders to contribute to `groupchat` to add agents, improve the UX, or even build new clients (like a desktop app!). Please email svapnila at gmail dot com if you have any questions.
70
+ ## Development
71
+
72
+ This package is the OpenTUI/Solid terminal client.
38
73
 
39
74
  ```bash
40
- cd tui
41
- npm install
42
- npm run dev # watch mode
43
- npm run dev:debug # watch mode + debug log at .logs/tui-debug.log
44
- npm run build # production build
45
- npm run typecheck # type check
75
+ bun install
76
+ bun run dev # watch mode
77
+ bun run dev:user2 # watch mode with GROUPCHAT_PROFILE=user2
78
+ bun run dev:debug # debug log at .logs/tui-debug.log
79
+ bun run dev:debug:watch # debug logging + watch mode
80
+ bun run dev:debug:console # debug logging + OpenTUI console
81
+ bun run build # production bundle + current-platform binary
82
+ bun run build --all # production binaries for every supported target
83
+ bun run start # run dist/index.js after a build
84
+ bun run typecheck # TypeScript check
85
+ bun test ./test # test suite
86
+ bun run test:watch # watch tests
87
+ bun run test:update-snapshots
46
88
  ```
47
89
 
90
+ The build writes standalone binaries under `npm/<platform>-<arch>/bin/`. The published `groupchat` package delegates to the matching `@groupchat-cli/<platform>-<arch>` optional dependency.
91
+
92
+ ### The old chat UI
93
+
94
+ Earlier versions of this package were a full terminal chat client (channels, DMs, presence, inline `/claude` and `/codex` agents, local `!` shell commands). That UI was retired when the remote agent client became the product; the web app is the chat surface now. The code is preserved under `archived/chat-ui/` (excluded from the build, typecheck, and tests) — see `archived/chat-ui/README.md` for what's there and how to resurrect it.
95
+
96
+ ## Contributing
97
+
98
+ Contributions are welcome for new harness integrations and terminal UX improvements.
99
+
100
+ Questions: svapnila at gmail dot com
101
+
48
102
  ## License
49
103
 
50
104
  AGPL-3.0-or-later
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "groupchat",
3
- "version": "0.3.0",
3
+ "version": "1.0.0",
4
4
  "description": "CLI chat client for Groupchat (OpenTUI)",
5
5
  "bin": {
6
6
  "groupchat": "bin/groupchat"
@@ -13,26 +13,25 @@
13
13
  ],
14
14
  "scripts": {
15
15
  "dev": "bun --watch run src/index.tsx",
16
+ "remote": "GROUPCHAT_WS_URL=ws://localhost:4000/socket GROUPCHAT_CONSOLE_URL=http://localhost:3000 bun src/index.tsx",
16
17
  "dev:user2": "GROUPCHAT_PROFILE=user2 bun --watch run src/index.tsx",
17
18
  "dev:debug": "GROUPCHAT_DEBUG=1 bun run src/index.tsx",
18
19
  "dev:debug:watch": "GROUPCHAT_DEBUG=1 bun --watch run src/index.tsx",
19
20
  "dev:debug:console": "GROUPCHAT_DEBUG=1 SHOW_CONSOLE=true bun --watch run src/index.tsx",
20
21
  "build": "bun run build.ts",
21
22
  "start": "bun run dist/index.js",
22
- "test": "bun test test --preload @opentui/solid/preload",
23
- "test:claude": "bun test test/claude --preload @opentui/solid/preload",
24
- "test:watch": "bun test test --watch --preload @opentui/solid/preload",
25
- "test:update-snapshots": "bun test test --update-snapshots --preload @opentui/solid/preload",
26
- "claude:capture-ndjson": "bun run scripts/claude/capture-ndjson.ts",
23
+ "test": "bun test ./test --preload @opentui/solid/preload",
24
+ "test:watch": "bun test ./test --watch --preload @opentui/solid/preload",
25
+ "test:update-snapshots": "bun test ./test --update-snapshots --preload @opentui/solid/preload",
27
26
  "typecheck": "tsc --noEmit",
28
27
  "prepublishOnly": "bun run typecheck && bun run build"
29
28
  },
30
29
  "optionalDependencies": {
31
- "@groupchat-cli/darwin-arm64": "0.3.0",
32
- "@groupchat-cli/darwin-x64": "0.3.0",
33
- "@groupchat-cli/linux-arm64": "0.3.0",
34
- "@groupchat-cli/linux-x64": "0.3.0",
35
- "@groupchat-cli/win32-x64": "0.3.0"
30
+ "@groupchat-cli/darwin-arm64": "1.0.0",
31
+ "@groupchat-cli/darwin-x64": "1.0.0",
32
+ "@groupchat-cli/linux-arm64": "1.0.0",
33
+ "@groupchat-cli/linux-x64": "1.0.0",
34
+ "@groupchat-cli/win32-x64": "1.0.0"
36
35
  },
37
36
  "dependencies": {},
38
37
  "devDependencies": {