---
name: devour
description: >
  Use this skill for Devour CLI workflows: scrape docs, get language docs,
  query local index, ask docs-grounded questions, sync sources, run quality
  triage, and verify live smoke checks. Trigger on: "devour", "docs to ai",
  "scrape docs", "ask docs", "query docs", "sync docs", "quality scan".
allowed-tools:
  - Read
  - Write
  - Edit
  - Glob
  - Grep
  - Bash
  - WebFetch
---

# Devour Skill

Use this skill when a task is explicitly about Devour CLI operations or troubleshooting Devour workflows.

## What Devour now supports

- `devour init`
- `devour get`
- `devour scrape`
- `devour scrape --sources ...`
- `devour query`
- `devour ask`
- `devour sync`
- `devour status`
- `devour push <path>` (local ingest)
- `devour serve` (local stdio JSON-RPC)
- `devour auto`
- `devour verify smoke`
- `devour quality ...` (delegated to `desloppify`)
- `devour review ...` (delegated to `desloppify review`)

Remote server/push workflows are experimental.

## Fast routing

1. User gives URL/source: use `devour scrape`.
2. User gives language+topic: use `devour get`.
3. User asks a question: use `devour ask --lang ...`.
4. User wants local search: use `devour query`.
5. User wants updates from config: use `devour sync`.
6. User wants automatic intent routing: use `devour auto`.
7. User wants confidence check: use `devour verify smoke`.

## Reliable workflow

```bash
devour init
devour get go net/http
devour query "http client timeout"
devour ask --lang go "how to parse json"
devour sync
devour status
```

## Key behavior notes

- `ask` is hybrid local-first with targeted live fallback.
- `query` is local lexical index; no API key required.
- `scrape` fails by default when 0 docs are extracted (unless `--allow-empty`).
- `serve` local mode uses JSON-RPC over stdio.

## Supported language aliases

- `go`, `golang`
- `rust`
- `python`, `py`
- `java`
- `spring`
- `typescript`, `ts`
- `react`
- `vue`
- `nuxt`
- `docker`
- `cloudflare`, `cf`
- `astro`
- `csharp`, `cs`
- `kotlin`, `kt`
- `php`
- `ruby`, `rb`
- `elixir`, `ex`
- `next`, `nextjs`
- `svelte`
- `angular`, `ng`
- `remix`
- `solid`, `solidjs`
- `express`, `expressjs`

## Response expectations

When reporting command results:

1. Show exact command(s) run.
2. Summarize key output.
3. Show output file locations.
4. Call out limitations/experimental behavior.
5. Give the next command to continue.
