# Soccer Workshop Setup

Bootstrap the soccer analytics agent workshop.

- Repository: https://github.com/oracle-devrel/oracle-ai-developer-hub (4464 stars)
- Category: Data and ML
- License: see repository
- Last updated: 2026-10-30
- Runs scripts: yes, review before use

## Install

Claude Code: `npx skills add oracle-devrel/oracle-ai-developer-hub --skill soccer-workshop-setup -g -a claude-code -y`
Codex: `npx skills add oracle-devrel/oracle-ai-developer-hub --skill soccer-workshop-setup -g -a codex -y`
Cursor: `npx skills add oracle-devrel/oracle-ai-developer-hub --skill soccer-workshop-setup -g -a cursor -y`
Gemini CLI: `npx skills add oracle-devrel/oracle-ai-developer-hub --skill soccer-workshop-setup -g -a gemini-cli -y`

## Description

Bootstrap the soccer analytics agent workshop. Starts the Oracle AI Database Free container, applies schema, loads the FIFA dataset, optionally trains models, populates LangChain OracleVS hybrid retrieval plus semantic memory, applies LangGraph OracleDB observability, and verifies OCI GenAI access. Use when starting the workshop or resetting a stale environment.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# Soccer Workshop Setup

You are bootstrapping the soccer-analytics-agent workshop. Follow these steps strictly in order. Stop and surface the error on any failure.

Each step has a "**If it fails:**" hint pointing at the most common root cause we hit while building this. Skim them once before running so you know what to watch for.

## Hybrid retrieval contract

This workshop is hybrid-first after ML inference. Coding agents must build and verify the LangChain OracleVS vector store (`SOCCER_LANGCHAIN_DOCS`) after `PREDICCIONES_FINAL` is loaded, and the final Grok 4 chat must ground explanatory answers with `hybrid_retrieve` or the startup `hybrid_search(...)` context before falling back to semantic-only memory. `vector_search` remains in the workshop as the baseline contrast: semantic similarity over `semantic_memory` only, without cached prediction documents or keyword/text scoring.

## LangGraph OracleDB observability contract

Every workshop build must also initialize `langgraph-oracledb` `OracleStore` tables and prove the agent stores individual execution steps in Oracle. The current agent remains a small Grok prompt-protocol loop, but each turn writes ordered step records (`turn_start`, `grounding_retrieved`, `model_response`, `tool_call`, `tool_result`, `final_response`) into the LangGraph OracleDB store under namespace `("soccer-agent", "agent-steps", session_id)`. The API exposes these rows at `GET /observability/{session_id}` for demo/debugging.

## Required workshop-day OCI values

The Grok 4 final chat is a required workshop capability, so setup must not silently proceed with placeholder OCI values. When building the workshop, inspect `.env` after it exists. If any of these three values are missing or still contain `REPLACE_ME`, ask the user to provide them before running `scripts/verify.py`, `scripts/smoke_test.py`, or declaring the workshop ready:

The rest: https://github.com/oracle-devrel/oracle-ai-developer-hub/blob/HEAD/workshops/soccer-analytics-agent/.claude/skills/soccer-workshop-setup/SKILL.md
