Skip to content

Cletus: AGI #172

@ClickerMonkey

Description

@ClickerMonkey

Lets bring AGI to Cletus!

With a self organizing and self improving autonomous system that can consume information and take action in the digital realm you can convert one command into an organism that evolves based on natural human organizational structures, feedback loops, research, and actioning.

This is analogous to a human having an objective, does research, hires specialists, takes action, and once is overloaded by work hires managers to organize the specialists into groups. The managers are a conduit of information, starting top down with requests, creating short lived chats with other members of the organization to get some results. There are periodic evaluations where from the top down the new directive is shared with how resources should be allocated and all managers measure member performance and take organizational action in any direction until all member capacities reach the new allocations. It needs to be thought of this way because we handle so many requests at a time and we want to spend money in exact alignment with what we want AGI to do.

type Member { name, profile, prompt, manager }
type MemberSkill { member, skill, metrics }
type Skill { name, description, input_schema, output_schema, type, config } // type=query, api, search, ceo
type Relationship { member, related, details }
type Chat { id, name, topic, parent, requestor, responder, data, summary, live }
type Resource { id, name, url, content, type }
type ResourceChunk { resource, index, data }
type ResourceLink { source, related } // one resources contains a reference to another
type ResourceType { resource, type } // type data contained in resource
type Type { name, fields } // a type
type [Type]Data { id, fields.... } // instance of a type
type [Type]Source { dataId, resourceChunk } // the instance data came from these resource chunks

You are the CEO - you define the company and your secretary carries everything out.
The secretary starts with only the add_skill tool. Every member handles requests like so:

  1. Receives request
  • tools = skills, add_skill, respond, delegate (if manager)
  • require one tool use at least
  1. If skill did not get desired result, try add_skill
  • searches through available skills
  • if available skills will satisfy request, find the member which has all the skills (or their members have them), return ask_[member] tool which will start a Chat to get the answer - and send along expected skillset
  • if available skills will not satisfy request, do research. do search again to update skill list
  • analyze skills again, any gaps should create a ceo skill to ask the human
  • add all necessary skills to member
  • if the number of skills the member now has is beyond a threshold, do reorganize
  1. If delegate is used a new Chat between manager and member is created until member calls respond tool

reorganize:

  • given all skillsets, manager, and team members (if any), determine optimal skill configuration. Could result in new members, traded skills, etc.

ceo:

  • Prompts the human with inputs and expects specific outputs (dynamic forms based on output schema)

research:

  • take request and look at skills and find skill gaps
  • with skill gaps look through existing resources, find resource gaps
  • with resource gaps, do get_resources
  • do a search across resources based on skill gaps
  • determine which skills are needed (high level)
  • for each skill, call create_skill

get_resources:

  • web_search => add_resource (downloads, returns which resource links exist, returns what existing data was found on it, returns what additional data was found it)
  • search is used to see if info is in unstructured data
  • query can be used to look at structured data
  • types is fed all type info

create_skill:

  • given search, query, types -> get info to understand what type of skill should be created

Skill execution requires user approval, but the user can "Approve all [skill] use by [member]"

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    Status

    Backlog

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions