Skip to main content Skills Marketplace Descubre y explora habilidades de IA creadas por la comunidad.
Instalar con Codex o Claude Copia este prompt, pégalo en Codex, Claude u otro asistente, y deja que revise la página de la skill y la instale por ti.
Copiar promptMostrar detalles del prompt Un comando directo omite el prompt de revisión. Revisa el origen antes de ejecutarlo.
npx skills add https://github.com/plurigrid/asi --skill gh-interactomeEl comando permanece en una sola línea. Desplázate horizontalmente para revisarlo antes de copiarlo.
¿Prefieres una copia local? Descarga los archivos que SkillsMP tiene disponibles ahora.
Descargar Zip Descargando... Ocupaciones relacionadas SOC
Basado en la clasificación ocupacional SOC
name gh-interactome description GitHub author interaction network discovery. Maps cobordisms between version 1.0.0
gh-interactome - GitHub Author Interaction Network
Overview
Maps the interactome (interaction network) of GitHub contributors across discovered repos. Finds cobordisms - shared boundaries where different research communities meet.
┌─────────────────────────────────────────────────────────────────────────────┐
│ INTERACTOME STRUCTURE │
├─────────────────────────────────────────────────────────────────────────────┤
│ │
│ BlockScience ◄────── olynch ──────► ToposInstitute │
│ │ │ │ │
│ ▼ ▼ ▼ │
│ cadCAD AlgebraicJulia poly │
│ │ │ │ │
│ └──── jpfairbanks ─┴── epatters ─────┘ │
│ │
│ HoTT/Coq-HoTT ◄─── abooij ───► mortberg/cubicaltt │
│ │ │ │
│ └────── mikeshulman ──────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────────────────────┘
Discovered Cobordisms
Cobordism 1: AlgebraicJulia ↔ Topos Institute ↔ BlockScience
Shared contributors:
epatters (Evan Patterson) - Catlab.jl, ACSets.jl, Topos Institute
olynch (Owen Lynch) - poly, ACSets.jl, Catlab.jl, Topos Institute
jpfairbanks (James Fairbanks) - Catlab.jl, ACSets.jl, U Florida
kris-brown - Catlab.jl, ACSets.jl, Topos Institute
slibkind (Sophie Libkind) - Catlab.jl, Stanford/ToposRepo Stars Role AlgebraicJulia/Catlab.jl 681 Applied category theory framework AlgebraicJulia/ACSets.jl 25 Algebraic databases AlgebraicJulia/AlgebraicPetri.jl - Compositional Petri nets ToposInstitute/poly 113 Polynomial functors
Cobordism 2: HoTT ↔ Cubical Type Theory
abooij - HoTT/Coq-HoTT, mortberg/cubicaltt
mikeshulman (Mike Shulman) - HoTT, real cohesion
andrejbauer (Andrej Bauer) - HoTT, constructive math
DanGrayson - HoTT, cubicaltt, Agda
Bridge insight: HoTT contributors often work on multiple proof assistants.
Cobordism 3: DisCoPy ↔ Oxford Quantum Group
toumix (1213 commits) - DisCoPy core
giodefelice (354 commits) - DisCoPy
y-richie-y (173 commits) - DisCoPy
oxford-quantum-group - Organizational account
Bridge insight: QNLP (Quantum NLP) research connects quantum computing to linguistics via categorical semantics.
Cobordism 4: GFlowNets ↔ Mila (Bengio's Lab)
zdhNarsil (94 commits) - Awesome-GFlowNets curator
bengioe (Emmanuel Bengio) - GFlowNet contributor
Connection to Yoshua Bengio's lab at Mila
Bridge insight: GFlowNets for molecular design connects to chemistry/synthesis domains.
Author Profiles
Core AlgebraicJulia Author Repos Affiliation epattersCatlab.jl (2304), ACSets.jl (101) Topos Institute olynchpoly (1), Catlab.jl (138), ACSets.jl (92) Topos Institute jpfairbanksCatlab.jl (79), ACSets.jl (19) U Florida kris-brownCatlab.jl (63) Topos Institute
Core HoTT Author Repos Affiliation AlizterCoq-HoTT (2191) - jdchristensenCoq-HoTT (1175) UWO JasonGrossCoq-HoTT (930) MIT mikeshulmanCoq-HoTT (888) - andrejbauerCoq-HoTT (396) Ljubljana
Core BlockScience Author Repos Affiliation JEJodestycadCAD (731), cats (107) BlockScience mzarghamcadCAD (3) BlockScience founder markusbkochcadCAD (74) - danlessacadCAD (37) -
Core DisCoPy Author Repos Affiliation toumixdiscopy (1213) Oxford giodefelicediscopy (354) - y-richie-ydiscopy (173) -
Key Bridge Authors Author Connects Via olynchTopos ↔ AlgebraicJulia poly, Catlab, ACSets abooijHoTT ↔ Cubical Coq-HoTT, cubicaltt dspivakTopos ↔ Poly poly (186 commits)
Network Metrics
Centrality (Bridge Authors)
BRIDGE_AUTHORS = {
"olynch" : ["ToposInstitute/poly" , "AlgebraicJulia/Catlab.jl" , "AlgebraicJulia/ACSets.jl" ],
"epatters" : ["AlgebraicJulia/Catlab.jl" , "AlgebraicJulia/ACSets.jl" , "ToposInstitute/*" ],
"abooij" : ["HoTT/Coq-HoTT" , "mortberg/cubicaltt" ],
"jpfairbanks" : ["AlgebraicJulia/Catlab.jl" , "AlgebraicJulia/ACSets.jl" ],
"mikeshulman" : ["HoTT/Coq-HoTT" , "HoTT/book" ],
}
Community Clusters Cluster 1: Applied Category Theory
- AlgebraicJulia (epatters, olynch, jpfairbanks, kris-brown)
- Topos Institute (dspivak, olynch, epatters)
- DisCoPy (toumix, giodefelice)
Cluster 2: Type Theory / Foundations
- HoTT (Alizter, jdchristensen, mikeshulman)
- Cubical (mortberg, simhu, coquand)
- Rzk (fizruk)
Cluster 3: Complex Systems / Token Engineering
- BlockScience (mzargham, JEJodesty)
- cadCAD ecosystem
Cluster 4: Haskell Categorical
- connections (cmk)
- lattices (phadej)
- haskerwaul (sellout)
Implementation
"""
GitHub Interactome: Map author interactions across repos.
"""
import subprocess
import json
from collections import defaultdict
def get_contributors (repo: str ) -> list [dict ]:
"""Get contributors for a repo via gh CLI."""
cmd = f"gh api repos/{repo} /contributors --jq '.[] | {{login, contributions}}'"
result = subprocess.run(cmd, shell=True , capture_output=True , text=True )
contributors = []
for line in result.stdout.strip().split('\n' ):
if line:
contributors.append(json.loads(line))
return contributors
def build_interactome (repos: list [str ] ) -> dict :
"""Build author-repo bipartite graph."""
author_repos = defaultdict(list )
repo_authors = defaultdict(list )
for repo in repos:
contributors = get_contributors(repo)
for c in contributors:
author = c['login' ]
author_repos[author].append({
'repo' : repo,
'contributions' : c['contributions' ]
})
repo_authors[repo].append(author)
return {
'author_repos' : dict (author_repos),
'repo_authors' : dict (repo_authors),
}
def find_bridges (interactome: dict , min_repos: int = 2 ) -> list [dict ]:
"""Find authors who contribute to multiple repos (bridges)."""
bridges = []
for author, repos in interactome['author_repos' ].items():
if len (repos) >= min_repos:
bridges.append({
'author' : author,
'repos' : [r['repo' ] for r in repos],
'total_contributions' : sum (r['contributions' ] for r in repos),
})
return sorted (bridges, key=lambda x: len (x['repos' ]), reverse=True )
def find_cobordisms (interactome: dict ) -> list [dict ]:
"""Find shared boundaries between repo communities."""
cobordisms = []
repos = list (interactome['repo_authors' ].keys())
for i, repo_a in enumerate (repos):
for repo_b in repos[i+1 :]:
shared = set (interactome['repo_authors' ][repo_a]) & \
set (interactome['repo_authors' ][repo_b])
if shared:
cobordisms.append({
'repos' : (repo_a, repo_b),
'shared_authors' : list (shared),
'strength' : len (shared),
})
return sorted (cobordisms, key=lambda x: x['strength' ], reverse=True )
Justfile Recipes # Build interactome
gh-interactome-build:
@echo "🕸️ Building GitHub Interactome..."
python3 interactome.py build
# Find bridge authors
gh-interactome-bridges:
@echo "🌉 Finding bridge authors..."
python3 interactome.py bridges
# Find cobordisms
gh-interactome-cobordisms:
@echo "🔗 Finding cobordisms..."
python3 interactome.py cobordisms
# Author lookup
gh-interactome-author login:
@echo "👤 Author: {{login}}"
gh api users/{{login}} --jq '{name, company, blog, bio}'
gh api users/{{login}}/repos --jq '.[].name' | head -10
Key Cobordism: AlgebraicJulia → BlockScience The compositional systems approach connects:
┌─────────────────────────────────────────────────────────────────────────────┐
│ COMPOSITIONAL SYSTEMS COBORDISM │
├─────────────────────────────────────────────────────────────────────────────┤
│ │
│ UC Riverside ──── John Baez ────► AlgebraicJulia ◄─── Topos Institute │
│ │ │ │ │ │
│ │ ▼ ▼ ▼ │
│ │ Stock & Flow Catlab.jl, ACSets poly │
│ │ Diagrams │ (Spivak) │
│ │ │ │ │ │
│ └────────────────┼───────────────────┼──────────────────┘ │
│ │ │ │
│ ▼ ▼ │
│ Compositional AlgebraicPetri.jl │
│ Epidemiology AlgebraicDynamics.jl │
│ │ │ │
│ └─────────┬─────────┘ │
│ │ │
│ ▼ │
│ BlockScience │
│ (cadCAD, Token Engineering) │
│ │
└─────────────────────────────────────────────────────────────────────────────┘
Key Papers Bridging Communities
"Compositional Scientific Computing with Catlab and SemanticModels" (2020)
Halter, Patterson, Baas, Fairbanks
ArXiv: 2005.04831
"Compositional Modeling with Stock and Flow Diagrams" (2022)
Baez, Li, Libkind, Osgood
ArXiv: 2205.08373 (COVID epidemiology application)
"AlgebraicRL.jl: Compositional Reinforcement Learning"
Uses Catlab.jl for MDP composition
Shared Methodology Concept AlgebraicJulia BlockScience Compositionality Operad algebras cadCAD nested configs Open systems Undirected wiring diagrams State variables + policies Semantics Functors to dynamical systems Simulation runs Visualization String diagrams System dynamics diagrams
Bridge Authors Author AlgebraicJulia BlockScience Academic John Baez Advisor/papers - UC Riverside Sophie Libkind AlgebraicDynamics - Stanford/Topos James Fairbanks Catlab core - U Florida Evan Patterson Catlab lead - Topos Michael Zargham - cadCAD lead BlockScience
Conceptual Bridge : Both communities use category theory for compositional modeling of complex systems - AlgebraicJulia in scientific computing, BlockScience in cryptoeconomics/token engineering.
See Also
gh-skill-explorer - Discovery skill that feeds into this
galois-connections - Adjunctions between domains
acsets-algebraic-databases - ACSets patterns
discopy - String diagrams
End-of-Skill Interface
r2con Speaker Resources Target organizations for interactome mapping:
Speaker Handle Organization Interactome Target pancake trufae radareorg Core r2 ecosystem (75+ repos) thestr4ng3r thestr4ng3r rizinorg Rizin/Cutter fork community oleavr oleavr frida Dynamic instrumentation ecosystem xvilka XVilka radareorg UEFI, radeco, decompilation cryptax cryptax rednaga Android security tooling
Commands
just gh-interactome build
just gh-interactome bridges
just gh-interactome cobordisms
just gh-interactome author olynch
just gh-interactome viz
just gh-interactome orgs radareorg rizinorg frida