Token导航 LogoToken导航TokenDH.com
研究检索需要联网github未标认证来源可访问许可证需确认审计通过

math-spec-driven数学规范驱动

Agent Skill

math-spec-driven 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

214

周安装

9

GitHub Stars

6

下载量

75
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:math-spec-driven(数学规范驱动)
来源仓库:https://github.com/ben8t/math-spec-driven-skill
仓库路径:skills/math-spec-driven
安装命令:
npx skills add https://github.com/ben8t/math-spec-driven-skill --skill math-spec-driven
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/ben8t/math-spec-driven-skill --skill math-spec-driven

简介

math-spec-driven 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中快速定位候选结果。

  • 适用于基于规范驱动的数学建模或算法设计中的信息检索需求。
  • 通过 npx skills add 命令从 GitHub 仓库安装并使用该技能。
  • 安装前需确认权限范围、维护状态,以及是否会触发联网或文件读写操作。
  • 建议结合原始 README 核验具体用法和功能边界。

SKILL.md

Math Spec-Driven Skill

Purpose

Use this skill whenever a task requires rigorous, unambiguous specification of a system, process, relationship, or transformation. Mathematical specification is a methodology — not a subject. It applies whenever precision, completeness, and falsifiability matter more than narrative approximation.

This skill teaches Claude to think in mathematical structures: sets, functions, relations, invariants, and formal constraints. It is domain-agnostic. The formalism is the tool; the domain is whatever the user brings.


Core Philosophy

Mathematics is simultaneously:

  • A system (self-consistent, closed under its own rules)
  • A language (capable of expressing any precisely definable concept)
  • A specification method (the most unambiguous way to define what something IS and what it must DO)

When applied as a specification methodology, mathematics forces three things:

  1. Explicitness — every assumption must be stated
  2. Composability — every component can be independently verified then combined
  3. Falsifiability — every claim is either provable or disprovable within the system

When to Apply This Skill

Trigger this skill when you encounter:

  • Ambiguous requirements that need precise boundaries
  • Systems with many interacting parts that must remain consistent
  • Transformations where the input/output relationship must be guaranteed
  • Constraints that must hold under all conditions (invariants)
  • Decisions that need justification beyond intuition or convention
  • Any domain where "it depends" is not an acceptable specification

The Math Spec Method

Step 1 — Model the Domain

Map the real-world problem onto mathematical primitives:

Real WorldMathematical Primitive
A collection of thingsSet S
A thing with propertiesTuple or Record (a, b, c)
A process or transformationFunction f: A → B
A relationship between thingsRelation R ⊆ A × B
A constraint that must always holdInvariant / Predicate P(x): Bool
A sequence of statesTrace [s₀, s₁, …, sₙ]
A measurementMetric d: S × S → ℝ≥0

Task: Before writing any specification, identify which primitives apply. Name them explicitly.


Step 2 — Define the Universe of Discourse

Before specifying behavior, define what EXISTS in the system:

Let U = the universe of all valid entities in this domain
Let S ⊆ U = the subset currently under consideration
Let ∅ = the empty/null case (always handle this explicitly)

Ask:

  • What are the atomic elements? (Cannot be decomposed further)
  • What are the compound elements? (Defined in terms of atoms)
  • What is explicitly excluded?

Step 3 — Specify Functions and Transformations

Every transformation has a signature and a contract:

f: A → B

Precondition:  P(a) must hold before f is applied
Postcondition: Q(f(a)) must hold after f is applied
Invariant:     I(a) = I(f(a))  [what must NOT change]

Write specs in this form even in prose-heavy domains. Example:

classify: Document → Category

Pre:  Document is non-empty, language is detected
Post: Category ∈ {defined_taxonomy}
Inv:  Document content is unchanged by classification

Step 4 — State Invariants Explicitly

Invariants are properties that must hold at ALL times, not just at some steps.

For each invariant, state:

  • What it asserts (the property)
  • When it must hold (always / at boundaries / after each operation)
  • What violates it (the failure mode)

Pattern:

∀ x ∈ S: P(x)           — Universal invariant
∃ x ∈ S: P(x)           — Existence guarantee
P(x) ⟹ Q(f(x))          — Conditional guarantee
¬(P(x) ∧ Q(x))          — Mutual exclusion

Step 5 — Handle Edge Cases as First-Class Concerns

Mathematical completeness requires handling the boundary:

  • The empty set (S = ∅)
  • The singleton (|S| = 1)
  • The degenerate input (zero, negative, infinite, null)
  • The identity case (f(x) = x)
  • The composition case (f(g(x)) — does order matter?)

