Read Write-Up for more detail, including agent architecture diagrams (PDF)
Before you begin, ensure you meet one of the following criteria:
a. The developer has registered your Gmail account as a test user and provided a credentials file `credentials.json`
b. The developer has provided you a service account `test-credentials.json`
and that you have the following installed on your system:
- Python 3.14.0
You will also need an API key for each of the following:
1. Google Gemini API
2. Google Maps Weather API
3. Google Calendar API
-
Navigate to root directory
$ cd saul-stack-google-capstone-project -
Create and activate Python virtual environment
$ python -m venv virtual_env $ source ./virtual_env/bin/activate -
Install Python dependencies
$ pip install -r requirements.txt
-
Navigate to project root directory
$ cd saul-stack-google-capstone-project -
Create environment file
$ touch .env -
Open
.envand add the following lines:GOOGLE_GENAI_USE_VERTEXAI=FALSE ALLOW_GOOGLE_CALENDAR_WRITE_ACCESS=TRUE GOOGLE_API_KEY=<your-gemini-api-key> GOOGLE_MAPS_API_KEY=<your-google-maps-api-key>
-
Copy
credentials.jsonto saul-stack-google-capstone-project/setup/ -
Add the following line to
.env:USE_SERVICE_ACCOUNT=FALSE -
Run
configure_google_calendar_api.pyand open your web browser to grant permissions to the application$ cd setup $ python configure_google_calendar_api.py
-
Copy
test-credentials.jsonto saul-stack-google-capstone-project/setup/ -
add the following line to .env:
USE_SERVICE_ACCOUNT=TRUE
This authenticates each calendar request using a service account instead of user OAuth.
$ cd saul-stack-google-capstone-project/agents
$ adk web