mirror of
https://github.com/getcompanion-ai/co-mono.git
synced 2026-04-16 16:00:58 +00:00
Extensions: add pi.sendUserMessage() for sending user messages
Adds sendUserMessage() to the extension API, allowing extensions to send actual user messages (role: user) rather than custom messages. Unlike sendMessage(), this always triggers a turn and behaves as if the user typed the message. - Add SendUserMessageHandler type and sendUserMessage() to ExtensionAPI - Wire handler through loader, runner, and all modes - Implement via prompt() with expandPromptTemplates: false - Add send-user-message.ts example with /ask, /steer, /followup commands - Document in extensions.md fixes #483
This commit is contained in:
parent
f023af0dab
commit
7210086677
13 changed files with 222 additions and 1 deletions
|
|
@ -83,6 +83,7 @@ describe.skipIf(!API_KEY)("Compaction extensions", () => {
|
|||
flagValues: new Map(),
|
||||
shortcuts: new Map(),
|
||||
setSendMessageHandler: () => {},
|
||||
setSendUserMessageHandler: () => {},
|
||||
setAppendEntryHandler: () => {},
|
||||
setGetActiveToolsHandler: () => {},
|
||||
setGetAllToolsHandler: () => {},
|
||||
|
|
@ -111,6 +112,7 @@ describe.skipIf(!API_KEY)("Compaction extensions", () => {
|
|||
extensionRunner.initialize({
|
||||
getModel: () => session.model,
|
||||
sendMessageHandler: async () => {},
|
||||
sendUserMessageHandler: async () => {},
|
||||
appendEntryHandler: async () => {},
|
||||
getActiveToolsHandler: () => [],
|
||||
getAllToolsHandler: () => [],
|
||||
|
|
@ -284,6 +286,7 @@ describe.skipIf(!API_KEY)("Compaction extensions", () => {
|
|||
flagValues: new Map(),
|
||||
shortcuts: new Map(),
|
||||
setSendMessageHandler: () => {},
|
||||
setSendUserMessageHandler: () => {},
|
||||
setAppendEntryHandler: () => {},
|
||||
setGetActiveToolsHandler: () => {},
|
||||
setGetAllToolsHandler: () => {},
|
||||
|
|
@ -339,6 +342,7 @@ describe.skipIf(!API_KEY)("Compaction extensions", () => {
|
|||
flagValues: new Map(),
|
||||
shortcuts: new Map(),
|
||||
setSendMessageHandler: () => {},
|
||||
setSendUserMessageHandler: () => {},
|
||||
setAppendEntryHandler: () => {},
|
||||
setGetActiveToolsHandler: () => {},
|
||||
setGetAllToolsHandler: () => {},
|
||||
|
|
@ -376,6 +380,7 @@ describe.skipIf(!API_KEY)("Compaction extensions", () => {
|
|||
flagValues: new Map(),
|
||||
shortcuts: new Map(),
|
||||
setSendMessageHandler: () => {},
|
||||
setSendUserMessageHandler: () => {},
|
||||
setAppendEntryHandler: () => {},
|
||||
setGetActiveToolsHandler: () => {},
|
||||
setGetAllToolsHandler: () => {},
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue