openAgent
gitlabThe open source UNIVERSAL agent.
clone
https://gitlab.com/bitzzdev/openAgent.gitAIagentautomationopen-sourceuniversal-agent
export * as Pty from "./pty"import { Schema } from "effect"import { optional } from "./schema"import { define, inventory } from "./event"import { ascending } from "./identifier"import { NonNegativeInt, PositiveInt, statics } from "./schema"const IDSchema = Schema.String.check(Schema.isStartsWith("pty")).pipe(Schema.brand("PtyID"))export const ID = IDSchema.pipe(statics((schema: typeof IDSchema) => {const create = () => schema.make("pty_" + ascending())return {create,ascending: (id?: string) => (id === undefined ? create() : schema.make(id)),}}),)export type ID = typeof ID.Typeexport const Info = Schema.Struct({id: ID,title: Schema.String,command: Schema.String,args: Schema.Array(Schema.String),cwd: Schema.String,status: Schema.Literals(["running", "exited"]),pid: NonNegativeInt,exitCode: optional(NonNegativeInt),}).annotate({ identifier: "Pty" })export interface Info extends Schema.Schema.Type<typeof Info> {}const Created = define({ type: "pty.created", schema: { info: Info } })const Updated = define({ type: "pty.updated", schema: { info: Info } })const Exited = define({ type: "pty.exited", schema: { id: ID, exitCode: NonNegativeInt } })const Deleted = define({ type: "pty.deleted", schema: { id: ID } })export const Event = { Created, Updated, Exited, Deleted, Definitions: inventory(Created, Updated, Exited, Deleted) }export const CreateInput = Schema.Struct({command: optional(Schema.String),args: optional(Schema.Array(Schema.String)),cwd: optional(Schema.String),title: optional(Schema.String),env: optional(Schema.Record(Schema.String, Schema.String)),})export interface CreateInput extends Schema.Schema.Type<typeof CreateInput> {}export const UpdateInput = Schema.Struct({title: optional(Schema.String),size: optional(Schema.Struct({rows: PositiveInt,cols: PositiveInt,}),),})export interface UpdateInput extends Schema.Schema.Type<typeof UpdateInput> {}