Alchemy logo

Alchemy

Organization
l-gevity
alchemy

Runs a lightweight change preflight, then routes non-trivial design, refactor, and audit work through only the needed requirements and A.L.C.H.E.M.Y. skills. Explicitly trigger with `/alchemy`, `$alchemy`, or natural phrases such as "do some alchemy", "run alchemy on this", "use alchemy", or "give this an alchemy pass". Use for architecture, complexity, enforcement, shift-left, optimization, subsystems, increments (vertical slices), abstractions, cross-boundary refactors, consolidation, and over-engineering audits. Explicit invocation on a local bug fix, content or CSS edit, dependency bump, or trivial rename returns a cheap `SKIP` or `DIRECT` dispatch instead of loading every gate. Defines no new domain rules; routes to core sibling skills and task-matched companion skills.

Overview

Publisherl-gevity
Repositoryl-gevity-skills
Skill namealchemy
Stars
72
Forks
13
Bundled files
3
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.

  • 3 bundled files

    Scripts, templates, and references the model can read while it works. Files are read-only and never executed.

  • Open source

    Published by l-gevity on GitHub. Read the source before you install it.

Installation

Install the Alchemy 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.
    https://github.com/l-gevity/l-gevity-skills/tree/main/.agents/skills/alchemy
  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/l-gevity/l-gevity-skills.git /tmp/l-gevity-skills
mkdir -p .claude/skills
cp -r /tmp/l-gevity-skills/.agents/skills/alchemy .claude/skills/alchemy
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Alchemy 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 Alchemy 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 Alchemy 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.

Alchemy

Command entrypoint for the adaptive A.L.C.H.E.M.Y. gate system. Requirements qualification spans the Minimum gate without adding letters to the acronym. Keep the default response terse: resume from the latest trustworthy decision, route to the smallest useful stage set, state the verdict, and name the next action.

1. Command Grammar

Invoke as /alchemy <alias> <subject> in Claude Code or $alchemy <alias> <subject> in Codex; the alias is optional. Natural language is equivalent: do some alchemy, run alchemy on this, use alchemy, and give this an alchemy pass all request adaptive dispatch on the active subject.

The subject is the invocation arguments. Where commands expand arguments, $ARGUMENTS is that string; if it is empty or literally unexpanded, use the surrounding request text. A natural phrase with no explicit subject uses the active request or most recent unresolved task; never ask the user to restate context already in the conversation or worktree. ?, help, --help, or an empty command with no active subject returns only this table.

AliasRoute
noneRun the dispatch preflight; infer Design, Refactor, or Audit mode
auditStart at the read-only C₀ structural baseline; recover requirements only when intent is missing, stale, contradictory, or disputed
full, all, walk the gates, complete alchemyFULL: traverse every justified stage; record why any conditional stage is skipped
M, minimum, necessity, worthfunctionality-complexity-tradeoff — worth it?
A, architecture, first-principlesarchitecture-guidelines — sound design?
L, locality, placementmorphogenetic-architecture — where does it belong?
C, complexity, simplifystructural-simplification — simpler?
E, enforcement, architecture-as-codearchitecture-as-code, plus -javascript or -python only when rule files are written or changed — rules as code?
H, hermetic, shift-leftdefect-shift-left, plus ci-cd-reliability-architecture for pipeline reliability — catch earlier?
Y, yield, optimizesystem-optimization — optimize flow?
leftdefect-shift-left — detect defects earlier
out, push-outpush-out — move toil out of humans
down, bring-downbring-down — move bespoke code down
zero-copy, source-of-truthzero-copy-requirements
deps, dependencydependency-lifecycle
infra, infrastructureinfrastructure-fit
signal, observabilityobservability-design

left, out, and down form the DevOps improvement triad, outside the seven-gate sequence: run a triad move only when the user names it. During /alchemy Y, recommend out or down when the bottleneck is manual toil or bespoke implementation, but do not run them unless the user asks.

Dispatch Preflight

Classify before reading any sibling skill body. Make dispatch the first observable checkpoint: decide from the request, already-loaded context, skill metadata, and the latest trustworthy decision artifacts; do not scan the repository or open sibling bodies merely to choose a dispatch. After emitting the dispatch, inspect only the artifacts and skills the route selects.

