From asi
Provides Geiser REPL integration for Chicken Scheme with SplitMix64 RNG, ternary 3-coloring for graphs, Penrose diagram generation, and crdt.el sexp patterns.
npx claudepluginhub plurigrid/asi --plugin asiThis skill uses the workspace's default tool permissions.
Geiser is the Emacs mode for Scheme REPLs. This skill provides:
Provides Chicken Scheme Hatchery eggs like SRFIs for lists, random numbers, math, colors, and papers on colored operads, 2D type theory, spectral mixing for color logic and 2TDX.
Guides Next.js Cache Components and Partial Prerendering (PPR) with cacheComponents enabled. Implements 'use cache', cacheLife(), cacheTag(), revalidateTag(), static/dynamic optimization, and cache debugging.
Guides building MCP servers enabling LLMs to interact with external services via tools. Covers best practices, TypeScript/Node (MCP SDK), Python (FastMCP).
Share bugs, ideas, or general feedback.
Geiser is the Emacs mode for Scheme REPLs. This skill provides:
;;; chicken_splitmix.scm
(define GOLDEN #x9E3779B97F4A7C15)
(define MIX1 #xBF58476D1CE4E5B9)
(define MIX2 #x94D049BB133111EB)
(define MASK64 #xFFFFFFFFFFFFFFFF)
(define (make-splitmix64 seed)
(let ((state (bitwise-and seed MASK64)))
(lambda ()
(set! state (bitwise-and (+ state GOLDEN) MASK64))
(let* ((z state)
(z (bitwise-and (* (bitwise-xor z (arithmetic-shift z -30)) MIX1) MASK64))
(z (bitwise-and (* (bitwise-xor z (arithmetic-shift z -27)) MIX2) MASK64)))
(bitwise-xor z (arithmetic-shift z -31))))))
(define (splitmix-ternary rng)
;; Map u64 to {-1, 0, +1}
(- (modulo (rng) 3) 1))
(define (color-at seed index)
(let ((rng (make-splitmix64 seed)))
(do ((i 0 (+ i 1))) ((= i index))
(rng))
(let ((h (rng)))
(list (+ 10 (* (/ (bitwise-and h #xFF) 255.0) 85)) ; L
(* (/ (bitwise-and (arithmetic-shift h -8) #xFF) 255.0) 100) ; C
(* (/ (bitwise-and (arithmetic-shift h -16) #xFFFF) 65535.0) 360))))) ; H
;;; 3-color a graph using SplitMixTernary
(define (graph-3-color vertices edges seed)
(let ((rng (make-splitmix64 seed))
(colors (make-hash-table)))
;; Assign initial colors
(for-each
(lambda (v)
(hash-table-set! colors v (splitmix-ternary rng)))
vertices)
;; Verify no adjacent same-color (greedy fix)
(let loop ((changed #t))
(when changed
(set! changed #f)
(for-each
(lambda (e)
(let ((c1 (hash-table-ref colors (car e)))
(c2 (hash-table-ref colors (cadr e))))
(when (= c1 c2)
(hash-table-set! colors (cadr e) (modulo (+ c2 1) 3))
(set! changed #t))))
edges)))
colors))
;; In Emacs with Geiser
;; Start Chicken REPL
M-x geiser-connect RET chicken RET
;; Load color module
,load chicken_splitmix.scm
;; Generate colors
(color-at #x6761795f636f6c6f 1)
;; => (95.64 75.69 40.58)
;; Get ternary stream
(let ((rng (make-splitmix64 1069)))
(map (lambda (_) (splitmix-ternary rng)) (iota 10)))
;; => (0 1 -1 0 1 1 -1 0 -1 1)
For collaborative editing with crdt.el:
;;; Sexp with metadata for crdt.el
(define (sexp-with-meta sexp author timestamp)
`(,@sexp
:meta (:author ,author
:timestamp ,timestamp
:color ,(color-at (string-hash author) timestamp))))
;;; Damage detection (changed sexps)
(define (sexp-damaged? sexp-old sexp-new)
(not (equal? sexp-old sexp-new)))
;;; Copy-on-flight: fork sexp with new identity
(define (sexp-fork sexp new-author)
(let ((old-meta (sexp-meta sexp)))
(sexp-with-meta (sexp-data sexp)
new-author
(current-seconds))))
;;; ASCII Penrose tiles (P3 rhombus)
(define (penrose-tile type)
(case type
((thin)
'(" /\\"
" / \\"
"/____\\"))
((thick)
'(" /\\"
"/ \\"
"\\ /"
" \\/"))))
(define (penrose-row n seed)
(let ((rng (make-splitmix64 seed)))
(map (lambda (_)
(if (> (splitmix-ternary rng) 0)
(penrose-tile 'thin)
(penrose-tile 'thick)))
(iota n))))
(define (gf3-conserved? trits)
;; Check every window of 3
(let loop ((ts trits))
(cond
((< (length ts) 3) #t)
((not (zero? (modulo (apply + (take ts 3)) 3))) #f)
(else (loop (cdr ts))))))
(define (enforce-gf3 trits)
;; Adjust middle element to conserve GF(3)
(if (< (length trits) 3)
trits
(let* ((a (car trits))
(b (cadr trits))
(c (caddr trits))
(new-b (modulo (- (+ a c)) 3)))
(cons a (cons (- new-b 1) (enforce-gf3 (cddr trits)))))))
just geiser-colors # Generate color palette in Chicken
just geiser-3color # 3-color a test graph
just penrose-ascii # Generate Penrose tiling
This skill connects to the K-Dense-AI/claude-scientific-skills ecosystem:
general: 734 citations in bib.duckdbThis 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
The skill participates in triads satisfying:
(-1) + (0) + (+1) ≡ 0 (mod 3)
This ensures compositional coherence in the Cat# equipment structure.