Metadata-Version: 2.4
Name: vertical-skills-agent
Version: 1.1.0
Summary: CLI tool to create Google Cloud AI agents from vertical skills
Author-email: Google Cloud AI <noreply@google.com>
License: Apache-2.0
Project-URL: Homepage, https://github.com/GoogleCloudPlatform/vertical-skills-agent
Project-URL: Documentation, https://github.com/GoogleCloudPlatform/vertical-skills-agent
Project-URL: Repository, https://github.com/GoogleCloudPlatform/vertical-skills-agent
Project-URL: Issues, https://github.com/GoogleCloudPlatform/vertical-skills-agent/issues
Keywords: google-cloud,ai,agents,vertex-ai,cli
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Requires-Python: >=3.10
Description-Content-Type: text/markdown
Requires-Dist: agent-starter-pack>=0.40.0
Requires-Dist: click>=8.1.7
Requires-Dist: rich>=13.7.0
Requires-Dist: pyyaml>=6.0.1
Requires-Dist: jinja2>=3.1.0

# Vertical Skills Agent CLI

Create production-ready Google Cloud AI agents from vertical skills in minutes.

## Quick Start

```bash
# 1. Create a working directory
mkdir my-agent && cd my-agent

# 2. Install the product-search skill
npx skills add GoogleCloudPlatform/vertical-skills/skills/product-search -y

# 3. Run the CLI to create your agent (interactive interview)
uvx vertical-skills-agent create product-search
```

The CLI will interview you with 9 questions about your product catalog and requirements, then generate a complete, production-ready agent project.

## What It Does

This CLI tool:
1. **Interviews you** with 9 domain-specific questions (industry, catalog size, product fields, etc.)
2. **Generates DESIGN_SPEC.md** with your complete requirements
3. **Scaffolds the project** using agent-starter-pack (calls it via subprocess)
4. **Adds custom scripts** tailored to your schema (BigQuery ingestion with your product fields)
5. **Provides next steps** for deployment

## Installation

```bash
# Using uvx (recommended - no installation needed)
uvx vertical-skills-agent create product-search

# Or install globally
pip install vertical-skills-agent
vertical-skills-agent create product-search
```

## Usage

### Interactive Mode (Recommended)

Answer 9 questions to customize your agent:

```bash
uvx vertical-skills-agent create product-search

# You'll be asked:
# Q1. What products will be searchable? (Industry, catalog size, project name)
# Q2. What product fields do you have? (Basic/Standard/Extended/Full)
# Q3. Where is your product data? (CSV/JSON/BigQuery/API)
# Q4. What type of search? (Text-only/Multimodal)
# Q5. What user interface? (CLI/Web UI/Voice/Custom API)
# Q6. How will users add to cart? (API/Pub-Sub/URL/Not needed)
# Q7. Voice capabilities? (Yes/No)
# Q8. How to handle vague queries? (Clarify/Show diverse/Both)
# Q9. What's your GCP project ID?
```

### Skip Interview Mode

Use default values for quick testing:

```bash
uvx vertical-skills-agent create product-search --skip-interview

# Defaults:
# - Industry: Electronics
# - Catalog size: 5000
# - Product fields: Standard
# - User interface: Web UI
# - GCP project: my-project
```

### Other Options

```bash
# Custom output directory
uvx vertical-skills-agent create product-search --output-dir ./my-agents

# Debug mode
uvx vertical-skills-agent create product-search --debug

# Check version
uvx vertical-skills-agent --version
```

## Generated Project Structure

```
electronics-search/
├── DESIGN_SPEC.md           # Your requirements
├── app/
│   ├── agent.py             # Main agent logic
│   ├── search_agent.py      # Vector Search integration
│   └── orchestrator.py      # Multi-agent orchestration
├── scripts/
│   └── ingestion/
│       └── ingest_bigquery.py   # Custom BigQuery ingestion
├── tests/
│   └── eval/                # Evaluation templates
├── deployment/
│   └── terraform/           # Infrastructure as code
├── Makefile                 # Development commands
└── pyproject.toml           # Dependencies
```