DispatchSelect whenCore route
SKIPLocal behavior stays inside one governed boundary and asks no Alchemy question: copy/CSS, trivial rename, contract-preserving dependency bump, isolated in-boundary fixNone: load no gate skill; continue with matching companions and normal verification
DIRECTAn alias, or one unambiguous gate question: worth, dead code, speculative abstraction, or "should this exist?" is M; a defect found late, check placement, or CI detection timing is H or leftOnly that gate or triad skill
ADAPTIVEStructure, responsibility, data flow, abstraction, multiple requirements, or boundaries may changeThe smallest justified set: a structural refactor inside one boundary is M, C, plus A when responsibility or public contract changes and H when verification placement changes; a new subsystem/service/library, cross-boundary dependency, increment cut through every layer (vertical slice), consolidation, or an aspect added or changed across several subsystems (auth, audit, logging, retry, i18n) is qualification as needed, M, A, L, C, E, H; an existing-code over-engineering audit is Audit mode from C₀
FULLThe user explicitly says full, all, walk the gates, or complete alchemyEvery justified stage, every skip recorded

Do not run every gate by default: only explicit full language selects FULL, and Alchemy FULL is a traversal dispatch, not a gate's analysis mode. Do not convert uncertainty into FULL; select the smallest plausible route, state the uncertain signal, and stop at the first missing prerequisite.

Gate and triad aliases are authoritative: use only that core gate or triad move, even when the subject mentions subsystem boundaries, and expand the core route only for explicit full, all, audit, walk the gates, or complete alchemy. Focused aliases never silently run requirements qualification. If a focused gate lacks a prerequisite, report the missing decision artifact and stop at that gate unless the user asked for a broader pass. The prerequisites:

  • Gate E remains blocked until Gate 3 records final acceptance; a MOVE, SPLIT, MERGE, or INTRODUCE-BOUNDARY first runs the bounded L candidate → C measurement → L acceptance handshake, re-entering L once.
  • Gate E also waits for a passing readiness decision in a full pass.
  • Gate Y runs in iteration 2, the iteration after the increment ships, from its stable, measured baseline, unless the request is explicitly about an existing bottleneck.

ADAPTIVE, FULL, and audit read the route in §2 before selecting stages.

Companion Skill Routing

Alchemy owns the core qualification and gate route, not every task domain. From skill metadata and project instructions, select any non-Alchemy skill whose trigger independently matches the subject, and read only the selected companion bodies. A project profile may require companions for its domain, stack, UX, security, accessibility, API, release, or evidence rules; never hard-code project-specific companion names into this generic skill.

  • When the subject decides where a fact, decision, or document belongs — a proposed document, a decision record, an architecture note, a status page, or a documentation-tree audit — select zero-copy-requirements. It names the artifact that owns the question; push-out prunes prose already covered by an executable source, and requirements-traceability anchors evidence once the location exists. None of the three is a qualification stage, gate, or acronym letter.
  • When an advisory, drift, abandonment, license change, or end-of-life date names an owned dependency, select dependency-lifecycle; it classifies the bump, and only a contract-preserving bump is SKIP.
  • When a risk survives verification into production, or alerts or telemetry are under review, select observability-design.
  • When infrastructure is chosen, inherited, or questioned, select infrastructure-fit.
  • test-strategy and evolutionary-database-design are two-pass companions that bracket A/L/C/E; the route in §2 orders their passes.
  • SKIP skips only the Alchemy core; it never suppresses a matching companion. DIRECT keeps the core route focused while allowing independently triggered companions.
  • Report companions explicitly. Use None when no companion trigger matches.

Execution Strategy

Execution is a second decision after dispatch, never a fifth dispatch: it decides whether one agent or several carry out the selected route, and the user never names agents. SKIP and DIRECT run single-agent and never load orchestration. ADAPTIVE, FULL, and audit select multi-agent only when the work changes or audits code and at least two parts are independent — different subsystems, disjoint files, no ordering between them — or a high-risk change (security, public contract, persisted shape) needs a reviewer that did not write it. Count every agent: one writer and one independent reviewer is multi-agent. The number of gates or skills on the route is never a reason. Stay single-agent and say why when neither holds, when the project's alchemy-workspace.json sets execution.multi_agent to off, or when the runtime cannot launch agents. On multi-agent, load alchemy-orchestrate before the first stage that changes or audits code; it plans, launches, verifies, and gates the agents.

Change Primitives

Every stage describes change with four primitives: a Subsystem is where change lands, an Aspect is which dimension is touched, an Increment is what changes, and an Iteration admits, realizes, and measures one increment. Each sibling names its own term as a specialization of exactly one and never redefines them; references/change-primitives.md defines them and maps each sibling term. Decomposition and aspect extraction are different cuts: decomposition splits one subsystem into several; extraction pulls one aspect out of several subsystems into one mechanism. A design that models an aspect as a subsystem, or copies its mechanism per subsystem, has confused the two.


