Developer tools built for AI workflows.

Structured context for AI coding agents and human code review. Evidence-based analysis that powers assistants, pipelines, and teams. Local-first. Deterministic. Fast.

Scroll
Agent Workflows / Human Review / Evidence-Based / Deterministic / Local-First / Risk Scoring / Knowledge Graph / Agent Workflows / Human Review / Evidence-Based / Deterministic / Local-First / Risk Scoring / Knowledge Graph /

Context for agents and reviewers

Branch Narrator

Structured context for AI coding agents and human code review. Evidence-based output with findings tied to diff evidence.

Agent Workflows

Prompt-ready diffs with smart filtering. Delta mode for tracking changes. Integrates with Cursor, Claude, Jules, and OpenCode.

Human Review

Risk scoring with evidence-backed flags. Markdown reports for code review. SARIF output for GitHub Code Scanning.

Local-First

Deterministic and offline. No LLMs, no network calls. Your code never leaves your machine.

Profile-Aware

Framework-specific analysis for SvelteKit, Next.js, React, Vue, Astro. Route detection, API changes, and migration safety checks.

Snapshots & Delta

Save workspace snapshots for agent iteration. Compare runs with delta mode. Stable IDs for tracking findings across sessions.

Evidence-Based Output

Summaries and risk flags tied to diff evidence. File paths, line numbers, and findings that AI and reviewers can verify.

## Summary

This PR modifies 12 files across 3 categories.

### Route Changes
+ Added: /dashboard/settings
+ Added: /api/v2/users
- Removed: /api/legacy/auth

### Breaking Changes
! API endpoint removed: POST /api/legacy/auth
! Environment variable renamed: API_KEY -> AUTH_TOKEN

### Risk Assessment
Score: 67/100 (Medium)
Flags: breaking-api, env-change
{
  "highlights": [
    "Breaking API change: legacy auth endpoint removed",
    "New dashboard settings route added",
    "Environment variable migration required"
  ],
  "findings": [...],
  "riskScore": {
    "score": 67,
    "level": "medium",
    "flags": ["breaking-api", "env-change"]
  }
}
+------------------------------------------+
|           RISK REPORT                    |
+------------------------------------------+
| Score: 67/100                            |
| Level: MEDIUM                           |
+------------------------------------------+
| Flags:                                   |
|   - breaking-api (weight: 20)            |
|   - env-change (weight: 15)              |
|   - route-removal (weight: 10)           |
+------------------------------------------+

Repo Slice

Extract high-signal context bundles for AI-assisted coding workflows. Budget-aware selection that fits within LLM context windows.

Multiple Anchors

Start from entry files, symbol searches, git diffs, or error logs. Flexible anchor types for different workflows.

Import Graph Traversal

Automatically includes dependencies up to configurable depth. Understands TypeScript and Python import relationships.

Budget-Aware

Enforces strict character and token limits. Smart ranking ensures highest-signal code is included first within your budget.

Deterministic Output

Same inputs always produce identical bundles. Important for reproducibility in CI/CD and automation pipelines.

Monorepo Support

Auto-detects npm and Python workspaces. Scope queries to specific packages or search across the entire monorepo.

Error Log Parsing

Parse TypeScript, Jest, pytest, mypy, and pyright errors. Automatically bundle code relevant to build failures.

# Context Bundle
# Budget: 12,450 / 28,000 chars

## Index
1. src/auth.ts (definition, score: 1000)
2. src/middleware.ts (import-depth-1, score: 800)
3. src/types/user.ts (import-depth-1, score: 750)
4. src/utils/token.ts (import-depth-2, score: 600)

## src/auth.ts
export function handleAuth(req: Request) {
  const token = extractToken(req);
  return validateUser(token);
}
{
  "metadata": {
    "budget": { "chars": 28000, "used": 12450 },
    "anchors": ["symbol:handleAuth"],
    "depth": 2
  },
  "items": [
    {
      "path": "src/auth.ts",
      "reason": "definition",
      "score": 1000,
      "content": "..."
    }
  ]
}
# Bundle from git diff
$ repo-slice pack --from-diff origin/main..HEAD

# Analyzing changed files...
+ Found 5 changed files
+ Expanding import graph (depth: 2)
+ Included 12 related files
+ Bundle: 18,200 / 28,000 chars

# Perfect for PR review context

Memo

Persistent memory for AI agents through a three-layer knowledge graph. Facts, decisions, and operating rules that survive across sessions.

Knowledge Graph

Entity-centric facts stored in versioned, queryable format. Organized by projects, libraries, patterns, and conventions.

Technical Decisions

Decision rationale and trade-offs documented in DECISIONS.md. Capture why choices were made, not just what was chosen.

Agent Rules

Operating principles and constraints for AI assistants in AGENTS.md. Generate config for Claude, Cursor, or Codex.

Draft Mode

Queue insights during active work sessions without interrupting flow. Review and commit facts when ready.

Query & Search

Search facts by category, entity, or keyword. View complete history including superseded entries and version chains.

Export & Backup

Export and import knowledge graphs. Atomic file operations prevent corruption during concurrent access.

# Extract facts from conversations
$ memo extract "Next.js 15 uses turbopack by default"

+ Entity: next.js
+ Category: libraries
+ Fact: "Uses turbopack by default in v15"
+ Confidence: high

# Queue insights during work
$ memo draft "Zod v4 drops .parse() in favor of .check()"
+ Queued to drafts (3 pending)
# Query knowledge by entity
$ memo query --entity react

## react (6 facts)
1. Uses compiler for automatic memoization (v19)
2. Server Components are the default (v19)
3. use() hook replaces useEffect for data fetching
4. Actions replace form event handlers
5. Ref forwarding no longer needs forwardRef
6. Suspense works with SSR streaming

# Search across all entities
$ memo query --search "compiler"
+ Found 3 facts across 2 entities
# Generate AI agent config
$ memo generate --target claude

+ Generated CLAUDE.md
+ Included 42 facts from knowledge graph
+ Included 8 technical decisions
+ Included 5 agent rules

# Synthesize summary
$ memo synthesize
+ Generated summary from 42 current facts
+ Covering 12 entities across 4 categories

Built for workflows

Better Vibe builds developer tools that provide structured context for AI coding agents and human code review. We prioritize evidence over speculation, determinism over magic, and privacy over cloud dependencies.

Our tools bridge the gap between AI agents and human reviewers. Structured output that agents can consume, evidence that developers can verify.

01 Local-first
02 Open source
03 Evidence-based
04 DX first
better tools. better vibes.

Get started

Install our tools to give AI agents structured context and human reviewers evidence-backed insights.

npx @better-vibe/branch-narrator integrate
npx @better-vibe/repo-slice pack --symbol "main"
npx @better-vibe/memo init --agent