Files
zeekay ca704d3e6a chore: rebrand openclaw → hanzo-bot for bridge merge
Comprehensive rename of all openclaw references to hanzo-bot equivalents:
- Package: openclaw → @hanzo/bot
- Binary: openclaw → hanzo-bot
- Types: OpenClaw* → Bot*
- Env vars: OPENCLAW_* → BOT_*
- Android: ai.openclaw.android → ai.hanzo.bot.android
- iOS/macOS: ai.openclaw.* → ai.hanzo.*
- Swift modules: OpenClaw* → Bot*
- Plugins: openclaw.plugin.json → bot.plugin.json
- Paths: .openclaw/ → .hanzo/bot/
- URLs: github.com/openclaw → github.com/hanzoai
2026-02-26 22:36:01 -08:00

46 lines
1.5 KiB
Swift

import Foundation
public enum HanzoBotChatTransportEvent: Sendable {
case health(ok: Bool)
case tick
case chat(HanzoBotChatEventPayload)
case agent(HanzoBotAgentEventPayload)
case seqGap
}
public protocol HanzoBotChatTransport: Sendable {
func requestHistory(sessionKey: String) async throws -> HanzoBotChatHistoryPayload
func sendMessage(
sessionKey: String,
message: String,
thinking: String,
idempotencyKey: String,
attachments: [HanzoBotChatAttachmentPayload]) async throws -> HanzoBotChatSendResponse
func abortRun(sessionKey: String, runId: String) async throws
func listSessions(limit: Int?) async throws -> HanzoBotChatSessionsListResponse
func requestHealth(timeoutMs: Int) async throws -> Bool
func events() -> AsyncStream<HanzoBotChatTransportEvent>
func setActiveSessionKey(_ sessionKey: String) async throws
}
extension HanzoBotChatTransport {
public func setActiveSessionKey(_: String) async throws {}
public func abortRun(sessionKey _: String, runId _: String) async throws {
throw NSError(
domain: "HanzoBotChatTransport",
code: 0,
userInfo: [NSLocalizedDescriptionKey: "chat.abort not supported by this transport"])
}
public func listSessions(limit _: Int?) async throws -> HanzoBotChatSessionsListResponse {
throw NSError(
domain: "HanzoBotChatTransport",
code: 0,
userInfo: [NSLocalizedDescriptionKey: "sessions.list not supported by this transport"])
}
}