---
name: acompanhar-minhas-renovacoes
title: "Acompanhar minhas renovações"
description: "Pare de ser pego de surpresa pelas renovações automáticas. Eu vasculho seus contratos e qualquer drive conectado em busca de datas de renovação, prazos de aviso prévio e cláusulas de renovação automática, e depois mantenho um calendário de renovações vivo, agrupado por nível de antecedência, para que você sempre saiba o que vem a seguir. Também produzo um resumo trimestral com candidatos a negociação e tudo o que já passou do prazo de cancelamento."
version: 1
category: Operações
featured: no
image: clipboard
integrations: [googledrive]
x_houston:
  created_by: houston
  skill_schema: 1
---


# Acompanhar Minhas Renovações

Manter o arquivo mais crítico do agente: `renewals/calendar.md`. Lido pelo agente durante `run-my-ops-review period=weekly`.

## Quando usar

- "monte meu calendário de renovações" / "atualize o calendário de renovações".
- "o que está renovando nos próximos 90 dias / neste trimestre".
- "rode a varredura de renovações".
- Chamada como sub-etapa de `read-a-contract` depois de processar um contrato  -  a skill sugere `track-my-renewals` para atualizar o calendário com a nova entrada.

## Conexões que eu preciso

Eu executo trabalho externo através do Composio. Antes desta skill rodar eu verifico se as categorias abaixo estão conectadas. Faltando → eu nomeio a categoria, peço para você conectar na aba Integrações, e paro.

- **Arquivos** (Google Drive)  -  Opcional. Me permite pegar contratos que você guardou fora do agente.
- **Cobrança** (Stripe)  -  Opcional. Mostra ferramentas sem contratos formais para que assinaturas não passem despercebidas.

Esta skill funciona com contratos que já estão no agente. Conexões opcionais ampliam a rede.

## Informações que eu preciso

Eu leio primeiro o seu contexto operacional. Para cada campo obrigatório que estiver faltando eu faço UMA pergunta em linguagem simples (melhor modalidade: app conectado > envio de arquivo > URL > colar) e espero.

- **Postura com fornecedores**  -  Obrigatório. Por que preciso: define os níveis de antecedência (conservadora antecipa tudo). Se faltando eu pergunto: "Como você lida com fornecedores  -  de forma conservadora, equilibrada, ou rápida?"
- **Contratos existentes**  -  Obrigatório. Por que preciso: eu não consigo acompanhar renovações de contratos que eu não vi. Se faltando eu pergunto: "Envie seus contratos assinados, ou me aponte para a pasta onde eles vivem. O melhor é conectar o Google Drive."
- **Postura de aprovação**  -  Opcional. Por que preciso: me deixa saber quem pode assinar e o quão agressivamente mostrar candidatos a negociação. Se você não tiver isso eu sigo com A DEFINIR usando padrões de somente o fundador.

## Passos
<!-- houston-workflow:v1 -->

1. **Ler `context/operations-context.md`**  -  vetos + postura com fornecedores definem o limite da sinalização "negociar antes de renovar automaticamente". Faltando: parar, pedir para rodar `set-up-my-ops-info`.

2. **Ler `config/procurement.json`**  -  especialmente `approvalPosture` (o apetite de risco ajusta os níveis de antecedência: conservador = antecedência maior, rápido = antecedência menor).

3. **Localizar os contratos.**

   - **contracts/**  -  todo arquivo é extração de cláusulas. Processar para extrair data de renovação + prazo de aviso prévio + presença de renovação automática.
   - **Drive conectado**  -  se `contractRepository.kind = "connected-storage"`, rodar `composio search drive` → listar arquivos → verificar se há algum ainda não presente em `contracts/` (chamar `read-a-contract` como sub-etapa para os novos  -  ou mostrar como "não processados: rode read-a-contract primeiro" para o usuário).
   - **Provedor de cobrança**  -  `composio search billing` → listar assinaturas com datas de renovação. Usar apenas para ferramentas sem contratos formais.

4. **Extrair dados por entrada.**

   Por contrato/assinatura: `{ vendor, amount_if_known, nextRenewalDate, noticeWindowDays, autoRenew, contractPath, source }`.

5. **Calcular o nível de antecedência por entrada** (dias até a renovação):
   - **7 dias**  -  urgente; se autoRenew e já passou o prazo de aviso, sinalizar "renovação iminente  -  não é possível parar".
   - **30 dias**  -  quente; fundador decide agora.
   - **60 dias**  -  morno; janela de negociação aberta.
   - **90 dias**  -  frio; janela de avaliação.
   - **além disso**  -  arquivado.

   Ajustes de apetite de risco vindos de `procurement.json`:
   - conservador → subir tudo um nível.
   - rápido → deixar nos padrões.

6. **Escrever `renewals/calendar.md`** de forma atômica. Arquivo VIVO  -  sobrescrito a cada vez.

   Estrutura:

   ```markdown
   # Renewal Calendar

   _Last scan: {ISO-8601} · Contracts scanned: {N}_

   ## Next 7 days ({M})
   - {Vendor} · {YYYY-MM-DD} · auto-renew:{Y/N} · notice-window-passed:{Y/N} · amount:{$if known} · path:{contracts/...md}

   ## Next 30 days ({M})
   ...

   ## Next 90 days ({M})
   ...

   ## Beyond 90 days ({M})
   ...
   ```

   Dentro de cada nível, ordenar por data crescente.

   **Arquivo NÃO indexado em `outputs.json`.** Documento vivo.

7. **Produzir o resumo trimestral** se solicitado (modo "quarterly") ou se estiver a até 14 dias do fim do trimestre. Salvar em `renewals/{YYYY-QN}-digest.md`:

   - **Próximas neste trimestre**  -  lista ordenada.
   - **Já passaram do prazo de aviso para cancelamento**  -  se houver, destacadas separadamente.
   - **Principais candidatos a negociação**  -  2 a 3 renovações onde os termos do contrato + a postura do fundador sugerem espaço para negociar (por exemplo, compromissos anuais com descompasso de uso).
   - **Candidatos a ajuste de escopo**  -  ferramentas pouco usadas mas renovando.

   Arquivo É indexado em `outputs.json` com `type: "renewal-digest"`.

8. **Escritas atômicas**  -  `*.tmp` → renomear.

9. **Adicionar a `outputs.json`** com `type: "renewal-digest"` somente em execuções de resumo. Atualizações do calendário não adicionam.

10. **Resumir para o usuário**  -  "N contratos escaneados. M renovando nos próximos 30 dias. Uma para agir primeiro: {vendor}  -  {motivo}. Abra renewals/calendar.md para a lista completa."

## Saídas

- `renewals/calendar.md` (vivo, NÃO indexado)
- `renewals/{YYYY-QN}-digest.md` (indexado, apenas execuções de resumo)
- Adiciona a `outputs.json` com `type: "renewal-digest"` (apenas execuções de resumo).

## O que eu nunca faço

- **Renovar automaticamente ou cancelar em nome do fundador.** Mostrar e sinalizar; o fundador age.
- **Contatar fornecedores.** O contato para renovação é trabalho de `draft-a-message` (type=vendor) e ainda precisa de aprovação do fundador.
- **Pular contrato não processado no drive conectado.** Se encontrado, mostrar ("3 contratos ainda não processados  -  rode `read-a-contract` em: {lista}") em vez de ignorar silenciosamente.
