This is a starter template for building AI agents using Google's ADK and CopilotKit. It provides a modern TanStack Start application with an integrated investment analyst agent that can research stocks, analyze market data, and provide investment insights.
- Node.js 18+
- Python 3.12+
- Google Makersuite API Key (for the ADK agent) (see https://makersuite.google.com/app/apikey)
- pnpm
Note: This repository includes a pnpm-lock.yaml file. Please ensure you have pnpm installed.
- Install dependencies:
pnpm install- Install Python dependencies for the ADK agent:
pnpm install:agentNote: This will automatically setup a
.venv(virtual environment) inside theagentdirectory.To activate the virtual environment manually, you can run:
source agent/.venv/bin/activate
- Set up your Google API key:
export GOOGLE_API_KEY="your-google-api-key-here"- Start the development server:
pnpm devThis will start both the UI and agent servers concurrently.
The following scripts can also be run using pnpm:
dev- Starts both UI and agent servers in development modedev:ui- Starts only the UI server (Vite)dev:agent- Starts only the ADK agent serverbuild- Builds the application for productionpreview- Previews the production buildtest- Runs unit tests using Vitestlint- Runs ESLint for code lintingformat- Formats code using Prettiercheck- Runs both Prettier and ESLint (format and lint)install:agent- Installs Python dependencies for the agent usinguv
The main UI component is in app/routes/index.tsx. You can:
- Modify the theme colors and styling
- Add new frontend actions
- Customize the CopilotKit sidebar appearance
- ADK Documentation - Learn more about the ADK and its features
- CopilotKit Documentation - Explore CopilotKit's capabilities
- TanStack Start Documentation - Learn about TanStack Start features and API
Feel free to submit issues and enhancement requests! This starter is designed to be easily extensible.
This project is licensed under the MIT License - see the LICENSE file for details.
If you see "I'm having trouble connecting to my tools", make sure:
- The ADK agent is running on port 8000
- Your Google API key is set correctly
- Both servers started successfully
If you encounter Python import errors:
cd agent
uv sync