CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

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 graph databases and visualization. Use 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 use for general maintainer lists, non-security ownership questions, or threat modeling (use security-threat-model).

Quality

89%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

Quality

Content

78%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A highly actionable, well-structured body: every command is executable against real bundle scripts, the workflow is a clear numbered sequence, and advanced Neo4j material is properly deferred to a one-level reference. The main weakness is redundancy — duplicated query examples across two sections and defaults/co-change-exclude guidance restated three or four times — which inflates token cost without adding information.

Suggestions

Deduplicate the query command examples: the summary/files/cochange/community invocations appear nearly verbatim in both 'LLM query helper' and 'Basic security queries' — keep one section and cut the other to unique cases.

Remove the one-off Linux 'Kbuild' example and fold it into a single sentence noting that --cochange-exclude accepts glob patterns, since the flag and its defaults are already documented in the Workflow section.

State each default exactly once (communities-on-by-default is repeated in Workflow, Quick start, and Output artifacts) and reference it from the other sections instead of restating it.

DimensionReasoningScore

Conciseness

The prose itself is lean (no concept explanations, terse notes), but there is real duplication: the same query commands (summary --section, files --tag, cochange, community) appear in both 'LLM query helper' and 'Basic security queries'; 'Communities are computed by default' is stated in the workflow, quick start, and output-artifacts sections; and the one-off Linux Kbuild example repeats --cochange-exclude guidance already documented. This fits anchor 3 ('mostly efficient but… could be tightened') better than anchor 2, since there is no padding or over-explanation — only redundancy.

3 / 5

Actionability

Every example is a copy-paste-ready, fully-qualified bash command against scripts that exist in the bundle, with concrete flags, defaults ('--community-top-owners 5 (default)'), and an exact sensitivity-rule CSV format including its header comment. This matches anchor 5 ('fully executable; copy-paste ready… specific examples cover the common cases') rather than anchor 4, which implies minor gaps in executability.

5 / 5

Workflow Clarity

The workflow is a clear 6-step sequence, each step tied to a concrete script or flag, with the query helper acting as a bounded-output checkpoint and a troubleshooting note ('If git log is too large, narrow with --since or --until'). However, there is no explicit verification step (e.g., confirm summary.json/row counts before interpreting findings), matching anchor 4 ('clear sequence with most checkpoints present; minor validation gaps') rather than anchor 5; the destructive/batch cap does not apply since the pipeline is read-only analysis.

4 / 5

Progressive Disclosure

The body is a well-organized overview with headers, operational commands inline where they belong, and the single advanced topic (Neo4j persistence) correctly deferred to references/neo4j-import.md — a real file, one level deep, clearly signaled with a summary of what it contains ('constraints, import Cypher, and visualization tips'). All referenced scripts exist in the bundle. This matches anchor 5 rather than anchor 4, whose 'minor organization gaps' are absent here.

5 / 5

Total

17

/

20

Passed

Description

95%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A strong description: concrete capabilities, an explicit 'Use when…' clause with natural trigger phrases, third-person voice, and an explicit do-not-use boundary that disambiguates it from a sibling security-threat-model skill. The only weakness is that co-change clustering and community detection — significant features of the skill — are absent from the capability list, leaving specificity just short of comprehensive.

DimensionReasoningScore

Specificity

The description names several concrete actions — 'build a security ownership topology (people-to-file)', 'compute bus factor and sensitive-code ownership', 'export CSV/JSON for graph databases and visualization' — with only a minor coverage gap (co-change clustering and community detection, prominent features in the body, are not mentioned). It fits anchor 4 ('several specific actions; minor gaps') better than anchor 5's comprehensive coverage, and is well above anchor 3's '1-2 concrete actions'.

4 / 5

Completeness

It explicitly answers both what ('Analyze git repositories to build a security ownership topology… export CSV/JSON for graph databases and visualization') and when ('Use 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…)') with concrete trigger phrases, matching anchor 5 exactly. Voice is third person, so no voice penalty applies.

5 / 5

Trigger Term Quality

Trigger terms are natural and comprehensive with synonyms: 'bus factor', 'security maintainers', 'CODEOWNERS reality checks', 'orphaned sensitive code', 'sensitive hotspots', 'ownership clusters', 'git history' — phrases a user would genuinely say when needing this skill. It clearly matches anchor 5 rather than anchor 4 ('a few natural terms missing').

5 / 5

Distinctiveness Conflict Risk

It carves out a clear niche (security-oriented git ownership analysis) and adds an explicit negative boundary — 'Do NOT use for general maintainer lists, non-security ownership questions, or threat modeling (use security-threat-model)' — minimizing overlap risk with adjacent skills, which matches anchor 5 ('clear niche with distinct triggers; minimal conflict risk').

5 / 5

Total

19

/

20

Passed

Validation

100%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository

tech-leads-club/agent-skills

Path

packages/skills-catalog/skills/(security)/security-ownership-map/SKILL.md

Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.