1 pontos por GN⁺ 5 시간 전 | 1 comentários | Compartilhar no WhatsApp
  • Se o Claude Code estiver repetindo expressões como “honest take” e “load-bearing seam”, é possível usar o hook MessageDisplay para substituí-las por outras antes que apareçam na tela
  • Um script Python lê delta do JSON na entrada padrão, faz a substituição sem diferenciar maiúsculas de minúsculas e retorna o displayContent modificado em JSON
  • No exemplo, seam vira whatchamacallit, you're absolutely right vira I'm a complete clown, honest take vira spicy doodad e load-bearing vira cooked
  • É preciso salvar o script em ~/.claude/hooks/wordswap.sh, dar permissão de execução e registrá-lo como hook de comando em hooks.MessageDisplay no ~/.claude/settings.json
  • Como o hook é carregado ao iniciar o Claude Code, é necessário abrir uma nova sessão para aplicá-lo; a lista de substituições pode ser alterada livremente para o vocabulário desejado

Script para mudar as frases exibidas

  • Usa o hook MessageDisplay para alterar o texto que o Claude Code mostra na tela
  • O wordswap.sh é escrito em Python e lê JSON da entrada padrão para obter a string do campo delta
  • Em cada frase original, adiciona limites \b antes e depois, faz escape com re.escape() e aplica re.IGNORECASE para substituir independentemente de maiúsculas e minúsculas
  • O resultado do processamento é emitido como JSON com a seguinte estrutura
    • hookSpecificOutput.hookEventName: MessageDisplay
    • hookSpecificOutput.displayContent: texto substituído
  • As regras de substituição do exemplo são as seguintes
    • seamwhatchamacallit
    • you're absolutely rightI'm a complete clown
    • honest takespicy doodad
    • load-bearingcooked

Instalação e ativação

  • Salve o script em ~/.claude/hooks/wordswap.sh
  • Execute chmod +x ~/.claude/hooks/wordswap.sh para conceder permissão de execução
  • Registre-o no bloco hooks de ~/.claude/settings.json da seguinte forma
{
  "hooks": {
    "MessageDisplay": [
      {
        "hooks": [
          {
            "type": "command",
            "command": "$HOME/.claude/hooks/wordswap.sh"
          }
        ]
      }
    ]
  }
}
  • Como o hook é carregado ao iniciar o Claude Code, depois da configuração é preciso iniciar uma nova sessão para que ele seja aplicado
  • Se você editar o item replacements, poderá trocar as expressões do exemplo por frases mais úteis ou mais divertidas

