repowise-dev / repowise Architecture and code health
Codebase intelligence for AI and humans: code health scores, auto-generated docs, git analytics, dead code detection, and architectural decisions via MCP.
github.com/repowise-dev/repowiseIndexed at 0107076Up to date with upstreamRefreshes on every push
This is Repowise's own repository, indexed by Repowise. Every view in the sidebar is live, and it is what you get for your code. Index your repo free
What is repowise?
repowise is a codebase intelligence tool for developers and AI coding agents. It indexes a repository's code, git history and recorded decisions once, on the local machine, then answers questions about them from a terminal, a browser dashboard, VS Code or through the Model Context Protocol (MCP). The core is written in Python, with TypeScript used for the dashboard and client packages.
Written by a model from the README and the source
7,102 files and 89,765 symbols in 8 modules, led by Python (4,709 files) and TypeScript (2,016).
Code health
Hotspots average 6.9, the place fixes pay off most.
On the leaderboards:#12 of 61 Python repos
Use repowise-dev/repowise in your agent
Point Claude Code, Cursor, Codex or VS Code at this repository. Your agent gets the index this page is built from: cited answers, callers, history and health for any file.
Run it in a terminal, then type /mcp in Claude Code and sign in with Repowise. No key to paste.
Docsclaude mcp add --transport http repowise https://api.repowise.dev/mcp/repowise-dev/repowise
This repo is public, so anyone with a free Repowise account can connect.
Try asking
- get_risk(["packages/core/src/repowise/core/analysis/health/dataflow/slice.py"])
- get_answer("how is repowise put together?")
- get_why("why is repowise structured this way?")
Explore repowise
- DocumentationModule-by-module documentation, 5,578 pages.
- ArchitectureDependency graph, layers and third-party dependencies.
- Code healthEvery file's score and the findings behind it.
- CommitsEach commit's effect on code health.
- OverviewEverything else the index found: contributors, decisions, what changed this week.
Key features of repowise
- Builds a call graph across 28 languages, with a generated wiki page for each module and file.
- Scores any commit or branch from 0 to 10 for change risk, listing likely breakage, missing companion files and tests to run.
- Gives every file a 1 to 10 health score from 53 deterministic detectors, with ranked fix-first suggestions.
- Detects dead code and groups findings by confidence tier.
- Mines decisions from ADRs, comments, commits, PRs and agent sessions, and checks docs for drift against the code.
How repowise-dev/repowise works
Input enters through the repowise command defined in packages/cli/src/repowise/cli/main.py, which indexes a repository, generates its docs and checks its health. The engine in packages/core does the core work: it parses the code, builds the dependency graph and git history, and writes wiki pages, health reports and recorded decisions. Call resolution in packages/core/src/repowise/core/ingestion/call_resolver.py decides which function calls which, and each edge in the graph records how it was resolved. The server package exposes this index over HTTP and MCP, and packages/server/src/repowise/server/mcp_server/tool_answer/answer.py builds the cited answers that agents receive. The dead code analyzer in packages/core/src/repowise/core/analysis/dead_code/analyzer.py flags unused code by confidence tier. The api-client package in packages/api-client/src/index.ts wraps calls to the server with a configurable base URL and token.
The codebase has 7,102 files and 89,765 symbols in 8 modules, led by Python, TypeScript and JavaScript. Code health is 8.1 out of 10, rated good.
Getting started with repowise
- Install repowise with uv.
uv tool install repowise - Change into the repository you want to index.
cd /path/to/your/repo - Index the repository without an API key, generating the graph, git analysis, health scores, dead code and docs.
repowise init --yes --no-prose - Start the dashboard and MCP server.
repowise serve
Commands copied from the README
repowise-dev/repowise FAQ
What is repowise?
repowise is a tool that indexes a code repository, its git history and its recorded decisions, then answers questions about them. Developers use it from the terminal, a browser dashboard and VS Code, and AI coding agents query it through MCP.
How does repowise work?
repowise builds a call graph, dependency graph and git history from a repository and stores the results locally. Agents and users then ask the index questions, such as what calls a function or what breaks if a file changes, instead of grepping and opening files.
How do I install repowise?
repowise is installed with uv tool install repowise. Then run repowise init --yes --no-prose inside the repository to index it, and repowise serve to start the dashboard and MCP server.
What language is repowise written in?
repowise is written mainly in Python. TypeScript is used for its dashboard and client packages.
How is the repowise code organized?
repowise keeps its code under packages. The CLI lives in packages/cli, the analysis engine in packages/core, the MCP and HTTP server in packages/server and the API client in packages/api-client.
When should I use repowise?
Use repowise when you want answers about a codebase without re-reading it on every task. It answers questions such as what calls a function, what breaks if you change a file, which tests to run and which files to fix first.
What license does repowise use?
repowise is released under the AGPL-3.0 license.
The summary, features and answers on this page are written by a model from the README and the source, and refreshed with each index.
About this page
Now see it on your own codebase
Everything on this page, and every view in the sidebar, is built from a repository's source and git history. Point Repowise at yours and get the same map: module docs, the dependency graph, per-file health, hotspots and owners, and an index your coding agent can query over MCP.
Prefer local? pip install repowise && repowise init indexes your own checkout, no account needed.