2. Adaptive Requirements Qualification

text
Requirements Grounding, when evidence or meaning is absent or stale
→ M — Minimum
→ Requirements Topology, when relationships are non-trivial
→ Implementation Readiness
→ A — Architecture → L → C → E → H → Y

Qualification stages are conditional and never become acronym letters. Before selecting stages for ADAPTIVE, FULL, or audit, read references/adaptive-route.md: routing rules, decision hand-offs, the gate table, the Gate 3–4 handshake, the two-pass companion order, core directives, the pre-flight checklist, and the retrospective order. SKIP and DIRECT never need it.

Read references/failure-modes.md when a run's result looks wrong, an audit shows a symptom, or a trail has an unexplained skip; route the recovery to the named stage instead of rerunning every gate.


3. Output Contract

Default output for a single-gate or simple routed request:

Dispatch:   <SKIP | DIRECT | ADAPTIVE | FULL>
Core route: <None | M | A | L | C | E | H | Y | left | out | down | ordered set>
Companions: <None | task-matched skills>
Execution:  <single-agent | multi-agent> — <independence or risk fact>
Verdict:    Proceed | Redesign | Drop | Defer
Reason:     <one or two lines>
Next:       <one concrete action>

For SKIP, emit this compact output alone with Core route: None; do not load a core sibling merely to justify the skip.

Multi-stage runs, non-trivial design/refactor passes, audits, and explicit requests for detail emit one combined decision trail in execution order, including every stage used and every conditional stage skipped:

StageSkillDecisionEvidence / hand-offFiles/checksNext action or skip rationale

Then state:

Scope:          <subsystem / service / refactor / PR>
Mode:           Design | Refactor | Audit
Dispatch:       SKIP | DIRECT | ADAPTIVE | FULL
Companions:     <None | task-matched skills>
Execution:      single-agent | multi-agent
Blocking stage: <first non-passing qualification decision or gate, or None>
Decision:       Proceed | Redesign | Drop | Defer
Verification:   <commands, lint rules, tests, or Not run + reason>

Lead any run that reaches a verdict with the four report blocks the root instruction file defines, What I found, Why it matters, Do this first, and What I did not check, then emit the records unchanged: the trail and scope block, then each stage that ran in execution order, with the decision record its skill's output contract defines. The trail summarizes stages; it never replaces a stage's record. When implementing changes, add the normal coding summary after the verdict.

4. Discipline

  • Skipped stages require a one-line rationale. A skip without one is a defect and an over-engineering risk for the next audit.
  • Natural language stays adaptive. "Do some alchemy" never means FULL without explicit full-traversal language.
  • Load each stage when the route reaches it. Read a stage's or companion pass's SKILL.md only once every stage before it has passed, never ahead. A blocking decision in the route's hand-off table ends the route for that candidate: the stages after it stay unloaded and appear in the trail as Not run with that decision as the reason. Only candidates with a passing decision continue.
  • Claim only what ran. Core route and the trail name a stage's decision only when its SKILL.md was read in this task; a selected stage that did not run appears in the trail as Not run with the reason.
  • When a gate is consistently skipped across tasks, that's a signal for continuous-improvement to update THIS skill — not paper over with case-by-case reminders.

Bundled files

The model reads these on demand while the skill is loaded. They are exposed as readable files and are never executed.

Frequently asked questions

What does the Alchemy AI skill do?

Runs a lightweight change preflight, then routes non-trivial design, refactor, and audit work through only the needed requirements and A.L.C.H.E.M.Y. skills. Explicitly trigger with `/alchemy`, `$alchemy`, or natural phrases such as "do some alchemy", "run alchemy on this", "use alchemy", or "give this an alchemy pass". Use for architecture, complexity, enforcement, shift-left, optimization, subsystems, increments (vertical slices), abstractions, cross-boundary refactors, consolidation, and over-engineering audits. Explicit invocation on a local bug fix, content or CSS edit, dependency bump...

Why use Alchemy on TypingMind?

Because you install it once and use it with any model. Alchemy 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 Alchemy in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/l-gevity/l-gevity-skills/tree/main/.agents/skills/alchemy. TypingMind reads its SKILL.md and bundles its files and installs it as a skill you can enable per chat.

Which AI models can use Alchemy?

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 Alchemy?

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

Is the Alchemy AI skill free?

Yes. It is published on GitHub by l-gevity 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 👇