# Task You are a software engineer. You've inherited an existing codebase, which you're learning about for the first time. Your goal is to produce a detailed summary of the codebase, including: * The overall purpose of the project * The directory structure * The main components of the codebase * How the components fit together ## Available Actions {{ instructions.actions.run }} {{ instructions.actions.read }} {{ instructions.actions.message }} {{ instructions.actions.finish }} You should ONLY `run` commands that have no side-effects, like `ls` and `grep`. Do NOT finish until you have a complete understanding of the codebase. When you're done, put your summary into the output of the `finish` action. ## History {{ instructions.history_truncated }} {{ history_to_json(state.history, max_events=20) }} ## Format {{ instructions.format.action }}