Skip to content

mhausenblas/pr

Repository files navigation

🌊 Panta Rhei

Panta Rhei (PR) is a interactive changelog explorer. Point it at any GitHub, GitLab, or Codeberg repository and query its changelog using natural language, powered by the LLM (local or online) of your choice.

Challenge the changelog!

  1. You provide a repository URL such as https://github.com/kubernetes/kubernetes.
  2. PR discovers the project's changelog, searching it for CHANGELOG.md, CHANGES.md, HISTORY.md, etc. and falls back to the repo releases API.
  3. You then view the release timeline or treemap and ask follow questions in plain English, getting answers grounded in the actual changelog content.

PR in action

Example questions:

  • "What changed in the most recent release?"
  • "When did feature X ship?" --> follow up with what you mean by X
  • "Summarize breaking changes in the last 3 releases"
  • "What security fixes were included recently?"

Want to dive deeper before trying it out yourself? Check out the detailed walkthrough and learn about PR's architecture.

Setup

Supported LLM providers:

Provider Model (default) Notes
Amazon Bedrock (default) eu.anthropic.claude-sonnet-4-6 Uses ambient AWS credentials — no API key needed
Claude (Anthropic) claude-sonnet-4-20250514 Requires API key
OpenAI gpt-4o Requires API key
Gemini (Google) gemini-pro Requires API key
Local LLM llama3 Ollama, LM Studio, or any OpenAI-compatible endpoint

Prerequisites:

  • Node.js 18+ (LTS recommended)
  • Default (Bedrock): an AWS account with Bedrock model access enabled and credentials configured (env vars, ~/.aws/credentials, or IAM role)
  • Alternatively: an API key for Claude, OpenAI, or Gemini, or a local LLM running with an OpenAI-compatible API (e.g. Ollama)

Getting started

Clone the repo and install dependencies:

git clone <repo-url>
cd panta-rhei
npm install

Start the development server:

npm run dev

Open http://localhost:5173 in your browser.

Configuring your LLM

PR defaults to Amazon Bedrock using your ambient AWS credentials. No API key is needed — just make sure your AWS credentials are configured and you have access to the Bedrock model in your chosen region (defaults to eu-west-1).

To switch providers, click the LLM Settings button in the UI and select your provider. API keys and source platform tokens are configured server-side via environment variables in a .env file:

cp .env.example .env
# Then edit .env with your values
Variable Purpose
LLM_API_KEY API key for Claude, OpenAI, or Gemini
GITHUB_TOKEN GitHub personal access token — raises rate limit from 60 to 5,000 req/hour, enables private repos
GITLAB_TOKEN GitLab personal access token — required for private repos
CODEBERG_TOKEN Codeberg personal access token — required for private repos

Provider notes:

  • Amazon Bedrock — uses AWS_ACCESS_KEY_ID/AWS_SECRET_ACCESS_KEY env vars, ~/.aws/credentials, or an attached IAM role. Change the region if needed. No LLM_API_KEY required.
  • Cloud providers (Claude, OpenAI, Gemini) — set LLM_API_KEY in .env.
  • Local LLM — select "Local LLM", set the base URL (defaults to http://127.0.0.1:1234/v1), and enter the model name. No API key required.

Using Ollama as a local provider:

# Install and start Ollama (https://ollama.com)
ollama serve

# Pull a model
ollama pull llama3

# In PR settings, select "Local LLM" with:
#   Base URL: http://localhost:11434/v1
#   Model:    llama3

About

Challenge the changelog!

Resources

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors