For the complete documentation index, see llms.txt. Markdown versions of documentation pages are available by appending .md to the page URL.
Navegação principal
Codex

Codex use case

Adicionar telemetria ao Mac

Use o Codex para instrumentar um recurso do Mac com Logger, executar o aplicativo e verificar a ação nos logs unificados.

Difficulty Avançado
Time horizon 30 min

Use o Codex e o plug-in Build macOS Apps para adicionar alguns eventos de alto valor informativo do Logger a janelas, barras laterais, comandos ou fluxos de sincronização. Depois, execute o aplicativo e comprove pelo Console ou por log stream que as ações corretas foram disparadas.

Ideal para

  • Recursos de aplicativos para Mac nos quais o Codex precisa de um rastreamento confiável da abertura de janelas, seleção na barra lateral, comandos de menu, ações da barra de menus, marcos de sincronização ou caminhos alternativos
  • Ciclos de depuração agêntica nos quais o Codex deve aplicar patches ao código, executar novamente o aplicativo, inspecionar os logs e decidir a próxima correção com base em evidências, em vez de fazer suposições
  • Ciclos de coleta de sessões locais do aplicativo nos quais você quer uma sequência compacta de ações do usuário e eventos do ciclo de vida que possa ser comparada entre execuções repetidas

Contents

    ← Todos os casos de uso

    Adicionar telemetria ao Mac

    Use o Codex para instrumentar um recurso do Mac com Logger, executar o aplicativo e verificar a ação nos logs unificados.

    Use o Codex e o plug-in Build macOS Apps para adicionar alguns eventos de alto valor informativo do Logger a janelas, barras laterais, comandos ou fluxos de sincronização. Depois, execute o aplicativo e comprove pelo Console ou por log stream que as ações corretas foram disparadas.

    Avançado
    30 min

    Use o Codex e o plug-in Build macOS Apps para adicionar alguns eventos de alto valor informativo do Logger a janelas, barras laterais, comandos ou fluxos de sincronização. Depois, execute o aplicativo e comprove pelo Console ou por log stream que as ações corretas foram disparadas.

    Avançado
    30 min

    Ideal para

    • Recursos de aplicativos para Mac nos quais o Codex precisa de um rastreamento confiável da abertura de janelas, seleção na barra lateral, comandos de menu, ações da barra de menus, marcos de sincronização ou caminhos alternativos
    • Ciclos de depuração agêntica nos quais o Codex deve aplicar patches ao código, executar novamente o aplicativo, inspecionar os logs e decidir a próxima correção com base em evidências, em vez de fazer suposições
    • Ciclos de coleta de sessões locais do aplicativo nos quais você quer uma sequência compacta de ações do usuário e eventos do ciclo de vida que possa ser comparada entre execuções repetidas

    Habilidades e Plug-ins

    • Use as habilidades de telemetria do macOS e de compilação/execução para adicionar instrumentação estruturada com `OSLog`, iniciar o aplicativo, percorrer o fluxo da interface e verificar os eventos emitidos pelo Console ou por `log stream`.
    Skill Why use it
    Build macOS Apps Use as habilidades de telemetria do macOS e de compilação/execução para adicionar instrumentação estruturada com `OSLog`, iniciar o aplicativo, percorrer o fluxo da interface e verificar os eventos emitidos pelo Console ou por `log stream`.

    Prompt inicial

    Use o plug-in Build macOS Apps para adicionar logs unificados leves em torno de [name one Mac feature or action flow], depois execute o aplicativo e verifique nos logs se esses eventos são disparados na ordem esperada. Restrições: - Prefira `Logger`, de `OSLog`, em vez de `print`, e crie um par claro de subsystem/category para esse recurso, facilitando a filtragem dos logs. - Registre uma linha concisa para cada limite importante de ação ou transição de estado: por exemplo, abertura de janela, alteração da seleção na barra lateral, acionamento de um comando de menu, início da sincronização, conclusão da sincronização ou uso de um caminho alternativo. - Mantenha os logs permanentes de `info` estáveis e com alto valor informativo. Use `debug` apenas para detalhes locais ruidosos e remova a instrumentação temporária ou rebaixe seu nível antes de concluir. - Não registre segredos, tokens de autenticação, dados pessoais nem o conteúdo bruto de documentos. Se for necessário registrar um identificador, escolha a anotação de privacidade mais segura e explique o motivo. - Compile e execute o aplicativo, percorra você mesmo o fluxo do recurso e verifique os eventos com o Console ou um predicado específico de `log stream`. - Se o fluxo for longo, intermitente ou mais fácil de reproduzir manualmente, salve o fluxo de logs filtrado em um pequeno arquivo local de rastreamento da sessão. Se necessário, deixe-me percorrer manualmente o fluxo no aplicativo; depois, leia o arquivo e resuma a linha do tempo dos eventos. - Se um evento esperado não aparecer, posicione o log mais perto do fluxo de controle suspeito, execute novamente o fluxo e continue até que os logs expliquem o que aconteceu. Entregue: - a nova configuração do logger e os eventos exatos que você adicionou - o filtro do Console ou o predicado de `log stream` que você usou - um breve resumo no formato before/after do que os logs agora permitem observar - o arquivo de rastreamento salvo e o resumo da linha do tempo, caso a captura tenha se tornado mais longa - uma ou duas linhas de log representativas que comprovem que o fluxo foi instrumentado corretamente
    Use o plug-in Build macOS Apps para adicionar logs unificados leves em torno de [name one Mac feature or action flow], depois execute o aplicativo e verifique nos logs se esses eventos são disparados na ordem esperada. Restrições: - Prefira `Logger`, de `OSLog`, em vez de `print`, e crie um par claro de subsystem/category para esse recurso, facilitando a filtragem dos logs. - Registre uma linha concisa para cada limite importante de ação ou transição de estado: por exemplo, abertura de janela, alteração da seleção na barra lateral, acionamento de um comando de menu, início da sincronização, conclusão da sincronização ou uso de um caminho alternativo. - Mantenha os logs permanentes de `info` estáveis e com alto valor informativo. Use `debug` apenas para detalhes locais ruidosos e remova a instrumentação temporária ou rebaixe seu nível antes de concluir. - Não registre segredos, tokens de autenticação, dados pessoais nem o conteúdo bruto de documentos. Se for necessário registrar um identificador, escolha a anotação de privacidade mais segura e explique o motivo. - Compile e execute o aplicativo, percorra você mesmo o fluxo do recurso e verifique os eventos com o Console ou um predicado específico de `log stream`. - Se o fluxo for longo, intermitente ou mais fácil de reproduzir manualmente, salve o fluxo de logs filtrado em um pequeno arquivo local de rastreamento da sessão. Se necessário, deixe-me percorrer manualmente o fluxo no aplicativo; depois, leia o arquivo e resuma a linha do tempo dos eventos. - Se um evento esperado não aparecer, posicione o log mais perto do fluxo de controle suspeito, execute novamente o fluxo e continue até que os logs expliquem o que aconteceu. Entregue: - a nova configuração do logger e os eventos exatos que você adicionou - o filtro do Console ou o predicado de `log stream` que você usou - um breve resumo no formato before/after do que os logs agora permitem observar - o arquivo de rastreamento salvo e o resumo da linha do tempo, caso a captura tenha se tornado mais longa - uma ou duas linhas de log representativas que comprovem que o fluxo foi instrumentado corretamente

    Adicione um Logger quando a depuração ficar imprecisa

    Este caso de uso se destina a fluxos de aplicativos para Mac em que "algo aconteceu" é uma descrição vaga demais para depurar apenas pela revisão de código. Peça ao Codex para adicionar alguns logs unificados de alto valor informativo em torno de um comportamento, executar o aplicativo, acionar esse comportamento e verificar pelo Console ou por log stream se os eventos esperados foram disparados.

    Use o plug-in Build macOS Apps nesse ciclo. Sua habilidade de telemetria do macOS foi criada para ser leve: use o Logger da Apple, defina um par claro de subsistema/categoria, registre os limites das ações e as transições de estado, evite payloads sensíveis e verifique o evento depois de uma compilação/execução local, em vez de presumir que a instrumentação está configurada corretamente.

    Por que a telemetria é útil para a engenharia agêntica

    Bons logs oferecem ao Codex um ciclo de feedback reproduzível após cada patch. Em vez de pedir que você inspecione manualmente cada janela, ação de menu ou transição de sincronização, o agente pode executar o aplicativo, percorrer o fluxo, inspecionar os logs filtrados e decidir a próxima alteração no código com base nas evidências.

    Isso é especialmente útil em três ciclos agênticos:

    • Ciclo de depuração sem intervenção manual: o Codex instrumenta um fluxo suspeito, inicia o aplicativo, clica na barra lateral ou aciona um comando, lê a sequência de logs gerada, aplica um patch ao fluxo de atualização do estado e executa novamente o mesmo fluxo até que os logs sejam coerentes com o comportamento da interface.
    • Ciclo de coleta da sessão do aplicativo: o Codex adiciona um evento para cada um destes casos: inicialização do aplicativo, abertura de janela, seleção na barra lateral, início da importação, conclusão da importação e falha na importação. Depois, executa uma sessão local e resume a linha do tempo resultante, deixando evidentes as transições ausentes ou fora de ordem.
    • Ciclo de captura conduzido pelo usuário: o Codex inicia o aplicativo com o registro de logs ativado, mantém ativo um fluxo de logs específico enquanto você percorre manualmente um fluxo complexo e depois inspeciona a sessão capturada para propor o próximo patch com base nesse rastreamento.

    Mantenha a instrumentação enxuta e fácil de filtrar

    Peça ao Codex que use um logger por área de recurso, e não uma linha de log permanente para cada alteração de estado. Categorias de recursos como Windowing, Commands, MenuBar, Sidebar, Sync ou Import facilitam muito a filtragem dos logs na próxima rodada de depuração.

    import OSLog
    
    private let logger = Logger(
      subsystem: Bundle.main.bundleIdentifier ?? "SampleApp",
      category: "Sidebar"
    )
    
    @MainActor
    func selectItem(_ item: SidebarItem) {
      logger.info("Selected sidebar item: \(item.id, privacy: .public)")
      selection = item.id
    }

    Use info para eventos concisos de ação e de ciclo de vida que continuem úteis ao longo do tempo, e debug para detalhes mais ruidosos do estado local que possam ser removidos ou rebaixados antes da conclusão da tarefa. Adicione marcadores apenas quando estiver medindo um intervalo de tempo, não por padrão.

    Peça ao Codex que comprove o evento pelos logs

    O mais útil não é apenas adicionar chamadas a Logger. Peça ao Codex para executar o aplicativo, acionar o fluxo instrumentado e fornecer o filtro exato do Console ou o predicado de log stream usado, além de uma ou duas linhas de log representativas.

    log stream --style compact --predicate 'subsystem == "com.example.app" && category == "Sidebar"'

    Se um evento esperado não aparecer, peça ao Codex para reposicionar o log mais perto do fluxo de controle suspeito, executar novamente o mesmo fluxo e continuar iterando até que os logs expliquem o que aconteceu. Se a tarefa se transformar na análise de uma falha ou de um backtrace, passe para o fluxo de trabalho do plug-in para depuração por compilação/execução e mantenha a telemetria focada nos limites das ações.

    Salve um rastreamento da sessão para uma rodada posterior do Codex

    Para bugs mais longos ou intermitentes, peça ao Codex para salvar um fluxo de logs específico em um pequeno arquivo local de rastreamento, resumir a linha do tempo e deixar esse artefato no workspace. Assim, uma execução posterior do Codex poderá inspecionar as mesmas evidências sem precisar reproduzir toda a sessão apenas com base na memória. Isso facilita a depuração em várias rodadas quando você quer usar uma execução do agente para coletar um rastreamento e outra para comparar o comportamento antes e depois de um patch.

    Isso também funciona bem quando uma pessoa precisa conduzir parte da sessão. Peça ao Codex para iniciar o aplicativo em um ciclo de depuração adequado à coleta de logs, iniciar uma captura filtrada, aguardar enquanto você reproduz o problema manualmente e ler o arquivo de rastreamento salvo quando terminar.

    Dicas práticas

    Instrumente um recurso por vez

    Comece com uma barra lateral, janela, comando ou fluxo de sincronização para que a sequência de logs continue fácil de inspecionar. Quando esse fluxo se tornar confiável, o Codex poderá aplicar o mesmo padrão aos fluxos relacionados.

    Inclua a privacidade no prompt

    Peça ao Codex para explicar cada identificador incluído nos logs e evitar gravar segredos, dados pessoais ou conteúdo bruto nos logs unificados. Um vocabulário pequeno de eventos geralmente é suficiente para a depuração local.

    Mantenha um exemplo da saída no resumo final

    Linhas de log representativas tornam a alteração muito mais confiável do que uma simples afirmação de que "a telemetria foi adicionada". Peça ao Codex para incluir o predicado do filtro e uma breve linha do tempo das ações, para que a próxima execução do agente possa reutilizar o mesmo ciclo de verificação.

    Tech stack

    Need

    Registro de logs do aplicativo

    Default options

    OSLog Logger

    Why it's needed

    O sistema estruturado de log unificado oferece ao Codex um ciclo de feedback focado e filtrável sem entupir a base de código com instruções print.

    Need

    Fluxo de trabalho do agente

    Why it's needed

    As habilidades de telemetria e de compilação/execução do plug-in foram projetadas para funcionar em conjunto: instrumente um fluxo, inicie o aplicativo, inspecione os logs e refine o conjunto de eventos.

    Need

    Verificação em tempo de execução

    Default options

    Console.app e log stream --predicate ...

    Why it's needed

    Um filtro de log concreto, acompanhado de uma amostra da saída, dá ao agente um procedimento reproduzível para dar continuidade ao trabalho e facilita a verificação da nova instrumentação entre diferentes execuções.

    Need Default options Why it's needed
    Registro de logs do aplicativo OSLog Logger O sistema estruturado de log unificado oferece ao Codex um ciclo de feedback focado e filtrável sem entupir a base de código com instruções print .
    Fluxo de trabalho do agente Plug-in Build macOS Apps As habilidades de telemetria e de compilação/execução do plug-in foram projetadas para funcionar em conjunto: instrumente um fluxo, inicie o aplicativo, inspecione os logs e refine o conjunto de eventos.
    Verificação em tempo de execução Console.app e log stream --predicate ... Um filtro de log concreto, acompanhado de uma amostra da saída, dá ao agente um procedimento reproduzível para dar continuidade ao trabalho e facilita a verificação da nova instrumentação entre diferentes execuções.

    Casos de uso relacionados