Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
57 commits
Select commit Hold shift + click to select a range
eced5a1
Add OpenClaw bridge package skeleton
May 16, 2026
a388a23
Add OpenClaw bridge registration config
May 16, 2026
5905c34
Add OpenClaw agent room registry
May 16, 2026
313886f
Add OpenClaw approval response mapping
May 16, 2026
41b9fc6
Add OpenClaw gateway runtime wrapper
May 16, 2026
043966c
Add OpenClaw Matrix bridge coordinator
May 16, 2026
7252973
Add OpenClaw bridge management CLI
May 16, 2026
8b59e29
Add OpenClaw Pickle bridge connector
May 16, 2026
2974170
Add OpenClaw session backfill planning
May 16, 2026
cbf35b6
Wire OpenClaw history into bridge backfill
May 16, 2026
2ba589d
Add OpenClaw Beeper setup helpers
May 16, 2026
4918041
Add OpenClaw HTTP gateway transport
May 16, 2026
5922ca4
Add OpenClaw Beeper bridge runtime
May 16, 2026
c449f8a
Persist OpenClaw Beeper account identity
May 16, 2026
75b2fcb
Add OpenClaw bridge start command
May 16, 2026
d460ca3
Support Beeper account creation in OpenClaw setup
May 16, 2026
c6e401d
Model OpenClaw session users as ghosts
May 16, 2026
afeeabe
Add OpenClaw WebSocket gateway transport
May 16, 2026
b28f9fd
Expose broader OpenClaw gateway features
May 16, 2026
2d89f80
Add OpenClaw session backfill executor
May 16, 2026
adcb310
Normalize OpenClaw gateway stream events
May 16, 2026
58cfd37
Add OpenClaw protocol coverage manifest
May 16, 2026
f75e8b4
Document OpenClaw bridge package usage
May 16, 2026
a7c03ef
Wire OpenClaw startup backfill
batuhan May 16, 2026
7b6fce6
Force non-federated OpenClaw portals
batuhan May 16, 2026
227f644
Expose OpenClaw gateway RPC management
batuhan May 16, 2026
00a8a11
Create sessions for OpenClaw agent DMs
batuhan May 16, 2026
60ba686
Merge remote-tracking branch 'origin/main' into batuhan/oc-2
May 24, 2026
514a1a9
Refactor core workflow and supporting modules
May 24, 2026
51d4bdf
Remove gateway token fallback from OpenClaw bridge
May 25, 2026
485850a
Refine pickle openclaw plugin packaging and session handling
May 25, 2026
b38b4d9
Stream OpenClaw runs through AG-UI channel replies
May 25, 2026
b33f1c2
Require native OpenClaw channel turns for Beeper streaming
May 25, 2026
6a06ccd
Fix Beeper plugin to stream AG-UI responses natively
May 25, 2026
7475c36
Propagate Matrix room ids into OpenClaw turns
May 25, 2026
d58a809
Fix Beeper streaming and approval tool-call shapes
May 25, 2026
94a36cf
Stream Beeper tool output and handle OpenClaw slash commands
May 26, 2026
584b067
Add HTML formatting to OpenClaw command replies
May 27, 2026
41644c2
Rewrite OpenClaw as a first-class Beeper network connector
May 27, 2026
cb8fc40
Refactor pickle data flow and UI state handling
May 27, 2026
739e0ec
Sync openclaw manifest schema with bridge config
May 27, 2026
2e805e6
Enable native Beeper stream identities and tool streaming
May 27, 2026
7274fad
Handle Codex tool stream events without false positives
May 27, 2026
1c6b06c
Rename OpenClaw package and remove plan files
May 27, 2026
97207e4
Update beeper runtime and client operation types
Jun 1, 2026
7bee27a
sync
Jun 2, 2026
0349ca5
Refactor bridge core for bridgev2 room state handling
Jun 2, 2026
28cac3c
Push ghost profiles through bridgev2 appservice intents
Jun 2, 2026
090c8ee
Fix Beeper rich stream finalization
Jun 2, 2026
c4d9f2e
wip
Jun 2, 2026
8e6eb49
Add multi-account Beeper onboarding
batuhan Jun 2, 2026
0de2f1d
Add Beeper account auth presence
batuhan Jun 2, 2026
2dd203d
Fix OpenClaw bridge release checks
batuhan Jun 3, 2026
ad054c3
Build packages before CI tests
batuhan Jun 3, 2026
b15b435
Avoid deep OpenClaw plugin test comparisons
batuhan Jun 3, 2026
8670bca
Increase OpenClaw CI smoke test timeouts
batuhan Jun 3, 2026
14f1468
Harden release pipeline manifests
batuhan Jun 3, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 7 additions & 7 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,21 +12,21 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v6

