https://github.com/igopalakrishna/devops-swarm-ai
https://github.com/igopalakrishna/devops-swarm-ai
Last synced: 10 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/igopalakrishna/devops-swarm-ai
- Owner: igopalakrishna
- Created: 2025-05-21T00:36:46.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-05-21T00:48:53.000Z (about 1 year ago)
- Last Synced: 2025-06-04T19:36:22.721Z (about 1 year ago)
- Language: Jupyter Notebook
- Size: 361 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# devops-swarm-ai
A multi-agent system implemented with CrewAI created to support coding activities
Agent generated with [`googleCloudPlatform/agent-starter-pack`](https://github.com/GoogleCloudPlatform/agent-starter-pack) version `0.4.2`
## Project Structure
This project is organized as follows:
```
devops-swarm-ai/
├── app/ # Core application code
│ ├── agent.py # Main agent logic
│ ├── server.py # FastAPI Backend server
│ └── utils/ # Utility functions and helpers
├── deployment/ # Infrastructure and deployment scripts
├── notebooks/ # Jupyter notebooks for prototyping and evaluation
├── tests/ # Unit, integration, and load tests
├── Makefile # Makefile for common commands
└── pyproject.toml # Project dependencies and configuration
```
## Requirements
Before you begin, ensure you have:
- **uv**: Python package manager - [Install](https://docs.astral.sh/uv/getting-started/installation/)
- **Google Cloud SDK**: For GCP services - [Install](https://cloud.google.com/sdk/docs/install)
- **Terraform**: For infrastructure deployment - [Install](https://developer.hashicorp.com/terraform/downloads)
- **make**: Build automation tool - [Install](https://www.gnu.org/software/make/) (pre-installed on most Unix-based systems)
## Quick Start (Local Testing)
Install required packages and launch the local development environment:
```bash
make install && make playground
```
## Commands
| Command | Description |
| -------------------- | ------------------------------------------------------------------------------------------- |
| `make install` | Install all required dependencies using uv |
| `make playground` | Launch local development environment with backend and frontend|
| `make backend` | Deploy agent to Cloud Run |
| `make local-backend` | Deploy agent to Cloud Run |
| `make test` | Run unit and integration tests |
| `make lint` | Run code quality checks (codespell, ruff, mypy) |
| `make setup-dev-env` | Set up development environment resources using Terraform |
| `uv run jupyter lab` | Launch Jupyter notebook |
For full command options and usage, refer to the [Makefile](Makefile).
## Usage
This template follows a "bring your own agent" approach - you focus on your business logic, and the template handles everything else (UI, infrastructure, deployment, monitoring).
1. **Prototype:** Build your Generative AI Agent using the intro notebooks in `notebooks/` for guidance. Use Vertex AI Evaluation to assess performance.
2. **Integrate:** Import your agent into the app by editing `app/agent.py`.
3. **Test:** Explore your agent functionality using the Streamlit playground with `make playground`. The playground offers features like chat history, user feedback, and various input types, and automatically reloads your agent on code changes.
4. **Deploy:** Set up and initiate the CI/CD pipelines, customizing tests as necessary. Refer to the [deployment section](#deployment) for comprehensive instructions. For streamlined infrastructure deployment, simply run `agent-starter-pack setup-cicd`. Check out the [`agent-starter-pack setup-cicd` CLI command](https://github.com/GoogleCloudPlatform/agent-starter-pack/blob/main/docs/cli/setup_cicd.md). Currently only supporting Github.
5. **Monitor:** Track performance and gather insights using Cloud Logging, Tracing, and the Looker Studio dashboard to iterate on your application.
## Deployment
> **Note:** For a streamlined one-command deployment of the entire CI/CD pipeline and infrastructure using Terraform, you can use the [`agent-starter-pack setup-cicd` CLI command](https://github.com/GoogleCloudPlatform/agent-starter-pack/blob/main/docs/cli/setup_cicd.md). Currently only supporting Github.
### Dev Environment
You can test deployment towards a Dev Environment using the following command:
```bash
gcloud config set project
make backend
```
The repository includes a Terraform configuration for the setup of the Dev Google Cloud project.
See [deployment/README.md](deployment/README.md) for instructions.
### Production Deployment
The repository includes a Terraform configuration for the setup of a production Google Cloud project. Refer to [deployment/README.md](deployment/README.md) for detailed instructions on how to deploy the infrastructure and application.
## Monitoring and Observability
> You can use [this Looker Studio dashboard](https://lookerstudio.google.com/c/reporting/fa742264-4b4b-4c56-81e6-a667dd0f853f/page/tEnnC
) template for visualizing events being logged in BigQuery. See the "Setup Instructions" tab to getting started.
The application uses OpenTelemetry for comprehensive observability with all events being sent to Google Cloud Trace and Logging for monitoring and to BigQuery for long term storage.