Overview

The product owner holds a high level overview of what the project is meant to be. It includes details like the frameworks and languages being used.

Interactions with Project

  • Sets app during get_project_description
  • Modifies current_step to describe bootstrapping project

Members

get_project_description

Project Step: project_description

This function bootstraps the Project’s app member, creating it if it doesn’t exist already. An App is the base fkey that ties together other entities like user stories and steps being executed to the application being built.

It asks the user for a description of what the application should be, in as much detail as possible.

It then generates a high level summary of that description using create_spec , then persists that information in a JSON blob as a ProjectDescription model in the DB.

get_user_stories

Project Step: user_stories

First checks if the step has already been run, and if so rehydrate and return.

Creates a new AgentConvo prompting the LLM to think about the steps a user would need to take in order to perform an action within the application being developed, from beginning to end.

Takeaways

  • Agent methods take user input control flow directly, asking the user what the next step is, or for user input to inform the next steps