mirror of
https://github.com/wu736139669/hapi.git
synced 2026-10-15 20:29:55 +00:00
feat: add support for user message events from Codex
Add sendUserMessage() method to ApiSessionClient and CodexSession to handle user_message events from Codex. Updates CodexConversionResult type and convertCodexEvent() to process user_message payloads, with test coverage.
This commit is contained in:
@@ -6,7 +6,7 @@ import { backoff } from '@/utils/time'
|
||||
import { AsyncLock } from '@/utils/lock'
|
||||
import type { RawJSONLines } from '@/claude/types'
|
||||
import { configuration } from '@/configuration'
|
||||
import type { AgentState, ClientToServerEvents, MessageContent, Metadata, ServerToClientEvents, Session, Update, UserMessage } from './types'
|
||||
import type { AgentState, ClientToServerEvents, MessageContent, MessageMeta, Metadata, ServerToClientEvents, Session, Update, UserMessage } from './types'
|
||||
import { AgentStateSchema, MetadataSchema, UserMessageSchema } from './types'
|
||||
import { RpcHandlerManager } from './rpc/RpcHandlerManager'
|
||||
import { registerCommonHandlers } from '../modules/common/registerCommonHandlers'
|
||||
@@ -184,6 +184,29 @@ export class ApiSessionClient extends EventEmitter {
|
||||
}
|
||||
}
|
||||
|
||||
sendUserMessage(text: string, meta?: MessageMeta): void {
|
||||
if (!text) {
|
||||
return
|
||||
}
|
||||
|
||||
const content: MessageContent = {
|
||||
role: 'user',
|
||||
content: {
|
||||
type: 'text',
|
||||
text
|
||||
},
|
||||
meta: {
|
||||
sentFrom: 'cli',
|
||||
...(meta ?? {})
|
||||
}
|
||||
}
|
||||
|
||||
this.socket.emit('message', {
|
||||
sid: this.sessionId,
|
||||
message: content
|
||||
})
|
||||
}
|
||||
|
||||
sendCodexMessage(body: unknown): void {
|
||||
const content = {
|
||||
role: 'agent',
|
||||
|
||||
Reference in New Issue
Block a user