Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create Project Plan #1

Open
mlamina opened this issue Mar 15, 2024 · 14 comments
Open

Create Project Plan #1

mlamina opened this issue Mar 15, 2024 · 14 comments

Comments

@mlamina
Copy link
Owner

mlamina commented Mar 15, 2024

This project has one single goal:

Build an AI agent system that iteratively solves the problem of AI replacing human labor.
We want the answer to the question: How do we need to reform society in order to create a future where everyone thrives and AI does not become our doom?

The system should have the following properties:

  • File-based: All results are Markdown files stored in a structured way as part of the repository
  • Iterative: There is a file iterate.py that when executed runs a new iteration that improves our current solution to the problem
  • Self-Aware: The agent system should be able to locate and understand its own code
  • Reflective: Every iteration uses the results of the previous iterations and its understanding about its own code in order to improve our solution to the problem further
  • Self-Improving: Every iteration should consider if it is possible or necessary to adjust the agent system

We want to use langchain for the agent system. All Python code should be unit-tested via pytest and tox on Python 11. We want the tests to run via a Github action.

@mlamina
Copy link
Owner Author

mlamina commented Mar 15, 2024

/pilot Create a detailed step-by-step plan for creating such a system

Copy link
Contributor

pr-pilot-ai bot commented Mar 15, 2024

To create the AI agent system as described in the issue, we can follow a detailed step-by-step plan. This plan will guide us through setting up the system with the desired properties: file-based, iterative, self-aware, reflective, and self-improving. Additionally, we'll ensure the system is built using langchain and that all Python code is unit-tested with pytest and tox on Python 11, with tests running via a GitHub action.

Step 1: Project Setup

  1. Initialize the GitHub Repository: Create a new GitHub repository named what-about-jobs.
  2. Environment Setup: Ensure Python 11 is installed and set up a virtual environment for the project.
  3. Dependency Management: Create a requirements.txt file and add langchain, pytest, and tox as dependencies.

Step 2: System Design

  1. Define the File Structure: Plan the Markdown file structure for storing results. This includes defining directories for iterations, results, and documentation.
  2. Design the iterate.py Script: Outline the functionality of the iterate.py script, ensuring it can run new iterations and improve the solution based on previous results.

Step 3: Implementation

  1. Implement the iterate.py Script: Develop the script with the ability to execute iterations, utilizing langchain for AI operations.
  2. Self-Awareness and Reflection: Implement mechanisms for the system to understand its own code and use previous iteration results for improvement. This may involve parsing its own source code and result files.
  3. Self-Improvement Logic: Add logic to the iterate.py script that evaluates the need for adjustments in the agent system itself.

Step 4: Testing

  1. Write Unit Tests: Create unit tests for all components using pytest. Ensure tests cover the core functionalities, including iteration execution, self-awareness, and self-improvement logic.
  2. Setup tox for Test Automation: Configure tox to automate testing across different environments, specifically targeting Python 11.

Step 5: Continuous Integration

  1. GitHub Actions Setup: Create a .github/workflows directory and add a workflow file for running tests with pytest and tox on every push or pull request to the main branch.

Step 6: Documentation

  1. Create Documentation: Document the system's architecture, file structure, and usage instructions in the repository's README file. Include information on how to run iterations and contribute to the project.

Step 7: Iteration and Improvement

  1. Run Initial Iteration: Execute the iterate.py script to run the first iteration and generate initial results.
  2. Review and Reflect: Analyze the results and system performance. Use this analysis to plan further improvements in the next iteration.

Step 8: Community Engagement

  1. Open for Contributions: Encourage community contributions by setting up issue templates, contribution guidelines, and actively engaging with contributors through issues and pull requests.

This plan provides a structured approach to building the AI agent system with the desired properties and functionalities. Following these steps will help ensure the system is robust, flexible, and capable of evolving to address the challenge of AI replacing human labor.

📋Task Log

Repository owner deleted a comment from pr-pilot-ai bot Mar 15, 2024
@mlamina
Copy link
Owner Author

mlamina commented Mar 15, 2024

/pilot start with step 1: Find out the latest versions of langchain and pytest, create the tox.ini and the requirements file

Copy link
Contributor

