security-ownership-map — community security-ownership-map, community, ide skills, Claude Code, Cursor, Windsurf

v1.0.0

Acerca de este Skill

Perfecto para Agentes de Análisis de Código que necesitan una visualización avanzada de historial de git y capacidades de evaluación de riesgo de propiedad. Analyze git repositories to build a security ownership topology (people-to-file), compute bus factor and sensitive-code ownership, and export CSV/JSON for graph databases and visualization. Trigger only when the user explicitly wants a security-oriented ownership or bus-factor analysis grounded in git history (for example: orphaned sensitive code, security maintainers, CODEOWNERS reality checks for risk, sensitive hotspots, or ownership clusters). Do not trigger for general maintainer lists or non-security ownership questions.

garethdaine garethdaine
[0]
[0]
Updated: 3/12/2026

Killer-Skills Review

Decision support comes first. Repository text comes second.

Reference-Only Page Review Score: 7/11

This page remains useful for operators, but Killer-Skills treats it as reference material instead of a primary organic landing page.

Original recommendation layer Concrete use-case guidance Explicit limitations and caution
Review Score
7/11
Quality Score
48
Canonical Locale
en
Detected Body Locale
en

Perfecto para Agentes de Análisis de Código que necesitan una visualización avanzada de historial de git y capacidades de evaluación de riesgo de propiedad. Analyze git repositories to build a security ownership topology (people-to-file), compute bus factor and sensitive-code ownership, and export CSV/JSON for graph databases and visualization. Trigger only when the user explicitly wants a security-oriented ownership or bus-factor analysis grounded in git history (for example: orphaned sensitive code, security maintainers, CODEOWNERS reality checks for risk, sensitive hotspots, or ownership clusters). Do not trigger for general maintainer lists or non-security ownership questions.

¿Por qué usar esta habilidad?

Habilita a los agentes a calcular el riesgo de propiedad para los desarrolladores mediante la creación de un grafo bipartito de personas y archivos a partir del historial de git, utilizando bibliotecas como networkx para la detección de comunidades y la similitud de Jaccard para la generación de gráficos de co-cambio de archivos.

Mejor para

Perfecto para Agentes de Análisis de Código que necesitan una visualización avanzada de historial de git y capacidades de evaluación de riesgo de propiedad.

Casos de uso accionables for security-ownership-map

Automatizar las evaluaciones de riesgo de propiedad para grandes conjuntos de código
Generar gráficos de co-cambio de archivos para identificar archivos estrechamente relacionados
Visualizar las contribuciones de los desarrolladores y la propiedad de archivos utilizando Neo4j o Gephi

! Seguridad y limitaciones

  • Requiere Python 3
  • Dependiente de la biblioteca networkx
  • Limitado a analizar el historial de git

Why this page is reference-only

  • - Current locale does not satisfy the locale-governance contract.
  • - The underlying skill quality score is below the review floor.

Source Boundary

The section below is supporting source material from the upstream repository. Use the Killer-Skills review above as the primary decision layer.

Labs Demo

Browser Sandbox Environment

⚡️ Ready to unleash?

Experience this Agent in a zero-setup browser environment powered by WebContainers. No installation required.

Boot Container Sandbox

FAQ & Installation Steps

These questions and steps mirror the structured data on this page for better search understanding.

? Frequently Asked Questions

What is security-ownership-map?

Perfecto para Agentes de Análisis de Código que necesitan una visualización avanzada de historial de git y capacidades de evaluación de riesgo de propiedad. Analyze git repositories to build a security ownership topology (people-to-file), compute bus factor and sensitive-code ownership, and export CSV/JSON for graph databases and visualization. Trigger only when the user explicitly wants a security-oriented ownership or bus-factor analysis grounded in git history (for example: orphaned sensitive code, security maintainers, CODEOWNERS reality checks for risk, sensitive hotspots, or ownership clusters). Do not trigger for general maintainer lists or non-security ownership questions.

How do I install security-ownership-map?

Run the command: npx killer-skills add garethdaine/agent/security-ownership-map. It works with Cursor, Windsurf, VS Code, Claude Code, and 19+ other IDEs.

What are the use cases for security-ownership-map?

Key use cases include: Automatizar las evaluaciones de riesgo de propiedad para grandes conjuntos de código, Generar gráficos de co-cambio de archivos para identificar archivos estrechamente relacionados, Visualizar las contribuciones de los desarrolladores y la propiedad de archivos utilizando Neo4j o Gephi.

Which IDEs are compatible with security-ownership-map?

This skill is compatible with Cursor, Windsurf, VS Code, Trae, Claude Code, OpenClaw, Aider, Codex, OpenCode, Goose, Cline, Roo Code, Kiro, Augment Code, Continue, GitHub Copilot, Sourcegraph Cody, and Amazon Q Developer. Use the Killer-Skills CLI for universal one-command installation.

Are there any limitations for security-ownership-map?

Requiere Python 3. Dependiente de la biblioteca networkx. Limitado a analizar el historial de git.

How To Install

  1. 1. Open your terminal

    Open the terminal or command line in your project directory.

  2. 2. Run the install command

    Run: npx killer-skills add garethdaine/agent/security-ownership-map. The CLI will automatically detect your IDE or AI agent and configure the skill.

  3. 3. Start using the skill

    The skill is now active. Your AI agent can use security-ownership-map immediately in the current project.

! Reference-Only Mode

This page remains useful for installation and reference, but Killer-Skills no longer treats it as a primary indexable landing page. Read the review above before relying on the upstream repository instructions.

Imported Repository Instructions

The section below is supporting source material from the upstream repository. Use the Killer-Skills review above as the primary decision layer.

Supporting Evidence

security-ownership-map

Install security-ownership-map, an AI agent skill for AI agent workflows and automation. Works with Claude Code, Cursor, and Windsurf with one-command setup.

SKILL.md
Readonly
Imported Repository Instructions
The section below is supporting source material from the upstream repository. Use the Killer-Skills review above as the primary decision layer.
Supporting Evidence

Security Ownership Map

Overview

Build a bipartite graph of people and files from git history, then compute ownership risk and export graph artifacts for Neo4j/Gephi. Also build a file co-change graph (Jaccard similarity on shared commits) to cluster files by how they move together while ignoring large, noisy commits.

Requirements

  • Python 3
  • networkx (required; community detection is enabled by default)

Install with:

bash
1pip install networkx

Workflow

  1. Scope the repo and time window (optional --since/--until).
  2. Decide sensitivity rules (use defaults or provide a CSV config).
  3. Build the ownership map with scripts/run_ownership_map.py (co-change graph is on by default; use --cochange-max-files to ignore supernode commits).
  4. Communities are computed by default; graphml output is optional (--graphml).
  5. Query the outputs with scripts/query_ownership.py for bounded JSON slices.
  6. Persist and visualize (see references/neo4j-import.md).

