Export template source from bb884973127a7ae3795981e31d2836f620d6be4c:quixos-instance/interfaces/agent

This commit is contained in:
Quixos Template Publisher
2000-01-01 00:00:00 +00:00
commit e0240b8786
3 changed files with 35 additions and 0 deletions
+26
View File
@@ -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;}
}