Tarik is a chain-of-thought LLM-based autocoder, intended to be used as a tool for developers to delegate small tasks to.
The goal of this project is to enable developers to delegate small tasks to Tarik, allowing them to focus on more complex aspects of their work. Tarik will, when assigned an issue:
- Suggest a plan
- Create a branch and make changes according to above plan when approved
- Create a PR with above changes
At this point a human can intervene and continue working on the issue - better yet if Tarik's contribution is good enough, simply merge the PR and close the issue. Please see Benchmarking for current capability.
Tarik continuously monitors issues on Github that are assigned to him. When an issue is assigned to Tarik, he will:
- Read the issue title and description
- (TBD) Look at the code in the repository and build up a mental model of the codebase
- (TBD) perhaps using vector embeddings to represent the codebase?
- (TBD) Use the codebase model to suggest a plan for the issue
- Create a branch and make changes according to above plan
- Create a PR with above changes
- Install the .NET 7 SDK
- Set the .env variables
- Initialize the secrets:
./scripts/dotnet-user-secrets.sh
- Run the project:
dotnet run --project src/Api