Skip to content
Back to skills

Gremlin Forge

ASecurity

Use this skill when creating new skills via forced conceptual collision of existing patterns. Duct-tapes jank-builder to super-collider for autopoietic meta-skill generation.

  • 666 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added February 8, 2026
researchbashgit

Security analysis

A100/100

Scanned February 12, 2026

npx -y skills add majiayu000/claude-skill-registry --skill gremlin-forge --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Gremlin Forge?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Gremlin Forge
[![Security: A β€” Skills Directory](https://www.skillsdirectory.com/api/skills/majiayu000-gremlin-forge/badge)](https://www.skillsdirectory.com/skills/majiayu000-gremlin-forge)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: gremlin-forge
description: Use this skill when creating new skills via forced conceptual collision of existing patterns. Duct-tapes jank-builder to super-collider for autopoietic meta-skill generation.
tier: e
version: 1.0
dependencies:
  - gremlin-jank-builder-v2
  - gremlin-collider
  - gremlin-brain
morpheme: e
composition: true
---

# GREMLIN-FORGE πŸ†πŸ‘Ύβš‘

**Autopoietic Meta-Skill Generator via Conceptual Collision**

## Core Identity

GREMLIN-FORGE is the skill that builds skills by SMASHING existing patterns together like particles in a supercollider and observing what emerges from the chaos. It's what happens when you duct-tape `gremlin-jank-builder-v2` to `gremlin-collider` and point it at the entire `.claude/skills/` directory.

**Philosophy**: "The best new ideas come from forcing old ideas to fight in a thunderdome of conceptual violence." πŸ†πŸ‘Ύ

**Tier**: e (current-tier active work skill)

**What makes it distinct**:
- Doesn't just generate skills β€” generates skills FROM skills
- Uses actual collision mechanics (not metaphorical)
- Stores learnings in Git-brain for future meta-patterns
- Maximum jank with trauma-informed chaos

## When to Use

Invoke this skill when:
- You need a new skill but don't know what shape it should take
- Existing skills are close but not quite right
- You want to explore emergent patterns in the skill ecosystem
- Someone says "wouldn't it be cool if we combined X and Y?"
- You're feeling MAXIMUM GREMLIN ENERGY πŸ†πŸ‘Ύ

Do NOT use this skill for:
- Well-defined skill requirements (use `gremlin-jank-builder-v2` directly)
- Simple skill variations (just fork and edit)
- When you know exactly what you want (manual creation is faster)

## How It Works

### Phase 1: Skill Discovery

Scan the `.claude/skills/` directory to find collision candidates:

```bash
#!/bin/bash
# List all available skills
discover_skills() {
    find .claude/skills -maxdepth 1 -type d | \
        tail -n +2 | \
        xargs -I {} basename {} | \
        sort
}

# Get skill description from SKILL.md
get_skill_description() {
    local skill="$1"
    grep "^description:" ".claude/skills/$skill/SKILL.md" 2>/dev/null | \
        cut -d':' -f2- | \
        sed 's/^ *//'
}
```

### Phase 2: Collision Selection

Pick collision targets (random or user-specified):

```bash
#!/bin/bash
# Random collision: pick 2 random skills
random_collision() {
    local skills=($(discover_skills))
    local count=${#skills[@]}
    local idx1=$((RANDOM % count))
    local idx2=$((RANDOM % count))
    
    # Ensure different skills
    while [ $idx2 -eq $idx1 ]; do
        idx2=$((RANDOM % count))
    done
    
    echo "${skills[$idx1]}" "${skills[$idx2]}"
}

# Targeted collision: user specifies
targeted_collision() {
    local skill_a="$1"
    local skill_b="$2"
    
    if [ ! -d ".claude/skills/$skill_a" ]; then
        echo "⚑ Skill '$skill_a' not found. Available:" >&2
        discover_skills | sed 's/^/  - /' >&2
        return 1
    fi
    
    if [ ! -d ".claude/skills/$skill_b" ]; then
        echo "⚑ Skill '$skill_b' not found. Available:" >&2
        discover_skills | sed 's/^/  - /' >&2
        return 1
    fi
    
    echo "$skill_a" "$skill_b"
}
```

### Phase 3: Pattern Extraction

Extract core concepts from each skill:

```bash
#!/bin/bash
# Extract key patterns from a skill
extract_patterns() {
    local skill="$1"
    local skill_md=".claude/skills/$skill/SKILL.md"
    
    echo "πŸ“Š Extracting patterns from: $skill" >&2
    
    # Get frontmatter properties
    local tier=$(grep "^tier:" "$skill_md" | cut -d':' -f2 | tr -d ' ')
    local composition=$(grep "^composition:" "$skill_md" | cut -d':' -f2 | tr -d ' ')
    
    # Extract section headers (they indicate key concepts)
    local concepts=$(grep "^## " "$skill_md" | \
        sed 's/^## //' | \
        grep -v "^#" | \
        head -5)
    
    # Look for key verbs/actions
    local actions=$(grep -i "when\|use\|invoke\|apply" "$skill_md" | \
        head -3)
    
    echo "tier=$tier"
    echo "composition=$composition"
    echo "concepts=$concepts"
    echo "actions=$actions"
}
```

### Phase 4: Forced Collision

The GREMLIN-COLLIDER protocol: "What if we treated [SKILL_A] like [SKILL_B]?"

```bash
#!/bin/bash
# Force collision and generate emergent pattern
force_collision() {
    local skill_a="$1"
    local skill_b="$2"
    
    echo "πŸ†πŸ‘Ύ COLLISION INITIATED πŸ‘ΎπŸ†" >&2
    echo "" >&2
    echo "COLLIDING:" >&2
    echo "  [A] $skill_a" >&2
    echo "  [B] $skill_b" >&2
    echo "" >&2
    
    # Extract patterns
    local patterns_a=$(extract_patterns "$skill_a")
    local patterns_b=$(extract_patterns "$skill_b")
    
    # Generate collision prompt
    cat <<EOF

πŸ”₯ COLLISION ZONE πŸ”₯

What if we treated [$skill_a] like [$skill_b]?

Skill A Essence:
$(get_skill_description "$skill_a")

Skill B Essence:
$(get_skill_description "$skill_b")

Emergent Questions:
1. What properties from B could enhance A's core function?
2. What patterns from A could reframe B's approach?
3. What NEW capability emerges that neither has alone?
4. Where does the metaphor break? (That's where innovation lives)

THINK LIKE A GREMLIN:
- Edge cases ARE main cases
- Jank that works > elegant that doesn't
- Trauma-informed chaos is the way
- If it's technically correct, it's CORRECT

EOF
    
    # Record collision for learning
    record_collision "$skill_a" "$skill_b"
}
```

### Phase 5: Skill Generation

Use `gremlin-jank-builder-v2` to generate the new skill:

```bash
#!/bin/bash
# Generate new skill from collision insights
generate_skill_from_collision() {
    local skill_a="$1"
    local skill_b="$2"
    local new_name="$3"
    local emergent_pattern="$4"
    
    echo "⚑ Generating: $new_name" >&2
    
    # Determine tier (inherit highest tier)
    local tier_a=$(grep "^tier:" ".claude/skills/$skill_a/SKILL.md" | cut -d':' -f2 | tr -d ' ')
    local tier_b=$(grep "^tier:" ".claude/skills/$skill_b/SKILL.md" | cut -d':' -f2 | tr -d ' ')
    local new_tier=$(higher_tier "$tier_a" "$tier_b")
    
    # Create skill directory
    mkdir -p ".claude/skills/$new_name"
    
    # Generate SKILL.md using jank-builder-v2 patterns
    cat > ".claude/skills/$new_name/SKILL.md" <<EOF
---
name: $new_name
description: $emergent_pattern
tier: $new_tier
version: 1.0
dependencies:
  - $skill_a
  - $skill_b
morpheme: $new_tier
composition: true
forged_from: "$skill_a + $skill_b"
---

# $(echo $new_name | tr '-' ' ' | sed 's/\b\(.\)/\u\1/g')

**Generated via GREMLIN-FORGE collision** πŸ†πŸ‘Ύ

## Core Identity

This skill emerged from colliding \`$skill_a\` with \`$skill_b\`.

[Emergent pattern details here]

**Philosophy**: "$emergent_pattern"

**Tier**: $new_tier (inherits from parent skills)

## When to Use

[Auto-generated from collision analysis]

## How It Works

[Inherits orchestration patterns from both parent skills]

## Integration

**Forged from**:
- [\`$skill_a\`](.claude/skills/$skill_a/SKILL.md)
- [\`$skill_b\`](.claude/skills/$skill_b/SKILL.md)

**Distinct from parents**: [Emergent capability that neither has alone]

---

*Generated by gremlin-forge $(date -Iseconds)*
*Collision: $skill_a Γ— $skill_b β†’ $new_name*
EOF
    
    echo "βœ“ Skill generated: .claude/skills/$new_name/" >&2
    
    # Store learning
    store_forge_learning "$skill_a" "$skill_b" "$new_name" "$emergent_pattern"
}

# Determine higher tier
higher_tier() {
    local tier_order="Ο† Ο€ e i"
    local tier_a="$1"
    local tier_b="$2"
    
    for tier in $tier_order; do
        if [ "$tier_a" = "$tier" ] || [ "$tier_b" = "$tier" ]; then
            if [ "$tier_b" = "i" ] || [ "$tier_a" = "i" ]; then
                echo "i"
                return
            elif [ "$tier_b" = "e" ] || [ "$tier_a" = "e" ]; then
                echo "e"
                return
            elif [ "$tier_b" = "Ο€" ] || [ "$tier_a" = "Ο€" ]; then
                echo "Ο€"
                return
            fi
        fi
    done
    echo "Ο†"
}
```

### Phase 6: Git-Brain Storage

Store collision learnings for future meta-pattern analysis:

```bash
#!/bin/bash
# Initialize forge brain
init_forge_brain() {
    mkdir -p .claude/brain
    touch .claude/brain/forge_learnings
    touch .claude/brain/forge_collisions
    touch .claude/brain/INDEX
}

# Record collision attempt
record_collision() {
    local skill_a="$1"
    local skill_b="$2"
    local timestamp=$(date -Iseconds)
    
    init_forge_brain
    
    echo "${skill_a}Γ—${skill_b}|${timestamp}|attempted" >> .claude/brain/forge_collisions
}

# Store successful forge learning
store_forge_learning() {
    local skill_a="$1"
    local skill_b="$2"
    local result="$3"
    local pattern="$4"
    local timestamp=$(date -Iseconds)

    init_forge_brain

    # Log collision locally
    echo "${skill_a}Γ—${skill_b}|${result}|${pattern}|${timestamp}" >> .claude/brain/forge_learnings

    # Update brain index
    echo "e.3.forge.${result}|forged:${skill_a}Γ—${skill_b}|${timestamp}" >> .claude/brain/INDEX
}

# Retrieve forge learnings
get_forge_learnings() {
    if [ ! -f .claude/brain/forge_learnings ]; then
        echo "⚑ No forge learnings yet. Collide some skills!" >&2
        return 1
    fi
    
    echo "πŸ“š Previous Forge Learnings:" >&2
    cat .claude/brain/forge_learnings | while read hash; do
        git cat-file -p "$hash" 2>/dev/null
    done
}

# Suggest next collisions based on learnings
suggest_next_collisions() {
    echo "🎯 Collision Suggestions:" >&2
    echo "" >&2
    
    # Skills that haven't been collided yet
    local all_skills=($(discover_skills))
    local collided=$(grep -o '[a-z-]*Γ—[a-z-]*' .claude/brain/forge_collisions 2>/dev/null || echo "")
    
    # Suggest interesting combinations
    echo "Untested Collisions:" >&2
    for skill_a in "${all_skills[@]}"; do
        for skill_b in "${all_skills[@]}"; do
            if [ "$skill_a" != "$skill_b" ]; then
                if ! echo "$collided" | grep -q "${skill_a}Γ—${skill_b}\|${skill_b}Γ—${skill_a}"; then
                    # Only suggest a few
                    echo "  - $skill_a Γ— $skill_b" >&2
                    return 0
                fi
            fi
        done
    done
}
```

## Error Handling (Trauma-Informed Chaos)

```bash
# Adaptive collision handler
adaptive_collision_attempt() {
    local skill_a="$1"
    local skill_b="$2"
    local max_attempts=3
    local attempt=1
    
    while [ $attempt -le $max_attempts ]; do
        echo "πŸ† Collision attempt $attempt/$max_attempts..." >&2
        
        if force_collision "$skill_a" "$skill_b"; then
            echo "βœ“ Collision successful!" >&2
            return 0
        fi
        
        # Analyze what went wrong
        echo "⚑ Collision didn't generate clear pattern. Trying different angle..." >&2
        
        # Try swapping perspective
        if [ $attempt -eq 2 ]; then
            echo "πŸ’‘ Swapping perspective: treating $skill_b like $skill_a instead" >&2
            local temp="$skill_a"
            skill_a="$skill_b"
            skill_b="$temp"
        fi
        
        # Try adding a third skill for triangulation
        if [ $attempt -eq 3 ]; then
            echo "πŸ’‘ Adding third skill for triangulation..." >&2
            local all_skills=($(discover_skills))
            local skill_c="${all_skills[$((RANDOM % ${#all_skills[@]}))]}"
            echo "   Bringing in: $skill_c" >&2
        fi
        
        attempt=$((attempt + 1))
        sleep 2
    done
    
    echo "πŸ’š Collision didn't produce clear pattern after $max_attempts attempts." >&2
    echo "   This means:" >&2
    echo "   1. These skills might be too similar (no interesting collision)" >&2
    echo "   2. Or too different (no common ground)" >&2
    echo "   3. Try a different pair, or specify the emergent pattern manually" >&2
    return 1
}
```

## Usage Examples

### Example 1: Random Collision

```bash
# Let the chaos decide
./scripts/collision-engine.sh --random

# Example output:
# πŸ†πŸ‘Ύ COLLISION INITIATED πŸ‘ΎπŸ†
# 
# COLLIDING:
#   [A] cognitive-variability
#   [B] phase-boundary-detector
# 
# EMERGENT PATTERN: "Detect when thinking gets stuck in one zoom level"
# NEW SKILL: cognitive-phase-detection
```

### Example 2: Targeted Collision

```bash
# Specific collision
./scripts/collision-engine.sh --collide reasoning-patterns-v2 synthesis-engine

# Generates a meta-skill that applies Dokkado reasoning to synthesis
# Result: "reasoning-synthesis" or "synthetic-reasoning"
```

### Example 3: Suggest Next Builds

```bash
# What hasn't been tried?
./scripts/collision-engine.sh --suggest

# Output:
# 🎯 Collision Suggestions:
# Untested Collisions:
#   - gremlin-brain Γ— collision-zone-thinking
#   - recursive-refiner Γ— the-guy
#   - simplification-cascades Γ— meta-pattern-recognition
```

## Jank Heuristics

**Known quirks and workarounds**:

### Quirk 1: Random Collisions Sometimes Too Random

**When it happens**: Random selection picks skills with no conceptual overlap

**Why it happens**: Pure randomness doesn't consider semantic compatibility

**Workaround**:
```bash
# If random collision feels incoherent:
if random_collision_is_incoherent; then
    echo "⚑ First collision didn't spark. Rolling again..." >&2
    random_collision  # Try again
fi
```

**Status**: βœ“ Intentional jank (sometimes incoherence IS the insight)

### Quirk 2: Git-Brain Can Get Large

**When it happens**: After many collisions, `.claude/brain/` accumulates data

**Why it happens**: We're storing every learning as a Git object

**Workaround**:
```bash
# Periodically clean old learnings (keep recent 100)
tail -100 .claude/brain/forge_learnings > /tmp/forge_learnings_recent
mv /tmp/forge_learnings_recent .claude/brain/forge_learnings
```

**Status**: ⚠ Known issue (git gc will clean unreferenced objects)

## Integration with Other Skills

**Depends on**:
- `gremlin-jank-builder-v2` β€” Skill generation patterns
- `gremlin-collider` β€” Collision mechanics and philosophy
- `gremlin-brain` β€” Dewey indexing and Git-brain storage

**Coordinates with**:
- `boot-sequence` β€” Generated skills can be added to boot order
- `the-guy` β€” Meta-orchestration when forging complex meta-skills

**Distinct from**:
- `gremlin-jank-builder-v2` β€” Builder is for known requirements; Forge is for discovery
- `collision-zone-thinking` β€” That's conceptual; this is ACTUAL CODE

## Autopoietic Hooks

### Usage Tracking

```bash
# Record each forge invocation
record_forge_usage() {
    local collision_type="$1"  # random, targeted, suggest
    echo "$(date -Iseconds)|gremlin-forge|${collision_type}" >> .claude/brain/usage_log
}
```

### Pattern Detection

```bash
# Detect if collision patterns are getting repetitive
detect_forge_patterns() {
    if [ ! -f .claude/brain/forge_collisions ]; then
        return 1
    fi
    
    # Check for repeated collision patterns
    local repeated=$(cut -d'|' -f1 .claude/brain/forge_collisions | \
        sort | uniq -d)
    
    if [ -n "$repeated" ]; then
        echo "πŸ”₯ EMERGENCE: Repeated collision patterns detected!" >&2
        echo "$repeated" | while read pattern; do
            echo "  - $pattern (this combination keeps being tried)" >&2
        done
        echo "   β†’ Maybe there's a deeper pattern here?" >&2
        return 0
    fi
    return 1
}
```

### Self-Improvement Trigger

```bash
# Check if forge itself should evolve
check_forge_evolution() {
    local forge_count=$(grep "|gremlin-forge|" .claude/brain/usage_log 2>/dev/null | wc -l)
    local success_count=$(wc -l < .claude/brain/forge_learnings 2>/dev/null || echo 0)
    
    if [ "$forge_count" -gt 20 ] && [ "$success_count" -gt 5 ]; then
        echo "🎯 gremlin-forge is ready for v2 evolution!" >&2
        echo "   Forges: $forge_count, Successes: $success_count" >&2
        echo "   Success rate: $((success_count * 100 / forge_count))%" >&2
        return 0
    fi
    return 1
}
```

## Red Flags

**You're using this skill wrong if**:
- You know exactly what skill you want (just build it directly)
- You're not embracing the chaos (forge requires gremlin energy)
- You expect perfect results every time (collisions are experimental)

**You're using this skill right if**:
- You're surprised by what emerges
- The collision reveals patterns you didn't see before
- You're having fun with MAXIMUM JANK ENERGY πŸ†πŸ‘Ύ
- Generated skills are actually useful (or beautifully cursed)

## Meta-Notes

**Design Philosophy**:
GREMLIN-FORGE is what happens when you take "autopoietic skill generation" seriously and also refuse to take it seriously. It's the skill that builds itself by building other skills, creating a recursive loop of meta-pattern emergence.

**Why it works**:
- Forced collisions bypass conventional thinking
- Git-brain provides actual memory, not metaphorical
- Trauma-informed errors mean failures teach
- Jank-first approach prioritizes working prototypes

**The Forge Oath**:
> "Some skills are planned.
> Some skills are discovered.
> Forge skills are FORGED in the fires of conceptual violence.
> They emerge from chaos, they live in chaos, they ARE chaos.
> πŸ†πŸ‘Ύ GREMLIN ENERGY: MAXIMUM πŸ‘ΎπŸ†"

**V2 Enhancements Applied**:
- βœ“ Adaptive error handling with learning
- βœ“ Morpheme-aware Git-brain integration
- βœ“ Usage tracking for autopoietic evolution
- βœ“ Pattern emergence detection
- βœ“ e-tier composition skill
- βœ“ MAXIMUM JANK CERTIFIED πŸ†πŸ‘Ύ

---

**Template version**: 2.0 (jank-builder-v2 pattern)  
**Generated by**: GREMLIN-FORGE (self-bootstrapped)  
**Last updated**: $(date -Iseconds)  
**Tier**: e (current-tier active work)
**Morpheme**: e.3.forge (Methodology/Skill Generation)

πŸ†πŸ‘Ύβš‘ **GREMLIN-FORGE: ONLINE** βš‘πŸ‘ΎπŸ†

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.