XWorkmate is a Flutter-based AI workspace shell for running assistant threads, local or remote gateway tasks, and multi-agent collaboration in one app.
Rewrites the timeline (§1) and topology (§2) as the correct FOUR-layer chain App → bridge → openclaw-multi-session-plugins → OpenClaw gateway, and documents the plugin's multi-session/multi-thread role: session mapping (appThreadKey⇄openclawSessionKey), per-(session,run) artifactScope = tasks/<sanitize(sessionKey)>/<runId>, the strict sessionKey/runId/artifactScope triplet validation, and the expectedArtifactDirs workspace-root fallback scan. Live-verified against 127.0.0.1:8787 (plugin loaded, commit 2333c3e): - session.prepare returns a real mapping; chat.send returns runId; xworkmate.tasks.get is handled by the plugin but returns no_native_task_record with an empty task scope (chain reaches the plugin layer; the agent run produced no queryable task / no file — a layer-4 execution/landing issue). Adds §7 stability improvements grounded in this live run: - S0 install the plugin from a stable path (not /private/tmp) — the primary reliability fix. - S1 expectedArtifactDirs was [] → the plugin's workspace-root fallback is inert; bridge should always pass default dirs (reports/, artifacts/). - S2 no_native_task_record status ambiguity (running vs completed-without-artifact). - S3 sessionKey/runId/artifactScope triplet consistency (don't pre-prefix agent:main:). - S4 runtime observability across all four layers. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> |
||
|---|---|---|
| .github | ||
| android | ||
| assets | ||
| config | ||
| docs | ||
| images | ||
| integration_test | ||
| ios | ||
| lib | ||
| linux | ||
| macos | ||
| packaging/windows | ||
| releases/v0.5 | ||
| scripts | ||
| test | ||
| third_party | ||
| tmp | ||
| tool | ||
| windows | ||
| .gitignore | ||
| .gitmodules | ||
| .metadata | ||
| agent.md | ||
| AGENTS.md | ||
| analysis_options.yaml | ||
| CHANGELOG.md | ||
| dart_test.yaml | ||
| LICENSE | ||
| Makefile | ||
| package.json | ||
| pubspec.lock | ||
| pubspec.yaml | ||
| README.md | ||
xworkmate-app
Flutter-based AI workspace shell for running assistant threads with local and remote gateway task execution via ACP bridge.
Architecture
Single execution path: Flutter → GoTaskServiceClient → ACP Transport → xworkmate-bridge → Remote Provider
See docs/architecture/ for the full architecture documentation.
Dependencies
| Repository | Role |
|---|---|
| xworkmate-bridge | Go-based ACP control plane and bridge backend |
| xworkspace-core-skills | Core skill bundles (pptx, docx, xlsx, pdf, image, browser automation) |
| openclaw-multi-session-plugins | OpenClaw Gateway multi-session plugin runtime |
| playbooks | Deployment playbooks and infrastructure automation |
Quick Start
git clone https://github.com/x-evor/xworkmate-app.git
cd xworkmate-app
flutter pub get
flutter analyze
flutter test
flutter run -d macos
For local development, keep xworkmate-bridge checked out alongside xworkmate-app, or set XWORKMATE_BRIDGE_DIR explicitly before building.
macOS (Xcode)
open macos/Runner.xcworkspace
# or
make open-macos-xcode
In Xcode:
- Select the shared
Runnerscheme - Select
My Macas the destination - Configure signing only on the
Runnertarget - Leave CocoaPods plugin targets under
Podsalone
For release builds:
flutter build macos
make build-macos
Downloads
| Platform | Download |
|---|---|
| macOS | Latest Release |
| Windows | Latest Release |
| Linux | Latest Release |
| iOS | Latest Release |
| Android | Latest Release |