Never specify only the "happy path." A spec is incomplete if it omits boundary behavior.


Step 6 — Compose and Verify

Once individual components are specified, compose them:

h = f ∘ g   (h(x) = f(g(x)))

Verify:
  - Codomain of g matches domain of f
  - Preconditions of f are implied by postconditions of g
  - Invariants of both f and g are preserved by h

If composition breaks: the specification has a gap. Find and fill it.


Step 7 — Express Uncertainty with Precision

Where things are probabilistic or unknown, apply the right formalism:

P(outcome | evidence)     — conditional probability
E[X]                      — expected value
Var(X)                    — variance / spread
argmax_{x} f(x)           — best choice under a criterion

Uncertainty does not mean imprecision — it means quantified imprecision.


Output Format

When producing a mathematical specification, always structure output as:

## Specification: [Name]

### 1. Domain Model
[Named sets, types, and primitives]

### 2. Functions / Operations
[Signatures, preconditions, postconditions, invariants]

### 3. Invariants
[Formal or semi-formal statements of what must always hold]

### 4. Edge Cases
[Explicit boundary conditions and their specified behavior]

### 5. Composition / Interaction
[How components combine; verification that composition is sound]

### 6. Open Questions
[What is explicitly left unspecified and why]

Notation Guide (Use Consistently)

SymbolMeaning
For all
There exists
Is a member of
Is a subset of
Empty set
Function mapping (A → B)
Logical implication
If and only if
Logical AND
Logical OR
¬Logical NOT
Function composition
Defined as
`S
Undefined / bottom (error state)

Always define any non-standard notation locally.


Example (Illustrative — Domain is Arbitrary)

Task: Specify a content routing system. *(Domain could be emails, support tickets, API calls, documents — the structure is what matters.)*

## Specification: Content Router

### 1. Domain Model
Let M = set of all incoming messages (finite, non-empty)
Let C = {c₁, c₂, …, cₙ} = finite set of destination categories
Let R = set of routing rules, where each r ∈ R is a predicate r: M → Bool
Let priority: R → ℕ = total ordering on rules (lower = higher priority)

### 2. Functions / Operations

route: M → C ∪ {⊥}

Pre:  m ∈ M, |R| ≥ 1
Post:
  If ∃ r ∈ R such that r(m) = true:
    route(m) = category associated with highest-priority matching r
  Else:
    route(m) = ⊥  [unrouted — must trigger fallback handler]
Inv:  m is not modified by route(m)

### 3. Invariants
∀ m ∈ M: route(m) is deterministic (same input → same output)
∀ m ∈ M: at most one category is assigned (no split routing)
If route(m) = ⊥, an alert must be emitted

### 4. Edge Cases
M = ∅        → route is never called; system is idle (valid state)
R = ∅        → route(m) = ⊥ for all m (all messages unrouted)
|C| = 1      → route(m) = c₁ for all matched m (trivial routing)
Two rules match → highest priority(r) wins; tie-break by rule index

### 5. Composition
filter ∘ route:
  filter: M → M' removes malformed messages before routing
  Pre of route is satisfied by Post of filter
  Composition valid iff filter guarantees m' ∈ M for all outputs

### 6. Open Questions
- How are rules added/removed at runtime? (Mutation spec not defined here)
- What is the SLA on route latency? (Performance spec out of scope)

Anti-Patterns to Avoid

Anti-PatternProblemFix
"It should handle all cases"Not falsifiable — not a specList every case explicitly
"Usually returns X"Probabilistic without quantificationState P(returns X) or define when it doesn't
Defining only the happy pathCollapses on edge casesAlways specify ∅, ⊥, and boundary inputs
Natural language for constraintsAmbiguous, multi-interpretableRestate as predicate logic or structured form
Composing without domain/codomain checkSilent type errors at system boundariesVerify f ∘ g explicitly before combining

Quality Checklist

Before delivering any math-spec-driven output, verify:

  • Every set is named and defined
  • Every function has a signature (domain → codomain)
  • Every function has preconditions and postconditions
  • At least one invariant is stated
  • Edge cases (∅, ⊥, boundary) are explicitly handled
  • Compositions are verified for domain/codomain alignment
  • Open questions are listed — not silently omitted
  • Notation is consistent throughout

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

36.57%
按下载量换算27

Claude

28.18%
按下载量换算21

Cursor

21.28%
按下载量换算16

Gemini CLI

8.69%
按下载量换算7

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills