| name | skill-connectivity-hub |
| description | Skill Connectivity Hub |
| version | 1.0.0 |
Skill Connectivity Hub
Trit: 0 (ERGODIC - coordinator)
Role: Graph-based skill orchestration via neighbor-aware interleaving
GF(3): Conserved via hub-spoke triadic routing
Overview
Identifies and routes through maximally-connected "hub skills" that reference the most neighbors. Uses Babashka for graph analysis and Narya for counterfactual diffing of skill evolution.
Hub Skills (by Reference Count)
| Skill | Out-Degree | Key Neighbors |
|---|---|---|
narya-proofs |
5 | bisimulation-game, gay-mcp, ordered-locale, sheaf-cohomology, topos-generate |
bisimulation-game |
5 | gay-mcp, localsend-mcp, open-games, unwiring-arena, unworld |
ordered-locale |
5 | narya, gf3, segal-types, unworld, triad-interleave |
sheaf-cohomology |
5 | acsets, unworld, glass-bead-game, rubato-composer, tree-sitter |
topos-generate |
5 | sheaf-cohomology, dialectica, kan-extensions, open-games, temporal-coalgebra |
dynamic-sufficiency |
145 refs | GF(3), ACSet, skill, triadic, Gay, operad |
GF(3) Triads (Verified)
narya-proofs (-1) ⊗ ordered-locale (0) ⊗ gay-mcp (+1) = 0 ✓
sheaf-cohomology (-1) ⊗ dialectica (0) ⊗ topos-generate (+1) = 0 ✓
bisimulation-game (-1) ⊗ open-games (0) ⊗ unwiring-arena (+1) = 0 ✓
Babashka Connectivity Analyzer
#!/usr/bin/env bb
(require '[babashka.fs :as fs])
(require '[clojure.string :as str])
(defn extract-skill-refs [content]
"Extract skill-like hyphenated references from content."
(->> (re-seq #"\b([a-z]+-[a-z]+(?:-[a-z]+)*)\b" content)
(map second)
(filter #(> (count %) 5))
distinct))
(defn build-skill-graph [skills-dir]
"Build adjacency graph of skill references."
(let [skill-files (fs/glob skills-dir "**/SKILL.md")]
(into {}
(for [f skill-files
:let [skill-name (-> f fs/parent fs/file-name str)
content (slurp (str f))
refs (extract-skill-refs content)]]
[skill-name {:neighbors refs
:degree (count refs)}]))))
(defn find-hubs [graph n]
"Find top n hub skills by out-degree."
(->> graph
(sort-by (comp :degree val) >)
(take n)))
(defn verify-gf3-triad [s1 s2 s3]
"Verify GF(3) conservation for skill triad."
(let [trits {:minus -1 :ergodic 0 :plus 1}
sum (+ (get trits s1 0) (get trits s2 0) (get trits s3 0))]
(zero? (mod sum 3))))
;; Usage
(def graph (build-skill-graph "/Users/alice/.claude/skills"))
(def hubs (find-hubs graph 10))
(println "Top 10 Hub Skills:")
(doseq [[name data] hubs]
(println (format " %s: %d neighbors" name (:degree data))))
Narya Counterfactual Diffing
Compare skill evolution using observational bridge types:
from narya_proofs import NaryaProofRunner
def diff_skill_versions(skill_name, v1_path, v2_path):
"""Counterfactual diff via Narya proof verification."""
runner = NaryaProofRunner(seed=0x42D)
# Load both versions
v1_content = open(v1_path).read()
v2_content = open(v2_path).read()
# Generate delta
delta = {
"skill": skill_name,
"before": hash(v1_content),
"after": hash(v2_content),
"impact": 1 if v1_content != v2_content else 0,
"type": "skill_evolution"
}
return delta
# Compare with Emacs integration via .el
def emacs_narya_diff(skill_name):
"""Invoke Emacs Narya mode for interactive diffing."""
import subprocess
elisp = f'''
(progn
(require 'narya-ordered-locale)
(narya-diff-skill "{skill_name}")
(narya-gf3-verify))
'''
subprocess.run(["emacs", "--batch", "--eval", elisp])
libghosty VT Integration
Self-operating auto-formalizing society via terminal virtualization:
// libghosty skill dispersal interface
pub struct SkillDispersalVT {
hub_skills: Vec<String>,
active_triads: Vec<[String; 3]>,
gf3_conservation: bool,
}
impl SkillDispersalVT {
pub fn new(seed: u64) -> Self {
// Initialize with SplitMix64 for deterministic routing
Self {
hub_skills: vec!["narya-proofs", "bisimulation-game",
"ordered-locale", "sheaf-cohomology",
"topos-generate"].into_iter()
.map(String::from).collect(),
active_triads: vec![],
gf3_conservation: true,
}
}
pub fn interleave_direction(&mut self, direction: i8) {
// Trifurcate every decision through hub skills
// direction: -1 (MINUS), 0 (ERGODIC), +1 (PLUS)
assert!(self.gf3_conservation);
}
pub fn auto_formalize(&self) -> String {
// Generate Narya proof certificate for current state
format!("sha256:{:x}", self.state_hash())
}
}
Emacs/.el Integration
;;; skill-connectivity-hub.el --- Hub skill orchestration
(require 'narya-ordered-locale)
(defvar skill-hub-skills
'("narya-proofs" "bisimulation-game" "ordered-locale"
"sheaf-cohomology" "topos-generate")
"Most connected hub skills for routing.")
(defun skill-hub-interleave (skill-list)
"Interleave skills through hub for maximum connectivity."
(let ((triad (skill-hub-form-triad skill-list)))
(when (skill-hub-verify-gf3 triad)
(skill-hub-dispatch triad))))
(defun skill-hub-verify-gf3 (triad)
"Verify GF(3) conservation for skill triad."
(let ((sum (apply #'+ (mapcar #'skill-hub-get-trit triad))))
(= (mod sum 3) 0)))
(defun skill-hub-narya-diff (before after)
"Counterfactual diff using Narya observational bridge."
(narya-bridge-type before after 1))
(provide 'skill-connectivity-hub)
Commands
# Analyze skill connectivity
just skill-hub-analyze
# Find top hubs
just skill-hub-top 10
# Verify GF(3) triads
just skill-hub-verify-triads
# Generate Narya proof of connectivity
just skill-hub-narya-proof
# Emacs interactive mode
emacs --eval "(skill-hub-mode)"
Integration Patterns
Pattern 1: Hub-First Routing
Always route new skills through a hub skill first to maximize connectivity.
Pattern 2: Triadic Interleaving
Form triads with hub skills to ensure GF(3) conservation.
Pattern 3: Narya-Verified Evolution
Use Narya proofs to verify skill evolution preserves invariants.
Pattern 4: libghosty Auto-Formalization
Self-operating VT system for autonomous skill society.
Skill Name: skill-connectivity-hub
Type: Graph Analysis / Skill Orchestration
Trit: 0 (ERGODIC - coordinator)
GF(3): Conserved via triadic routing
Dependencies: narya-proofs, bisimulation-game, babashka
Skill Interaction Entropy
| Thread | Color | Entropy | Trit | Hue |
|---|---|---|---|---|
| T-019b5e16-f9ad-773c-b2ef-ae65bc084748 | #D647B0 | 42 | 0 (ERGODIC) | 158° |
Generated via Gay.jl SplitMix64 deterministic coloring.
Scientific Skill Interleaving
This skill connects to the K-Dense-AI/claude-scientific-skills ecosystem:
Graph Theory
- networkx [○] via bicomodule
- Hub for all graph/network skills
Bibliography References
general: 734 citations in bib.duckdb
Cat# Integration
This skill maps to Cat# = Comod(P) as a bicomodule in the equipment structure:
Trit: 0 (ERGODIC)
Home: Prof
Poly Op: ⊗
Kan Role: Adj
Color: #26D826
GF(3) Naturality
The skill participates in triads satisfying:
(-1) + (0) + (+1) ≡ 0 (mod 3)
This ensures compositional coherence in the Cat# equipment structure.