# External Research

Use when the task involves an external library or package and current API docs are...

- Repository: https://github.com/darrenhinde/OpenAgentsControl (4967 stars)
- Category: Writing
- License: MIT
- Last updated: 2026-10-26
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add darrenhinde/OpenAgentsControl --skill external-research -g -a claude-code -y`
Codex: `npx skills add darrenhinde/OpenAgentsControl --skill external-research -g -a codex -y`
Cursor: `npx skills add darrenhinde/OpenAgentsControl --skill external-research -g -a cursor -y`
Gemini CLI: `npx skills add darrenhinde/OpenAgentsControl --skill external-research -g -a gemini-cli -y`
Claude Code plugin marketplace: `/plugin marketplace add darrenhinde/OpenAgentsControl`

## Description

Use when the task involves an external library or package and current API docs are needed before writing code.

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

# External Scout

## Overview
Fetch and cache current documentation for external libraries and frameworks. Training data is outdated, this skill ensures you use current, correct API patterns.

**Announce at start:** "I'm using the external-scout skill to fetch current docs for [package]."

## The Process

### Step 1: Invoke External-Scout

Request documentation with package and topic:

```bash
/external-scout <package> <topic>
```

**Examples:**
```bash
/external-scout drizzle schemas
/external-scout react hooks
/external-scout express middleware
/external-scout zod validation
```

### Step 2: Check Response

External-scout returns JSON with cached file paths:

```json
{
  "status": "success",
  "package": "drizzle",
  "topic": "schemas",
  "cached": true,
  "files": [
    ".tmp/external-context/drizzle/schemas.md"
  ],
  "metadata": {
    "cachedAt": "2026-02-16T10:30:00Z",
    "source": "context7",
    "age": "fresh"
  }
}
```

**Cache status:**
- `"fresh"`, < 7 days old (use cached)
- `"stale"`, > 7 days old (re-fetches automatically)

### Step 3: Load Cached Documentation

Read the returned file:

```bash
Read: .tmp/external-context/drizzle/schemas.md
```

This file contains current API patterns, examples, and best practices.

### Step 4: Apply to Implementation

Use loaded documentation to:
- Verify API signatures are correct
- Follow current patterns (not training data)
- Check for deprecations
- Use new features introduced since training

### Step 5: Implement with Confidence

Now that you have current docs, implement following verified patterns.

## Example: Using Drizzle ORM

```markdown
1. Invoke: /external-scout drizzle schemas

2. Response:
   {
     "status": "success",
     "files": [".tmp/external-context/drizzle/schemas.md"]
   }

3. Load: Read .tmp/external-context/drizzle/schemas.md

4. Review: Current API for defining tables and relations

5. Implement: Use current patterns from loaded docs
```

## Cache Location

The rest: https://github.com/darrenhinde/OpenAgentsControl/blob/HEAD/plugins/claude-code/skills/external-research/SKILL.md
