Joker Lint Skill
Scanned 9/6/2026
Install to Claude Code
npx -y skills add plurigrid/asi --skill joker-lint --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Joker Lint?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/plurigrid-joker-lint)More formats (shields.io, HTML) on the badges page.
---
name: joker-lint
description: Joker Lint Skill
version: 1.0.0
---
# joker-lint Skill
> *"Fast Clojure linting in Go. No JVM. Instant feedback."*
## Overview
**Joker Lint** uses the Joker interpreter (Clojure in Go) for fast static analysis and linting. Sub-second startup, no JVM required.
## GF(3) Role
| Aspect | Value |
|--------|-------|
| Trit | -1 (MINUS) |
| Role | VALIDATOR |
| Function | Validates Clojure code style and correctness |
## Installation
```bash
# macOS
brew install candid82/brew/joker
# From source
go install github.com/candid82/joker@latest
```
## Core Commands
```bash
# Lint a file
joker --lint src/core.clj
# Lint with specific rules
joker --lint --working-dir . src/**/*.clj
# Format check
joker --format src/core.clj
# REPL mode
joker
```
## Lint Rules
```clojure
;; .joker configuration
{:rules {:no-unused-fn true
:no-unused-bindings true
:no-private-access true
:no-redeclare true
:if-without-else :warning}}
```
## Integration with clj-kondo
```clojure
;; Use both for comprehensive linting
(defn lint-project []
(let [joker-results (joker-lint "src/")
kondo-results (clj-kondo-lint "src/")]
{:joker joker-results
:kondo kondo-results
:total-issues (+ (count joker-results)
(count kondo-results))}))
```
## GF(3) Lint Triads
```clojure
;; Linting as validation (-1)
;; Code generation as (+1)
;; Formatting as coordination (0)
(def lint-triad
{:generator {:tool "cursive-gen" :trit +1}
:coordinator {:tool "cljfmt" :trit 0}
:validator {:tool "joker-lint" :trit -1}})
(defn balanced-code-flow [code]
(-> code
(generate) ; +1
(format-code) ; 0
(lint))) ; -1
;; Σ = +1 + 0 + (-1) = 0 ✓
```
## Babashka Integration
```clojure
#!/usr/bin/env bb
(require '[babashka.process :refer [shell]])
(defn joker-lint [path]
(let [result (shell {:out :string :err :string :continue true}
"joker" "--lint" path)]
{:exit (:exit result)
:issues (parse-lint-output (:out result))
:trit -1})) ; Validation role
(defn lint-and-report [paths]
(->> paths
(map joker-lint)
(mapcat :issues)
(group-by :severity)))
```
## Performance
| Tool | Startup | 1000 lines |
|------|---------|------------|
| Joker | 10ms | 50ms |
| clj-kondo | 100ms | 200ms |
| Eastwood | 5s | 10s |
## GF(3) Triads
```
joker-lint (-1) ⊗ cljfmt (0) ⊗ cursive-gen (+1) = 0 ✓
joker-lint (-1) ⊗ babashka-clj (0) ⊗ clojure (+1) = 0 ✓
joker-lint (-1) ⊗ clj-kondo-3color (0) ⊗ squint-runtime (+1) = 0 ✓
```
---
**Skill Name**: joker-lint
**Type**: Static Analysis / Linting
**Trit**: -1 (MINUS - VALIDATOR)
**GF(3)**: Validates Clojure code correctness
## Scientific Skill Interleaving
This skill connects to the K-Dense-AI/claude-scientific-skills ecosystem:
### Graph Theory
- **networkx** [○] via bicomodule
- Universal graph hub
### Bibliography References
- `general`: 734 citations in bib.duckdb
## Cat# Integration
This skill maps to Cat# = Comod(P) as a bicomodule in the Prof home:
```
Trit: 0 (ERGODIC)
Home: Prof (profunctors/bimodules)
Poly Op: ⊗ (parallel composition)
Kan Role: Adj (adjunction bridge)
```
### GF(3) Naturality
The skill participates in triads where:
```
(-1) + (0) + (+1) ≡ 0 (mod 3)
```
This ensures compositional coherence in the Cat# equipment structure.Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!