Extract
alirezarezvani/claude-skills
Turn a proven pattern or debugging solution into a standalone reusable skill with SKILL.md, reference docs, and examples.
Extract reusable knowledge from the current session into a persistent skill.
$ npx skills add flonat/flonat-research --skill skill-extract -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install flonat/flonat-research skill-extract --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/flonat/flonat-research.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/skill-extract .claude/skills/skill-extract && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "skill-extract" agent skill from https://github.com/flonat/flonat-research/tree/main/skills/skill-extract into .claude/skills/skill-extract/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "skill-extract", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/flonat/flonat-research/tree/main/skills/skill-extractType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add flonat/flonat-research --skill skill-extract -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install flonat/flonat-research skill-extract --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/flonat/flonat-research.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/skill-extract .agents/skills/skill-extract && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "skill-extract" agent skill from https://github.com/flonat/flonat-research/tree/main/skills/skill-extract into .agents/skills/skill-extract/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "skill-extract", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add flonat/flonat-research --skill skill-extract -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install flonat/flonat-research skill-extract --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/flonat/flonat-research.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/skill-extract .cursor/skills/skill-extract && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "skill-extract" agent skill from https://github.com/flonat/flonat-research/tree/main/skills/skill-extract into .cursor/skills/skill-extract/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "skill-extract", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/flonat/flonat-research.git --path skills/skill-extract--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add flonat/flonat-research --skill skill-extract -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install flonat/flonat-research skill-extract --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/flonat/flonat-research.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/skill-extract .gemini/skills/skill-extract && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "skill-extract" agent skill from https://github.com/flonat/flonat-research/tree/main/skills/skill-extract into .gemini/skills/skill-extract/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "skill-extract", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install flonat/flonat-research skill-extractInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add flonat/flonat-research --skill skill-extract -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/flonat/flonat-research.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/skill-extract .github/skills/skill-extract && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "skill-extract" agent skill from https://github.com/flonat/flonat-research/tree/main/skills/skill-extract into .github/skills/skill-extract/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "skill-extract", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add flonat/flonat-research --skill skill-extract -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install flonat/flonat-research skill-extract --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/flonat/flonat-research.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/skill-extract .opencode/skills/skill-extract && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "skill-extract" agent skill from https://github.com/flonat/flonat-research/tree/main/skills/skill-extract into .opencode/skills/skill-extract/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "skill-extract", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
skill-extractExtract reusable knowledge from the current session into a persistent skill.
Skill Extract is an agent skill from flonat/flonat-research. Extract reusable knowledge from the current session into a persistent skill. Use when you discover something non-obvious, create a workaround, or develop a multi-step workflow that future sessions would benefit from.
Its SKILL.md is about 2.4k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including scripts (for example `scripts/validate_skill.py`).
The repository describes itself as: Shareable Claude Code + Codex infrastructure for PhD researchers — skills, agents, hooks, and rules for academic workflows. The licence is MIT.
6 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit da27600. It shows what the files ask for, not the result of running them.
Pre-approves these tools, so the agent can use them without asking each time:
ReadWriteEditGlobGrepBash(uv run python*)AskUserQuestionFrom allowed-tools in the SKILL.md frontmatter.
Ships 1 file in scripts/ (Python), which the agent can run.
Shell commands in SKILL.md call:
uvFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use uv, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Skill Extract loads about 2.4k tokens when it runs. Until then it costs about 58 tokens; SKILL.md has 977 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
The full file from flonat/flonat-research at commit da27600, republished under its MIT licence (© flonat). 977 words, ~2,369 tokens.
.claude/skills/skill-extract/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.Extract reusable workflows, workarounds, and multi-step procedures discovered during a session into persistent skills. Complementary to the learn-tags rule — while [LEARN] tags record one-liner corrections in MEMORY.md, skill-extract creates full skill definitions in skills/.
Before creating anything, answer these 4 self-assessment questions:
Decision rule: If at least 3 of 4 answers are "yes", proceed to Phase 2. Otherwise, suggest recording as a [LEARN] tag in MEMORY.md instead (simpler, lower overhead).
If borderline, ask the user:
"This seems useful but may not warrant a full skill. Should I create a skill or just add a [LEARN] tag to MEMORY.md?"
Run the skill-preflight analysis (see skills/skill-preflight/SKILL.md):
| Recommendation | Criteria | Action |
|---|---|---|
| PROCEED | <20% overlap, genuinely new | Continue to Phase 3 |
| EXTEND | 50%+ overlap with one existing | Modify existing skill instead — stop here |
| COMPOSE | Multiple artifacts cover 80%+ | Create wrapper or document workflow — stop here |
| ITERATE | 20-50% overlap, needs refinement | Ask the user to clarify differentiation, then re-evaluate |
| BLOCK | Would create duplication | Do not create — stop here |
skills/shared/skill-design-patterns.md — choose the structural pattern that fits:references/Before writing, make three decisions:
1. Choose the structural pattern (from Phase 2). State it explicitly:
"This is a [workflow/task/agent-delegation/reference]-based skill."
2. Identify resources needed:
scripts/ for deterministic operations?references/ for detailed specs, rubrics, or large examples?3. Draft the architecture — for non-trivial skills, sketch the flow:
Input → [Step A] → REVIEW GATE → [Step B] → OutputWrite skills/{name}/SKILL.md:
---
name: {kebab-case-name}
description: "{What it does. Concrete task types. Use when...}"
allowed-tools:
- {minimum set of tools needed}
---The body varies by pattern, but always includes these elements:
# {Skill Name}: {Short Description}
## When to Use
[Activation conditions — natural language triggers and /command]
## {Main Workflow / Processing Rules / Delegation Protocol}
[The core of the skill — structured per the chosen pattern]
## {Anti-Patterns / Never Do These}
[What NOT to do — agents default to generic without constraints]
## Output Format
[What the output looks like]
## Verification
[How to confirm it worked]Optional sections (add when relevant):
## Defaults — assumptions table to reduce friction## Examples — concrete before/after or good/bad snippets## Notes — edge cases, limitationsWhen the skill captures a fix, workaround, or debugging procedure, use this body structure:
# {Skill Name}: {Short Description}
## Problem
[Specific error message or symptom. Quote the exact text users would see.]
## Context / Triggers
[When this occurs — tool versions, file types, OS, configurations]
## Solution
[Step-by-step fix. Imperative form.]
## Verification
[How to confirm the fix worked]
## Example
[Concrete before/after or input/output]
## Notes
[Edge cases, alternative approaches, when this does NOT apply]The description: field in frontmatter is what triggers skill discovery. Write it to match how a user would describe their problem:
Package biblatex Error: File 'references.bib' not found"During skill creation, mentally verify each point before finalising:
references/)?references/.kebab-case, descriptive, 2-4 wordsfix-bug is bad; fix-overleaf-sync-conflict is goodFollow principle of least privilege:
| Skill type | Tools |
|---|---|
| Report-only | Read, Glob, Grep |
| File-creating | + Write, Edit |
| Shell-needing | + specific Bash(command*) patterns |
| Interactive | + the available structured-question mechanism |
| Delegating | + Task |
Run the validation script on the new skill:
uv run python skills/skill-extract/scripts/validate_skill.py skills/{name}Fix all errors. Address warnings to improve quality. Use --strict to promote warnings to errors.
The validator checks: frontmatter validity, name format and directory match, description quality, body length, broken links, referenced directories, and placeholder text.
config/ai-skill-contracts.yaml; never rely on a silent both default.config/public-ai-contracts.yaml as
distribution: exclude. Public inclusion is a separate, user-owned
whitelist decision: creating, approving, committing, syncing, or deploying
the skill is not approval to publish it. Change it to include only after
the user explicitly approves that named skill for the public distribution.docs/components/skills.md, including the overview, full catalogue,
and category subtotal, then run the inventory checker.uv run python scripts/ai_skill_contracts.py check
uv run python scripts/public_framework.py check
uv run python scripts/ai-infra-sync.py render
uv run python scripts/ai-infra-sync.py deploy --target all --if-changed
uv run python scripts/ai-infra-sync.py doctor --target allSKILL.md.[LEARN] tags — one-liner corrections still go in MEMORY.md via the learn-tags rule; skill-extract is for multi-step procedures, not one-liners© flonat, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 1 other file (scripts) in skills/skill-extract of flonat/flonat-research.
Open the folder on GitHubat commit da27600
Skill Extract next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Skill Extract this skillflonat/flonat-research | 145 | — | ~2.4k | Automated safety check: Pass | MIT | |
| Extractalirezarezvani/claude-skills | 28k | — | ~1.4k | Automated safety check: Pass | MIT | |
| Brand Extractnexu-io/open-design | 100k | — | ~3.1k | Automated safety check: Pass | Apache-2.0 | |
| Design Extractnexu-io/open-design | 100k | — | ~549 | Automated safety check: Pass | Apache-2.0 | |
| Swift Actor Persistenceaffaan-m/ECC | 275k | 4 repos | ~1.2k | Automated safety check: Pass | MIT | |
| Kg Extractruvnet/ruflo | 74k | — | ~751 | Automated safety check: Notes | MIT |
alirezarezvani/claude-skills
Turn a proven pattern or debugging solution into a standalone reusable skill with SKILL.md, reference docs, and examples.
nexu-io/open-design
Extract a complete Brand Kit from a live website by driving the in-app browser.
nexu-io/open-design
Extract design tokens (color / typography / spacing) from imported source code, screenshots, or Figma exports into the canonical token bag token-map consumes.
affaan-m/ECC
Thread-safe data persistence in Swift using actors — in-memory cache with file-backed storage, eliminating data races by design.
ruvnet/ruflo
Extract entities and relations from source files to build a knowledge graph
ruvnet/ruflo
Persist and restore agent sessions across conversations with state snapshots
flonat/flonat-research
Create a large-format academic poster in LaTeX using beamerposter, tikzposter, or baposter.
flonat/flonat-research
Create, revise, and evaluate reusable AI workflow skills, including trigger-quality tests.
flonat/flonat-research
Create, read, edit, or convert Microsoft Word documents while preserving professional document structure.
flonat/flonat-research
Read, create, combine, split, rotate, OCR, watermark, secure, or extract content from PDF files.
flonat/flonat-research
Create or migrate project-level agents, repeatable project workflows, and planning state from one client-neutral contract, then render repository-scoped adapters for both Claude Code and Codex.
flonat/flonat-research
Deliver a fast pre-commit safety scan: file size, anonymity (author / affiliation strings in tex/bib), hardcoded secrets, and invisible-Unicode carriers.
Extract reusable knowledge from the current session into a persistent skill. Skill Extract is an agent skill from flonat/flonat-research. Extract reusable knowledge from the current session into a persistent skill.
Skill Extract fits situations like: you discover something non-obvious; create a workaround; develop a multi-step workflow that future sessions would benefit from.
Run `npx skills add flonat/flonat-research --skill skill-extract -a claude-code`. Or copy the skill folder (skills/skill-extract in flonat/flonat-research) into .claude/skills/skill-extract in your project. Claude Code loads it when a task matches its description.
Run `npx skills add flonat/flonat-research --skill skill-extract -a codex`. Or copy the skill folder (skills/skill-extract in flonat/flonat-research) into .agents/skills/skill-extract in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add flonat/flonat-research --skill skill-extract -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/skill-extract, .gemini/skills/skill-extract, .github/skills/skill-extract and .opencode/skills/skill-extract in your project.
Going by SKILL.md and its folder, Skill Extract needs Python for the scripts in its folder and the command-line tools its instructions call (uv). Our summary lists: Python 3. Its frontmatter pre-approves these tools: Read, Write, Edit, Glob, Grep, Bash(uv run python*), AskUserQuestion.
SKILL.md contains no URLs. Its commands use uv, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Skill Extract is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.4k tokens (SKILL.md is roughly 9.5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Skill Extract: Extract (alirezarezvani/claude-skills, 28k stars), Brand Extract (nexu-io/open-design, 100k stars), Design Extract (nexu-io/open-design, 100k stars) and Swift Actor Persistence (affaan-m/ECC, 275k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
flonat (a GitHub user) maintains it in flonat/flonat-research, which has 145 GitHub stars. The repository holds 83 skills in this directory. The repository was last updated on September 29, 2026.
Source: flonat/flonat-research on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.