diff --git a/README.md b/README.md
index 3e5ad7c7..77b12ead 100644
--- a/README.md
+++ b/README.md
@@ -63,8 +63,18 @@ All generated code will be stored in the folder `workspace` inside the folder na
**IMPORTANT: To run GPT Pilot, you need to have PostgreSQL set up on your machine**
-# 🧑💻️ Other arguments
-- continue working on an existing app using **`app_id`**
+# 🧑💻️ CLI arguments
+
+## `app_type` and `name`
+If not provided, the ProductOwner will ask for these values
+
+`app_type` is used as a hint to the LLM as to what kind of architecture, language options and conventions would apply. If not provided, `prompts.prompts.ask_for_app_type()` will ask for it.
+
+See `const.common.ALL_TYPES`: 'Web App', 'Script', 'Mobile App', 'Chrome Extension'
+
+
+## `app_id` and `workspace`
+Continue working on an existing app using **`app_id`**
```bash
python main.py app_id=
```
@@ -75,23 +85,70 @@ _or_ **`workspace`** path:
python main.py workspace=
```
-- continue working on an existing app from a specific **`step`** (eg: `user_tasks`)
+Each user can have their own workspace path for each App.
+
+
+## `user_id`, `email` and `password`
+These values will be saved to the User table in the DB.
+
+```bash
+python main.py user_id=me_at_work
+```
+
+If not specified, `user_id` defaults to the OS username, but can be provided explicitly if your OS username differs from your GitHub or work username. This value is used to load the `App` config when the `workspace` arg is provided.
+
+If not specified `email` will be parsed from `~/.gitconfig` if the file exists.
+
+See also [What's the purpose of arguments.password / User.password?](https://github.com/Pythagora-io/gpt-pilot/discussions/55)
+
+
+## `advanced`
+The Architect by default favours certain technologies including:
+
+- Node.JS
+- MongoDB
+- PeeWee ORM
+- Jest & PyUnit
+- Bootstrap
+- Vanilla JavaScript
+- Socket.io
+
+If you have your own preferences, you can have a deeper conversation with the Architect.
+
+```bash
+python main.py advanced=True
+```
+
+
+## `step`
+Continue working on an existing app from a specific **`step`** (eg: `user_tasks`)
```bash
python main.py app_id= step=
```
-- continue working on an existing app from a specific **development step**
+
+## `skip_until_dev_step`
+Continue working on an existing app from a specific **development step**
```bash
python main.py app_id= skip_until_dev_step=
```
This is basically the same as `step` but during the actual development process. If you want to play around with gpt-pilot, this is likely the flag you will often use.
-- erase all development steps previously done and continue working on an existing app from start of development
+Erase all development steps previously done and continue working on an existing app from start of development
+
```bash
python main.py app_id= skip_until_dev_step=0
```
+
+## `delete_unrelated_steps`
+
+
+## `update_files_before_start`
+
+
+
# 🔎 Examples
Here are a couple of example apps GPT Pilot created by itself: