dbscan-custom-metrics

dbscan-custom-metrics is a skill for Claude Code, Codex from cxcscmu/SkillLearnBench. It costs 25 tokens per session (569 once invoked), scanned A, original, MIT.

A method for grouping nearby data points with DBSCAN, a clustering algorithm that finds dense groups and marks isolated points as noise. It calculates similarity with a custom distance rule using scikit-learn.

In plain words
What is it for?
Clustering data when different dimensions need different weights or a custom formula, including calculating a distance matrix and passing it to DBSCAN.
Why use it?
It lets clustering reflect domain-specific notions of distance instead of relying only on standard numeric distance.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one.

Good fit Clustering data when different dimensions need different weights or a custom formula…

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/cxcscmu/skilllearnbench/dbscan-custom-metrics
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add cxcscmu/SkillLearnBench --skill dbscan-custom-metrics
Clone the repo
git clone --depth 1 https://github.com/cxcscmu/SkillLearnBench

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for dbscan-custom-metrics

README.md
[![agentmods](https://agentmods.dev/badge/skills/cxcscmu/skilllearnbench/dbscan-custom-metrics.svg)](https://agentmods.dev/skills/cxcscmu/skilllearnbench/dbscan-custom-metrics)
Your own site
<a href="https://agentmods.dev/skills/cxcscmu/skilllearnbench/dbscan-custom-metrics"><img src="https://agentmods.dev/badge/skills/cxcscmu/skilllearnbench/dbscan-custom-metrics.svg" alt="Measured on agentmods" height="20"></a>
Per session 25 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 569 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00025 $0.00569
Opus 5 $0.00013 $0.00284
Sonnet 5 $0.00005 $0.00114
Haiku 4.5 $0.00003 $0.00057

Measured 7d ago against content hash 66acde56431f, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-06, from the pricing page.

Security

Grade A, and why

dbscan-custom-metrics scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 7d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills/b1-one-shot-claude-haiku-4-5/dbscan-parameter-tuning/dbscan-custom-metrics/SKILL.md · 80 lines

How it starts

The opening of the file, as written. The whole thing — 80 lines — stays where its author put it; the contents beside it link to each section on GitHub.

DBSCAN with Custom Distance Metrics

Overview

DBSCAN can use custom distance metrics by computing a precomputed distance matrix or using pairwise_distances with a custom metric function.

Key Concepts

Custom Metric Function

A custom metric function takes two 1D arrays (two points) and returns a scalar distance:

def custom_metric(u, v, shape_weight):
    """Compute weighted distance between two points."""
    dx = u[0] - v[0]
    dy = u[1] - v[1]
    return np.sqrt((shape_weight * dx)**2 + ((2 - shape_weight) * dy)**2)

Using with scikit-learn

For DBSCAN with a custom metric, use metric='precomputed' and pass a precomputed distance matrix:

from sklearn.metrics.pairwise import pairwise_distances
from sklearn.cluster import DBSCAN

# Compute precomputed distance matrix
distances = pairwise_distances(
    points,
    metric=custom_metric,
    metric_params={'shape_weight': w}
)

# Run DBSCAN with precomputed distances
clusterer = DBSCAN(eps=epsilon, min_samples=min_samples, metric='precomputed')
labels = clusterer.fit_predict(distances)

Implementation Pattern

import numpy as np
from sklearn.metrics.pairwise import pairwise_distances
from sklearn.cluster import DBSCAN

def shape_weighted_distance(u, v, shape_weight):
    """Distance metric with shape weighting."""
    dx = u[0] - v[0]
    dy = u[1] - v[1]
    return np.sqrt((shape_weight * dx)**2 + ((2 - shape_weight) * dy)**2)

def cluster_with_custom_metric(points, epsilon, min_samples, shape_weight):
    """Cluster points using DBSCAN with custom distance metric."""
    if len(points) == 0:
        return np.array([], dtype=int)

    # Compute distance matrix
    distances = pairwise_distances(
        points,
        metric=shape_weighted_distance,
        metric_params={'shape_weight': shape_weight}
    )

    # Run DBSCAN
    clusterer = DBSCAN(eps=epsilon, min_samples=min_samples, metric='precomputed')
    labels = clusterer.fit_predict(distances)

    return labels

Read the full file on GitHub · 80 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 7d ago First seen · 80 lines · 25 tokens per session scan A 66acde56431f

Subscribe to this mod's changes

dbscan-custom-metrics is a skill published in the GitHub repository cxcscmu/SkillLearnBench (83 stars, last pushed 1mo ago), licensed MIT. It adds 25 tokens to every session and 569 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

ceo-setup

One-time onboarding for the executive/manager commitment workflow — delegation-heavy, meeting prep, decision capture, morning and evening digests. Creates a commitments project and installs two dashboard widgets. After successful setup this skill is excluded from selection until the marker file is deleted.

suyoumo/ClawProBench · 60 tokens

content-creator-setup

One-time onboarding for the content creator workflow — content pipeline stages, trend expiration, cross-platform cascades, heavy idea parking. After successful setup this skill is excluded from selection until the marker file is deleted.

suyoumo/ClawProBench · 47 tokens

github

GitHub API integration via HTTP tool with automatic credential injection.

suyoumo/ClawProBench · 13 tokens

idea-parking

Park interesting ideas for later consideration, resurface them periodically, and promote to commitments when ready.

suyoumo/ClawProBench · 23 tokens

agentsop-llamaindex

Operating-system distillation of LlamaIndex — the leading RAG / document-agent framework. Activate when the calling agent must build, debug, harden, or evaluate a Retrieval-Augmented Generation pipeline over unstructured/private data, decide between RAG primitives (Index types, retrievers, query engines, routers…

agentsope/SkillAlchemy · 178 tokens

agentsop-llm-artifact-versioning

Enhancement overlay — version the WHOLE deployable LLM-app artifact as one bundle: prompts + compiled programs + model snapshot pins + retrieval config + eval-set version, versioned together so a deploy is reproducible and rollback is atomic. Activate when preparing to deploy an LLM app, when asking "what exactly is…

agentsope/SkillAlchemy · 223 tokens