security-ownership-map
Analyze git repositories to build a security ownership topology (people-to-file), compute bus factor and sensitive-code ownership, and export CSV/JSON for…
Skill by foryourhealth111-pixel
Chalk Labs
Need help deploying security-ownership-map?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/foryourhealth111-pixel-security-ownership-map
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: spreadsheets, data, security
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions: not checked yet.
What's inside
- Skill name
security-ownership-map- Description
- 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.
- License
- Apache-2.0
- Instructions
- 203 lines in SKILL.md · view on GitHub
Before installing
- Ships executable scripts
Files (8)
- LICENSE.txt
- SKILL.md
- openai.yaml · agents/
- neo4j-import.md · references/
- build_ownership_map.py · scripts/
- community_maintainers.py · scripts/
- query_ownership.py · scripts/
- run_ownership_map.py · scripts/
SKILL.md (first lines)
# 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 pip 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 python skills/skills/security-ownership-map/scripts/run_ownership_map.py \ --repo /path/to/linux \ --out ownership-map-out \ --cochange-exclude "**/Kbuild" ``` ## Quick start Run from the repo root: ```bash python skills/skills/security-ownership-map/scripts/run_ownership_map.py \ --repo . \ --out ownership-map-out \ --since "12 months ago" \ --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 python skills/skills/security-ownership-map/scripts/run_ownership_map.py \ --repo . \ --out ownership-map-out \ --cochange-exclude "**/Cargo.lock" \ --cochange-exclude "**/.github/**" \ --no-default-cochange-excludes ``` Communities are computed by default. To disable: ```bash python skills/skills/security-ownership-map/scripts/run_ownership_map.py \ --repo . \ --out ownership-map-out \ --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 python skills/skills/security-ownership-map/scripts/query_ownership.py --data-dir ownership-map-out people --limit 10 python skills/skills/security-ownership-map/scripts/query_ownership.py --data-dir ownership-map-out files --tag auth --bus-factor-max 1 python skills/skills/security-ownership-map/scripts/query_ownership.py --data-dir ownership-map-out person --person alice@corp --limit 10 python skills/skills/security-ownership-map/scripts/query_ownership.py --data-dir ownership-map-out file --file crypto/tls python skills/skills/security-ownership-map/scripts/query_ownership.py --data-dir ownership-map-out cochange --file crypto/tls --limit 10 python skills/skills/security-ownership-map/scripts/query_ownership.py --data-dir ownership-map-out summary --section orphaned_sensitive_code python 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
From foryourhealth111-pixel/Vibe-Skills, Apache-2.0.
More from foryourhealth111-pixel/Vibe-Skills
- 0.843score
prowler-docs
prowler-cloud
Prowler documentation style guide and writing standards.
SkillAFreshness: A★ 3.8KClaude Code - 0.744score
speckit-specify
github-spec-kit
Create or update feature specifications from natural language descriptions.
SkillAFreshness: A★ 3.8KClaude Code +9 - 0.741score
speckit-tasks
github-spec-kit
Break down implementation plans into actionable task lists.
SkillAFreshness: A★ 3.8KClaude Code +9 - 0.741score
speckit-plan
github-spec-kit
Generate technical implementation plans from feature specifications.
SkillAFreshness: A★ 3.8KClaude Code +9 - 0.741score
speckit-taskstoissues
github-spec-kit
Convert tasks from tasks.md into GitHub issues.
SkillAFreshness: A★ 3.8KClaude Code +9 - 0.741score
speckit-analyze
github-spec-kit
Perform cross-artifact consistency analysis across spec.md, plan.md, and tasks.md.
SkillAFreshness: A★ 3.8KClaude Code +9 - 0.741score
speckit-clarify
github-spec-kit
Structured clarification workflow for underspecified requirements.
SkillAFreshness: A★ 3.8KClaude Code +9 - 0.741score
speckit-checklist
github-spec-kit
Generate custom quality checklists for validating requirements completeness and clarity.
SkillAFreshness: A★ 3.8KClaude Code +9 - 0.741score
speckit-constitution
github-spec-kit
Create or update project governing principles and development guidelines.
SkillAFreshness: A★ 3.8KClaude Code +9 - 0.741score
speckit-implement
github-spec-kit
Execute all tasks from the task breakdown to build the feature.
SkillAFreshness: A★ 3.8KClaude Code +9 - 0.652score
astropy
foryourhealth111-pixel
Comprehensive Python library for astronomy and astrophysics.
SkillAFreshness: A★ 3.8KClaude Code +9 - 0.652score
doc
foryourhealth111-pixel
Use when the task involves reading, creating, or editing `.docx` documents, especially when formatting or layout fidelity matters; prefer `python-docx` plus…
SkillAFreshness: A★ 3.8KClaude Code +9
Signals
- Stars
- 3,764
- Forks
- 341
- Open issues
- 36
- Last commit (this folder)
- Feb 26, 2026 (8 months ago)
- Last release
- Oct 18, 2026 (14 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- Apache-2.0
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
Same skill elsewhere
Copies of this SKILL.md published by others; search shows only one of them.
- 0.688score
security-ownership-map
openaiOfficial
Analyze git repositories to build a security ownership topology (people-to-file), compute bus factor and sensitive-code ownership, and export CSV/JSON for…
SkillDFreshness: D★ 28.3KClaude Code +9 - 0.298score
security-ownership-map
whopointer
Analyze git repositories to build a security ownership topology (people-to-file), compute bus factor and sensitive-code ownership, and export CSV/JSON for…
SkillCFreshness: C★ 1Claude Code +9 - 0.293score
security-ownership-map
Njones17
Analyze git repositories to build a security ownership topology (people-to-file), compute bus factor and sensitive-code ownership, and export CSV/JSON for…
SkillDFreshness: D★ 24Claude Code +9
More from foryourhealth111-pixel
- 0.652score
bio-database-evidence
foryourhealth111-pixel
Unified biological database evidence owner.
SkillAFreshness: A★ 3.8KClaude Code +9 - 0.652score
biopython
foryourhealth111-pixel
Primary retained Python toolkit for molecular biology sequence work.
SkillAFreshness: A★ 3.8KClaude Code +9 - 0.652score
generating-test-reports
foryourhealth111-pixel
Generate structured test reports with pass/fail rollups, coverage summaries, and test artifacts.
SkillAFreshness: A★ 3.8KClaude Code +9 - 0.652score
alpha-vantage
foryourhealth111-pixel
Access real-time and historical stock market data, forex rates, cryptocurrency prices, commodities, economic indicators, and 50+ technical indicators via the…
SkillAFreshness: A★ 3.8KClaude Code +9 - 0.652score
astropy
foryourhealth111-pixel
Comprehensive Python library for astronomy and astrophysics.
SkillAFreshness: A★ 3.8KClaude Code +9 - 0.652score
datacommons-client
foryourhealth111-pixel
Work with Data Commons, a platform providing programmatic access to public statistical data from global sources.
SkillAFreshness: A★ 3.8KClaude Code +9
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get security-ownership-map running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
security-ownership-map skill. Agent Mart. https://agentmart.dev/skills/foryourhealth111-pixel-security-ownership-map (last updated 2026-10-24)