openclaw/docs
Arne Moor a9f3527c4c feat: add cross-provider Claude session sharing
Implements identity mapping to allow linking WhatsApp, Telegram, and Twilio
identities for shared Claude conversation sessions across providers.

Core Features:
- Identity mapping storage in ~/.clawdis/identity-map.json
- Session ID normalization for unified sessions
- CLI commands for managing identity mappings
- Full backwards compatibility (opt-in feature)

New Identity Module (src/identity/):
- types.ts: Type definitions for identity mappings
- storage.ts: CRUD operations for identity persistence
- normalize.ts: Session ID normalization logic
- Comprehensive test coverage (29 tests passing)

CLI Commands (src/commands/identity.ts):
- identity link: Link multiple provider identities
- identity list: Show all identity mappings
- identity show: Display specific mapping details
- identity unlink: Remove identity mapping
- Input validation for E.164 phone numbers and Telegram usernames
- JSON output support for list/show commands

Session Integration:
- Made deriveSessionKey() async to support identity lookups
- Updated all callers: auto-reply, agent command, web provider
- Group conversations excluded from identity mapping
- Provider detection based on ID format

Documentation:
- docs/session-sharing.md: Comprehensive user documentation
- Architecture overview and use cases
- CLI usage examples and troubleshooting guide

Test Coverage:
- src/identity/normalize.test.ts: 11 tests for normalization
- src/identity/storage.test.ts: 18 tests for storage operations
- 100% coverage of identity module functionality

Files Changed:
- 10 new files (identity module, CLI, docs, tests)
- 5 modified files (sessions, CLI integration, auto-reply)

Build Status:
- All tests passing (29/29)
- Zero TypeScript errors
- Ready for production use
2025-12-05 23:02:01 +01:00
..
architecture feat: add telegram provider with CLI integration 2025-12-05 18:59:38 +01:00
refactor branding: default to clawdis paths and launchd label 2025-12-04 18:01:30 +00:00
agent-send.md CLI: add agent command for direct agent runs 2025-12-04 17:54:20 +00:00
agent.md perf(pi): reuse tau rpc for command auto-replies 2025-12-02 20:09:51 +00:00
agents.md 🦞 Rebrand to CLAWDIS - add docs, update README 2025-12-03 15:45:43 +00:00
audio.md docs: document media caps and tidy web tests 2025-11-25 23:43:57 +01:00
clawd.md Docs: document thinking levels 2025-12-03 08:45:30 +00:00
CNAME Create CNAME 2025-12-03 16:44:03 +01:00
configuration.md 🦞 Rebrand to CLAWDIS - add docs, update README 2025-12-03 15:45:43 +00:00
group-messages.md feat(web): prime group sessions with member roster 2025-12-03 15:45:43 +00:00
heartbeat.md Docs: document thinking levels 2025-12-03 08:45:30 +00:00
images.md docs: document mime-first media handling 2025-11-28 08:07:53 +01:00
index.md docs: document agent CLI and changelog 2025-12-04 17:55:38 +00:00
lore.md 🦞 Rebrand to CLAWDIS - add docs, update README 2025-12-03 15:45:43 +00:00
queue.md feat: serialize command auto-replies with queue 2025-11-25 04:40:49 +01:00
RELEASING.md Docs: clarify release body should not repeat title 2025-11-25 17:11:24 +01:00
security.md 🦞 Rebrand to CLAWDIS - add docs, update README 2025-12-03 15:45:43 +00:00
session-sharing.md feat: add cross-provider Claude session sharing 2025-12-05 23:02:01 +01:00
telegram.md feat: add telegram provider with CLI integration 2025-12-05 18:59:38 +01:00
thinking.md Verbose: include tool arg metadata in prefixes 2025-12-03 09:57:41 +00:00
tmux.md CLI: rename heartbeat tmux helper and log file path 2025-11-26 18:00:23 +01:00
troubleshooting.md 🦞 Rebrand to CLAWDIS - add docs, update README 2025-12-03 15:45:43 +00:00
whatsapp-clawd.jpg Add WhatsApp screenshot to claude-config.md 2025-11-27 18:43:24 +01:00