v0.58.0
Pages that open on what to do

This cycle was about reading. The Overview, Commits and Ownership pages open on
what to do next, Code Health gets a folder map you can zoom into and coupling
read by area, and Tests and Security get their own pages. On repowise.dev the
public repo page is rebuilt for the person who lands on it and the PR page
leads with the fix. The open-source release, 0.58.0, adds a guided
repowise init and a CI gate on the code-health findings a change introduces.
Overview, Commits and Ownership that open on what to do
On repowise.dev and in the local dashboard.
- Overview is short: one health reading, a folded Do next with its count in the heading, an ask box with questions drawn from the repository, and Explore cards whose figures match the pages they open.
- Commits lead with code health. The page opens on a period headline that counts improvements first, then recent wins, then filters for health impact, hotspot touches, time window, author and area, all kept in the URL. Every commit row shows its health delta (better, worse, mixed or neutral), and the commit sheet groups Got better and Got worse by file, with a prompt to fix what got worse.
- Ownership opens on knowledge coverage, the share of recently changed code held by two or more people, beside single-owner hotspots and the truck factor. Tabs cover knowledge risks, knowledge loss and an off-boarding what-if. On repowise.dev the knowledge tabs need you to sign in, and visitors never see an email address.
A folder map you can zoom, and coupling by area
On repowise.dev and in the local dashboard.
Code Health's Map draws each directory as a disc inside its parent and opens
areas into sub-areas and files as you zoom, with ?area= in the URL. Lenses
include main author and knowledge risk, and a context rail shows the area's
score, 30-day delta, trend, worst files, hotspots, owners and top findings. On
repowise.dev, owners on the map are anonymised for visitors who are not signed
in.
Coupling opens on the area pairs that change together with no import to explain it, ranked by unexplained file pairs. A pair drills into its files, and each row copies a decouple prompt for your agent.
Tests and Security in a grouped sidebar
On repowise.dev and in the local dashboard.
The repository sidebar groups pages into Understand, Code quality, People & History and Settings. Tests and Security have their own pages, the Overview's Tests card opens the Tests page, and the sidebar stays open on Docs. On repowise.dev, a viewer who can upload coverage sees an upload command on the Tests card.
A repo page built for the visitor
On repowise.dev.
The public page for a repository answers what a visitor came for: what the project is, how healthy it is, how to use it in an agent, and what repowise is. Owners, team members and maintainers who claimed the page get their tools in place: PR bot status, the README badge, auto-sync and re-index, settings and agent setup. A cached page loads about 1.07 MB of JavaScript in 42 scripts, against 2.3 to 3.1 MB in 64 to 94 before. See an example.
The PR page leads with the fix
On repowise.dev.
The public pull request page opens on the verdict and, when the PR bot has one, a prompt to copy into your agent. What to check and the new issues follow, and the repository map, history, people, tests and docs sit folded under a count. On one measured PR the page is 3,398 px tall on desktop against 6,986 px before, and its agent Markdown is 7,500 bytes against 16,281.
Keep Pro at $15 a month
On repowise.dev.
Paid plans go up later in November, and Pro moves from $15 to $20 a month. Subscribe to Pro before the change and you keep $15 for as long as your subscription stays active: private repositories, push-triggered sync, full git history and monthly AI credits, at today's price. See pricing.
Code health that reads like debt
On repowise.dev and in the open-source release.
- Each defect category follows a saturating curve toward its cap, and findings on one function count the largest in full and the rest at a quarter.
- File drawers split what the score lost into code shape, change history and test coverage.
bumpy_roadreads as Repeated nesting, and five markers read as Deep nesting, Long function, Compound condition, Many authors and Fading ownership. Old ids keep working in rules and filters.- Findings cards are quieter, with severity as a dot and a word and one "Copy prompt for your agent" for the filtered rows.
A guided repowise init
Open-source release.
- One plan screen before the run: the scan, an ETA and every step it will run.
Enter runs the free run,
mpicks a model andqquits and removes what the run made. - A checklist while it runs, with a count and time per finished step, a
time-left figure once a step has a measured rate, and
--progress jsonfor agents. - One finish panel that leads with
repowise serve, names the connected agent and lists the files init added. - A logged-in Claude Code, Codex or OpenCode is offered with its quota, and a
folder of repositories gets the same screen, with
--reposto pick them in scripts. - Init, status, update and the editor files share one set of mode names (Built
from code, Written by a model, Index only), and
repowise update --fulltakes a fast index to a full one. - The CLAUDE.md and AGENTS.md block is lean: date and commit, the files that need care, one code-health line, the top three decisions and the tool table.
repowise health check in CI
Open-source release.
repowise health check origin/main...HEAD needs git only. It analyses the
changed files at base and head and exits 1 on a high-severity code-shape
finding written on the change's own lines (--fail-at sets the bar). It warns
on added suppressions, weakened tests and test-only branches, treats moved code
as context, and writes a table, JSON, Markdown, GitHub annotations, SARIF or
GitLab Code Quality.
repowise health --score <paths> scores files from disk the way the next
update would, and --against <rev> prints before, after and the weighted
average against a revision.
Also on repowise.dev
- The PR bot's "Health of changed files" row names its basis, counts deleted source files on the before side so a file split no longer reads as a drop, and stays quiet on a comment-only push.
- Every page type has its own share card.
- Shared
/s/pages are cached, heavy reads get more time, and a slow response says it is slow and offers Try again instead of reading as broken.
Also in the open-source release
get_overviewlays out every package with its front doors, layer roots and build, test and lint commands in a lean default.- Change risk follows code that moves between files, and
get_change_risklists ahealth_deltaper changed file. repowise healthandget_healthname the production code score beside the headline while tests are in the reading.- GitHub Copilot CLI joins the providers, and every GitHub release carries an
openapi.json. - A prose-only update reuses stored clone and dead-code results, saving 17 to 32 s and 12 to 27 s, and the map payload goes out at 51 KB gzipped, from 634 KB.
- Init, update, workspace, serve, the pipeline, health, dead code, security scanning and the MCP tools are organised into small staged modules across 85 pull requests, with behaviour pinned by golden snapshots.
Upgrading
pip install --upgrade repowise
The first repowise update after upgrading re-scores code health once and
refreshes the parse cache, with no model calls and nothing to re-index. On
repowise.dev, each repository re-scores on its next index.
Thank you
This release includes work from 34 contributors outside the core team.
- @Aman-goel-04#2799, #3020, #3579, #3711, #3839, #3845, #3850, #3853, #4143, #4267, #4268, #4269
- @ozenyunus35#3676, #3776, #3787, #3789, #3920, #3921, #3926, #3957, #3967, #4079, #4084
- @rishu685#2782, #3399, #3466, #3694, #4009, #4121, #4122
- @aazminu#4177, #4178, #4179
- @Yi-111-a#4015, #4023
- @abdelhadi703#3886
- @arnavsx3#4107
- @c0mrade8#3261
- @ddaihao2022#3929
- @dhvani7014#4099
- @Gabrieljr42#4083
- @ganeshmshetty#4061
- @ian0318git#3054
- @JackGitLab#4086
- @jungwonenjoyericl#3943
- @kayaal34#4284
- @kocaemre#3870
- @Laex#3933
- @Maedza#3449
- @Marko0519#3710
- @msranjana#3938
- @PragalvaXFREZ#3882
- @Sriram-PR#3873
- @swastiktawate#4289
- @teddiesloco#1952
- @TheNetherWatcher#3257
- @ump45nose#3402
- @Venius24#4036
- @wang2-lat#4169
- @wanjinhao1#2762
- @WynandVStaden#3950
- @ynaamane#3876
- @Yushu-Li#3930
- @ZhangDT-sky#4288
Run this release on your repo.
Index a repository free and see what this release finds in it. Rolling it out to a team? We will walk you through it.