[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6EC2W3FBPPRJB3DMVE7M1Y4":3,"skill-same:01M6EC2W3FBPPRJB3DMVE7M1Y4":230},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":15,"categories":16,"keywords":25,"publishedAt":34,"linkOnly":35,"markdownContent":36,"markdownBody":37,"frontMatter":38,"refName":44,"commitSha":45,"skillDirectory":46,"forksCount":47,"repositoryHtmlUrl":48,"repositoryHomepageUrl":49,"ownerHtmlUrl":50,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":51,"install":52,"resources":65},"01M6EC2W3FBPPRJB3DMVE7M1Y4","document-automation",null,"Document Automation — Skill especializada para otimização de processos documentais","kursku\u002Fskills","kursku","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F15705647?v=4","01M6E5VWJKMRJQ1PNFP2P0PYVZ","01M6E5VWSCHN2C3RVE67795NRC",125,"MIT","https:\u002F\u002Fgithub.com\u002Fkursku\u002Fskills\u002Fblob\u002Fmaster\u002Fpacks\u002Fkit-510-ptbr\u002F12-ia-automacao\u002Fdocument-automation\u002FSKILL.md",[17,22],{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000002","文档处理","SCENARIO","使用场景",{"categoryNo":23,"categoryName":24,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000023","Skill与智能体开发",[26,27,28,29,30,31,32,33],"automation","document","document automation","safe","code","para","de","ia","2026-11-10 10:12:30",false,"---\nname: document-automation\ndescription: \"Document Automation — Skill especializada para otimização de processos documentais\"\nlicense: MIT\nmetadata:\n  version: 1.0.0\n  author: Cafe Code AI\n  category: 12-ia-automacao\n  updated: 2026-03-01\nrisk: safe\n---\n\n# Document Automation\n\nEsta skill capacita o Claude a projetar, implementar e otimizar soluções de automação de documentos usando IA, APIs e plataformas de low-code\u002Fno-code como Make e N8N.\n\n---\n\n## Keywords\n\n`Automação de Documentos`, `Geração Dinâmica de Documentos`, `Extração Inteligente de Dados (IDP)`, `OCR`, `Processamento de Linguagem Natural (PLN)`, `Assinatura Eletrônica`, `Workflow de Documentos`, `RPA para Documentos`, `Gestão de Ciclo de Vida do Contrato (CLM)`, `APIs de Documentos`, `Make.com`, `N8N`, `Prompts para IA`, `Validação de Documentos`.\n\n---\n\n## Quick Start\n\n1.  **Configurar um trigger de entrada de documentos**: Configure um webhook em Make.com (ou N8N) para receber dados de um formulário web (ex: Typeform, Google Forms) preenchido ou um novo arquivo em uma pasta monitorada (ex: Google Drive, Dropbox, e-mail).\n2.  **Extrair e preparar dados-chave**: Utilize módulos de extração (ex: \"Text Parser\" em Make, \"Function\" em N8N) ou conectores de banco de dados (ex: Airtable, PostgreSQL) para coletar as informações necessárias que alimentarão o documento ou a extração.\n3.  **Interagir com Claude para conteúdo\u002Fvalidação**: Envie os dados preparados para o Claude via API com um prompt detalhado, instruindo-o a gerar o corpo de um documento (ex: proposta, contrato) ou validar\u002Fnormalizar dados extraídos.\n4.  **Criar ou preencher o documento final**: Utilize o texto gerado pelo Claude (ou os dados validados) para preencher um template em um serviço como Google Docs API, DocuSign Gen, PandaDoc ou um gerador de PDF customizado.\n5.  **Distribuir e arquivar de forma automatizada**: Envie o documento final para assinatura eletrônica (ex: DocuSign, Adobe Sign) e armazene-o automaticamente em um sistema de gestão documental (ex: SharePoint, Google Drive) ou CRM\u002FERP.\n\n---\n\n## Core Workflows\n\n### Workflow 1: Automação de Geração de Propostas Comerciais Dinâmicas com Claude e Make.com\n\n**Cenário**: Uma empresa de serviços de TI precisa gerar propostas comerciais personalizadas e detalhadas rapidamente para cada cliente, com base em dados do CRM e inputs específicos do vendedor.\n\n**Passos detalhados**:\n\n1.  **Trigger (Make.com)**: Um novo \"Negócio\" no estágio \"Proposta Necessária\" no HubSpot (ou outro CRM como Pipedrive, Salesforce) aciona um webhook do Make.com. O webhook recebe o `ID do Negócio`.\n2.  **Coleta de Dados do CRM**:\n    *   Módulo \"HubSpot CRM - Get a Deal\": Busca detalhes completos do negócio, incluindo `nome_cliente`, `cnpj_cliente`, `servicos_selecionados` (lista de IDs de serviços ou nomes), `valor_total_estimado`.\n    *   Módulo \"Google Sheets - Search Rows\": Consulta uma planilha de \"Catálogo de Serviços\" para obter descrições detalhadas e preços unitários para cada `servico_selecionado`.\n    *   Variáveis resultantes: `cliente_nome_fantasia`, `cliente_razao_social`, `cliente_cnpj`, `cliente_endereco`, `lista_de_servicos_detalhados` (com nome, descrição, preço).\n3.  **Geração do Conteúdo da Proposta (Claude API)**:\n    *   Módulo \"HTTP - Make a request\" no Make.com para a API do Claude (ex: `https:\u002F\u002Fapi.anthropic.com\u002Fv1\u002Fmessages`).\n    *   **Método**: `POST`\n    *   **Headers**: `Content-Type: application\u002Fjson`, `x-api-key: SEU_CLAUDE_API_KEY`, `anthropic-version: 2023-06-01`\n    *   **Corpo (JSON)**:\n        ```json\n        {\n          \"model\": \"claude-3-opus-20240229\",\n          \"max_tokens\": 2000,\n          \"messages\": [\n            {\n              \"role\": \"user\",\n              \"content\": \"Você é um redator de propostas comerciais persuasivo e formal para uma empresa de tecnologia focada em soluções de automação. Crie as seções 'Escopo dos Serviços', 'Investimento', 'Prazos de Entrega' e 'Condições Gerais' para uma proposta. Seja claro, conciso e destaque os benefícios para o cliente.\\n\\n**Dados do Cliente:**\\nNome Fantasia: {{1.nome_fantasia}}\\nRazão Social: {{1.razao_social}}\\nCNPJ: {{1.cnpj}}\\nEndereço: {{1.endereco}}\\n\\n**Serviços Selecionados e Detalhes:**\\n{{2.lista_de_servicos_detalhados}} \\n\\n**Valor Total Estimado:** R$ {{1.valor_total_estimado}}\\n\\n**Instruções:**\\n1. Comece com uma introdução calorosa e profissional, endereçando o cliente.\\n2. Para 'Escopo dos Serviços', liste e descreva cada serviço selecionado, focando no valor que entrega.\\n3. Para 'Investimento', apresente o valor total estimado e sugira condições de pagamento: 50% adiantado, 50% na conclusão da primeira fase.\\n4. Para 'Prazos de Entrega', estime um prazo de 90 dias úteis para a implementação completa, com marcos de entrega para cada serviço.\\n5. Para 'Condições Gerais', inclua uma cláusula padrão de confidencialidade e uma de validade da proposta de 30 dias.\\n6. Termine com uma chamada para ação para agendamento da reunião de alinhamento.\"\n            }\n          ]\n        }\n        ```\n    *   O Make.com capturará a resposta do Claude contendo o texto formatado da proposta.\n4.  **Preenchimento do Template da Proposta (Google Docs API)**:\n    *   Módulo \"Google Docs - Create a Document from a Template\": Usa um template pré-definido no Google Docs com placeholders como `{{NOME_CLIENTE}}`, `{{CONTEUDO_PROPOSTA}}`.\n    *   O texto gerado pelo Claude preenche o placeholder `{{CONTEUDO_PROPOSTA}}`.\n    *   O nome do cliente do CRM preenche `{{NOME_CLIENTE}}`.\n5.  **Conversão para PDF e Assinatura Eletrônica**:\n    *   Módulo \"Google Docs - Convert a Document\": Converte o documento preenchido para PDF.\n    *   Módulo \"DocuSign - Send an Envelope\": Envia o PDF gerado para o e-mail do contato do cliente (extraído do CRM) e para o e-mail do gerente comercial para assinatura eletrônica.\n    *   Configuração de um webhook de notificação do DocuSign para o Make.com para monitorar o status da assinatura.\n6.  **Arquivamento e Notificação**:\n    *   Módulo \"Google Drive - Upload a File\": Armazena a proposta final em PDF em uma pasta específica (ex: `\u002FPropostas_Finalizadas\u002F{{1.nome_cliente}}\u002F`).\n    *   Módulo \"Slack - Create a Message\": Notifica a equipe de vendas e o gerente comercial sobre o envio da proposta e seu status (ex: \"Proposta para {{1.nome_cliente}} enviada para assinatura!\").\n\n### Workflow 2: Extração Inteligente de Dados de Notas Fiscais com N8N e Google Cloud Vision AI\n\n**Cenário**: Uma equipe financeira recebe centenas de notas fiscais (NF-e) por e-mail mensalmente e precisa extrair dados como nome do fornecedor, CNPJ, valor total, data de emissão, data de vencimento e itens da fatura para registro no sistema ERP e conciliação.\n\n**Passos detalhados**:\n\n1.  **Trigger (N8N)**: \"Email Read IMAP\" node configurado para monitorar uma caixa de entrada específica (`faturas@suaempresa.com.br`) para novos e-mails com anexos PDF ou XML. Filtra por assunto que contenha \"Nota Fiscal\" ou \"Fatura\".\n2.  **Armazenamento Temporário e Extração de Anexos**:\n    *   \"Split in Batches\" node: Se houver múltiplos anexos, processa um por um.\n    *   \"Read Binary File\" node: Lê o anexo PDF\u002FXML.\n    *   \"Google Drive - Upload File\" node: Faz upload do anexo para uma pasta temporária no Google Drive (`\u002FNFE_Processamento\u002F`).\n3.  **Processamento OCR\u002FIDP (Google Cloud Vision AI)**:\n    *   \"Google Cloud Vision - OCR Document\" node: Configurado para processar o PDF do Google Drive.\n    *   **Recursos**: `TEXT_DETECTION` para texto geral e `DOCUMENT_TEXT_DETECTION` para extração estruturada (se aplicável a layout de NF-e).\n    *   **Saída**: JSON com o texto extraído e, em alguns casos, coordenadas de campos. Para NF-e no Brasil, o XML é preferível, mas o OCR é um fallback para PDFs não estruturados ou DANFEs.\n4.  **Pré-processamento e Normalização de Dados (N8N Function Node)**:\n    *   Um \"Function\" node em JavaScript para percorrer o JSON do Google Vision AI (ou o XML, se disponível), extrair campos específicos e aplicar regras de normalização.\n    *   **Exemplo de código (simplificado para JSON de texto plano do OCR)**:\n        ```javascript\n        const visionOutput = $json.data.fullTextAnnotation.text;\n        let extractedData = {\n          fornecedor: '',\n          cnpj_fornecedor: '',\n          valor_total: 0,\n          data_emissao: '',\n          data_vencimento: ''\n        };\n        \n        \u002F\u002F Exemplo de regex para encontrar campos comuns\n        const regexFornecedor = \u002F(?:Razão Social|Nome Fornecedor):\\s*(.+)\u002Fi;\n        const regexCNPJ = \u002F(?:\\bCNPJ\\b|\\bCPF\\b):\\s*(\\d{2}\\.\\d{3}\\.\\d{3}\\\u002F\\d{4}-\\d{2}|\\d{3}\\.\\d{3}\\.\\d{3}-\\d{2})\u002Fi;\n        const regexValorTotal = \u002F(?:Valor Total|Total a Pagar):\\s*R\\$\\s*([\\d\\.,]+)\u002Fi;\n        const regexDataEmissao = \u002F(?:Data Emissão|Emitido Em):\\s*(\\d{2}\\\u002F\\d{2}\\\u002F\\d{4})\u002Fi;\n        const regexDataVencimento = \u002F(?:Data Vencimento|Vencimento Em):\\s*(\\d{2}\\\u002F\\d{2}\\\u002F\\d{4})\u002Fi;\n        \n        const lines = visionOutput.split('\\n');\n        for (const line of lines) {\n          let match;\n          if (!extractedData.fornecedor && (match = line.match(regexFornecedor))) {\n            extractedData.fornecedor = match[1].trim();\n          }\n          if (!extractedData.cnpj_fornecedor && (match = line.match(regexCNPJ))) {\n            extractedData.cnpj_fornecedor = match[1].trim();\n          }\n          if (!extractedData.valor_total && (match = line.match(regexValorTotal))) {\n            extractedData.valor_total = parseFloat(match[1].replace(\u002F\\.\u002Fg, '').replace(',', '.'));\n          }\n          if (!extractedData.data_emissao && (match = line.match(regexDataEmissao))) {\n            extractedData.data_emissao = match[1].trim();\n          }\n          if (!extractedData.data_vencimento && (match = line.match(regexDataVencimento))) {\n            extractedData.data_vencimento = match[1].trim();\n          }\n        }\n        \n        \u002F\u002F Normalização de datas","# Document Automation\n\nEsta skill capacita o Claude a projetar, implementar e otimizar soluções de automação de documentos usando IA, APIs e plataformas de low-code\u002Fno-code como Make e N8N.\n\n---\n\n## Keywords\n\n`Automação de Documentos`, `Geração Dinâmica de Documentos`, `Extração Inteligente de Dados (IDP)`, `OCR`, `Processamento de Linguagem Natural (PLN)`, `Assinatura Eletrônica`, `Workflow de Documentos`, `RPA para Documentos`, `Gestão de Ciclo de Vida do Contrato (CLM)`, `APIs de Documentos`, `Make.com`, `N8N`, `Prompts para IA`, `Validação de Documentos`.\n\n---\n\n## Quick Start\n\n1.  **Configurar um trigger de entrada de documentos**: Configure um webhook em Make.com (ou N8N) para receber dados de um formulário web (ex: Typeform, Google Forms) preenchido ou um novo arquivo em uma pasta monitorada (ex: Google Drive, Dropbox, e-mail).\n2.  **Extrair e preparar dados-chave**: Utilize módulos de extração (ex: \"Text Parser\" em Make, \"Function\" em N8N) ou conectores de banco de dados (ex: Airtable, PostgreSQL) para coletar as informações necessárias que alimentarão o documento ou a extração.\n3.  **Interagir com Claude para conteúdo\u002Fvalidação**: Envie os dados preparados para o Claude via API com um prompt detalhado, instruindo-o a gerar o corpo de um documento (ex: proposta, contrato) ou validar\u002Fnormalizar dados extraídos.\n4.  **Criar ou preencher o documento final**: Utilize o texto gerado pelo Claude (ou os dados validados) para preencher um template em um serviço como Google Docs API, DocuSign Gen, PandaDoc ou um gerador de PDF customizado.\n5.  **Distribuir e arquivar de forma automatizada**: Envie o documento final para assinatura eletrônica (ex: DocuSign, Adobe Sign) e armazene-o automaticamente em um sistema de gestão documental (ex: SharePoint, Google Drive) ou CRM\u002FERP.\n\n---\n\n## Core Workflows\n\n### Workflow 1: Automação de Geração de Propostas Comerciais Dinâmicas com Claude e Make.com\n\n**Cenário**: Uma empresa de serviços de TI precisa gerar propostas comerciais personalizadas e detalhadas rapidamente para cada cliente, com base em dados do CRM e inputs específicos do vendedor.\n\n**Passos detalhados**:\n\n1.  **Trigger (Make.com)**: Um novo \"Negócio\" no estágio \"Proposta Necessária\" no HubSpot (ou outro CRM como Pipedrive, Salesforce) aciona um webhook do Make.com. O webhook recebe o `ID do Negócio`.\n2.  **Coleta de Dados do CRM**:\n    *   Módulo \"HubSpot CRM - Get a Deal\": Busca detalhes completos do negócio, incluindo `nome_cliente`, `cnpj_cliente`, `servicos_selecionados` (lista de IDs de serviços ou nomes), `valor_total_estimado`.\n    *   Módulo \"Google Sheets - Search Rows\": Consulta uma planilha de \"Catálogo de Serviços\" para obter descrições detalhadas e preços unitários para cada `servico_selecionado`.\n    *   Variáveis resultantes: `cliente_nome_fantasia`, `cliente_razao_social`, `cliente_cnpj`, `cliente_endereco`, `lista_de_servicos_detalhados` (com nome, descrição, preço).\n3.  **Geração do Conteúdo da Proposta (Claude API)**:\n    *   Módulo \"HTTP - Make a request\" no Make.com para a API do Claude (ex: `https:\u002F\u002Fapi.anthropic.com\u002Fv1\u002Fmessages`).\n    *   **Método**: `POST`\n    *   **Headers**: `Content-Type: application\u002Fjson`, `x-api-key: SEU_CLAUDE_API_KEY`, `anthropic-version: 2023-06-01`\n    *   **Corpo (JSON)**:\n        ```json\n        {\n          \"model\": \"claude-3-opus-20240229\",\n          \"max_tokens\": 2000,\n          \"messages\": [\n            {\n              \"role\": \"user\",\n              \"content\": \"Você é um redator de propostas comerciais persuasivo e formal para uma empresa de tecnologia focada em soluções de automação. Crie as seções 'Escopo dos Serviços', 'Investimento', 'Prazos de Entrega' e 'Condições Gerais' para uma proposta. Seja claro, conciso e destaque os benefícios para o cliente.\\n\\n**Dados do Cliente:**\\nNome Fantasia: {{1.nome_fantasia}}\\nRazão Social: {{1.razao_social}}\\nCNPJ: {{1.cnpj}}\\nEndereço: {{1.endereco}}\\n\\n**Serviços Selecionados e Detalhes:**\\n{{2.lista_de_servicos_detalhados}} \\n\\n**Valor Total Estimado:** R$ {{1.valor_total_estimado}}\\n\\n**Instruções:**\\n1. Comece com uma introdução calorosa e profissional, endereçando o cliente.\\n2. Para 'Escopo dos Serviços', liste e descreva cada serviço selecionado, focando no valor que entrega.\\n3. Para 'Investimento', apresente o valor total estimado e sugira condições de pagamento: 50% adiantado, 50% na conclusão da primeira fase.\\n4. Para 'Prazos de Entrega', estime um prazo de 90 dias úteis para a implementação completa, com marcos de entrega para cada serviço.\\n5. Para 'Condições Gerais', inclua uma cláusula padrão de confidencialidade e uma de validade da proposta de 30 dias.\\n6. Termine com uma chamada para ação para agendamento da reunião de alinhamento.\"\n            }\n          ]\n        }\n        ```\n    *   O Make.com capturará a resposta do Claude contendo o texto formatado da proposta.\n4.  **Preenchimento do Template da Proposta (Google Docs API)**:\n    *   Módulo \"Google Docs - Create a Document from a Template\": Usa um template pré-definido no Google Docs com placeholders como `{{NOME_CLIENTE}}`, `{{CONTEUDO_PROPOSTA}}`.\n    *   O texto gerado pelo Claude preenche o placeholder `{{CONTEUDO_PROPOSTA}}`.\n    *   O nome do cliente do CRM preenche `{{NOME_CLIENTE}}`.\n5.  **Conversão para PDF e Assinatura Eletrônica**:\n    *   Módulo \"Google Docs - Convert a Document\": Converte o documento preenchido para PDF.\n    *   Módulo \"DocuSign - Send an Envelope\": Envia o PDF gerado para o e-mail do contato do cliente (extraído do CRM) e para o e-mail do gerente comercial para assinatura eletrônica.\n    *   Configuração de um webhook de notificação do DocuSign para o Make.com para monitorar o status da assinatura.\n6.  **Arquivamento e Notificação**:\n    *   Módulo \"Google Drive - Upload a File\": Armazena a proposta final em PDF em uma pasta específica (ex: `\u002FPropostas_Finalizadas\u002F{{1.nome_cliente}}\u002F`).\n    *   Módulo \"Slack - Create a Message\": Notifica a equipe de vendas e o gerente comercial sobre o envio da proposta e seu status (ex: \"Proposta para {{1.nome_cliente}} enviada para assinatura!\").\n\n### Workflow 2: Extração Inteligente de Dados de Notas Fiscais com N8N e Google Cloud Vision AI\n\n**Cenário**: Uma equipe financeira recebe centenas de notas fiscais (NF-e) por e-mail mensalmente e precisa extrair dados como nome do fornecedor, CNPJ, valor total, data de emissão, data de vencimento e itens da fatura para registro no sistema ERP e conciliação.\n\n**Passos detalhados**:\n\n1.  **Trigger (N8N)**: \"Email Read IMAP\" node configurado para monitorar uma caixa de entrada específica (`faturas@suaempresa.com.br`) para novos e-mails com anexos PDF ou XML. Filtra por assunto que contenha \"Nota Fiscal\" ou \"Fatura\".\n2.  **Armazenamento Temporário e Extração de Anexos**:\n    *   \"Split in Batches\" node: Se houver múltiplos anexos, processa um por um.\n    *   \"Read Binary File\" node: Lê o anexo PDF\u002FXML.\n    *   \"Google Drive - Upload File\" node: Faz upload do anexo para uma pasta temporária no Google Drive (`\u002FNFE_Processamento\u002F`).\n3.  **Processamento OCR\u002FIDP (Google Cloud Vision AI)**:\n    *   \"Google Cloud Vision - OCR Document\" node: Configurado para processar o PDF do Google Drive.\n    *   **Recursos**: `TEXT_DETECTION` para texto geral e `DOCUMENT_TEXT_DETECTION` para extração estruturada (se aplicável a layout de NF-e).\n    *   **Saída**: JSON com o texto extraído e, em alguns casos, coordenadas de campos. Para NF-e no Brasil, o XML é preferível, mas o OCR é um fallback para PDFs não estruturados ou DANFEs.\n4.  **Pré-processamento e Normalização de Dados (N8N Function Node)**:\n    *   Um \"Function\" node em JavaScript para percorrer o JSON do Google Vision AI (ou o XML, se disponível), extrair campos específicos e aplicar regras de normalização.\n    *   **Exemplo de código (simplificado para JSON de texto plano do OCR)**:\n        ```javascript\n        const visionOutput = $json.data.fullTextAnnotation.text;\n        let extractedData = {\n          fornecedor: '',\n          cnpj_fornecedor: '',\n          valor_total: 0,\n          data_emissao: '',\n          data_vencimento: ''\n        };\n        \n        \u002F\u002F Exemplo de regex para encontrar campos comuns\n        const regexFornecedor = \u002F(?:Razão Social|Nome Fornecedor):\\s*(.+)\u002Fi;\n        const regexCNPJ = \u002F(?:\\bCNPJ\\b|\\bCPF\\b):\\s*(\\d{2}\\.\\d{3}\\.\\d{3}\\\u002F\\d{4}-\\d{2}|\\d{3}\\.\\d{3}\\.\\d{3}-\\d{2})\u002Fi;\n        const regexValorTotal = \u002F(?:Valor Total|Total a Pagar):\\s*R\\$\\s*([\\d\\.,]+)\u002Fi;\n        const regexDataEmissao = \u002F(?:Data Emissão|Emitido Em):\\s*(\\d{2}\\\u002F\\d{2}\\\u002F\\d{4})\u002Fi;\n        const regexDataVencimento = \u002F(?:Data Vencimento|Vencimento Em):\\s*(\\d{2}\\\u002F\\d{2}\\\u002F\\d{4})\u002Fi;\n        \n        const lines = visionOutput.split('\\n');\n        for (const line of lines) {\n          let match;\n          if (!extractedData.fornecedor && (match = line.match(regexFornecedor))) {\n            extractedData.fornecedor = match[1].trim();\n          }\n          if (!extractedData.cnpj_fornecedor && (match = line.match(regexCNPJ))) {\n            extractedData.cnpj_fornecedor = match[1].trim();\n          }\n          if (!extractedData.valor_total && (match = line.match(regexValorTotal))) {\n            extractedData.valor_total = parseFloat(match[1].replace(\u002F\\.\u002Fg, '').replace(',', '.'));\n          }\n          if (!extractedData.data_emissao && (match = line.match(regexDataEmissao))) {\n            extractedData.data_emissao = match[1].trim();\n          }\n          if (!extractedData.data_vencimento && (match = line.match(regexDataVencimento))) {\n            extractedData.data_vencimento = match[1].trim();\n          }\n        }\n        \n        \u002F\u002F Normalização de datas",{"name":5,"risk":29,"license":14,"metadata":39,"description":7},{"author":40,"updated":41,"version":42,"category":43},"Cafe Code AI",1772323200000,"1.0.0","12-ia-automacao","master","346c313fd2ec241a088c68274da26c538422568b","packs\u002Fkit-510-ptbr\u002F12-ia-automacao\u002Fdocument-automation",35,"https:\u002F\u002Fgithub.com\u002Fkursku\u002Fskills","https:\u002F\u002Fclaude.ai","https:\u002F\u002Fgithub.com\u002Fkursku","2026-03-27 22:43:37",{"source":8,"skillName":5,"commands":53,"prompt":63,"zipAvailable":64},[54,57,60],{"tool":55,"command":56},"npx","npx skills add kursku\u002Fskills --skill document-automation",{"tool":58,"command":59},"bunx","bunx skills add kursku\u002Fskills --skill document-automation",{"tool":61,"command":62},"pnpm","pnpm dlx skills add kursku\u002Fskills --skill document-automation","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fkursku\u002Fskills\u002Fblob\u002Fmaster\u002Fpacks\u002Fkit-510-ptbr\u002F12-ia-automacao\u002Fdocument-automation\u002FSKILL.md",true,[66,72,76,80,84,88,92,96,102,106,110,114,118,122,126,130,134,138,142,146,150,154,158,162,166,170,174,178,182,186,190,194,198,202,206,210,214,218,222,226],{"path":67,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":70,"sourceHtmlUrl":71},"csharp\u002Fclaude-api.md","REFERENCE","参考文档",14390,"https:\u002F\u002Fgithub.com\u002Fa1627418541\u002F-\u002Fblob\u002Fmain\u002F.qwen\u002Fskills\u002Fclaude-api\u002Fcsharp\u002Fclaude-api.md",{"path":73,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":74,"sourceHtmlUrl":75},"curl\u002Fexamples.md",6465,"https:\u002F\u002Fgithub.com\u002Fa1627418541\u002F-\u002Fblob\u002Fmain\u002F.qwen\u002Fskills\u002Fclaude-api\u002Fcurl\u002Fexamples.md",{"path":77,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":78,"sourceHtmlUrl":79},"curl\u002Fmanaged-agents.md",7402,"https:\u002F\u002Fgithub.com\u002Fa1627418541\u002F-\u002Fblob\u002Fmain\u002F.qwen\u002Fskills\u002Fclaude-api\u002Fcurl\u002Fmanaged-agents.md",{"path":81,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":82,"sourceHtmlUrl":83},"go\u002Fclaude-api.md",13873,"https:\u002F\u002Fgithub.com\u002Fa1627418541\u002F-\u002Fblob\u002Fmain\u002F.qwen\u002Fskills\u002Fclaude-api\u002Fgo\u002Fclaude-api.md",{"path":85,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":86,"sourceHtmlUrl":87},"go\u002Fmanaged-agents\u002FREADME.md",18478,"https:\u002F\u002Fgithub.com\u002Fa1627418541\u002F-\u002Fblob\u002Fmain\u002F.qwen\u002Fskills\u002Fclaude-api\u002Fgo\u002Fmanaged-agents\u002FREADME.md",{"path":89,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":90,"sourceHtmlUrl":91},"java\u002Fclaude-api.md",15095,"https:\u002F\u002Fgithub.com\u002Fa1627418541\u002F-\u002Fblob\u002Fmain\u002F.qwen\u002Fskills\u002Fclaude-api\u002Fjava\u002Fclaude-api.md",{"path":93,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":94,"sourceHtmlUrl":95},"java\u002Fmanaged-agents\u002FREADME.md",16585,"https:\u002F\u002Fgithub.com\u002Fa1627418541\u002F-\u002Fblob\u002Fmain\u002F.qwen\u002Fskills\u002Fclaude-api\u002Fjava\u002Fmanaged-agents\u002FREADME.md",{"path":97,"resourceType":98,"resourceTypeDesc":99,"sizeBytes":100,"sourceHtmlUrl":101},"LICENSE.txt","LICENSE","许可证",11345,"https:\u002F\u002Fgithub.com\u002Fa1627418541\u002F-\u002Fblob\u002Fmain\u002F.qwen\u002Fskills\u002Fclaude-api\u002FLICENSE.txt",{"path":103,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":104,"sourceHtmlUrl":105},"php\u002Fclaude-api.md",11161,"https:\u002F\u002Fgithub.com\u002Fa1627418541\u002F-\u002Fblob\u002Fmain\u002F.qwen\u002Fskills\u002Fclaude-api\u002Fphp\u002Fclaude-api.md",{"path":107,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":108,"sourceHtmlUrl":109},"php\u002Fmanaged-agents\u002FREADME.md",13184,"https:\u002F\u002Fgithub.com\u002Fa1627418541\u002F-\u002Fblob\u002Fmain\u002F.qwen\u002Fskills\u002Fclaude-api\u002Fphp\u002Fmanaged-agents\u002FREADME.md",{"path":111,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":112,"sourceHtmlUrl":113},"python\u002Fclaude-api\u002Fbatches.md",5095,"https:\u002F\u002Fgithub.com\u002Fa1627418541\u002F-\u002Fblob\u002Fmain\u002F.qwen\u002Fskills\u002Fclaude-api\u002Fpython\u002Fclaude-api\u002Fbatches.md",{"path":115,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":116,"sourceHtmlUrl":117},"python\u002Fclaude-api\u002Ffiles-api.md",3994,"https:\u002F\u002Fgithub.com\u002Fa1627418541\u002F-\u002Fblob\u002Fmain\u002F.qwen\u002Fskills\u002Fclaude-api\u002Fpython\u002Fclaude-api\u002Ffiles-api.md",{"path":119,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":120,"sourceHtmlUrl":121},"python\u002Fclaude-api\u002FREADME.md",12163,"https:\u002F\u002Fgithub.com\u002Fa1627418541\u002F-\u002Fblob\u002Fmain\u002F.qwen\u002Fskills\u002Fclaude-api\u002Fpython\u002Fclaude-api\u002FREADME.md",{"path":123,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":124,"sourceHtmlUrl":125},"python\u002Fclaude-api\u002Fstreaming.md",5233,"https:\u002F\u002Fgithub.com\u002Fa1627418541\u002F-\u002Fblob\u002Fmain\u002F.qwen\u002Fskills\u002Fclaude-api\u002Fpython\u002Fclaude-api\u002Fstreaming.md",{"path":127,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":128,"sourceHtmlUrl":129},"python\u002Fclaude-api\u002Ftool-use.md",16933,"https:\u002F\u002Fgithub.com\u002Fa1627418541\u002F-\u002Fblob\u002Fmain\u002F.qwen\u002Fskills\u002Fclaude-api\u002Fpython\u002Fclaude-api\u002Ftool-use.md",{"path":131,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":132,"sourceHtmlUrl":133},"python\u002Fmanaged-agents\u002FREADME.md",9815,"https:\u002F\u002Fgithub.com\u002Fa1627418541\u002F-\u002Fblob\u002Fmain\u002F.qwen\u002Fskills\u002Fclaude-api\u002Fpython\u002Fmanaged-agents\u002FREADME.md",{"path":135,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":136,"sourceHtmlUrl":137},"ruby\u002Fclaude-api.md",2935,"https:\u002F\u002Fgithub.com\u002Fa1627418541\u002F-\u002Fblob\u002Fmain\u002F.qwen\u002Fskills\u002Fclaude-api\u002Fruby\u002Fclaude-api.md",{"path":139,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":140,"sourceHtmlUrl":141},"ruby\u002Fmanaged-agents\u002FREADME.md",10175,"https:\u002F\u002Fgithub.com\u002Fa1627418541\u002F-\u002Fblob\u002Fmain\u002F.qwen\u002Fskills\u002Fclaude-api\u002Fruby\u002Fmanaged-agents\u002FREADME.md",{"path":143,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":144,"sourceHtmlUrl":145},"shared\u002Fagent-design.md",8335,"https:\u002F\u002Fgithub.com\u002Fa1627418541\u002F-\u002Fblob\u002Fmain\u002F.qwen\u002Fskills\u002Fclaude-api\u002Fshared\u002Fagent-design.md",{"path":147,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":148,"sourceHtmlUrl":149},"shared\u002Ferror-codes.md",7703,"https:\u002F\u002Fgithub.com\u002Fa1627418541\u002F-\u002Fblob\u002Fmain\u002F.qwen\u002Fskills\u002Fclaude-api\u002Fshared\u002Ferror-codes.md",{"path":151,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":152,"sourceHtmlUrl":153},"shared\u002Flive-sources.md",16405,"https:\u002F\u002Fgithub.com\u002Fa1627418541\u002F-\u002Fblob\u002Fmain\u002F.qwen\u002Fskills\u002Fclaude-api\u002Fshared\u002Flive-sources.md",{"path":155,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":156,"sourceHtmlUrl":157},"shared\u002Fmanaged-agents-api-reference.md",21637,"https:\u002F\u002Fgithub.com\u002Fa1627418541\u002F-\u002Fblob\u002Fmain\u002F.qwen\u002Fskills\u002Fclaude-api\u002Fshared\u002Fmanaged-agents-api-reference.md",{"path":159,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":160,"sourceHtmlUrl":161},"shared\u002Fmanaged-agents-client-patterns.md",9430,"https:\u002F\u002Fgithub.com\u002Fa1627418541\u002F-\u002Fblob\u002Fmain\u002F.qwen\u002Fskills\u002Fclaude-api\u002Fshared\u002Fmanaged-agents-client-patterns.md",{"path":163,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":164,"sourceHtmlUrl":165},"shared\u002Fmanaged-agents-core.md",12860,"https:\u002F\u002Fgithub.com\u002Fa1627418541\u002F-\u002Fblob\u002Fmain\u002F.qwen\u002Fskills\u002Fclaude-api\u002Fshared\u002Fmanaged-agents-core.md",{"path":167,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":168,"sourceHtmlUrl":169},"shared\u002Fmanaged-agents-environments.md",10720,"https:\u002F\u002Fgithub.com\u002Fa1627418541\u002F-\u002Fblob\u002Fmain\u002F.qwen\u002Fskills\u002Fclaude-api\u002Fshared\u002Fmanaged-agents-environments.md",{"path":171,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":172,"sourceHtmlUrl":173},"shared\u002Fmanaged-agents-events.md",8630,"https:\u002F\u002Fgithub.com\u002Fa1627418541\u002F-\u002Fblob\u002Fmain\u002F.qwen\u002Fskills\u002Fclaude-api\u002Fshared\u002Fmanaged-agents-events.md",{"path":175,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":176,"sourceHtmlUrl":177},"shared\u002Fmanaged-agents-memory.md",9583,"https:\u002F\u002Fgithub.com\u002Fa1627418541\u002F-\u002Fblob\u002Fmain\u002F.qwen\u002Fskills\u002Fclaude-api\u002Fshared\u002Fmanaged-agents-memory.md",{"path":179,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":180,"sourceHtmlUrl":181},"shared\u002Fmanaged-agents-onboarding.md",8135,"https:\u002F\u002Fgithub.com\u002Fa1627418541\u002F-\u002Fblob\u002Fmain\u002F.qwen\u002Fskills\u002Fclaude-api\u002Fshared\u002Fmanaged-agents-onboarding.md",{"path":183,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":184,"sourceHtmlUrl":185},"shared\u002Fmanaged-agents-overview.md",8632,"https:\u002F\u002Fgithub.com\u002Fa1627418541\u002F-\u002Fblob\u002Fmain\u002F.qwen\u002Fskills\u002Fclaude-api\u002Fshared\u002Fmanaged-agents-overview.md",{"path":187,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":188,"sourceHtmlUrl":189},"shared\u002Fmanaged-agents-tools.md",13496,"https:\u002F\u002Fgithub.com\u002Fa1627418541\u002F-\u002Fblob\u002Fmain\u002F.qwen\u002Fskills\u002Fclaude-api\u002Fshared\u002Fmanaged-agents-tools.md",{"path":191,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":192,"sourceHtmlUrl":193},"shared\u002Fmodel-migration.md",65577,"https:\u002F\u002Fgithub.com\u002Fa1627418541\u002F-\u002Fblob\u002Fmain\u002F.qwen\u002Fskills\u002Fclaude-api\u002Fshared\u002Fmodel-migration.md",{"path":195,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":196,"sourceHtmlUrl":197},"shared\u002Fmodels.md",7560,"https:\u002F\u002Fgithub.com\u002Fa1627418541\u002F-\u002Fblob\u002Fmain\u002F.qwen\u002Fskills\u002Fclaude-api\u002Fshared\u002Fmodels.md",{"path":199,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":200,"sourceHtmlUrl":201},"shared\u002Fprompt-caching.md",9783,"https:\u002F\u002Fgithub.com\u002Fa1627418541\u002F-\u002Fblob\u002Fmain\u002F.qwen\u002Fskills\u002Fclaude-api\u002Fshared\u002Fprompt-caching.md",{"path":203,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":204,"sourceHtmlUrl":205},"shared\u002Ftool-use-concepts.md",16743,"https:\u002F\u002Fgithub.com\u002Fa1627418541\u002F-\u002Fblob\u002Fmain\u002F.qwen\u002Fskills\u002Fclaude-api\u002Fshared\u002Ftool-use-concepts.md",{"path":207,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":208,"sourceHtmlUrl":209},"typescript\u002Fclaude-api\u002Fbatches.md",2596,"https:\u002F\u002Fgithub.com\u002Fa1627418541\u002F-\u002Fblob\u002Fmain\u002F.qwen\u002Fskills\u002Fclaude-api\u002Ftypescript\u002Fclaude-api\u002Fbatches.md",{"path":211,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":212,"sourceHtmlUrl":213},"typescript\u002Fclaude-api\u002Ffiles-api.md",2261,"https:\u002F\u002Fgithub.com\u002Fa1627418541\u002F-\u002Fblob\u002Fmain\u002F.qwen\u002Fskills\u002Fclaude-api\u002Ftypescript\u002Fclaude-api\u002Ffiles-api.md",{"path":215,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":216,"sourceHtmlUrl":217},"typescript\u002Fclaude-api\u002FREADME.md",9920,"https:\u002F\u002Fgithub.com\u002Fa1627418541\u002F-\u002Fblob\u002Fmain\u002F.qwen\u002Fskills\u002Fclaude-api\u002Ftypescript\u002Fclaude-api\u002FREADME.md",{"path":219,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":220,"sourceHtmlUrl":221},"typescript\u002Fclaude-api\u002Fstreaming.md",5596,"https:\u002F\u002Fgithub.com\u002Fa1627418541\u002F-\u002Fblob\u002Fmain\u002F.qwen\u002Fskills\u002Fclaude-api\u002Ftypescript\u002Fclaude-api\u002Fstreaming.md",{"path":223,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":224,"sourceHtmlUrl":225},"typescript\u002Fclaude-api\u002Ftool-use.md",15358,"https:\u002F\u002Fgithub.com\u002Fa1627418541\u002F-\u002Fblob\u002Fmain\u002F.qwen\u002Fskills\u002Fclaude-api\u002Ftypescript\u002Fclaude-api\u002Ftool-use.md",{"path":227,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":228,"sourceHtmlUrl":229},"typescript\u002Fmanaged-agents\u002FREADME.md",9404,"https:\u002F\u002Fgithub.com\u002Fa1627418541\u002F-\u002Fblob\u002Fmain\u002F.qwen\u002Fskills\u002Fclaude-api\u002Ftypescript\u002Fmanaged-agents\u002FREADME.md",[231,249,260,272,283,293],{"skillNo":232,"name":233,"nameZh":6,"description":234,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":235,"categories":236,"keywords":245,"publishedAt":34},"01M6ECKM7725267ZM3XNYWH608","wedding-marketing","Wedding Marketing — Skill especializada para criar e executar estratégias de marketing digital para o mercado de casamentos, focando em noivos e fornecedores.","https:\u002F\u002Fgithub.com\u002Fkursku\u002Fskills\u002Fblob\u002Fmaster\u002Fpacks\u002Fkit-510-ptbr\u002F16-nichos-especificos\u002Fwedding-marketing\u002FSKILL.md",[237,240],{"categoryNo":238,"categoryName":239,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000019","营销推广",{"categoryNo":241,"categoryName":242,"taxonomyType":243,"taxonomyTypeDesc":244},"01JBSEEDCAT000000000000035","市场营销","PROFESSION","适用职业",[246,247,248,32,31,30],"wedding marketing","marketing","marketing digital",{"skillNo":250,"name":251,"nameZh":6,"description":252,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":253,"categories":254,"keywords":257,"publishedAt":34},"01M6ECKGP656JQC2C6CK5JH3ZG","travel-marketing","Travel Marketing — Skill especializada para travel marketing","https:\u002F\u002Fgithub.com\u002Fkursku\u002Fskills\u002Fblob\u002Fmaster\u002Fpacks\u002Fkit-510-ptbr\u002F16-nichos-especificos\u002Ftravel-marketing\u002FSKILL.md",[255,256],{"categoryNo":238,"categoryName":239,"taxonomyType":20,"taxonomyTypeDesc":21},{"categoryNo":241,"categoryName":242,"taxonomyType":243,"taxonomyTypeDesc":244},[258,259,247,31,30,29],"travel marketing","travel",{"skillNo":261,"name":262,"nameZh":6,"description":263,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":264,"categories":265,"keywords":268,"publishedAt":34},"01M6ECKBY53SJ7E167D6BXTMRK","tech-startup-marketing","Tech Startup Marketing — Skill especializada para tech startup marketing","https:\u002F\u002Fgithub.com\u002Fkursku\u002Fskills\u002Fblob\u002Fmaster\u002Fpacks\u002Fkit-510-ptbr\u002F16-nichos-especificos\u002Ftech-startup-marketing\u002FSKILL.md",[266,267],{"categoryNo":238,"categoryName":239,"taxonomyType":20,"taxonomyTypeDesc":21},{"categoryNo":241,"categoryName":242,"taxonomyType":243,"taxonomyTypeDesc":244},[269,270,247,271,31,30,29],"tech startup marketing","tech","startup",{"skillNo":273,"name":274,"nameZh":6,"description":275,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":276,"categories":277,"keywords":280,"publishedAt":34},"01M6ECK7W2W0J5MZ8BZHFM516P","saas-marketing","Saas Marketing — Skill especializada para desenvolver e executar estratégias de marketing digital focadas no crescimento de produtos SaaS.","https:\u002F\u002Fgithub.com\u002Fkursku\u002Fskills\u002Fblob\u002Fmaster\u002Fpacks\u002Fkit-510-ptbr\u002F16-nichos-especificos\u002Fsaas-marketing\u002FSKILL.md",[278,279],{"categoryNo":238,"categoryName":239,"taxonomyType":20,"taxonomyTypeDesc":21},{"categoryNo":241,"categoryName":242,"taxonomyType":243,"taxonomyTypeDesc":244},[281,247,282,29,248,32,31,30],"saas marketing","saas",{"skillNo":284,"name":285,"nameZh":6,"description":286,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":287,"categories":288,"keywords":291,"publishedAt":34},"01M6ECK42ZSX5ND0SCTRKD7XKB","restaurant-marketing","Restaurant Marketing — Skill especializada para otimizar a presença digital, atrair e reter clientes em restaurantes.","https:\u002F\u002Fgithub.com\u002Fkursku\u002Fskills\u002Fblob\u002Fmaster\u002Fpacks\u002Fkit-510-ptbr\u002F16-nichos-especificos\u002Frestaurant-marketing\u002FSKILL.md",[289,290],{"categoryNo":238,"categoryName":239,"taxonomyType":20,"taxonomyTypeDesc":21},{"categoryNo":241,"categoryName":242,"taxonomyType":243,"taxonomyTypeDesc":244},[292,247,30,31],"restaurant marketing",{"skillNo":294,"name":295,"nameZh":6,"description":296,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":297,"categories":298,"keywords":301,"publishedAt":34},"01M6ECK0S48CPYE9P7PRAG9R3T","real-estate-marketing","Real Estate Marketing — Skill especializada para criação e execução de estratégias de marketing digital para o setor imobiliário.","https:\u002F\u002Fgithub.com\u002Fkursku\u002Fskills\u002Fblob\u002Fmaster\u002Fpacks\u002Fkit-510-ptbr\u002F16-nichos-especificos\u002Freal-estate-marketing\u002FSKILL.md",[299,300],{"categoryNo":238,"categoryName":239,"taxonomyType":20,"taxonomyTypeDesc":21},{"categoryNo":241,"categoryName":242,"taxonomyType":243,"taxonomyTypeDesc":244},[247,302,303,30,31,32,248,29],"real estate","real estate marketing"]