## Next Steps After Generation

```bash
cd electronics-search

# 1. Provision infrastructure
make setup-datastore

# 2. Ingest your product data
python scripts/ingestion/ingest_bigquery.py \
  --project-id YOUR_PROJECT \
  --gcs-bucket YOUR_BUCKET \
  --gcs-path products.csv

# 3. Test locally
make playground

# 4. Run evaluations
make eval

# 5. Deploy to production
make deploy
```

## Requirements

- Python 3.10+
- Google Cloud Project with billing enabled
- Vertex AI API enabled
- `npx` (comes with Node.js) for skill installation

## Full Example

```bash
# Complete workflow from start to finish
mkdir /tmp/my-product-search-agent && cd /tmp/my-product-search-agent

# Install the skill
npx skills add GoogleCloudPlatform/vertical-skills/skills/product-search -y

# Create the agent (with interview)
uvx vertical-skills-agent create product-search

# Answer the 9 questions...
# - Industry: Fashion
# - Catalog size: 1K-10K
# - Project name: fashion-search
# - Product fields: Standard
# - Data source: CSV
# - Search type: Text-only
# - User interface: Web UI
# - Cart integration: URL redirect
# - Voice capabilities: No
# - Vague query handling: Ask clarifying questions
# - GCP project ID: my-gcp-project

# Agent created! Generated files:
# - DESIGN_SPEC.md
# - fashion-search/ (complete project)
# - fashion-search/scripts/ingestion/ingest_bigquery.py (customized for Standard fields)

# Deploy the agent
cd fashion-search
make setup-datastore
make data-ingestion
make playground
make deploy
```

## Publishing (For Maintainers)

If you want to publish a new version of this package:

### Method 1: Using GitHub Actions (Recommended)

1. Create GitHub repository: `GoogleCloudPlatform/vertical-skills-agent`
2. Add PyPI API token as secret: `PYPI_API_TOKEN`
3. Run workflow: Actions → Release → Run workflow
4. Merge the version bump PR
5. Package auto-publishes to PyPI

### Method 2: Manual Publishing

```bash
# Get PyPI token from: https://pypi.org/manage/account/token/

# Option A: Using uv (modern, fast)
export UV_PUBLISH_TOKEN=pypi-YOUR_TOKEN_HERE
uv build
uv publish

# Option B: Using twine (traditional)
pip install twine
python -m build
twine upload dist/*
# Username: __token__
# Password: pypi-YOUR_TOKEN_HERE
```

### After Publishing

Verify the package:

```bash
# Check PyPI page
open https://pypi.org/project/vertical-skills-agent/

# Test installation
uvx vertical-skills-agent --version

# Test full workflow
mkdir /tmp/test-published && cd /tmp/test-published
npx skills add GoogleCloudPlatform/vertical-skills/skills/product-search -y
uvx vertical-skills-agent create product-search --skip-interview
```

## Architecture

This CLI is a **wrapper around agent-starter-pack**, not a reimplementation:

- **Conducts domain-specific interview** (9 questions for product search)
- **Generates DESIGN_SPEC.md** with requirements
- **Calls agent-starter-pack via subprocess** to scaffold the project
- **Adds custom scripts** (BigQuery ingestion with your schema)

**Leverage: 45x** - Write 660 lines, get 30,000+ lines of functionality from agent-starter-pack.

## Documentation

- **PyPI**: https://pypi.org/project/vertical-skills-agent/
- **Product Search Skill**: https://github.com/GoogleCloudPlatform/vertical-skills/tree/main/skills/product-search
- **Agent Starter Pack**: https://github.com/GoogleCloudPlatform/agent-starter-pack
- **ADK Documentation**: https://adk.dev

## License

Apache 2.0
