Export template source from 43221c5830728997f440121868f5000a6460c4ff:quixos-instance/interfaces/agent
This commit is contained in:
@@ -0,0 +1,26 @@
|
||||
external atom AgentDirectoryObject id "atom:org.quixos.agent:directory";
|
||||
external atom AgentObject id "atom:org.quixos.agent:agent";
|
||||
external atom AgentThreadObject id "atom:org.quixos.agent:thread";
|
||||
external atom AgentRequestObject id "atom:org.quixos.agent:request";
|
||||
external atom AgentItemObject id "atom:org.quixos.agent:item";
|
||||
external atom AgentQuestionObject id "atom:org.quixos.agent:question";
|
||||
external atom AgentCompletionStreamObject id "atom:org.quixos.agent:completion-stream";
|
||||
|
||||
import interface EventStream;
|
||||
import interface AgentContextSubject;
|
||||
type AgentSubmission = record {text:string;data:optional<string>;profile:optional<string>;response:optional<string>;sourceKind:string;sourceLabel:string;publication:optional<string>;createdAt:string;contexts:list<interface-ref<AgentContextSubject>>;related:optional<atom-ref<AgentRequestObject>>;retryOf:optional<atom-ref<AgentRequestObject>>;root:optional<atom-ref<AgentRequestObject>>;causalDepth:uint32;};
|
||||
type AgentAdmission = record {accepted:bool;reason:optional<string>;thread:optional<atom-ref<AgentThreadObject>>;request:optional<atom-ref<AgentRequestObject>>;};
|
||||
type AgentData = record {name:string;description:string;enabled:bool;settings:string;};
|
||||
type AgentCompletion = record {request:atom-ref<AgentRequestObject>;thread:atom-ref<AgentThreadObject>;status:string;};
|
||||
interface Agent id "interface:org.quixos.agent:agent" revision "interface:org.quixos.agent:agent@1" {
|
||||
queryable value data id "agent:data" : AgentData {get id "agent:data:get" execution snapshot;}
|
||||
queryable value instructions id "agent:instructions" : string {get id "agent:instructions:get" execution snapshot;edit id "agent:instructions:edit" execution transaction;}
|
||||
queryable relation directory id "agent:directory" : exactly-one atom AgentDirectoryObject {resolve id "agent:directory:resolve" execution snapshot;}
|
||||
queryable relation threads id "agent:threads" : many-unique atom AgentThreadObject {resolve id "agent:threads:resolve" execution snapshot;}
|
||||
queryable relation completions id "agent:completions" : exactly-one interface EventStream<AgentCompletion> {resolve id "agent:completions:resolve" execution snapshot;}
|
||||
operation update id "agent:update" : record {name:optional<string>;description:optional<string>;enabled:optional<bool>;settings:optional<string>;} -> unit {call id "agent:update:call" execution transaction;}
|
||||
operation createThread id "agent:create-thread" : record {title:string;kind:string;createdAt:string;contexts:list<interface-ref<AgentContextSubject>>;} -> atom-ref<AgentThreadObject> {call id "agent:create-thread:call" execution transaction;}
|
||||
operation request id "agent:request" : AgentSubmission -> AgentAdmission {call id "agent:request:call" execution transaction;}
|
||||
operation tryRequest id "agent:try-request" : AgentSubmission -> AgentAdmission {call id "agent:try-request:call" execution transaction;}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user