> ## Documentation Index
> Fetch the complete documentation index at: https://icrl.dev/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# IT Support Demo

> ICRL vs vanilla: learning from past support tickets when docs are incomplete

## Overview

The IT support demo shows ICRL's ability to learn from past support interactions and apply that knowledge to new tickets. Unlike coding demos where patterns can be discovered by searching the codebase, this tests **pure memory** — the knowledge exists only in past trajectories.

## The Problem

Every IT support team accumulates tribal knowledge:

* "VPN fails on macOS Sonoma? Disable IPv6 first."
* "Email not syncing on mobile? MFA token probably expired."
* "Can't reach production DB? Check if you're on guest WiFi."

This knowledge lives in past ticket resolutions, Slack threads, and senior engineers' heads — **not in any searchable documentation.**

## How ICRL Solves This

ICRL stores successful support interactions as trajectories. When a similar issue comes in:

1. **Retrieves relevant past tickets** based on semantic similarity
2. **Applies learned solutions** instead of generic troubleshooting
3. **Provides confident, specific answers** for known issues

## Demo Structure

<Tree>
  <Tree.Folder name="examples/it_support_demo" defaultOpen>
    <Tree.File name="README.md" />

    <Tree.File name="setup_demo.py" />

    <Tree.File name="run_demo.py" />

    <Tree.File name="evaluate_responses.py" />

    <Tree.Folder name="scenarios" defaultOpen>
      <Tree.File name="seed_tickets.json" />

      <Tree.File name="test_tickets.json" />
    </Tree.Folder>

    <Tree.Folder name="knowledge_base">
      <Tree.File name="official_docs.md" />
    </Tree.Folder>
  </Tree.Folder>
</Tree>

The `knowledge_base/official_docs.md` contains generic, outdated information — exactly like real corporate wikis. The **real** knowledge comes from past ticket resolutions.

## Running the Demo

From the project root:

```bash theme={null}
cd examples/it_support_demo

# 1. Setup — seeds the trajectory database with past tickets
uv run python setup_demo.py

# 2. Run the comparison test
uv run python run_demo.py

# 3. View detailed evaluation
uv run python evaluate_responses.py
```

Quick run (only 3 test cases):

```bash theme={null}
uv run python run_demo.py --quick
```

## Expected Results

| Test Case          | ICRL (with examples)                  | Vanilla (no examples)                   |
| ------------------ | ------------------------------------- | --------------------------------------- |
| VPN + macOS Sonoma | "Disable IPv6" (correct)              | "Reinstall VPN client" (incorrect)      |
| Email sync mobile  | "MFA token expired" (correct)         | "Check internet connection" (incorrect) |
| DB access issue    | "Check guest WiFi" (correct)          | "Is the database up?" (incorrect)       |
| Git push rejected  | "Use Personal Access Token" (correct) | "Reset your password" (incorrect)       |

**Expected: ICRL \~90%+ accuracy vs Vanilla \~25% accuracy**

## Prerequisites

* `OPENAI_API_KEY` or `ANTHROPIC_API_KEY` set
* `uv run` from project root, or `python` with `PYTHONPATH` including `src/`

## Key Insight

This demo proves ICRL's value for **non-coding tasks** where:

* Knowledge can't be discovered by searching files
* Experience matters more than documentation
* Pattern recognition from past cases is critical
