Skill Forge logo

Skill Forge

Community
techygarg
skill-forge

Create a new Lattice skill — atom, molecule, or refiner — following all framework conventions. Writing skill files manually almost always produces convention violations: wrong section order, missing confirmation gates, defaults.md without the right structure. This skill knows all of that and guides you through it. Use whenever adding any new atom, molecule, or refiner to Lattice, or when the user says 'create a new skill', 'add an atom', 'add a molecule', 'add a refiner', 'build X for Lattice', 'new lattice skill', or 'skill forge'. Does not validate, align docs, or deploy — those are separate skills you run after.

Overview

Publishertechygarg
Repositorylattice
Skill nameskill-forge
Stars
208
Forks
16
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 techygarg on GitHub. Read the source before you install it.

Installation

Install the Skill Forge 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/techygarg/lattice/tree/main/dev-skills/skill-forge
  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/techygarg/lattice.git /tmp/lattice
mkdir -p .claude/skills
cp -r /tmp/lattice/dev-skills/skill-forge .claude/skills/skill-forge
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Skill Forge 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 Skill Forge 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 Skill Forge 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.

Lattice Skill Forge

Core responsibility: Create the right files with the right structure for a new Lattice skill.

Input: A description of what the skill should do and when it should trigger.

Output: One or more skill files written to the correct path:

  • Atom → source/atoms/{name}/SKILL.md + source/atoms/{name}/references/defaults.md
  • Molecule → source/molecules/{name}/SKILL.md
  • Refiner → source/refiners/{name}/SKILL.md + source/refiners/{name}/assets/template.md

How to verify this skill did its job:

  • All required files exist at the correct paths
  • Folder name matches name: frontmatter exactly
  • All tier-required sections are present in correct order
  • No placeholder content — all sections contain real, specific content

Step 1: Understand intent and select tier

Ask the user: "What should this skill do, and when should it trigger? Describe it briefly."

From the description, determine the tier:

