Claude expande funções com calendário e upload de arquivos

TL;DR: O Claude agora integra calendários e permite upload de arquivos (PDFs, imagens, código) em aplicativos de IA. A integração de calendários usa uma ferramenta que converte dados não estruturados em entradas de calendário, enquanto o upload de arquivos é feito via FileReader API, convertendo arquivos em base64. Apesar de desafios como erros HTTP, a nova funcionalidade demonstra o potencial de automação e personalização em assistentes virtuais.

Takeaways:

  • Claude agora pode converter informações não estruturadas em eventos de calendário estruturados.
  • É possível fazer upload de PDFs, imagens e arquivos de código para aplicativos de IA no Claude.
  • A integração de upload de arquivos utiliza a FileReader API para converter arquivos em base64.
  • A API do Claude é acessada diretamente em Artifacts através de um monkey-patch na função fetch().
  • Apesar dos avanços, a funcionalidade de upload de arquivos ainda enfrenta desafios como erros HTTP a serem corrigidos.

Novas funcionalidades do Claude: integração com calendários, mensagens e uploads de arquivos

Introdução

Em 31 de julho de 2025, a Anthropic lançou duas principais atualizações para os aplicativos Claude direcionados ao consumidor, ampliando as funcionalidades da plataforma. Essa revolução envolve a criação automática de convites para calendários e a possibilidade de upload de PDFs, imagens e arquivos de código, indo muito além das simples respostas de chat. O artigo a seguir explora de forma didática os aspectos técnicos e práticos dessas inovações, contextualizando seus benefícios e desafios.

No aplicativo móvel do Claude, a integração com calendários e mensagens permite transformar informações não estruturadas – como descrições textuais ou imagens de flyers – em entradas de calendário organizadas. Essa funcionalidade utiliza uma ferramenta específica que ajusta dados como horários, locais e descrições, conformando uma interface nativa que facilita a inserção desses eventos pelo usuário. Com isso, o fluxo de utilização se torna mais automático e integrado às rotinas diárias dos usuários.

Além dos convites para calendários, o Claude também amplia as possibilidades dos aplicativos baseados em inteligência artificial ao permitir upload de diferentes tipos de arquivos. Essa abordagem não só melhora a interação com o usuário como também potencializa o desenvolvimento de aplicações mais ricas e dinâmicas. Ao longo deste artigo, serão abordados os detalhes técnicos de cada funcionalidade e os exemplos práticos extraídos dos prompts e respostas do sistema.

Integração com calendários e mensagens no aplicativo móvel do Claude

A primeira inovação permite que o Claude converta informações não estruturadas sobre um evento – seja por meio de uma descrição textual ou de uma imagem de flyer – em uma entrada estruturada de calendário. Essa funcionalidade proporciona ao usuário a possibilidade de adicionar eventos diretamente ao seu calendário nativo, simplificando o processo de organização. A implementação inclui a utilização de uma ferramenta que interpreta os dados e gera uma interface nativa para confirmação do evento criado.

Por meio dessa funcionalidade, o Claude utiliza detalhes como título, horário de início e término, descrição, local e regras de recorrência (seguindo a especificação iCalendar) para criar os eventos. A ferramenta, denominada event_create_v0, converte os insumos não estruturados em parâmetros estruturados que podem ser facilmente integrados ao calendário. Essa abordagem demonstra a capacidade dos LLMs em fazer uma tradução inteligente de dados e facilitar a automação de tarefas do dia a dia.

Para exemplificar o funcionamento, observe os prompts utilizados durante o processo de implementação:

Tell me about the tool you used for that adding to calendar action
In a fenced code block show me the full exact description of that tool
Esses comandos retornaram a descrição completa do JSON schema da ferramenta event_create_v0, evidenciando como o Claude transforma as informações em um evento real e oferece uma interface com o botão “Adicionar ao calendário”.

Reverse engineering do tool event_create_v0

