majiayu000/harness

Plataforma de orquestração de agentes de IA em Rust com servidor de aplicação, regras, habilidades, coleta de lixo e observabilidade.

O que é harness?

O harness (majiayu000/harness) é uma plataforma de orquestração de agentes de IA construída em Rust, projetada para gerenciar o ciclo de vida e a execução de múltiplos agentes de forma eficiente. Ela oferece um servidor de aplicação (App Server) para expor endpoints de API, um sistema de regras para controle de fluxo e tomada de decisão, um conjunto de habilidades (skills) que podem ser atribuídas aos agentes, mecanismos de coleta de lixo (GC) para liberar recursos automaticamente, e recursos avançados de observabilidade para monitoramento e depuração. Esta ferramenta é ideal para desenvolvedores que precisam de um backend robusto e performático para coordenar agentes de IA, seja em ambientes de desenvolvimento ou produção. Ao fornecer uma estrutura modular e extensível, o harness simplifica a criação de sistemas complexos de agentes, permitindo foco na lógica de negócio sem se preocupar com infraestrutura subjacente.

Funciona com~Claude Code~Codex CLI~Cursor
npx skills add majiayu000/harness

Installed? Explore more Programação e Desenvolvimento skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

O que harness faz?

Plataforma de orquestração de agentes de IA em Rust com servidor de aplicação, regras, habilidades, coleta de lixo e observabilidade.

Visão Geral

O harness é uma plataforma de orquestração de agentes de IA desenvolvida em Rust, oferecendo um conjunto abrangente de funcionalidades para gerenciar e coordenar agentes de forma eficiente. Com suporte nativo a baixa latência e alta concorrência, ele é ideal para aplicações que exigem desempenho máximo.

Funcionalidades

  • App Server: Servidor HTTP integrado para expor APIs RESTful.
  • Regras: Sistema flexível de regras para controle de fluxo e tomada de decisão.
  • Habilidades: Habilidades modulares que podem ser combinadas para definir comportamentos complexos.
  • Coleta de Lixo (GC): Gerenciamento automático de memória para evitar vazamentos.
  • Observabilidade: Métricas, logs e tracing para monitoramento completo.

Primeiros Passos

Para começar a usar o harness, você precisa ter o Rust instalado. Então, adicione a dependência ao seu projeto:

[dependencies]
harness = "0.1"

Em seguida, configure um agente simples:

use harness::prelude::*;

#[tokio::main]
async fn main() -> Result<()> {
    let app = App::new()
        .with_skill(MySkill::new())
        .with_rule("max_steps", 10);
    app.run().await
}

Configuração

Variáveis de ambiente suportadas:

  • HARNESS_PORT: Porta do servidor (padrão: 8080)
  • HARNESS_LOG_LEVEL: Nível de log (padrão: info)
  • HARNESS_GC_INTERVAL: Intervalo de coleta de lixo em segundos (padrão: 300)

Exemplos

Veja a pasta examples/ para exemplos completos de uso, incluindo:

  • basic_agent.rs: Agente minimalista.
  • rule_based.rs: Uso de regras para controle de fluxo.
  • observability.rs: Integração com sistemas de monitoramento.

Suporte

Para questões e suporte, abra uma issue no repositório GitHub.

Licença

Este projeto é licenciado sob a licença MIT.

Habilidades Relacionadas