By default, the co-change graph ignores common “glue” files (lockfiles, .github/*, editor config) so clusters reflect actual code movement instead of shared infra edits. Override with --cochange-exclude or --no-default-cochange-excludes. Dependabot commits are excluded by default; override with --no-default-author-excludes or add patterns via --author-exclude-regex.

If you want to exclude Linux build glue like Kbuild from co-change clustering, pass:

bash
1python skills/skills/security-ownership-map/scripts/run_ownership_map.py \ 2 --repo /path/to/linux \ 3 --out ownership-map-out \ 4 --cochange-exclude "**/Kbuild"

Quick start

Run from the repo root:

bash
1python skills/skills/security-ownership-map/scripts/run_ownership_map.py \ 2 --repo . \ 3 --out ownership-map-out \ 4 --since "12 months ago" \ 5 --emit-commits

Defaults: author identity, author date, and merge commits excluded. Use --identity committer, --date-field committer, or --include-merges if needed.

Example (override co-change excludes):

bash
1python skills/skills/security-ownership-map/scripts/run_ownership_map.py \ 2 --repo . \ 3 --out ownership-map-out \ 4 --cochange-exclude "**/Cargo.lock" \ 5 --cochange-exclude "**/.github/**" \ 6 --no-default-cochange-excludes

Communities are computed by default. To disable:

bash
1python skills/skills/security-ownership-map/scripts/run_ownership_map.py \ 2 --repo . \ 3 --out ownership-map-out \ 4 --no-communities

Sensitivity rules

By default, the script flags common auth/crypto/secret paths. Override by providing a CSV file:

# pattern,tag,weight
**/auth/**,auth,1.0
**/crypto/**,crypto,1.0
**/*.pem,secrets,1.0

Use it with --sensitive-config path/to/sensitive.csv.

Output artifacts

ownership-map-out/ contains:

  • people.csv (nodes: people)
  • files.csv (nodes: files)
  • edges.csv (edges: touches)
  • cochange_edges.csv (file-to-file co-change edges with Jaccard weight; omitted with --no-cochange)
  • summary.json (security ownership findings)
  • commits.jsonl (optional, if --emit-commits)
  • communities.json (computed by default from co-change edges when available; includes maintainers per community; disable with --no-communities)
  • cochange.graph.json (NetworkX node-link JSON with community_id + community_maintainers; falls back to ownership.graph.json if no co-change edges)
  • ownership.graphml / cochange.graphml (optional, if --graphml)

people.csv includes timezone detection based on author commit offsets: primary_tz_offset, primary_tz_minutes, and timezone_offsets.

LLM query helper

Use scripts/query_ownership.py to return small, JSON-bounded slices without loading the full graph into context.

Examples:

bash
1python skills/skills/security-ownership-map/scripts/query_ownership.py --data-dir ownership-map-out people --limit 10 2python skills/skills/security-ownership-map/scripts/query_ownership.py --data-dir ownership-map-out files --tag auth --bus-factor-max 1 3python skills/skills/security-ownership-map/scripts/query_ownership.py --data-dir ownership-map-out person --person alice@corp --limit 10 4python skills/skills/security-ownership-map/scripts/query_ownership.py --data-dir ownership-map-out file --file crypto/tls 5python skills/skills/security-ownership-map/scripts/query_ownership.py --data-dir ownership-map-out cochange --file crypto/tls --limit 10 6python skills/skills/security-ownership-map/scripts/query_ownership.py --data-dir ownership-map-out summary --section orphaned_sensitive_code 7python skills/skills/security-ownership-map/scripts/query_ownership.py --data-dir ownership-map-out community --id 3

Use --community-top-owners 5 (default) to control how many maintainers are stored per community.

Basic security queries

Run these to answer common security ownership questions with bounded output:

bash
1# Orphaned sensitive code (stale + low bus factor) 2python skills/skills/security-ownership-map/scripts/query_ownership.py --data-dir ownership-map-out summary --section orphaned_sensitive_code 3 4# Hidden owners for sensitive tags 5python skills/skills/security-ownership-map/scripts/query_ownership.py --data-dir ownership-map-out summary --section hidden_owners 6 7# Sensitive hotspots with low bus factor 8python skills/skills/security-ownership-map/scripts/query_ownership.py --data-dir ownership-map-out summary --section bus_factor_hotspots 9 10# Auth/crypto files with bus factor <= 1 11python skills/skills/security-ownership-map/scripts/query_ownership.py --data-dir ownership-map-out files --tag auth --bus-factor-max 1 12python skills/skills/security-ownership-map/scripts/query_ownership.py --data-dir ownership-map-out files --tag crypto --bus-factor-max 1 13 14# Who is touching sensitive code the most 15python skills/skills/security-ownership-map/scripts/query_ownership.py --data-dir ownership-map-out people --sort sensitive_touches --limit 10 16 17# Co-change neighbors (cluster hints for ownership drift) 18python skills/skills/security-ownership-map/scripts/query_ownership.py --data-dir ownership-map-out cochange --file path/to/file --min-jaccard 0.05 --limit 20 19 20# Community maintainers (for a cluster) 21python skills/skills/security-ownership-map/scripts/query_ownership.py --data-dir ownership-map-out community --id 3 22 23# Monthly maintainers for the community containing a file 24python skills/skills/security-ownership-map/scripts/community_maintainers.py \ 25 --data-dir ownership-map-out \ 26 --file network/card.c \ 27 --since 2025-01-01 \ 28 --top 5 29 30# Quarterly buckets instead of monthly 31python skills/skills/security-ownership-map/scripts/community_maintainers.py \ 32 --data-dir ownership-map-out \ 33 --file network/card.c \ 34 --since 2025-01-01 \ 35 --bucket quarter \ 36 --top 5

Notes:

  • Touches default to one authored commit (not per-file). Use --touch-mode file to count per-file touches.
  • Use --window-days 90 or --weight recency --half-life-days 180 to smooth churn.
  • Filter bots with --ignore-author-regex '(bot|dependabot)'.
  • Use --min-share 0.1 to show stable maintainers only.
  • Use --bucket quarter for calendar quarter groupings.
  • Use --identity committer or --date-field committer to switch from author attribution.
  • Use --include-merges to include merge commits (excluded by default).

Summary format (default)

Use this structure, add fields if needed:

json
1{ 2 "orphaned_sensitive_code": [ 3 { 4 "path": "crypto/tls/handshake.rs", 5 "last_security_touch": "2023-03-12T18:10:04+00:00", 6 "bus_factor": 1 7 } 8 ], 9 "hidden_owners": [ 10 { 11 "person": "alice@corp", 12 "controls": "63% of auth code" 13 } 14 ] 15}

Graph persistence

Use references/neo4j-import.md when you need to load the CSVs into Neo4j. It includes constraints, import Cypher, and visualization tips.

Notes

  • bus_factor_hotspots in summary.json lists sensitive files with low bus factor; orphaned_sensitive_code is the stale subset.
  • If git log is too large, narrow with --since or --until.
  • Compare summary.json against CODEOWNERS to highlight ownership drift.

Habilidades relacionadas

Looking for an alternative to security-ownership-map or another community skill for your workflow? Explore these related open-source skills.

Ver todo

openclaw-release-maintainer

Logo of openclaw
openclaw

Your own personal AI assistant. Any OS. Any Platform. The lobster way. 🦞

333.8k
0
Inteligencia Artificial

widget-generator

Logo of f
f

Generar complementos de widgets personalizables para el sistema de feeds de prompts.chat

149.6k
0
Inteligencia Artificial

flags

Logo of vercel
vercel

El Marco de React

138.4k
0
Navegador

pr-review

Logo of pytorch
pytorch

Tensores y redes neuronales dinámicas en Python con fuerte aceleración de GPU

98.6k
0
Desarrollador