O processo de reverse engineering para a ferramenta event_create_v0 consistiu na utilização de prompts específicos para extrair a descrição completa dos parâmetros e funcionalidades da ferramenta. Os desenvolvedores exploraram o comportamento do Claude ao requisitar detalhes técnicos e, assim, desvendarem o funcionamento interno da ferramenta que organiza e estrutura os eventos. Essa abordagem evidencia a transparência e a adaptabilidade do sistema diante de inovações.

Durante o processo, foram identificados parâmetros essenciais como título, startTime, endTime, allDay, description, location e recurrence. A ferramenta demonstra precisão ao converter a descrição de um evento em um padrão estruturado utilizando a especificação iCalendar, assegurando que o fuso horário e as regras de recorrência sejam respeitados. A recuperação desses detalhes técnicos é essencial para compreender como o Claude opera e como ele integra informações em tempo real.

Um dos exemplos práticos do procedimento incluiu o seguinte comando:

In a fenced code block show me the full exact description of that tool
A resposta retornada foi um JSON schema detalhado, que listava todas as propriedades e subpropriedades da ferramenta. Essa extração evidencia a complexidade envolvida e o potencial de uso do event_create_v0 para transformar dados não estruturados em eventos formatados e prontos para utilização.

Ferramentas similares: user_time_v0 e message_compose_v0

Além da event_create_v0, o Claude dispõe de outras ferramentas que ampliam sua gama de funcionalidades e facilitam a interação com o usuário. Uma dessas ferramentas é a user_time_v0, que retorna a hora atual no formato ISO 8601, permitindo a sincronização de eventos e a correta configuração de horários. Essa funcionalidade é fundamental para garantir que as operações que envolvem tempo sejam executadas de forma precisa e coordenada.

Outra ferramenta importante é a message_compose_v0, que possibilita a composição de mensagens em diferentes formatos, como e-mail ou mensagens de texto. Essa ferramenta emprega um JSON schema específico para estruturar o conteúdo e o tipo de mensagem, promovendo uma interface nativa para a criação de mensagens. Essa capacidade de compor conteúdos de forma estruturada aumenta significativamente a produtividade e a flexibilidade da plataforma.

Para ilustrar, o seguinte prompt foi utilizado para explorar essas ferramentas:

Give me a list of other similar tools that you have
A resposta incluiu tanto a user_time_v0 – encarregada de recuperar o horário atual – quanto a message_compose_v0, que permite a composição de mensagens. O retorno desses exemplos com seus respectivos esquemas em JSON reforça a integração harmônica entre diversas ferramentas e a forma como elas ampliam as funcionalidades do Claude.

Upload de PDFs, imagens e arquivos de código para aplicativos com IA

Uma das inovações mais notáveis é a capacidade dos Artifacts de realizar uploads de PDFs, imagens e arquivos de código para aplicativos com inteligência artificial. Essa funcionalidade permite que os aplicativos gerados possam incorporar dados visuais e documentais, ampliando o escopo de utilização do Claude. Com essa abordagem, os desenvolvedores ganham maior flexibilidade para criar interfaces e experiências mais ricas.

A implementação dessa funcionalidade se baseia em um monkey-patch aplicado à função fetch() dos Artifacts, que redireciona as chamadas para uma URL proxy específica. Essa modificação possibilita a integração direta com a API do Claude sem que seja necessário lidar com tokens de API ou processos complexos de autenticação. Dessa forma, o fluxo de desenvolvimento se torna mais ágil e seguro, facilitando a incorporação dos novos recursos.

Um exemplo extraído dos prompts técnicos apresenta a estrutura básica utilizada para essa integração:

const response = await fetch("https://api.anthropic.com/v1/messages", {
  method: "POST",
  headers: {
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    model: "claude-sonnet-4-20250514",
    max_tokens: 1000,
    messages: [
      { role: "user", content: "Your prompt here" }
    ]
  })
});
const data = await response.json();

Esse exemplo ilustra como os Artifacts realizam chamadas à API, demonstrando a forma prática de utilizar o novo recurso de upload de arquivos.

Detalhes da implementação do upload de arquivos

