15 22 hours ago

Fine-tuned Gemma 4 E2B Q8 model for generating dense, production-ready `SKILL.md` files for autonomous AI agents

tools thinking
ollama run cmdmbox/skill-expert

Applications

Claude Code
Claude Code ollama launch claude --model cmdmbox/skill-expert
OpenClaw
OpenClaw ollama launch openclaw --model cmdmbox/skill-expert
Hermes Agent
Hermes Agent ollama launch hermes --model cmdmbox/skill-expert
Codex
Codex ollama launch codex --model cmdmbox/skill-expert
OpenCode
OpenCode ollama launch opencode --model cmdmbox/skill-expert

Models

View all →

Readme

Skill Expert

A fine-tuned Gemma 4 E2B (2.3B effective parameters, 5.1B total with embeddings) model for generating dense, “production-ready” SKILL.md files for autonomous AI agents.

It turns a plain task description into a structured skill file with YAML frontmatter, concise workflows, decision rules, guardrails, and output requirements.

No filler. No commentary. Just the skill file.


What it does

Give the model a capability or task:

ollama run cmdmbox/skill-expert --hidethinking "Create a skill for git operations"

It returns a complete SKILL.md file:

---
name: git-operations
description: Use this skill for all git operations including cloning, branching, committing, pushing, and merging.
---

# Git Operations

Use this skill for all git operations.

## Workflow

1.  **Check for existing repo**:
    - If `.git` exists: run `git status` to check for changes.
    - If clean: proceed to step 3.
    - If changes: ask user whether to stash, commit, or discard.
2.  **Clone if needed**:
    - If no repo exists: ask for repository URL.
    - Run `git clone <url> <dir>`
    - Run `cd <dir>`
3.  **Create branch**:
    - If no current branch: run `git checkout -b <branch-name>`
    - If branch already exists: run `git checkout <branch-name>`
4.  **Stage changes**:
    - Run `git add .`
    - Run `git status` to show staged files.
5.  **Commit**:
    - Run `git commit -m "Commit message"`
    - If no changes staged: run `git status` and ask user.
6.  **Push**:
    - Run `git push -u origin <branch-name>`
    - If remote exists: run `git pull origin <branch-name>` before pushing.
7.  **Status**:
    - Run `git status` to show current state.

## Decision Rules

- **First time setup**: Clone first, then create branch.
- **Existing repo**: Check for changes before committing.
- **No changes**: Skip commit/push, report status.
- **No remote**: Ask user if they want to set upstream.
- **Conflict**: Stop, ask user to resolve manually.

## Guardrails

- Never force push without user confirmation.
- Never delete branches without confirmation.
- Never run `git reset --hard` without explicit confirmation.
- Always run `git status` before making destructive changes.
- If unsure, ask the user before proceeding.

## Output Requirements

- After each major step, report what was done.
- Report any errors encountered.
- Report the current branch and commit status.
- After push, confirm success or failure.

Model details

Field Value
Base model unsloth/gemma-4-E2B-it
Parameters 2.3B effective (5.1B total with embeddings)
Fine-tuning QLoRA + SFT
Training objective Response-only loss
Runtime format GGUF
Quantization Q8_0
Temperature 0.15
Default context 8192 tokens
Primary use SKILL.md generation

Usage

Ollama CLI

ollama run cmdmbox/skill-expert --hidethinking "Create a skill for reviewing Python CLI tools"

Ollama API

curl http://localhost:11434/api/generate \
  -d '{
    "model": "cmdmbox/skill-expert",
    "prompt": "Create a skill for reviewing Python CLI tools",
    "stream": false
  }'

Python

import ollama

response = ollama.generate(
    model="cmdmbox/skill-expert",
    prompt="Create a skill for reviewing Python CLI tools",
)

print(response["response"])

Expected output contract

The model is optimized to output only the final SKILL.md content.

Every generated skill should start with YAML frontmatter containing exactly:

---
name: short-kebab-case-name
description: This skill should be used when ...
---

Then concise markdown sections such as:

# Workflow
# Decision Rules
# Guardrails
# Output Requirements
# Verification

The model is designed to avoid:

  • generic tutorials;
  • README-style explanations;
  • installation essays;
  • motivational filler;
  • source citations;
  • meta commentary;
  • multiple alternative versions.

Design philosophy

Context windows are expensive.

A useful skill should be compact, specific, and operational. It should tell an AI agent exactly what to do, when to do it, what to avoid, and how to verify the result.

The model follows this split:

Task type Preferred style
Creative or flexible task Plain text decision rules
Brittle or high-risk task Strict commands, guardrails, and verification
Agent workflow Imperative instructions
Output-sensitive task Explicit output contract

Training pipeline

The model was trained from real-world agent skill definitions.

Pipeline:

Markdown skill files
→ JSONL chat dataset
→ Gemma 4 QLoRA fine-tune
→ merged 16-bit model
→ GGUF Q8_0
→ Ollama

Training stack:

  • Unsloth
  • TRL SFTTrainer
  • QLoRA
  • response-only training
  • Google Colab T4 for fine-tuning
  • local conversion to GGUF

Limitations

  • This is a narrow specialist model, not a general chat assistant.
  • It is optimized for skill-file generation, especially SKILL.md artifacts.
  • Complex multi-domain skills may require a more specific prompt.
  • Generated shell commands should be reviewed before production use.
  • The model may inherit style patterns from the training skill corpus.

Example prompts

Create a skill for safe database migrations.
Create a skill for reviewing Python CLI tools. The skill should identify unsafe file operations, broken argument parsing, and missing error handling.
Create a skill for debugging flaky Playwright tests.
Create a skill for validating ETL table requirements before implementation.

License

Model weights derived from Google Gemma 4 (subject to Gemma Terms of Use). Training code and tooling in this repository: MIT.