andur

Transform production logs into intelligent code fixes and Pull Requests.


Keywords
observability, ai, logs, automation, devtool, newrelic, jules
License
MIT
Install
npm install andur@0.1.1

Documentation

Andur 🗡️ Scout & Bridge

The Intelligent Bridge between Production Logs and Agentic Fixing.

Andur is a developer tool designed to automate the triage and handover of production errors to autonomous agents. It acts as a Scout, extracting rich context and impact analysis from your logs, and a Bridge, initiating fix sessions directly on agentic platforms like Jules.


🌟 The "Scout & Bridge" Workflow

  1. Scout: Andur fetches errors from New Relic, groups them by signature, and performs an AI-driven impact and cause analysis.
  2. Bridge: If a Jules API token is configured, Andur automatically prompts you to select a target repository and branch, then creates a new fix session with a comprehensive "Handover Report".

🚀 Key Features

  • Log Ingestion: Deep integration with New Relic (NRQL) to fetch and group transaction errors.
  • AI Diagnosis: Automatic analysis of stack traces using Gemini or OpenAI to identify root causes.
  • Automated Handover: Direct integration with the Jules Service API (v1alpha) to start fixing sessions.
  • Impact Tracking: Calculates how much each error group contributes to your total error volume.
  • Fix Status: Persistently tracks which errors have already been sent to Jules to avoid duplicate work.
  • Usage & Cost Tracking: Built-in monitoring of AI token consumption and estimated costs.

📦 Installation

npm install -g andur

🛠️ Configuration

Initialize your project configuration interactively:

andur init

Environment Variables

Andur requires API keys to function. Set these in your .env or environment:

# Log Provider (New Relic)
ANDUR_LOGS_ACCOUNT_ID="your-id"
ANDUR_LOGS_API_KEY="your-key"

# AI Provider (Gemini/OpenAI)
ANDUR_AI_API_KEY="your-key"

# Jules Service Handover
ANDUR_JULES_API_TOKEN="your-token"

andur.config.js

module.exports = {
  logs: {
    provider: 'new-relic',
    since: '1 day ago',
    limit: 100
  },
  ai: {
    provider: 'gemini',
    model: 'gemini-2.0-flash-exp'
  },
  repo: {
    branch: 'develop' // Default target branch for fixes
  }
};

⌨️ Command Reference

Command Description
andur init Set up configuration interactively
andur analyze Scout recent logs and generate AI insights
andur fix Select an error and bridge it to Jules Service
andur fix --all Send all unhandled error groups to Jules in batch
andur usage-details View token usage and cost estimation

🛡️ License

MIT © Rivendev