- name: Setup pnpm
uses: pnpm/action-setup@v4
uses: pnpm/action-setup@v6
with:
version: 10.25.0

- name: Setup Node
uses: actions/setup-node@v4
uses: actions/setup-node@v6
with:
node-version: 22
cache: pnpm

- name: Setup Go
uses: actions/setup-go@v5
uses: actions/setup-go@v6
with:
go-version-file: packages/pickle/native/go.mod
cache-dependency-path: packages/pickle/native/go.sum
Expand All @@ -37,15 +37,15 @@ jobs:
- name: Typecheck
run: pnpm typecheck

- name: Build
run: pnpm build

- name: Test
run: pnpm test

- name: Go test
run: pnpm test:go

- name: Build
run: pnpm build

- name: Pack packages
run: pnpm pack:packages

Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,24 +20,24 @@ jobs:
pull-requests: write
steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v6
with:
fetch-depth: 0

- name: Setup pnpm
uses: pnpm/action-setup@v4
uses: pnpm/action-setup@v6
with:
version: 10.25.0

- name: Setup Node
uses: actions/setup-node@v4
uses: actions/setup-node@v6
with:
node-version: 24
registry-url: https://registry.npmjs.org
cache: pnpm

- name: Setup Go
uses: actions/setup-go@v5
uses: actions/setup-go@v6
with:
go-version-file: packages/pickle/native/go.mod
cache-dependency-path: packages/pickle/native/go.sum
Expand Down
40 changes: 40 additions & 0 deletions AGENTS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
# OpenClaw plugin

Use Crabpot for OpenClaw plugin and integration compatibility testing. Crabpot is the OpenClaw compatibility testbed for community plugins, plugin API seams, channel registration, lifecycle hooks, provider capabilities, cold imports, workspace planning, and static execution policy.

Expected sibling checkouts:

```sh
/Users/batuhan/Projects/pickle
/Users/batuhan/Projects/crabpot
/Users/batuhan/Projects/openclaw
```

If Crabpot is missing, set it up from the Pickle repo with:

```sh
git clone https://github.com/openclaw/crabpot.git ../crabpot
npm --prefix ../crabpot install
npm --prefix ../crabpot test
```

Crabpot defaults to `../openclaw` for source-mode OpenClaw checks. Clone `https://github.com/openclaw/openclaw.git` there when the checkout is missing, or set `CRABPOT_DIR=/path/to/crabpot` when Crabpot lives elsewhere.

Run the full Pickle and OpenClaw plugin compatibility suite with:

```sh
npm run full-test
```

That runs Pickle's existing `pnpm check` first, then `npm run check` in Crabpot through `scripts/openclaw-crabpot-full-test.mjs`.

Useful narrower commands:

```sh
npm run test:openclaw:plugins
npm --prefix ../crabpot run check
npm --prefix ../crabpot run report -- --check
npm --prefix ../crabpot run workspace:plan
```

Crabpot default checks are credential-free. Do not run opt-in isolated execution commands unless the task explicitly needs side effects, for example `CRABPOT_EXECUTE_ISOLATED=1 npm --prefix ../crabpot run workspace:execute -- --fixture <fixture>`.
4 changes: 4 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,3 +7,7 @@
- Node file storage, Cloudflare KV storage, and Durable Object storage helpers.
- Matrix messages, room threads, reactions, media, DMs, typing, read receipts,
long polling, and Chat SDK adapter mapping.
- OpenClaw Beeper channel plugin for exposing OpenClaw agents and sessions over
Beeper/Matrix, including setup metadata, appservice registration, agent ghost
contacts, command discovery, approval handling, and native Beeper turn
streaming.
7 changes: 6 additions & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ Requires Node 22+, pnpm 9+, and a Go toolchain.
pnpm typecheck
pnpm test
pnpm build
go test ./... # run from packages/pickle/native
pnpm test:go # runs Pickle's Go tests with the goolm build tag
```

## Release
Expand All @@ -32,6 +32,11 @@ When changes land on `main`, GitHub Actions opens or updates a release PR.
Merging that release PR runs the full `pnpm check` gate, publishes changed
packages with `pnpm changeset publish`, and creates GitHub Releases.

For the initial public release, package manifests already start at `0.1.0`.
Publish those unpublished `0.1.0` packages directly through the release
workflow; after that first publish, every user-facing package change should
carry a normal changeset.

Publishing uses npm Trusted Publishing through GitHub Actions OIDC. Each npm
package must configure this trusted publisher on npmjs.com:

Expand Down
Loading