# Drive

> Docs vivos do Drive via OAuth read-only (script gdrive.py): snapshot datado em vault/RAW/inbox/ → /dump (change digest). Noturno (watchlist gdocs do watch.yaml) ou sob demanda (/drive <termo> busca, /drive <id> exporta). Nunca cria/edita docs.

- Skill: `bvlcq/drive` (Agent Skill)
- Install (CLI): `npx skillmds@latest add bvlcq/drive`
- Raw SKILL.md: https://api.skillmd.com/api/skills/bvlcq/drive/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Integrations & APIs
- Author: BVLCQ (https://skillmd.com/u/bvlcq)
- Updated: 2026-09-22
- Page: https://skillmd.com/skills/bvlcq/drive

---


# /drive — docs vivos pelo canal, nunca direto

**Autenticação:** OAuth do Google via script (`google_auth.py` uma vez; refresh
token no `.env`). Guia: `guides/google-oauth.md`. Escopo: **só `drive.readonly`**.

## A regra de ouro deste comando (o canal)

Docs do Drive MUDAM — por isso cada leitura é um **snapshot datado** em
`vault/RAW/inbox/`, e a memória fica na linha do tempo de snapshots + change digests
do PROCESSED. Responder "o que diz o doc" sem snapshotar = memória perdida.

## Modo noturno (watchlist — padrão do /update)

`python3 scripts/connectors/gdrive.py` (sem args):
1. Para cada doc da watchlist (`gdocs:` no watch.yaml): exporta conteúdo +
   comentários via API (read-only).
2. Hash contra o pull anterior da MESMA fonte: **idêntico → não escreve nada**;
   diferente → snapshot `gdoc-<nome>-<ts>.md`.
3. `/dump` → artefato = **change digest** (o que mudou — seções, comentários
   novos), citando os dois snapshots; apenda a linha do item ao
   `_indices/live-items-index.md` (registro de itens vivos).

## Modo sob demanda

- `/drive <termo>` → `python3 scripts/connectors/gdrive.py "<termo>"` — busca
  por nome → snapshot da lista (título · tipo · modificado · id).
- `/drive <id>` → exportar aquele doc → snapshot `gdoc-…` → `/dump` →
  responder citando o artefato (com âncoras de seção quando possível).

## Proibições e diagnóstico

- NUNCA criar/editar/upload — só leitura (constituição).
- Doc fora da watchlist só entra por pedido explícito (`/drive`) — o watch.yaml
  é o universo observável do noturno.
- `invalid_grant` → ver `guides/google-oauth.md` (app em Testing = 7 dias).

