{"owner":"aipotheosis-labs","repo":"aci","hasSkills":true,"hasMcp":false,"mcpConfig":null,"found":["CLAUDE.md"],"skills":{"CLAUDE.md":"# CLAUDE.md\n\nThis file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.\n\n## Project Overview\n\nACI.dev is an open-source tool-calling platform providing 600+ integrations for AI agents. It serves as infrastructure for Unified MCP (Model Context Protocol) servers and VibeOps automated DevOps workflows. The platform handles multi-tenant authentication, granular permissions, and dynamic tool discovery.\n\n## Repository Structure\n\nThis is a **monorepo** with two main components:\n\n- `backend/` - FastAPI server with 600+ integrations (Python 3.12+, PostgreSQL, uv package manager)\n- `frontend/` - Next.js 15 developer portal (React 19, TypeScript, Tailwind CSS, shadcn/ui)\n\n## Essential Development Commands\n\n### Backend Commands\n\n```bash\ncd backend\nuv sync                                          # Install dependencies\nsource .venv/bin/activate                       # Activate virtual environment\ndocker compose up --build                       # Start all services (includes PostgreSQL with pgvector)\ndocker compose exec runner ./scripts/seed_db.sh # Seed database\n\n# Database management\ndocker compose exec runner alembic upgrade head                    # Apply migrations\ndocker compose exec runner alembic revision --autogenerate -m \"description\" # Create migration\n\n# Testing and quality\ndocker compose exec test-runner pytest         # Run tests\nruff format .                                   # Format code\nruff check .                                    # Lint code\nmypy .                                          # Type checking\n\n# Admin CLI\ndocker compose exec runner python -m aci.cli --help\ndocker compose exec runner python -m aci.cli upsert-app --app-file ./apps/gmail/app.json\n```\n\n### Frontend Commands\n\n```bash\ncd frontend\nnpm install --legacy-peer-deps                 # Install dependencies (React 19 compatibility required)\ncp .env.example .env                           # Setup environment\nnpm run dev                                    # Start development server\n\n# Code quality\nnpm run format                                 # Prettier formatting\nnpm run lint                                   # ESLint\nnpm run test                                   # Vitest in watch mode\nnpm run build                                  # Production build\n```\n\n## Core Architecture\n\n### Database Models (`backend/aci/common/db/sql_models.py`)\n\n- **Project**: Multi-tenant container for API keys, apps, and agents\n- **Agent**: Logical actors that access the platform (tied to API keys)\n- **App**: Third-party service integrations (Gmail, Slack, etc.)\n- **Function**: Individual API endpoints within apps\n- **LinkedAccount**: User authentication credentials for OAuth/API keys\n- **AppConfiguration**: User-specific app settings and permissions\n\n### Backend Structure (`backend/aci/`)\n\n- `server/` - FastAPI application with routes, middleware, app_connectors\n- `common/db/` - SQLAlchemy models and CRUD operations\n- `common/schemas/` - Pydantic models for validation\n- `cli/` - Admin command-line interface\n- `apps/` - 600+ integration definitions as JSON configs\n\n### Frontend Structure (`frontend/src/`)\n\n- `app/` - Next.js App Router pages (apps/, playground/, settings/)\n- `components/` - Reusable UI components with shadcn/ui\n- `lib/` - API clients and utilities\n- `hooks/` - Custom React hooks\n\n## Integration System\n\nEach integration requires two JSON files in `backend/apps/{app_name}/`:\n\n- `app.json` - Metadata, authentication schemes, categories, visibility\n- `functions.json` - API endpoints and their schemas\n\nApps support OAuth2, API keys, and no-auth patterns with encrypted credential storage.\n\n## Key Services (Docker Compose)\n\n- **server**: FastAPI backend (port 8000)\n- **db**: PostgreSQL with pgvector extension (port 5432)\n- **aws**: LocalStack for AWS services (port 4566)\n- **runner**: Utility container for CLI commands and database operations\n- **test-runner**: Isolated testing environment\n\n## Authentication & API Structure\n\n### Authentication Methods\n\n1. **PropelAuth**: Web portal authentication for developers\n2. **API Keys**: Agent/programmatic access via `X-API-KEY` header\n3. **OAuth2/API Keys**: End-user service authentication stored as LinkedAccounts\n\n### Core API Endpoints (`/v1/`)\n\n- `/apps` - Browse and configure integrations\n- `/functions` - Execute tool calls with semantic search using pgvector\n- `/linked-accounts` - Manage user authentication\n- `/projects` - Project and agent management\n- `/playground` - Interactive agent testing\n\n## Function Execution Flow\n\n1. **Discovery**: Semantic search finds relevant functions using OpenAI embeddings\n2. **Authentication**: Validates API key and linked account permissions\n3. **Execution**: Routes calls through appropriate connectors\n4. **Logging**: Comprehensive request/response tracking with Sentry/Logfire\n\n## Local Development Setup\n\n1. **Backend**: Copy `.env.example` to `.env.local`, set OpenAI API keys, run `docker compose up --build`\n2. **Frontend**: Copy `.env.example` to `.env`, run `npm install --legacy-peer-deps`\n3. **Database**: Run `docker compose exec runner ./scripts/seed_db.sh` to populate with sample data\n\n## Package Managers\n\n- **Backend**: Uses `uv` (modern Python package manager) - do not use pip/poetry\n- **Frontend**: Uses npm with `--legacy-peer-deps` flag required for React 19 compatibility\n\n## Testing\n\n- **Backend**: `docker compose exec test-runner pytest` (isolated test environment)\n- **Frontend**: `npm run test` (Vitest in watch mode)\n\n## Code Quality Tools\n\n- **Backend**: ruff (formatting/linting), mypy (type checking), pre-commit hooks\n- **Frontend**: Prettier (formatting), ESLint (linting), TypeScript compiler\n"},"files":{"CLAUDE.md":"# CLAUDE.md\n\nThis file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.\n\n## Project Overview\n\nACI.dev is an open-source tool-calling platform providing 600+ integrations for AI agents. It serves as infrastructure for Unified MCP (Model Context Protocol) servers and VibeOps automated DevOps workflows. The platform handles multi-tenant authentication, granular permissions, and dynamic tool discovery.\n\n## Repository Structure\n\nThis is a **monorepo** with two main components:\n\n- `backend/` - FastAPI server with 600+ integrations (Python 3.12+, PostgreSQL, uv package manager)\n- `frontend/` - Next.js 15 developer portal (React 19, TypeScript, Tailwind CSS, shadcn/ui)\n\n## Essential Development Commands\n\n### Backend Commands\n\n```bash\ncd backend\nuv sync                                          # Install dependencies\nsource .venv/bin/activate                       # Activate virtual environment\ndocker compose up --build                       # Start all services (includes PostgreSQL with pgvector)\ndocker compose exec runner ./scripts/seed_db.sh # Seed database\n\n# Database management\ndocker compose exec runner alembic upgrade head                    # Apply migrations\ndocker compose exec runner alembic revision --autogenerate -m \"description\" # Create migration\n\n# Testing and quality\ndocker compose exec test-runner pytest         # Run tests\nruff format .                                   # Format code\nruff check .                                    # Lint code\nmypy .                                          # Type checking\n\n# Admin CLI\ndocker compose exec runner python -m aci.cli --help\ndocker compose exec runner python -m aci.cli upsert-app --app-file ./apps/gmail/app.json\n```\n\n### Frontend Commands\n\n```bash\ncd frontend\nnpm install --legacy-peer-deps                 # Install dependencies (React 19 compatibility required)\ncp .env.example .env                           # Setup environment\nnpm run dev                                    # Start development server\n\n# Code quality\nnpm run format                                 # Prettier formatting\nnpm run lint                                   # ESLint\nnpm run test                                   # Vitest in watch mode\nnpm run build                                  # Production build\n```\n\n## Core Architecture\n\n### Database Models (`backend/aci/common/db/sql_models.py`)\n\n- **Project**: Multi-tenant container for API keys, apps, and agents\n- **Agent**: Logical actors that access the platform (tied to API keys)\n- **App**: Third-party service integrations (Gmail, Slack, etc.)\n- **Function**: Individual API endpoints within apps\n- **LinkedAccount**: User authentication credentials for OAuth/API keys\n- **AppConfiguration**: User-specific app settings and permissions\n\n### Backend Structure (`backend/aci/`)\n\n- `server/` - FastAPI application with routes, middleware, app_connectors\n- `common/db/` - SQLAlchemy models and CRUD operations\n- `common/schemas/` - Pydantic models for validation\n- `cli/` - Admin command-line interface\n- `apps/` - 600+ integration definitions as JSON configs\n\n### Frontend Structure (`frontend/src/`)\n\n- `app/` - Next.js App Router pages (apps/, playground/, settings/)\n- `components/` - Reusable UI components with shadcn/ui\n- `lib/` - API clients and utilities\n- `hooks/` - Custom React hooks\n\n## Integration System\n\nEach integration requires two JSON files in `backend/apps/{app_name}/`:\n\n- `app.json` - Metadata, authentication schemes, categories, visibility\n- `functions.json` - API endpoints and their schemas\n\nApps support OAuth2, API keys, and no-auth patterns with encrypted credential storage.\n\n## Key Services (Docker Compose)\n\n- **server**: FastAPI backend (port 8000)\n- **db**: PostgreSQL with pgvector extension (port 5432)\n- **aws**: LocalStack for AWS services (port 4566)\n- **runner**: Utility container for CLI commands and database operations\n- **test-runner**: Isolated testing environment\n\n## Authentication & API Structure\n\n### Authentication Methods\n\n1. **PropelAuth**: Web portal authentication for developers\n2. **API Keys**: Agent/programmatic access via `X-API-KEY` header\n3. **OAuth2/API Keys**: End-user service authentication stored as LinkedAccounts\n\n### Core API Endpoints (`/v1/`)\n\n- `/apps` - Browse and configure integrations\n- `/functions` - Execute tool calls with semantic search using pgvector\n- `/linked-accounts` - Manage user authentication\n- `/projects` - Project and agent management\n- `/playground` - Interactive agent testing\n\n## Function Execution Flow\n\n1. **Discovery**: Semantic search finds relevant functions using OpenAI embeddings\n2. **Authentication**: Validates API key and linked account permissions\n3. **Execution**: Routes calls through appropriate connectors\n4. **Logging**: Comprehensive request/response tracking with Sentry/Logfire\n\n## Local Development Setup\n\n1. **Backend**: Copy `.env.example` to `.env.local`, set OpenAI API keys, run `docker compose up --build`\n2. **Frontend**: Copy `.env.example` to `.env`, run `npm install --legacy-peer-deps`\n3. **Database**: Run `docker compose exec runner ./scripts/seed_db.sh` to populate with sample data\n\n## Package Managers\n\n- **Backend**: Uses `uv` (modern Python package manager) - do not use pip/poetry\n- **Frontend**: Uses npm with `--legacy-peer-deps` flag required for React 19 compatibility\n\n## Testing\n\n- **Backend**: `docker compose exec test-runner pytest` (isolated test environment)\n- **Frontend**: `npm run test` (Vitest in watch mode)\n\n## Code Quality Tools\n\n- **Backend**: ruff (formatting/linting), mypy (type checking), pre-commit hooks\n- **Frontend**: Prettier (formatting), ESLint (linting), TypeScript compiler\n"},"items":[{"name":"CLAUDE.md","path":"CLAUDE.md","title":"CLAUDE.md","content":"# CLAUDE.md\n\nThis file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.\n\n## Project Overview\n\nACI.dev is an open-source tool-calling platform providing 600+ integrations for AI agents. It serves as infrastructure for Unified MCP (Model Context Protocol) servers and VibeOps automated DevOps workflows. The platform handles multi-tenant authentication, granular permissions, and dynamic tool discovery.\n\n## Repository Structure\n\nThis is a **monorepo** with two main components:\n\n- `backend/` - FastAPI server with 600+ integrations (Python 3.12+, PostgreSQL, uv package manager)\n- `frontend/` - Next.js 15 developer portal (React 19, TypeScript, Tailwind CSS, shadcn/ui)\n\n## Essential Development Commands\n\n### Backend Commands\n\n```bash\ncd backend\nuv sync                                          # Install dependencies\nsource .venv/bin/activate                       # Activate virtual environment\ndocker compose up --build                       # Start all services (includes PostgreSQL with pgvector)\ndocker compose exec runner ./scripts/seed_db.sh # Seed database\n\n# Database management\ndocker compose exec runner alembic upgrade head                    # Apply migrations\ndocker compose exec runner alembic revision --autogenerate -m \"description\" # Create migration\n\n# Testing and quality\ndocker compose exec test-runner pytest         # Run tests\nruff format .                                   # Format code\nruff check .                                    # Lint code\nmypy .                                          # Type checking\n\n# Admin CLI\ndocker compose exec runner python -m aci.cli --help\ndocker compose exec runner python -m aci.cli upsert-app --app-file ./apps/gmail/app.json\n```\n\n### Frontend Commands\n\n```bash\ncd frontend\nnpm install --legacy-peer-deps                 # Install dependencies (React 19 compatibility required)\ncp .env.example .env                           # Setup environment\nnpm run dev                                    # Start development server\n\n# Code quality\nnpm run format                                 # Prettier formatting\nnpm run lint                                   # ESLint\nnpm run test                                   # Vitest in watch mode\nnpm run build                                  # Production build\n```\n\n## Core Architecture\n\n### Database Models (`backend/aci/common/db/sql_models.py`)\n\n- **Project**: Multi-tenant container for API keys, apps, and agents\n- **Agent**: Logical actors that access the platform (tied to API keys)\n- **App**: Third-party service integrations (Gmail, Slack, etc.)\n- **Function**: Individual API endpoints within apps\n- **LinkedAccount**: User authentication credentials for OAuth/API keys\n- **AppConfiguration**: User-specific app settings and permissions\n\n### Backend Structure (`backend/aci/`)\n\n- `server/` - FastAPI application with routes, middleware, app_connectors\n- `common/db/` - SQLAlchemy models and CRUD operations\n- `common/schemas/` - Pydantic models for validation\n- `cli/` - Admin command-line interface\n- `apps/` - 600+ integration definitions as JSON configs\n\n### Frontend Structure (`frontend/src/`)\n\n- `app/` - Next.js App Router pages (apps/, playground/, settings/)\n- `components/` - Reusable UI components with shadcn/ui\n- `lib/` - API clients and utilities\n- `hooks/` - Custom React hooks\n\n## Integration System\n\nEach integration requires two JSON files in `backend/apps/{app_name}/`:\n\n- `app.json` - Metadata, authentication schemes, categories, visibility\n- `functions.json` - API endpoints and their schemas\n\nApps support OAuth2, API keys, and no-auth patterns with encrypted credential storage.\n\n## Key Services (Docker Compose)\n\n- **server**: FastAPI backend (port 8000)\n- **db**: PostgreSQL with pgvector extension (port 5432)\n- **aws**: LocalStack for AWS services (port 4566)\n- **runner**: Utility container for CLI commands and database operations\n- **test-runner**: Isolated testing environment\n\n## Authentication & API Structure\n\n### Authentication Methods\n\n1. **PropelAuth**: Web portal authentication for developers\n2. **API Keys**: Agent/programmatic access via `X-API-KEY` header\n3. **OAuth2/API Keys**: End-user service authentication stored as LinkedAccounts\n\n### Core API Endpoints (`/v1/`)\n\n- `/apps` - Browse and configure integrations\n- `/functions` - Execute tool calls with semantic search using pgvector\n- `/linked-accounts` - Manage user authentication\n- `/projects` - Project and agent management\n- `/playground` - Interactive agent testing\n\n## Function Execution Flow\n\n1. **Discovery**: Semantic search finds relevant functions using OpenAI embeddings\n2. **Authentication**: Validates API key and linked account permissions\n3. **Execution**: Routes calls through appropriate connectors\n4. **Logging**: Comprehensive request/response tracking with Sentry/Logfire\n\n## Local Development Setup\n\n1. **Backend**: Copy `.env.example` to `.env.local`, set OpenAI API keys, run `docker compose up --build`\n2. **Frontend**: Copy `.env.example` to `.env`, run `npm install --legacy-peer-deps`\n3. **Database**: Run `docker compose exec runner ./scripts/seed_db.sh` to populate with sample data\n\n## Package Managers\n\n- **Backend**: Uses `uv` (modern Python package manager) - do not use pip/poetry\n- **Frontend**: Uses npm with `--legacy-peer-deps` flag required for React 19 compatibility\n\n## Testing\n\n- **Backend**: `docker compose exec test-runner pytest` (isolated test environment)\n- **Frontend**: `npm run test` (Vitest in watch mode)\n\n## Code Quality Tools\n\n- **Backend**: ruff (formatting/linting), mypy (type checking), pre-commit hooks\n- **Frontend**: Prettier (formatting), ESLint (linting), TypeScript compiler\n","category":"root","tokens":1425}]}