SKILLEMALL.ai

BC sindy-identification

Sparse Identification of Nonlinear Dynamics (SINDy) — discover governing equations from time-series data. Builds sparse dynamical system models dx/dt = f(x) from measurements using PySINDy. Use when you have trajectory data and want to find the underlying ODE.

synthetic-sciences/OpenScience Hermes author: synthetic-sciences Apache-2.0 1 file body ≈ 1 532 tokens Open the sourcegithub.com↗ analyzed 5 d ago

Sparse Identification of Nonlinear Dynamics (SINDy) — discover governing equations from time-series data.

As a process C 62/100 · Has gaps — weak spots: result and completion, inputs and preconditions, progress reporting

ProcedureSoftware developmenttype and topics are labelled automatically from the skill text
Runs in: Hermes Agent
JSON
Technical rating
B
91/100
safety, quality, tests
Safety 60%
100
Quality 40%
78
Run on models
none yet
Process rating
C
62/100
Has gaps
Result and completion w 14
0
Inputs and preconditions w 11
0
Progress reporting w 2
0
the three weakest of ten parameters · all ten

How to improve

  1. For Hermes the description must be one sentence under 60 characters; move the conditions to a "When to Use" section.
For the model run — optional
  • Your own cases (evals/evals.json, 4–6 real requests with expected answers): the full check would then run those instead of a model-drafted suite.
  • A spec.yaml with trigger phrases and assertions — a behaviour contract for CI; `skilltest init` writes a template.

Guard findings · 0

✓ No critical or high findings

Files scanned: 1. Evidence is masked. Grey chips explain why severity was lowered.

Against the Agent Skills spec

  • warning description-long-hermes description is 260 chars; the Hermes authoring standard requires ≤ 60 (one sentence, ending with a period)
  • note frontmatter-key unknown frontmatter key "dependencies"

Process rating: all ten parameters 62/100

  • 0Result and completion. Does not say what the result is
  • 0Inputs and preconditions. Does not say what the process needs to start
  • 0Progress reporting. Says nothing while it works
  • 50When it triggers. No condition that starts the skill
  • 50Failures and branches. 0 branches, has a failure section
  • 100Tools and files. No external tools needed
  • 100Steps. 13 steps
  • 100Consistency. Name and required fields are in place
  • 100Execution cost. Instruction body is 1532 tokens
  • 100Running it twice. No mutating operations

Everything here is measured from the skill text rather than judged by a model, so the numbers are checkable. A parameter weighs more when it is a more common reason for the process to stall.

Quality signals

  • +5Description has no quoted example phrases that should trigger the skill
  • +4Description does not say when NOT to use the skill (false activations)
  • +3Output format is not stated: the model decides each time
  • +2Single-language instructions
  • +3Description length 260: enough signal without eating the budget
  • +4Structure: 15 headings
  • +3Step-by-step instructions: 13 items
  • +4Has examples (7 code blocks)
  • +1License stated

Quality base 70; lint remarks subtract, signals add up to 100. Result: 78.