Skip to main content

Analyze the kin behind your code — map knowledge concentration risk in any Git repository.

Project description

kinlyze

Analyze the kin behind your code.

Map knowledge concentration risk in any Git repository — find your bus factor before someone quits and takes it with them.

pip install kinlyze
cd your-repo
kinlyze

Zero dependencies. Reads local Git history only. Nothing leaves your machine.


What it shows

  KNOWLEDGE HEAT MAP
  ──────────────────────────────────────────────────────────────────
  MODULE                               BF    PRIMARY OWNER          OWNS
  ──────────────────────────────────────────────────────────────────
  🔴 src/payments                      1     Sarah K                ████████████ 94%
  🟠 src/auth                          2     Marcus R               ████████░░░░ 71%
  🟡 src/api                           2     Mixed                  ██████░░░░░░ 38%
  🟢 src/core                          4     Various                ███░░░░░░░░░ 22%
  🟢 src/utils                         5     Various                ██░░░░░░░░░░ 18%

  DEVELOPER DEPARTURE RISK
  ──────────────────────────────────────────────────────────────────
  DEVELOPER                    KNOWLEDGE %       IF THEY LEAVE...
  ──────────────────────────────────────────────────────────────────
  Sarah K                      ████████████ 31%  ⚠  CRITICAL — immediate risk
  Marcus R                     ████████░░░░ 19%  ▲  HIGH — significant disruption
  James L                      █████░░░░░░░ 12%  ●  MEDIUM — notable knowledge loss

  ⚠  ACTION REQUIRED
  ──────────────────────────────────────────────────────────────────
  → src/payments has bus factor 1. Sarah K holds 94% of knowledge.
    Recommendation: pair programming, code walkthroughs, or documentation sprint.

Install

pip install kinlyze

Requires Python 3.8+ and Git installed. No other dependencies.


Usage

# Analyze current directory
kinlyze

# Analyze a specific repo
kinlyze --repo /path/to/your/repo

# Only look at the last 6 months
kinlyze --days 180

# Show only the 10 riskiest modules
kinlyze --top 10

# Plain output (no color, great for CI)
kinlyze --no-color

# Raw JSON output for scripting
kinlyze --json

# Pipe to a file
kinlyze --no-color > report.txt

How it works

Kinlyze reads your local .git commit history — no API keys, no GitHub access, no network requests. Everything runs on your machine.

Ownership score per file per developer:

score = (commit_score × 0.40) + (exclusivity × 0.40) + (criticality × 0.20)
  • Commit score — recency-weighted. A commit last week counts 3× more than one 8 months ago.
  • Exclusivity — what % of this file's activity does this developer own?
  • Criticality — files matching payment/auth/core patterns score higher.

Bus factor = minimum developers whose removal causes ≥50% knowledge loss in a module.


Privacy

  • Reads only local Git metadata (author emails, dates, file paths, commit counts)
  • Never reads file contents or diffs
  • Nothing is sent to any server
  • Fully offline

License

MIT © Kinlyze

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

kinlyze-0.1.0.tar.gz (18.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

kinlyze-0.1.0-py3-none-any.whl (19.3 kB view details)

Uploaded Python 3

File details

Details for the file kinlyze-0.1.0.tar.gz.

File metadata

  • Download URL: kinlyze-0.1.0.tar.gz
  • Upload date:
  • Size: 18.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.9

File hashes

Hashes for kinlyze-0.1.0.tar.gz
Algorithm Hash digest
SHA256 a1891a69e391329e44fc735eec6c9aa79d326a68cfd56de9a0d2a0021d8ca85c
MD5 d4fa0c67668d58241ba1c7f822bbc88b
BLAKE2b-256 2f22cce06f9e375896809be36ae0c9c971b55dc42db4452749e225c2c0a13ca4

See more details on using hashes here.

File details

Details for the file kinlyze-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: kinlyze-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 19.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.9

File hashes

Hashes for kinlyze-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 85a2708233c98168fa733ecbc90cdf152700c169cd9ece8ea2fdbc51ca98098b
MD5 c81b75cbc3f863d2ba6c771ab8fe6128
BLAKE2b-256 58d7523c82a7e07dd969ccd16d4f8ef57e9f38288e50b3314eda3a070b730d5e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page