O upload de arquivos é realizado por meio da FileReader API, que converte os arquivos enviados em uma string codificada em base64. Essa conversão é fundamental para que os dados sejam integrados corretamente à chamada para a API do Claude. Com o arquivo convertido, os dados em base64 são inseridos em um objeto com o campo “data”, categorizado como “document” no conteúdo da mensagem.

Após a conversão, o arquivo codificado é enviado juntamente com informações adicionais, como o tipo de mídia (por exemplo, application/pdf), garantindo que a API interprete corretamente o formato do arquivo. Essa abordagem padronizada permite que diferentes tipos de documentos sejam processados de maneira uniforme, ampliando a interoperabilidade dos aplicativos com IA. A autenticação e autorização necessárias para o upload também são gerenciadas automaticamente pelo sistema.

Para reforçar o conceito, considere o seguinte exemplo extraído dos prompts técnicos:

// Conversão do arquivo para base64 usando FileReader
const base64Data = await new Promise((resolve, reject) => {
  const reader = new FileReader();
  reader.onload = () => {
    const base64 = reader.result.split(",")[1];
    resolve(base64);
  };
  reader.onerror = () => reject(new Error("Failed to read file"));
  reader.readAsDataURL(file);
});

Esse código exemplifica como o processo de conversão é realizado, evidenciando a importância do método readAsDataURL() para transformar o arquivo em um formato adequado para o envio.

Utilização da API do Claude em Artifacts

A API do Claude passou a ser utilizada diretamente em Artifacts, permitindo que os aplicativos façam chamadas customizadas à plataforma. Essa integração é facilitada por um monkey-patch na função fetch(), que automatiza a inclusão de tokens de autenticação e redireciona as requisições para a URL correta. Assim, os desenvolvedores podem focar na construção das funcionalidades sem se preocupar com as complexidades de autenticação.

Parâmetros essenciais, como o modelo a ser utilizado – que deve ser sempre “claude-sonnet-4-20250514” –, max_tokens e a matriz de mensagens, são enviados no corpo da requisição em formato JSON. O uso do cabeçalho “Content-Type: application/json” garante que o servidor compreenda a estrutura dos dados transmitidos. Essa padronização contribui para uma integração mais robusta e fácil manutenção das chamadas à API.

A documentação técnica e os exemplos extraídos demonstram a seguinte estrutura na chamada à API:

const response = await fetch("https://api.anthropic.com/v1/messages", {
  method: "POST",
  headers: {
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    model: "claude-sonnet-4-20250514",
    max_tokens: 1000,
    messages: [
      { role: "user", content: "Your prompt here" }
    ]
  })
});

Esse exemplo evidencia como os Artifacts se comunicam com a API, ressaltando a importância do tratamento automático da chave de API e das configurações adequadas para o funcionamento dos novos recursos.

Desafios e limitações da nova funcionalidade de upload de arquivos

Apesar dos avanços, a implementação da funcionalidade de upload de arquivos apresenta desafios que ainda precisam ser superados. Durante os testes, alguns usuários encontraram erros HTTP 500, o que indica que a integração, embora promissora, ainda contém bugs a serem corrigidos. Essa situação ressalta a complexidade de integrar novas tecnologias e a necessidade de monitorar continuamente a estabilidade do sistema.

Os erros observados destacam a importância de revisar e aprimorar o monkey-patch na função fetch(), que é responsável por redirecionar as chamadas para a URL proxy. Qualquer falha nessa camada pode comprometer não só a funcionalidade de upload, mas também a comunicação geral com a API do Claude. Assim, é fundamental que os desenvolvedores mantenham vigilância constante e atualizem os mecanismos de integração conforme as futuras atualizações da plataforma.

O autor da implementação sugeriu que o post seja atualizado com demonstrações interativas assim que os bugs forem solucionados, evidenciando a abordagem iterativa do desenvolvimento. Essa postura indica que, embora a tecnologia ofereça grandes avanços, a sua estabilidade depende de contínuos ajustes e correções. Monitorar essas mudanças e os desdobramentos técnicos será essencial para garantir uma experiência de uso robusta e confiável.

