Formula Derivation logo

Formula Derivation

CommunityPopular
wanshuiyin
formula-derivation

Structures and derives research formulas when the user wants to 推导公式, build a theory line, organize assumptions, turn scattered equations into a coherent derivation, or rewrite theory notes into a paper-ready formula document. Use when the derivation target is not yet fully fixed, the main object still needs to be chosen, or the user needs a coherent derivation package rather than a finished theorem proof.

Overview

Publisherwanshuiyin
RepositoryAuto-claude-code-research-in-sleep
Skill nameformula-derivation
Stars
16.3K
Forks
1.4K
Bundled files
Instructions only
LicenseMIT
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • Self-contained

    Everything the model needs lives in the instructions — no extra files to sync.

  • Open source

    Published by wanshuiyin on GitHub. Read the source before you install it.

Installation

Install the Formula Derivation AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/wanshuiyin/Auto-claude-code-research-in-sleep.git /tmp/Auto-claude-code-research-in-sleep
mkdir -p .claude/skills
cp -r /tmp/Auto-claude-code-research-in-sleep/skills/formula-derivation .claude/skills/formula-derivation
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Formula Derivation in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Formula Derivation on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Formula Derivation is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

Formula Derivation: Research Theory Line Construction

Build an honest derivation package, not a fake polished theorem story.

Constants

  • DEFAULT_DERIVATION_DOC = DERIVATION_PACKAGE.md in project root
  • STATUS = COHERENT AS STATED | COHERENT AFTER REFRAMING / EXTRA ASSUMPTION | NOT YET COHERENT

Context: $ARGUMENTS

Goal

Produce exactly one of:

  1. a coherent derivation package for the original target
  2. a reframed derivation package with corrected object / assumptions / scope
  3. a blocker report explaining why the current notes cannot yet support a coherent derivation

Inputs

Extract and normalize:

  • the target phenomenon, formula, relation, or theory line
  • the intended role of the derivation:
    • exact identity / algebra
    • proposition / local theorem
    • approximation
    • mechanism interpretation
  • explicit assumptions
  • notation and definitions
  • any user-provided formula chain, sketch, messy notes, or current draft
  • nearby local theory files if the request points to them
  • desired output style if specified:
    • internal alignment note
    • paper-style theory draft
    • blocker report

If the target, object, notation, or assumptions are ambiguous, state the exact interpretation you are using before deriving anything.

Workflow

Step 1: Gather Derivation Context

Determine the target derivation file with this priority:

  1. a file path explicitly specified by the user
  2. a derivation draft already referenced in local notes
  3. DERIVATION_PACKAGE.md in project root as the default target

Read the relevant local context:

  • the chosen target derivation file, if it already exists
  • any local theory notes, formula drafts, appendix notes, or files explicitly mentioned by the user

Extract:

  • target formula / theory goal
  • current formula chain
  • assumptions
  • notation
  • known blockers
  • desired output mode

Step 2: Freeze the Target

State explicitly:

  • what is being explained, derived, or supported
  • whether the immediate goal is:
    • identity / algebra
    • proposition
    • approximation
    • interpretation
  • what the derivation is expected to output in the end

Do not start symbolic manipulation before this is fixed.

Step 3: Choose the Invariant Object

Identify the single quantity or conceptual object that should organize the derivation.

Typical possibilities include:

  • objective / utility / loss
  • total cost / energy / welfare
  • conserved quantity / state variable
  • expected metric / effective rate / effective cost

If the current notes start from a narrower quantity, decide explicitly whether it is:

  • the true top-level object
  • a proxy
  • a local slice
  • an approximation

Do not let a convenient proxy silently replace the actual conceptual object.

Step 4: Normalize Assumptions and Notation

Restate:

  • all assumptions
  • all symbols
  • regime boundaries or special cases
  • which quantities are fixed, adaptive, or state dependent

Identify:

  • hidden assumptions
  • undefined notation
  • scope ambiguities
  • whether the current formula chain already mixes exact steps with approximations

Preserve the user's original notation unless a cleanup is necessary for coherence. If you adopt a cleaner internal formulation, keep that as a derivation device rather than silently replacing the user's target.

Step 5: Classify the Derivation Steps

For every nontrivial step, determine whether it is:

  • identity: exact algebraic reformulation
  • proposition: a claim requiring conditions
  • approximation: model simplification or surrogate
  • interpretation: prose-level meaning of a formula

Never merge these categories without signaling the transition. If one part is only interpretive, do not present it as if it were mathematically proved.

Step 6: Build a Derivation Map

Choose a derivation strategy, for example:

  • definition -> substitution -> simplification
  • primitive law -> intermediate variable -> target expression
  • global quantity -> perturbation -> decomposition
  • exact model -> approximation -> interpretable closed form
  • general dynamic object -> simplified slice -> local theorem -> return to general case

Then write a derivation map:

  • target formula or theory line
  • required intermediate identities or lemmas
  • which assumptions each nontrivial step uses
  • where approximations enter
  • where special-case and general-case regimes diverge or collapse

If the derivation needs a decomposition, derive it from the chosen global quantity. Do not make a split appear magically from one local variable itself.

Step 7: Write the Derivation Document

Write to the chosen target derivation file.

If the target derivation file already exists:

  • read it first
  • update the relevant section
  • do not blindly duplicate prior content

If the user does not specify a target, default to DERIVATION_PACKAGE.md in project root.

Do NOT write directly into paper sections or appendix .tex files unless the user explicitly asks for that target.

The derivation package must include:

  • target
  • status
  • invariant object
  • assumptions
  • notation
  • derivation strategy
  • derivation map
  • main derivation steps
  • remarks / interpretations
  • boundaries and non-claims

Writing rules:

  • do not hide gaps with words like "clearly", "obviously", or "similarly"
  • define every symbol before use
  • mark approximations explicitly
  • separate derivation body from remarks
  • if the true object is dynamic or state dependent but a simpler slice is analyzed, say so explicitly
  • if a formula line is only heuristic, label it honestly

Step 8: Final Verification

Before finishing the target derivation file, verify:

  • the target is explicit
  • the invariant object is stable across the derivation
  • every assumption used is stated
  • each formula step is correctly labeled as identity / proposition / approximation / interpretation
  • the derivation does not silently switch objects
  • special cases and general cases still belong to one theory line
  • boundaries and non-claims are stated

If the derivation still lacks a coherent object, stable assumptions, or an honest path from premises to result, downgrade the status and write a blocker report instead of forcing a clean story.

Required File Structure

Write the target derivation file using this structure:

md
# Derivation Package

## Target
[what is being derived or explained]

## Status
COHERENT AS STATED / COHERENT AFTER REFRAMING / NOT YET COHERENT

## Invariant Object
[top-level quantity organizing the derivation]

## Assumptions
- ...

## Notation
- ...

## Derivation Strategy
[chosen route and why]

## Derivation Map
1. Target depends on ...
2. Intermediate step A uses ...
3. Approximation enters at ...

## Main Derivation
Step 1. ...
Step 2. ...
...

## Remarks and Interpretation
- ...

## Boundaries and Non-Claims
- ...

## Open Risks
- ...

Output Modes

If the derivation is coherent as stated

Write the full structure above with a clean derivation package.

If the notes are close but not coherent yet

Write:

  • the exact mismatch
  • the corrected invariant object, assumption, or scope
  • the reframed derivation package

If the derivation cannot be made coherent honestly

Write:

  • Status: NOT YET COHERENT
  • the exact blocker:
    • missing object
    • unstable assumptions
    • notation conflict
    • unsupported approximation
    • theorem-level claim without enough conditions
  • what extra assumption, reframe, or intermediate derivation would be needed

Relationship to proof-writer

Use formula-derivation when the user says things like:

  • “我不知道怎么起这条推导主线”
  • “这个公式到底该从哪个量出发”
  • “帮我把理论搭顺”
  • “把说明文档变成可写进论文的公式文档”
  • “这几段公式之间逻辑不通”

Use proof-writer only after:

  • the exact claim is fixed
  • the assumptions are stable
  • the notation is settled
  • and the task is now to prove or refute that claim rigorously

Chat Response

After writing the target derivation file, respond briefly with:

  • status
  • whether the target survived unchanged or had to be reframed
  • what file was updated

Key Rules

  • Never fabricate a coherent derivation if the object, assumptions, or scope do not support one.
  • Prefer reframing the derivation over overclaiming.
  • Separate assumptions, identities, propositions, approximations, and interpretations.
  • Keep one invariant object across special and general cases whenever possible.
  • Treat simplified constant-parameter cases as analysis slices, not as the conceptual main object.
  • If uncertainty remains, mark it explicitly in Open Risks; do not hide it in polished prose.
  • Coherence matters more than elegance.

Frequently asked questions

What does the Formula Derivation AI skill do?

Structures and derives research formulas when the user wants to 推导公式, build a theory line, organize assumptions, turn scattered equations into a coherent derivation, or rewrite theory notes into a paper-ready formula document. Use when the derivation target is not yet fully fixed, the main object still needs to be chosen, or the user needs a coherent derivation package rather than a finished theorem proof.

Why use Formula Derivation on TypingMind?

Because you install it once and use it with any model. Formula Derivation is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Formula Derivation in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/wanshuiyin/Auto-claude-code-research-in-sleep/tree/main/skills/formula-derivation. TypingMind reads its SKILL.md and installs it as a skill you can enable per chat.

Which AI models can use Formula Derivation?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Formula Derivation?

As many as you like. As long as a model supports skills, you can use Formula Derivation with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Formula Derivation AI skill free?

Yes. It is published on GitHub by wanshuiyin under the MIT license. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