openAgent
gitlabThe open source UNIVERSAL agent.
clone
https://gitlab.com/bitzzdev/openAgent.gitAIagentautomationopen-sourceuniversal-agent
import { Schema } from "effect"import { optional } from "./schema"import { statics } from "./schema"export interface Source extends Schema.Schema.Type<typeof Source> {}export const Source = Schema.Struct({start: Schema.Finite,end: Schema.Finite,text: Schema.String,}).annotate({ identifier: "Prompt.Source" })export interface FileAttachment extends Schema.Schema.Type<typeof FileAttachment> {}export const FileAttachment = Schema.Struct({uri: Schema.String,mime: Schema.String,name: Schema.String.pipe(optional),description: Schema.String.pipe(optional),source: Source.pipe(optional),}).annotate({ identifier: "Prompt.FileAttachment" }).pipe(statics((schema) => ({create: (input: FileAttachment) =>schema.make({uri: input.uri,mime: input.mime,name: input.name,description: input.description,source: input.source,}),})),)export interface AgentAttachment extends Schema.Schema.Type<typeof AgentAttachment> {}export const AgentAttachment = Schema.Struct({name: Schema.String,source: Source.pipe(optional),}).annotate({ identifier: "Prompt.AgentAttachment" })export interface Prompt extends Schema.Schema.Type<typeof Prompt> {}export const Prompt = Schema.Struct({text: Schema.String,files: Schema.Array(FileAttachment).pipe(optional),agents: Schema.Array(AgentAttachment).pipe(optional),}).annotate({ identifier: "Prompt" }).pipe(statics((schema) => ({equivalence: Schema.toEquivalence(schema),fromUserMessage: (input: Pick<Prompt, "text" | "files" | "agents">) =>schema.make({text: input.text,...(input.files === undefined ? {} : { files: input.files }),...(input.agents === undefined ? {} : { agents: input.agents }),}),})),)