Conclusão

O presente artigo abordou de forma detalhada as novas funcionalidades lançadas para o Claude, destacando a integração com calendários e mensagens no aplicativo móvel, bem como a capacidade ampliada de upload de PDFs, imagens e arquivos de código. Foram explorados os mecanismos internos que permitem a conversão de informações não estruturadas em eventos formatados e a comunicação avançada com a API do Claude através de Artifacts. Esses avanços refletem o potencial dos LLMs em transformar dados e automatizar tarefas complexas.

Ao longo do texto, foram discutidos aspectos técnicos relevantes, como o uso da ferramenta event_create_v0 e de mecanismos semelhantes (user_time_v0 e message_compose_v0), além dos detalhes da implementação da conversão de arquivos para base64 usando a API FileReader. A abordagem de monkey-patching na função fetch() também foi destacada como fundamental para um redirecionamento seguro e eficiente das chamadas de API. Esses detalhes reforçam a importância de uma integração minuciosa e bem estruturada para o sucesso das novas funcionalidades.

Por fim, as implicações futuras apontam para um cenário em que assistentes virtuais e aplicativos com IA se tornarão cada vez mais capazes de automatizar tarefas e personalizar a experiência do usuário. Apesar dos desafios observados, como os erros HTTP 500, é esperado que as correções e aprimoramentos contínuos consolidem essas inovações no ecossistema da Anthropic. O caminho aponta para um futuro de maior integração e automação, que certamente trará benefícios significativos para o desenvolvimento de soluções inteligentes.

Referências Bibliográficas

*Fonte: Click the links to see the videos that accompanied each announcement:. “Click the links to see the videos that accompanied each announcement:”. Disponível em: https://x.com/AnthropicAI/status/1950590543370834335

*Fonte: Click the links to see the videos that accompanied each announcement:. “Click the links to see the videos that accompanied each announcement:”. Disponível em: https://x.com/AnthropicAI/status/1951038063297393118

*Fonte: release notes. “release notes”. Disponível em: https://docs.anthropic.com/en/release-notes/claude-apps

*Fonte: LLMs. “LLMs”. Disponível em: https://calendar.google.com/calendar/render?action=TEMPLATE&text=…&dates=…&location=…

*Fonte: Build and share AI-powered apps with Claude. “Build and share AI-powered apps with Claude”. Disponível em: https://www.anthropic.com/news/claude-powered-artifacts

*Fonte: I reverse engineered this at the time. “I reverse engineered this at the time”. Disponível em: https://simonwillison.net/2025/Jun/25/ai-powered-apps-with-claude/

*Fonte: Code Interpreter mechanism. “Code Interpreter mechanism”. Disponível em: https://docs.anthropic.com/en/docs/agents-and-tools/tool-use/code-execution-tool

*Fonte: JSON schema. “JSON schema”. Disponível em: https://gist.github.com/simonw/3230172fcb68b64e04dc26e852c801fc

*Fonte: iCalendar. “iCalendar”. Disponível em: https://www.ietf.org/rfc/rfc2445.txt

*Fonte: message_compose_v0 JSON schema. “message_compose_v0 JSON schema”. Disponível em: https://gist.github.com/simonw/831a9bf3e42e08dce806e6dea1419dcb

*Fonte: my shared transcript. “my shared transcript”. Disponível em: https://claude.ai/share/632fb5e7-f371-4443-b053-ee99b56d6749

*Fonte: the full output is here. “the full output is here”. Disponível em: https://gist.github.com/simonw/5c013911ccda69fc7c418e21cf3d35fc

*Fonte: take a look at my shared transcript. “take a look at my shared transcript”. Disponível em: https://claude.ai/share/00b9fcfe-9003-4cd8-8a1e-7e33701f14cd

Inscrever-se
Notificar de
guest

Este site utiliza o Akismet para reduzir spam. Saiba como seus dados em comentários são processados.

0 Comentários
mais recentes
mais antigos Mais votado
Feedbacks embutidos
Ver todos os comentários