pr-pilot-ai bot commented Mar 15, 2024

I've successfully completed the first step of the plan:

  1. I found the latest versions of langchain and pytest on PyPI. The latest version of langchain is 0.0.343, and for pytest, it is 6.2.
  2. I created a requirements.txt file with the latest versions of langchain and pytest.
  3. I also created a tox.ini file for testing with pytest.

These files are now part of the repository, setting the foundation for the project's environment setup and testing framework.

PR: 🚀 Completed First Step of Plan: Environment Setup and Testing Framework

If you require further changes, continue our conversation over there!

📋Task Log

@mlamina
Copy link
Owner Author

mlamina commented Mar 15, 2024

/pilot execute step 2

Copy link
Contributor

pr-pilot-ai bot commented Mar 15, 2024

I've successfully executed Step 2 of the plan. Here's a summary of what was done:

  • Defined the File Structure: I outlined a structured Markdown file system for storing results, documentation, and iteration data. The structure includes directories for iterations (/iterations), documentation (/docs), and source code (/src).
  • Designed the iterate.py Script: I provided an outline for the iterate.py script, detailing its responsibilities such as initialization, execution of AI operations using langchain, analysis of previous results, self-improvement, and documentation of results.

The detailed design document can be found in the repository at docs/system_design.md.

This completes Step 2 of the project plan, setting a solid foundation for the implementation phase.

PR: 🚀 Successfully Executed Step 2: File Structure and iterate.py Script Design

If you require further changes, continue our conversation over there!

📋Task Log

@mlamina
Copy link
Owner Author

mlamina commented Mar 15, 2024

/pilot Create one new Github ticket for each of the remaining steps. Each issue body should contain a detailed step-by-step description and a link back to the current ticket

Copy link
Contributor

pr-pilot-ai bot commented Mar 15, 2024

@mlamina
Copy link
Owner Author

mlamina commented Mar 15, 2024

/pilot Finally, write a helpful README.md that explains the project and contains instructions on how to run it

Copy link
Contributor

pr-pilot-ai bot commented Mar 15, 2024

I've successfully created a README.md file for the what-about-jobs project. This README provides an overview of the project, its goals, and instructions on how to get started, including how to run the iterate.py script. It also invites contributions and mentions the project's license. You can view and edit the README directly in the repository.

PR: 📝 Add README.md file for what-about-jobs project

If you require further changes, continue our conversation over there!

📋Task Log

@mlamina mlamina changed the title Figure out how to approach this Step 0: Figure out how to approach this Mar 15, 2024
@mlamina
Copy link
Owner Author

mlamina commented Mar 16, 2024

/pilot Go through each of the issues you've created and add an emoji to the beginning of the title. Refine each ticket so that it contains enough information about the bigger context, an implementation strategy and acceptance criteria. I want each ticket to contain enough information so that it can be worked on independently

Copy link
Contributor

pr-pilot-ai bot commented Mar 16, 2024

I've gone through each of the issues created for the project and updated their titles with an appropriate emoji. Additionally, I refined each ticket to include more information about the bigger context, an implementation strategy, and acceptance criteria. Now, each ticket contains enough information so that it can be worked on independently. Here are the updated issues:

This should ensure that each issue is ready to be worked on independently, aligning with your request.

📋Task Log

@mlamina
Copy link
Owner Author

mlamina commented Mar 17, 2024

/pilot Based on the content of this issue and README.md, write a compact list of facts into .pilot-hints.md. The list should contain information that later on will help you to get a good understanding about the project in terms of core ideas, purpose, value for the user and key technical aspects like main programming language(s) and a few important files to know about.

Copy link
Contributor

pr-pilot-ai bot commented Mar 17, 2024

I've successfully created the .pilot-hints.md file with a compact list of facts about the project, including core ideas, purpose, value for the user, and key technical aspects. This should help provide a good understanding of the project's goals, its value, and important technical details.

PR: ✨ Add .pilot-hints.md file with project overview

If you require further changes, continue our conversation over there!

📋Task Log

Repository owner deleted a comment from pr-pilot-dev bot Mar 17, 2024
@mlamina mlamina changed the title Step 0: Figure out how to approach this Create Project Plan Mar 17, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant