An Autonomous Agent Framework to Maximize Public Goods
Non-profits are constrained by limited cognitive bandwidth and resources to achieve their mission. The highest leverage thing we can do at this point is to make it as easy as possible for these organizations to operationalize autonomous agents. Positron is an autonomous agent framework designed to discover and play positive sum games for a net positive sum future.
Primary Objective Functions: Tilting the Balance of Power to a Positive Future
More than changing human trajectories, super-intelligence is likely to amplify existing trends by optimizing for the primary objective functions of existing entities. Although people have myriad motivations, there is generally a primary objective function that is most characteristic of each group.
So only one of these entities has a primary objective function that is aligned with the interests of humanity as a whole. Unfortunately, the non-profit sector isn't generally known for its efficiency.
The Positron network consists of "Positron Nodes" run by non-profit organizations.
"Positron Nodes" are applications that contain autonomous Task Agents. Each Task Agent is focused on a very specific task to advance the non-profit's core mission. The autonomous Task Agents use retrieval augmented generation as long-term memory, context management as short-term memory, large language models for reasoning and decision-making, and tools to take action using external APIs.
The "Autonomous Non-Profit Designer Agent" applies the rules that applies the six primary rules of the most effective non-profit organizations from the book Forces for Good to generate its Task Agent definitions.
Each autonomous Task Agent should be highly focused on a single wildly important goal.
Task Agent definitions should also include the specific easily measurable lead and lag measures described in the book "The 4 Disciplines of Execution".
Anyone should be able to create a new Task Agent that takes a different approach to achieving the same goal. Task Agents should be run separately experimentally to see which agents and models are more efficient at maximizing the key performance indicator or lag measure. This will allow the Positron Network to evolve and improve over time as it identifies the most effective agents and models.
Each agent should have a very specific:
Each Positron Node should include a Task Agent Evaluator agent that monitors the effectiveness of the other agents at advancing the mission based on their lead and lag metrics. It should also monitor the internet for new approaches that could advance the mission. It should propose create new experimental agents with a WIG, lead, and lag measure to experiment these new approaches. It should send the executive team and board regular reports with its evaluation and recommendations.
Each nonprofit that wants to create a "positron node":
The overall positron network contains smaller Mission Networks. Mission Networks are comprised of all the Positron Nodes for organizations that share the same mission.
Each Mission Network will have a Coordinating Agent. The Coordinating Agent identifies duplicative agents and opportunities to pool resources to fund the same agent instead of having multiple agents performing the same task. It then notifies the non-profits nodes of duplication of effort meaning there are multiple agents within different nodes all working on the same thing. It will then make a recommendations for merging the individual node agents into a single agent that is run for the entire Mission Network. This will lower the compute cost and other associated costs for each of the non-profit organizations.
Within the user interface of a non-profit node a non-profit can specify if the outputs of an agent will be shared with:
Long-term data should be stored in Markdown format in GitHub repositories. An ongoing embeddings generator job will be triggered by a GitHub webhook or run in a GitHub Action. The embeddings generator will generate embeddings for all the markdown files in the repository and store them in a vector database. The embeddings generator will also generate embeddings for all the markdown files in the repository and store them in a vector database. This vector database will serve as long-term memory or retrieval augmented generation data source to all nodes based on sharing settings.
The following access scopes will be available for all data:
global
access scope will be available to all nodes in all Mission Networks. This data will be stored in a global vector database.mission-network-{network-id-here}
access scope will be available to all nodes in the specified Mission Network. Each Mission Network will have its own vector database.node-{node-id-here}
access scope will be available only to the specified node. Each node will have its own vector database.There are at least 2 ways to incentivize data sharing:
We may need a system for the individual non-profits to contribute to the cost the compute costs of the shared Mission Network-level Task Agents.
The "Positron Network Architect Agent" is an autonomous agent that is responsible for the design and planning of the Positron Network. It will be responsible for the following:
new
label and add the up-next
label. At this point a "Builder Agent" will label it in-progress
and automatically perform any of the improvements that it can. The "Builder Agents" will update the code in the Positron Network GitHub repository and create pull requests. The members of the Positron Network can review the pull requests and decide if they should be adopted and merged into the overall Positron Network architecture and infrastructure.The "Positron Network Architect" scope should be limited to planning and documentation and avoid any kind of implementation.
graph TD
PN[Positron Global Network - Contains Multiple Mission Networks]
NAA[Network Architect Agent - Improves Documentation and Makes Recommendations]
BA[Builder Agents - Implement Recommendations]
MN[Mission Network - Contains All the Nodes for Mission-Aligned Nonprofits]
CA[Coordinating Agent - Identifies Duplicative Agents and Opportunities to Pool Resources]
PN1[Positron Node for Non-Profit A]
PN2[Positron Node for Non-Profit B]
TA1[Task Agent 1]
TA2[Task Agent 2]
TA3[Task Agent 1]
TA4[Task Agent 2]
PMA1[Performance Monitor Agent]
PMA2[Performance Monitor Agent]
NAA --> BA
BA --> PN
PN --> MN
MN --> CA
CA --> PN1
CA --> PN2
PN1 --> TA1
PN1 --> TA2
PN2 --> TA3
PN2 --> TA4
TA1 --> PMA1
TA2 --> PMA1
TA3 --> PMA2
TA4 --> PMA2
Current state-of-the-art AI models do not have the reasoning capabilities and context length required to autonomously advance the missions of nonprofits. However, these capabilities are rapidly evolving, and we can expect to see significant advancements in the next few years.
It would be very valuable for pro-social entities to have a framework that enables them to easily operationalize autonomous agents as soon as the technology is ready.
In the meantime, the best approach to addressing the current limitations:
can be addressed through:
To design an autonomous agent framework for nonprofits, we can leverage the principles outlined in the book Forces for Good.
The framework should enable nonprofits to effectively work with government, tap into the power of free markets, nurture nonprofit networks, build movements of evangelists, share leadership internally, and adapt quickly to changing conditions.
Source: Forces for Good The Six Practices of High-Impact Nonprofits
👉 Here are a few examples of several open-source cooperative agent frameworks that could serve as a foundation.
To create a dynamic research agent with the flexibility to use different configuration files for various research tasks, you would need a well-organized repository structure. Here's a suggested file and folder structure, along with a description for a README.md file.
config_research_type_1.yaml
, config_research_type_2.yaml
, etc.) holds settings specific to a type of research task and the source code (researcher.py
) for the dynamic research agent.The Positron Network Architect is a dynamic research agent designed to facilitate various research tasks for the Positron Network. It utilizes different configuration files to adapt to specific research needs.
git clone https://github.com/wishocracy/positron.git
cd positron
pip install -r requirements.txt
.env.example
file in the root directory and add your API keys/configs
directory based on your research task.python agents/researcher.py --config agents/architect.yaml
Contributions to improve the Positron Network Architect are welcome. Please follow the standard pull request process to submit your changes for review.
GNU General Public License v3.0
Please create an issue or a discussion thread if you have any questions or suggestions.