Malte Ubl
a020b8054a
record-more
2026-01-02 19:19:25 -08:00
Vishal Yathish
9b95317750
[chat-sdk] add support for streamed messages + example of AI bot ( #1 )
...
* [chat-sdk] add support for streamed messages + example of AI bot
* Refactor to just post AI
* Permissions
* Permissions teams
* empty
* Replay tests
* Better fake stream
* fix-slack-bug
* changeset
---------
Co-authored-by: Malte Ubl <malte.ubl@gmail.com >
2026-01-02 18:58:07 -08:00
Malte Ubl
3de5ee3537
style
2026-01-02 17:21:35 -08:00
Malte Ubl
9108e32089
DX for testing
2026-01-02 17:19:09 -08:00
Malte Ubl
d0e6abef24
Skip in middleware
2026-01-02 17:10:04 -08:00
Malte Ubl
80400c0ac8
Make previews testable
2026-01-02 17:05:44 -08:00
Malte Ubl
d2ffcc2cbe
The great rename
...
We've acquired `chat` on npm. This plan covers renaming all packages and setting up automated publishing.
| Current Name | New Name | Version |
|--------------|----------|---------|
| `chat-sdk` | `chat` | 4.0.0 |
| `@chat-sdk/slack` | `@chat-adapter/slack` | 4.0.0 |
| `@chat-sdk/gchat` | `@chat-adapter/gchat` | 4.0.0 |
| `@chat-sdk/teams` | `@chat-adapter/teams` | 4.0.0 |
| `@chat-sdk/state-memory` | `@chat-adapter/state-memory` | 4.0.0 |
| `@chat-sdk/state-redis` | `@chat-adapter/state-redis` | 4.0.0 |
| `@chat-sdk/state-ioredis` | `@chat-adapter/state-ioredis` | 4.0.0 |
1. **Main package** (`packages/chat-sdk/package.json`):
- Change `"name": "chat-sdk"` → `"name": "chat"`
- Change `"version": "0.1.0"` → `"version": "4.0.0"`
2. **Adapter packages**:
- `packages/adapter-slack/package.json`: `@chat-sdk/slack` → `@chat-adapter/slack`
- `packages/adapter-gchat/package.json`: `@chat-sdk/gchat` → `@chat-adapter/gchat`
- `packages/adapter-teams/package.json`: `@chat-sdk/teams` → `@chat-adapter/teams`
- Update all versions to `4.0.0`
- Update dependency on `chat-sdk` → `chat`
3. **State packages**:
- `packages/state-memory/package.json`: `@chat-sdk/state-memory` → `@chat-adapter/state-memory`
- `packages/state-redis/package.json`: `@chat-sdk/state-redis` → `@chat-adapter/state-redis`
- `packages/state-ioredis/package.json`: `@chat-sdk/state-ioredis` → `@chat-adapter/state-ioredis`
- Update all versions to `4.0.0`
- Update dependency on `chat-sdk` → `chat`
Update `peerDependencies` and `dependencies` in each package:
```json
// Before
"peerDependencies": {
"chat-sdk": "workspace:*"
}
// After
"peerDependencies": {
"chat": "workspace:*"
}
```
Search and replace across the codebase:
| Find | Replace |
|------|---------|
| `from "chat-sdk"` | `from "chat"` |
| `from 'chat-sdk'` | `from 'chat'` |
| `import("chat-sdk")` | `import("chat")` |
| `from "@chat-sdk/slack"` | `from "@chat-adapter/slack"` |
| `from "@chat-sdk/gchat"` | `from "@chat-adapter/gchat"` |
| `from "@chat-sdk/teams"` | `from "@chat-adapter/teams"` |
| `from "@chat-sdk/state-memory"` | `from "@chat-adapter/state-memory"` |
| `from "@chat-sdk/state-redis"` | `from "@chat-adapter/state-redis"` |
| `from "@chat-sdk/state-ioredis"` | `from "@chat-adapter/state-ioredis"` |
Update any references to old package names in:
- `pnpm-workspace.yaml`
- `turbo.json` (task filters)
- Root `package.json` scripts
1. **README.md files** in each package
2. **Examples** (`examples/nextjs-chat/`)
3. **AGENTS.md** and other docs
4. **JSDoc comments** referencing package names
1. **Install changesets**:
```bash
pnpm add -D @changesets/cli
pnpm changeset init
```
2. **Configure `.changeset/config.json`**:
```json
{
"$schema": "https://unpkg.com/@changesets/config@3.0.0/schema.json ",
"changelog": "@changesets/cli/changelog",
"commit": false,
"fixed": [],
"linked": [
["chat", "@chat-adapter/*"]
],
"access": "public",
"baseBranch": "main",
"updateInternalDependencies": "patch",
"ignore": ["example-nextjs-chat"]
}
```
3. **Add GitHub Action** (`.github/workflows/release.yml`):
```yaml
name: Release
on:
push:
branches:
- main
concurrency: ${{ github.workflow }}-${{ github.ref }}
jobs:
release:
name: Release
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: pnpm/action-setup@v2
with:
version: 9
- uses: actions/setup-node@v4
with:
node-version: 20
cache: 'pnpm'
- run: pnpm install
- run: pnpm build
- run: pnpm test
- name: Create Release Pull Request or Publish
uses: changesets/action@v1
with:
publish: pnpm changeset publish
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
```
4. **Add publish config to each package.json**:
```json
"publishConfig": {
"access": "public"
}
```
1. Run full build: `pnpm build`
2. Run typecheck: `pnpm typecheck`
3. Run lint: `pnpm lint`
4. Run tests: `pnpm test`
5. Test local linking in example app
| File | Changes |
|------|---------|
| `packages/chat-sdk/package.json` | Rename to `chat`, version 4.0.0 |
| `packages/adapter-slack/package.json` | Rename to `@chat-adapter/slack`, update deps |
| `packages/adapter-gchat/package.json` | Rename to `@chat-adapter/gchat`, update deps |
| `packages/adapter-teams/package.json` | Rename to `@chat-adapter/teams`, update deps |
| `packages/state-memory/package.json` | Rename to `@chat-adapter/state-memory`, update deps |
| `packages/state-redis/package.json` | Rename to `@chat-adapter/state-redis`, update deps |
| `packages/state-ioredis/package.json` | Rename to `@chat-adapter/state-ioredis`, update deps |
| `examples/nextjs-chat/package.json` | Update all dependencies |
| `packages/integration-tests/package.json` | Update all dependencies |
| `turbo.json` | Update package references |
| All `*.ts` files | Update import statements |
| All `README.md` files | Update package names in docs |
| `.changeset/config.json` | Create new |
| `.github/workflows/release.yml` | Create new |
1. Update all `package.json` files (names, versions, dependencies)
2. Run `pnpm install` to update lockfile
3. Update all import statements in source files
4. Update all import statements in test files
5. Update documentation
6. Set up changesets
7. Run full validation
8. Create initial changeset for 4.0.0 release
9. Commit and push
If issues arise:
1. Git revert the rename commit
2. Run `pnpm install` to restore lockfile
3. Previous npm versions remain available
2026-01-02 13:56:55 -08:00
Malte Ubl
39270b8b5d
DM
2026-01-01 20:28:14 -08:00
Malte Ubl
146e832930
JSX2
2026-01-01 19:11:48 -08:00
Malte Ubl
2af76fe7b4
better-id
2026-01-01 19:04:19 -08:00
Malte Ubl
da0b16fa9a
JSX
2026-01-01 19:01:37 -08:00
Malte Ubl
c75b9bc17d
features
2026-01-01 17:25:27 -08:00
Malte Ubl
d008a719e1
teams-response
2026-01-01 12:42:44 -08:00
Malte Ubl
08d740b4fc
type-safe
2026-01-01 12:27:36 -08:00
Malte Ubl
6580f73280
More emoji
2026-01-01 12:00:28 -08:00
Malte Ubl
ce4baf2183
Type-safe emoji
2026-01-01 11:46:44 -08:00
Malte Ubl
f812ce198c
gchat-limitation
2026-01-01 11:23:44 -08:00
Malte Ubl
ca0e91035d
permissions
2026-01-01 11:18:10 -08:00
Malte Ubl
02dd531545
Emoji support
2026-01-01 11:01:44 -08:00
Malte Ubl
092baf8fdb
Better tests
2026-01-01 09:38:22 -08:00
Malte Ubl
93a82ffc08
IORedis and better validate
2026-01-01 09:11:52 -08:00
Malte Ubl
d696201e98
Refactor
2025-12-31 16:25:22 -08:00
Malte Ubl
874ffbdbf9
replay-tests
2025-12-31 16:10:32 -08:00
Malte Ubl
9a18e55f5e
record
2025-12-31 15:46:27 -08:00
Malte Ubl
26ff575392
step
2025-12-31 14:23:43 -08:00
Malte Ubl
bc0158933f
step
2025-12-31 14:14:05 -08:00
Malte Ubl
cfc823dd5d
logs
2025-12-31 14:06:43 -08:00
Malte Ubl
fb6c1a7bfb
logs
2025-12-31 14:02:28 -08:00
Malte Ubl
e35408476d
logs
2025-12-31 14:01:22 -08:00
Malte Ubl
86868cb1ec
vibe
2025-12-31 13:51:33 -08:00
Malte Ubl
2c78cc1f78
step
2025-12-31 13:22:58 -08:00
Malte Ubl
89dad6a879
step
2025-12-31 13:14:26 -08:00
Malte Ubl
42c705b245
rename
2025-12-22 18:21:52 -08:00
Malte Ubl
f7e9ea8db6
app
2025-12-22 16:52:27 -08:00
Malte Ubl
fac80b9d54
teams9
2025-12-22 16:24:55 -08:00
Malte Ubl
88cee8918e
teams8
2025-12-22 16:24:30 -08:00
Malte Ubl
72f5ea2c0d
teams2
2025-12-22 15:12:34 -08:00
Malte Ubl
d1aa58d71f
teams
2025-12-22 15:10:52 -08:00
Malte Ubl
c2d62198c6
modern-gchat3
2025-12-22 14:05:03 -08:00
Malte Ubl
fc1c8be42f
modern-gchat2
2025-12-22 13:38:55 -08:00
Malte Ubl
9023466bfe
modern-gchat
2025-12-22 13:03:01 -08:00
Malte Ubl
689a298427
modern-gchat
2025-12-22 12:53:38 -08:00
Malte Ubl
17bf5f9ecf
log3
2025-12-22 12:41:13 -08:00
Malte Ubl
64ee0f7746
debug
2025-12-22 12:28:33 -08:00
Malte Ubl
e20ebddd2f
require
2025-12-22 12:25:17 -08:00
Malte Ubl
bf18adc163
OIDC
2025-12-22 12:13:14 -08:00
Malte Ubl
337439dc24
redis
2025-12-22 08:59:05 -08:00
Malte Ubl
1f401aacd0
initial cook
2025-12-21 20:48:14 -08:00