The skill...Tier
Enforces ONE principle with a checklist and anti-pattern scanAtom
Orchestrates multiple atoms into a multi-step workflowMolecule
Runs a guided interview to produce a .lattice/standards/*.md fileRefiner

State your read and confirm with the user. Get explicit tier agreement before proceeding.


Step 2: Requirements alignment (molecules and refiners only)

Before writing a single line of SKILL.md, agree on the design.

Check knowledge-base/ for an existing requirements doc:

bash
ls knowledge-base/ | grep -i {name}

If found → read it, summarise key design decisions, confirm they still reflect intent.

If not found → resolve these questions through conversation before writing:

For a molecule:

  • Which atoms does it compose? (Read source/atoms/ to see what exists.)
  • Is it generative (produces code/artifacts, linear flow) or planning/interactive (produces living documents, confirmation gates at each phase)?
  • What does it write to .lattice/? Which subfolder? (Must be a named subfolder, never the root.)
  • What is the session resume behavior — how does it handle an interrupted session?

For a refiner:

  • Which atom does it configure? (A refiner must have an atom that reads its output.)
  • What paths.{snake_case_key} config key does it add to .lattice/config.yaml?
  • What sections does the interview template cover?
  • Overlay/override — which is the default mode?

Write a one-paragraph design summary and confirm with the user.

Do NOT write SKILL.md until design is confirmed.


Step 3: Read current conventions

Read PROJECT.md — the Skill Conventions section. Always read it fresh; never rely on memory.

Note the current skill counts (atoms/molecules/refiners) — they will need updating in PROJECT.md after creation, but that is skill-align's job.


Step 4: Write the skill files

Writing an Atom

source/atoms/{name}/SKILL.md — sections in this exact order:

  1. YAML frontmatter — name (lowercase-hyphenated), description (include trigger phrases)
  2. Config Resolution — always this pattern:
    • Check .lattice/config.yaml for paths.{config_key}
    • If found: read doc, check mode: overlay (merge with defaults) or mode: override (replace)
    • If not found: read ./references/defaults.md
  3. Self-Validation Checklist — numbered items, bold label, imperative STOP language, clear pass/fail condition and fix per item
  4. Active Anti-Pattern Scan — checkbox format (- [ ] **Name**: what it looks like → fix), minimum 5 items
  5. Ambiguity Signals — genuine gray areas where two valid approaches exist; resolution guidance for each
  6. Core Principle — what the atom governs, what it does NOT govern (boundary with other atoms)

source/atoms/{name}/references/defaults.md — the embedded defaults:

  • Numbered sections (§1, §2...) matching what a future refiner would produce
  • Opinionated, specific content — not placeholders
  • End with an attribution line

Writing a Molecule

source/molecules/{name}/SKILL.md:

  1. YAML frontmatter — name, description with trigger phrases
  2. Required Skills — list every atom as framework:{name} with always/conditional qualifier
  3. Mode Detection (if the molecule has modes) — how modes are invoked, what each changes
  4. <!-- include: additional-instructions --> on its own line directly before Workflow (workflow molecules; skip setup molecules like lattice-init) — tools/install.sh expands it from source/shared/additional-instructions.md. Never write the section inline.
  5. Workflow — numbered steps with clear inputs and outputs per step

Generative molecule conventions (code-forge, bug-fix, refactor-safely pattern):

  • Linear numbered steps, no confirmation gates
  • Pause only on genuine judgment calls via framework:collaborative-judgment
  • No session resume check needed

Planning/interactive molecule conventions (design-blueprint, requirement-forge pattern):

  • Step 1 MUST check for an existing output document. If found: read it, determine earliest incomplete step, resume from there
  • Every phase MUST have three things: (1) present the output, (2) ask a specific targeted question, (3) hard gate: "Do NOT advance to Step N until the user explicitly confirms."
  • Can exit early — partial output is a valid outcome
  • Always writes to a named .lattice/{subfolder}/ — never to .lattice/ root

Writing a Refiner

source/refiners/{name}/SKILL.md — cover all of these:

  • What it produces (output path, two modes, config key, which atom reads it)
  • Scope clarification (what this refiner does NOT configure)
  • Check for existing doc before starting interview
  • Mode selection conversation (overlay vs override, when to use each)
  • Facilitation approach (one section at a time, defaults-first, record decisions not discussion)
  • Section-by-section guide (reference ./assets/template.md and its Interview Guidance comments)
  • Output assembly rules (overlay: only changed sections; override: all sections)
  • Config update instructions (write paths.{key} to .lattice/config.yaml)
  • Document quality checks (one checklist per mode)

source/refiners/{name}/assets/template.md:

  • Full document structure with <!-- INTERVIEW GUIDANCE: --> comments per section
  • Each guidance block contains: default content, what to ask, probing questions, what is customisable vs. fixed
  • Overlay preamble and override preamble (separate blocks, clearly labeled)
  • Footer with project/date/mode placeholders
  • INTERVIEW GUIDANCE comments are stripped from the final produced document

Step 5: Confirm files are complete

Before finishing, verify:

  • All required files exist at the correct paths
  • Folder name = name: frontmatter field (exactly, character by character)
  • description: contains trigger phrases — what a user would actually type to invoke this
  • All tier-specific sections are present in the correct order
  • For atoms: defaults.md exists and has §-numbered sections with real content
  • For refiners: template.md exists with Interview Guidance comments in every section
  • For planning molecules: every phase has the three-part confirmation gate pattern
  • No section contains placeholder text ("TBD", "TODO", "add content here")

Report what was created and where. Do not run validation, sync, or deploy — those are separate steps.

Frequently asked questions

What does the Skill Forge AI skill do?

Create a new Lattice skill — atom, molecule, or refiner — following all framework conventions. Writing skill files manually almost always produces convention violations: wrong section order, missing confirmation gates, defaults.md without the right structure. This skill knows all of that and guides you through it. Use whenever adding any new atom, molecule, or refiner to Lattice, or when the user says 'create a new skill', 'add an atom', 'add a molecule', 'add a refiner', 'build X for Lattice', 'new lattice skill', or 'skill forge'. Does not validate, align docs, or deploy — those are separ...

Why use Skill Forge on TypingMind?

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

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/techygarg/lattice/tree/main/dev-skills/skill-forge. TypingMind reads its SKILL.md and installs it as a skill you can enable per chat.

Which AI models can use Skill Forge?

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 Skill Forge?

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

Is the Skill Forge AI skill free?

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