Star Report

Gera e envia automaticamente relatórios de atividade de repositórios do GitHub (estrelas, commits, issues) para grupos do Feishu usando análise de IA.

Documentação

starReport

starReport é uma ferramenta Node.js para gerar e gerenciar automaticamente relatórios de atividade de repositórios GitHub especificados, como stars, commits, issues, etc. Ela suporta serviços via protocolo MCP, integra análise inteligente com grandes modelos de linguagem e pode enviar automaticamente relatórios para grupos do Feishu.

Principais funcionalidades

  • Monitoramento de atividade de repositórios GitHub: Coleta automaticamente dados como número de stars, commits e issues de repositórios especificados, com suporte a estatísticas diárias e semanais.
  • Envio automático de relatórios: Envia automaticamente relatórios diários, semanais e resultados de análise inteligente para grupos do Feishu, facilitando a sincronização da equipe.
  • Suporte a serviço MCP: Oferece capacidades de consulta de dados, geração de relatórios, análise de IA e envio de mensagens via protocolo MCP (stdio), facilitando a integração com plataformas de automação.
  • Análise inteligente: Integra grandes modelos de linguagem (como OpenAI/Zhipu) para análise de tendências, resumos e visualização de dados históricos em tabelas, com suporte a perguntas personalizadas.
  • Análise em tempo real via SSE: Suporta retorno em tempo real de conteúdo de análise inteligente via HTTP SSE, ideal para exibição em tempo real no frontend.
  • Webhook de perguntas e respostas: Compatível com webhooks do Feishu, permitindo perguntas em conversas de grupo e retornando resultados de análise inteligente.
  • Tarefas agendadas: Tarefas agendadas integradas que coletam dados e enviam relatórios automaticamente diariamente/semanalmente, sem intervenção manual.
  • Configuração flexível: Suporta especificação flexível de repositórios monitorados, métodos de envio e parâmetros de grandes modelos via variáveis de ambiente e configuração MCP.

Método de instalação

  1. Clone o repositório:
    git clone https://github.com/hu-qi/starReport.git
    
  2. Entre no diretório do projeto e instale as dependências:
    cd starReport
    npm install
    

Instruções de uso

  1. Configure as variáveis de ambiente: Copie .env.example para .env e preencha as configurações relevantes conforme necessário.
  2. Execute o projeto:
    node index.js
    

Exemplo de configuração do servidor MCP

Para iniciar o serviço via protocolo MCP, consulte a configuração abaixo:

{
  "mcpServers": {
    "starReport-server": {
      "command": "npx",
      "args": [
        "-y",
        "star-report",
        "mcp-server"
      ],
      "env": {
        "GITHUB_TOKEN": "<你的 GitHub Token>",
        "FEISHU_WEBHOOK": "<你的飞书 Webhook>",
        "REPORT_REPOS": "<repo1,repo2,repo3>",
        "API_KEY": "<你的 API Key>",
        "API_BASE_URL": "<API Base URL>",
        "API_MODEL": "<模型名称>",
        "DATA_FILE":"<数据存放可读性的文件路径,如path/to/writable/directory/data.json>"
      }
    }
  }
}

Se estiver executando localmente, substitua command e args:

"command": "node",
"args": [
  "index.js",
  "mcp-server"
],
  • command: comando de inicialização, geralmente npx.
  • : argumentos de linha de comando, star-report mcp-server inicia o serviço MCP.
  • env: configuração de variáveis de ambiente, preencha conforme a situação real.
    • GITHUB_TOKEN: token de acesso do GitHub.
    • FEISHU_WEBHOOK: webhook do robô do grupo Feishu.
    • REPORT_REPOS: lista de repositórios GitHub monitorados, separados por vírgula.
    • API_KEY, API_BASE_URL, API_MODEL: configurações relacionadas ao grande modelo.

Não divulgue informações sensíveis em locais públicos.

Demonstração de funcionalidades

  • Ferramentas MCP:

MCP 工具

  • Listagem de funcionalidades:

func-list

  • Envio de mensagens para o Feishu:

feishu-push

Licença

Este projeto é distribuído sob a licença MIT.