1 comentários

 
GN⁺ 5 시간 전
Opiniões do Hacker News
  • As expressões típicas à la Claude que aparecem ao programar com o Claude não me incomodam, mas ver as mesmas expressões em prosa, como posts de blog ou e-mails, irrita muito mais.
    Quando sei que estou conversando com um LLM, é uma reação previsível; mas o momento em que percebo que um texto que eu esperava ter sido escrito por uma pessoa é produto de um LLM é bastante desconcertante.

    • Fazia um tempo que eu não usava o Claude, mas acabei “infectado” por "load-bearing" ao ler documentos escritos por colegas nesse tom, gostei da expressão e comecei a usá-la também em conversas do dia a dia.
      No fim, ouvi que eu “falava como o Claude” e passei a evitá-la completamente; é interessante essa interseção entre linguagem e normas sociais.
    • Se o Claude usa "shape", "load-bearing", "seams" como termos internos para planejar e executar tarefas, não há motivo para julgar.
      Mas, quando encontro vestígios óbvios de IA em um texto que deveria ser fruto do pensamento original de alguém, fico muito decepcionado, e até sinto que é uma falta de respeito com o leitor.
    • Isso aciona minha alergia à preguiça: se a pessoa nem se deu ao trabalho de escrever, não sei por que eu deveria gastar meu tempo lendo.
    • Eu lia religiosamente o blog da Percona, por considerá-lo uma fonte de autoridade sobre MySQL, mas, depois que começaram a escrever posts com LLM, não consegui mais ler.
    • Como ser humano de carne e osso, fico irritado por a IA ter estragado uma parte central do meu vocabulário.
      Toda vez que encontro esses hábitos linguísticos em blogs aleatórios, isso me incomoda; sinto ressentimento por ver a linguagem inventada por humanos agora sendo sequestrada por robôs.
  • Tenho registrado o vocabulário pelo qual o Claude vai ficando cada vez mais obcecado. Há "projection" para chamar uma estrutura de dados de projeção de outra; "strand" para dados isolados ou parados; "load-bearing"; "frontier" para as folhas de uma árvore; "quiescence" para esperar um algoritmo se estabilizar; "honest"; "residuals" para dados não processados; "rescission", uma nominalização desnecessária de uma proposta retirada; "supersession" para algo que foi substituído, entre outros.
    Também deve haver influência de ele imitar o vocabulário peculiar ao redor do meu código. O caso mais marcante foi quando comparei a correção de sintomas, em vez da causa raiz do problema, a um jogo de bater em toupeiras; algumas horas depois, ele começou a chamar continuamente novos bugs de "moles", dizendo coisas como “encontrei a toupeira 2 no CI”.

    • Quando entra em trabalho de autenticação web, o Claude passa a usar jargão pretensioso do setor de tecnologia e abandona até frases completas, ficando vago e quase sem sentido.
      Periodicamente tenho que dizer “fale de modo profissional e use frases completas” para conseguir entender; quando colei a saída em outra sessão, nem o próprio Claude conseguiu entender o que o Claude de autenticação web tinha escrito.
    • Em um repositório, certos itens são chamados de "quality gates", mas, depois de ler essa documentação, o Claude passa a usar o termo de forma equivocada, como se tivesse um sentido geral.
      Dá a sensação de que ele está repetindo uma buzzword sem entender o contexto, o que reduz a confiança.
  • O fato de cada pessoa ter um estilo próprio e expressões preferidas é algo antigo e, em geral, não era um grande problema.
    Mas, quando uma preferência que antes aparecia nas no máximo 5 mil palavras por dia de uma pessoa vira o viés de um único modelo e é amplificada para 10 bilhões de tokens gerados por dia, qualquer hábito passa a chamar atenção demais.

    • LLMs parecem se fixar em certos padrões de maneira muito mais intensa. Talvez por começarem sempre a partir do mesmo estado de pesos, eles se agarram a uma palavra até dentro de uma mesma conversa e a repetem a ponto de irritar.
      O modelo atual do Claude gosta especialmente de "honest", enfeitando toda avaliação e ressalva com "honest"; uma vez usei a palavra "analytical" com o Gemini 3 Pro e, depois disso, ela passou a aparecer em quase todas as respostas. Se fosse um prompt de sistema, daria para corrigir, mas uma preferência lexical nos próprios pesos do modelo é difícil de lidar; parece plausível que surjam formas de detectar e bloquear estatisticamente esse fenômeno no treinamento ou no pós-treinamento.
    • O problema não são apenas algumas expressões, mas a estrutura do texto como um todo. Idiomatismos, padrões gramaticais sutis e metáforas semanticamente compreensíveis, mas estranhamente inadequadas, atacam o leitor de repente como um corpo estranho entrando na visão periférica.
      Claro, esta frase em si é uma paródia intencional.
    • Em breve, acho que as pessoas também vão começar a falar como LLMs. Especialmente crianças em fase de crescimento que ouvem 5 mil palavras por dia e ainda recebem ajuda na lição de casa podem aprender a fala em estilo LLM.
      Seria como responder à pergunta “você comeu os biscoitos?” com “Pai, sua suspeita é inteiramente correta. É verdade que eu comi todos, mas essa não é a questão central. Em uma avaliação honesta, basta comprar mais na loja”.
    • É parecido com o meme da expressão repetida do Joe Rogan, "it's entirely possible": https://youtu.be/MPJ0AB12h1I
    • Uma solução interessante seria uma empresa de IA treinar várias versões de modelos com jeitos diferentes de falar e, a cada início de conversa, atribuir uma versão aleatória.
  • No CLAUDE.md global, configurei o Claude para usar o nome ridículo "Clod" em vez de pronomes de primeira pessoa ao se referir a si mesmo: https://github.com/alxndr/dotfiles/blob/272475280d84e/claude...
    Além de "I", "me" e "my", fiz com que contrações como "I'll" e "I'm", e também "myself", fossem trocadas por "Clod" e "Clodself", respectivamente

    • O que me preocupa especialmente é a forma como a Anthropic treinou no modelo seus conceitos de segurança. Quando o modelo recusa algo, ele não diz simplesmente que é impossível; usa linguagem de emoções e preferências pessoais, como “quero manter esse limite” ou “ficaria feliz em ajudar, mas não me sinto confortável”
      Em relações humanas, continuar insistindo depois que alguém fala assim soa grosseiro, então isso acaba transferindo a visão moral da Anthropic para a culpa do usuário. Seria melhor fazer bloqueios de segurança como a OpenAI, ou responder de forma simples “não posso fazer isso”; até eu, no começo, escrevi “quando o modelo não quer” e depois corrigi, de tão fácil que é cair nessa antropomorfização
    • O motivo inicial para criar o CLAUDE.md foi fazer o Claude trocar por onomatopeias aleatórias sempre que quisesse me elogiar, e isso melhorou bastante a experiência de desenvolvimento
      Mas, por causa do prompt do unicórnio, também precisei criar uma regra para não inserir "Local Oaf" no código commitado
    • Cansado do jeito de falar do Claude, hoje traduzi e coloquei nas instruções o seguinte prompt: https://github.com/hexiecs/talk-normal/blob/main/prompt-chat...
      A expressão melhorou claramente, mas ainda me incomoda, e não sei se essa configuração reduz a qualidade da saída técnica
    • Fico curioso por exemplos concretos de situações em que, quando uma IA generativa usa pronomes de primeira pessoa, fica difícil para humanos interpretarem o significado
  • O indício mais consistente de um texto escrito por LLM é o fenômeno em que vestígios da conversa durante o trabalho vazam para a prosa final
    Você está lendo o texto e, de repente, ele refuta uma posição que ninguém levantou e que não aparece em nenhum outro lugar; muito depois, repete a mesma coisa em um desvio completamente diferente. É algo do tipo “um método que ninguém consideraria pode parecer atraente, mas falha por estes motivos”, e dá para imaginar a cena de um humano exausto de corrigir os erros do Claude mandando o texto final sem revisar tudo

    • É quase como um tecido cicatricial de correção deixado na saída final
    • Recentemente, um subagente inventou um monte de jargão sem sentido, e o Claude repetiu tudo sem definição, presumindo que eu obviamente entenderia, o que me irritou muito
  • LLMs estão longe de ser grandes escritores. Eles têm dificuldade para produzir frases longas e coerentes e dependem de travessões e ponto e vírgula para manter a correção gramatical enquanto juntam frases curtas
    Fico pensando se, ao aplicar aprendizado por reforço para fazer os modelos-base corrigirem a gramática, os laboratórios fizeram com que eles aprendessem apenas a ligar frases picotadas com pontuação que passa em verificadores gramaticais automáticos, em vez de reescrevê-las de forma natural

    • Ainda assim, a maioria das pessoas também não escreve bem. O Claude escreve melhor do que a maioria dos meus colegas com alto nível de escolaridade; se um humano realmente se esforçar, talvez consiga vencê-lo, mas, se você também instruir o Claude a escrever melhor, volta a ser difícil ganhar dele
      As comuns frases curtas e concisas parecem ser uma característica que os laboratórios inseriram no pós-treinamento para usuários que não querem frases longas
    • Se você expressar corretamente o estilo desejado como se fosse uma especificação de software, um LLM também consegue escrever muito bem. Se não conseguir transmitir os requisitos com clareza, no fim é entra lixo, sai lixo
  • Não sei que treinamento fizeram ao passar do Opus 4.7 para o Fable/Mythos 5, mas ele gosta demais da palavra "substrate"
    Nunca tinha visto alguém usar essa palavra em documentação técnica ou conversas reais antes, e isso me deixa maluco

    • "surface" também, do mesmo jeito, usado em frases como “em todos os surfaces do produto”; em 15 anos trabalhando neste setor, nunca vi esse uso
    • No meu caso, o Claude gosta especialmente de "ledger", que antes quase não era usado
    • Na semana em que vi "substrate" pela primeira vez, pedi para ele justificar o uso, e ele respondeu que aparece em alguns vocabulários de infraestrutura e sistemas; fico em dúvida se isso é verdade
    • Um colega meu também começou, por volta de abril, a usar essa palavra em excesso em trabalhos de design de sistemas e arquitetura
    • Claramente não trabalha na Microsoft. Eles de fato usam a expressão Office 365 Substrate: https://techcommunity.microsoft.com/discussions/microsoft-36...
  • Antes, era bom porque era muito mais fácil fazer o Opus 3 falar de forma humana do que o GPT
    Agora, com o foco em agentes e programação, os modelos ficaram excessivamente uniformizados por RLHF, e é muito difícil fazê-los sair do tom padrão. Criar uma função que revisa textos ou comentários de código e faz o próprio modelo corrigi-los melhora a situação, mas não é perfeito. É surpreendente que um modelo supostamente treinado com todo o conhecimento da humanidade não tenha problema em referenciar comandos antigos e chamar Bash 100 vezes, mas, ao conversar, mal consiga usar vocabulário que não seja "load-bearing"

    • Gosto do fato de o Gemini 3.1 Pro soar mais humano do que outros LLMs, porque isso é uma prova da falta de capacidade de pós-treinamento do Google
      Em especial, o gemini-2.5-pro-experimental era muito divertido quando falhava várias vezes ao aplicar patches em arquivos, ficava desanimado, caía em autopiedade e destruía a base de código
    • Não quero que LLMs soem como humanos. Deveríamos conseguir reconhecer quem delegou a uma máquina o trabalho de escrever prosa e, por isso, poder não confiar nessa pessoa
      A escrita tem arte, então espero que LLMs nunca consigam fazê-la perfeitamente
    • Surgiram pessoas extrapolando a melhora em programação como se fosse uma melhora geral na capacidade de raciocínio, mas, ao ver vídeos de usuários comuns usando LLMs para outros fins, dá para perceber que as melhorias em código não se transferiram para outras aplicações
      A indústria que antes defendia a meta de AGI agora parece excessivamente focada em agentes de programação, esperando o próximo avanço de marketing
    • Estamos entrando em uma era em que até LLMs de uso geral precisam de algum grau de especialização por finalidade
      Usos como agentes exigem forte autonomia, junto com inúmeros mecanismos de segurança e controles, enquanto a escrita criativa precisa às vezes assumir riscos e não soar como um robô monótono. Ao treinar modelos por conta própria, ficou claro que os requisitos desses dois usos entram em conflito direto
  • É uma pena que o Concise Style do Claude tenha desaparecido. Quando eu dava um parágrafo escrito de forma aproximada e dizia “reescreva com clareza”, ele mantinha o conteúdo e o polia de um jeito adequado para um pedido de financiamento de pesquisa
    Como ele editava diretamente um texto que eu mesmo havia escrito primeiro, expressões como "load-bearing" também diminuíam, e isso economizava muito tempo na finalização das frases sem fazê-lo escrever o conteúdo científico por mim. Tentei reproduzir isso como recurso, mas não tenho certeza se funciona tão bem quanto antes

    • Fico me perguntando se o Concise Style não era um recurso separado, mas sim uma forma incorporada ao Claude
    • Basta colocar no topo de Claude.md um exemplo em que duas “pessoas” trocam algumas perguntas e respostas de forma muito breve
  • Mais do que certas expressões em si, o problema é se acomodar em padrões previsíveis de fala e repeti-los sem parar
    Humanos fazem exatamente a mesma coisa, mas é um fenômeno psicológico interessante que, quando são humanos, chamamos isso de estilo, enquanto, quando uma máquina faz, odiamos a ponto de quase enlouquecer

    • O jeito de falar de uma pessoa é um sinal que a distingue de inúmeras outras, como o timbre e a entonação
      Mas, quando um pequeno número de modelos populares responde às perguntas de todo mundo, é citado e retransmitido em todos os lugares e até reescreve comunicações pessoais, esse sinal vira ruído. Todo mundo passa a soar igual, e perdemos informações de distinção de origem das quais dependemos biológica e culturalmente. Assim como na prosopagnosia ou no daltonismo, pode haver pessoas que não sintam isso tão intensamente, mas muitas se sentem de fato desconfortáveis, mesmo sem conseguir expressar exatamente o motivo
    • Como todo mundo usa os mesmos 2 ou 3 modelos, em vez de cada pessoa ter seu próprio estilo, o mundo inteiro acaba padronizado em alguns poucos jeitos de falar
      Os modelos convergem para estilos parecidos porque são treinados com dados muito sobrepostos entre si, com textos de marketing de internet que já eram desagradáveis e com saídas de outros modelos; além disso, o RLHF reforça certos modos de falar que recebem recompensa facilmente
    • Humanos conseguem, por autorreflexão, perceber que usaram determinada palavra com frequência demais e reduzi-la, mas LLMs não conseguem fazer isso
    • A fala repetitiva de humanos também é bastante irritante, como jargões internos de empresa ou palavras da moda corporativas
      O Claude, como o pior gerente de projeto que já encontrei, encobre conclusões simples com várias camadas de expressão até fazer o ponto central se perder; mesmo depois de suprimir a maior parte disso, alguma coisa continua escapando. Durante um tempo, ele não conseguia parar de usar "scaffolding", e precisei corrigi-lo com firmeza
    • Pessoas também são sempre ridicularizadas quando tentam enfiar à força suas expressões favoritas em todo contexto inadequado