Add messages support to runAgent for multi-turn bot conversations (#23395)
- Extend `runAgent` so callers can pass either a one-shot prompt or a multi-turn messages array (user / assistant text), matching AI SDK’s XOR shape — for Slack/Discord/Teams bots that need thread history. - Enforce exactly one of prompt | messages in AgentRunService; map messages 1:1 to AI SDK ModelMessages in AgentAsyncExecutorService - Update shared types, GraphQL/SDK inputs, docs (skills-and-agents), and regenerate metadata clients; existing prompt-only callers stay unchanged <!-- This is an auto-generated description by cubic. --> <a href="https://cubic.dev/pr/twentyhq/twenty/pull/23395?utm_source=github" target="_blank" rel="noopener noreferrer" data-no-image-dialog="true"><picture><source media="(prefers-color-scheme: dark)" srcset="https://www.cubic.dev/buttons/review-in-cubic-dark.svg"><source media="(prefers-color-scheme: light)" srcset="https://www.cubic.dev/buttons/review-in-cubic-light.svg"><img alt="Review in cubic" src="https://www.cubic.dev/buttons/review-in-cubic-dark.svg"></picture></a> <!-- End of auto-generated description by cubic. -->
This commit is contained in:
@@ -135,7 +135,12 @@ export type {
|
||||
RowLevelPermissionPredicateManifest,
|
||||
RoleManifest,
|
||||
} from './roleManifestType';
|
||||
export type { RunAgentInput, RunAgentResult } from './runAgentType';
|
||||
export type {
|
||||
RunAgentMessageRole,
|
||||
RunAgentMessage,
|
||||
RunAgentInput,
|
||||
RunAgentResult,
|
||||
} from './runAgentType';
|
||||
export type { ServerVariables } from './server-variables.type';
|
||||
export type { ServerRouteDispatchResult } from './serverRouteDispatchResultType';
|
||||
export type { ServerRouteTriggerSettings } from './serverRouteTriggerSettingsType';
|
||||
|
||||
@@ -1,7 +1,16 @@
|
||||
export type RunAgentMessageRole = 'user' | 'assistant';
|
||||
|
||||
export type RunAgentMessage = {
|
||||
role: RunAgentMessageRole;
|
||||
content: string;
|
||||
};
|
||||
|
||||
export type RunAgentInput = {
|
||||
agentUniversalIdentifier: string;
|
||||
prompt: string;
|
||||
};
|
||||
} & (
|
||||
| { prompt: string; messages?: never }
|
||||
| { messages: RunAgentMessage[]; prompt?: never }
|
||||
);
|
||||
|
||||
export type RunAgentResult = {
|
||||
result: object | null;
|
||||
|
||||
Reference in New Issue
Block a user