plr-thread-coloring
PLR (Parallel/Leading-tone/Relative) transitions for thread coloring. One-hot keyspace reduction to GF(3) trits for behavior indexing. Grows perception/action information field capacity through efficient user illusion.
Best use case
plr-thread-coloring is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
PLR (Parallel/Leading-tone/Relative) transitions for thread coloring. One-hot keyspace reduction to GF(3) trits for behavior indexing. Grows perception/action information field capacity through efficient user illusion.
Teams using plr-thread-coloring should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/plr-thread-coloring/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How plr-thread-coloring Compares
| Feature / Agent | plr-thread-coloring | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
PLR (Parallel/Leading-tone/Relative) transitions for thread coloring. One-hot keyspace reduction to GF(3) trits for behavior indexing. Grows perception/action information field capacity through efficient user illusion.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# PLR Thread Coloring
> *The first color IS the thread. One-hot → trit → behavior.*
## Core Thesis
Thread identifiers (T-xxxxxxxx) are **seeds**. The first color derived from the seed IS the thread's identity. PLR transformations navigate the color space while preserving common tones (2/3 components stable).
```
Thread ID → Hash → Seed → SplitMix64 → First Color → Identity
↓
PLR Transitions → Color Path → Behavior Trace
↓
One-Hot Reduction → GF(3) → Efficient Index
```
## One-Hot Keyspace Reduction
### Problem: Exponential Keyspace
```
Thread ID space: 2^128 (UUID)
One-hot encoding: 128 bits
Behavior space: Intractable
```
### Solution: Reduce to GF(3) Trits
```
One-hot(128 bits) → Hash(64 bits) → SplitMix64 → Hue(360°) → Trit(-1,0,+1)
Keyspace: 3 states per trit
3 PLR ops × 3 trits = 9 behavior classes
Sufficient for:
- User illusion (perceived control)
- Behavior indexing (O(1) lookup)
- Action field growth (bounded expansion)
```
## PLR → Trit Mapping
| PLR Op | Color Δ | Trit | Behavior |
|--------|---------|------|----------|
| **P** (Parallel) | Hue ±15° | 0 | ERGODIC: local exploration |
| **L** (Leading) | L ±10 | -1 | MINUS: constraint/validation |
| **R** (Relative) | C ±20, H ±30° | +1 | PLUS: expansion/generation |
### GF(3) Conservation
Every PLR sequence of length 3 sums to 0 (mod 3):
```
P L R = 0 + (-1) + 1 = 0 ✓
R R R = 1 + 1 + 1 = 3 ≡ 0 ✓
L P R = -1 + 0 + 1 = 0 ✓
```
## Thread ID to First Color
```python
def thread_to_color(thread_id: str) -> dict:
"""Extract color from thread identifier."""
uuid_part = thread_id.replace("T-", "").replace("-", "")
seed = int(uuid_part[:16], 16)
_, val = splitmix64(seed)
L = 10.0 + 85.0 * ((val & 0xFFFF) / 65535.0)
C = 100.0 * (((val >> 16) & 0xFFFF) / 65535.0)
H = 360.0 * (((val >> 32) & 0xFFFF) / 65535.0)
trit = hue_to_trit(H)
return {"thread_id": thread_id, "seed": seed,
"L": L, "C": C, "H": H, "trit": trit}
```
## PLR Operations
```julia
# P: Parallel - minimal change (hue rotation)
P(color; direction=1) = (L=color.L, C=color.C,
H=mod(color.H + 15*direction, 360), trit=0)
# L: Leading-tone - lightness change
L(color; direction=1) = (L=clamp(color.L + 10*direction, 1, 99),
C=color.C, H=color.H, trit=-1)
# R: Relative - largest shift (chroma + hue)
R(color; direction=1) = (L=color.L,
C=clamp(color.C + 20*direction, 0, 150),
H=mod(color.H + 30*direction, 360), trit=1)
```
## 9-Class Behavior System
```
┌─────────┬────────────┬────────────┬────────────┐
│ │ MINUS (-1) │ ERGODIC (0)│ PLUS (+1) │
├─────────┼────────────┼────────────┼────────────┤
│ P (0) │ P-MINUS │ P-ERGODIC │ P-PLUS │
│ │ validate │ explore │ expand │
├─────────┼────────────┼────────────┼────────────┤
│ L (-1) │ L-MINUS │ L-ERGODIC │ L-PLUS │
│ │ contract │ darken │ brighten │
├─────────┼────────────┼────────────┼────────────┤
│ R (+1) │ R-MINUS │ R-ERGODIC │ R-PLUS │
│ │ simplify │ modulate │ elaborate │
└─────────┴────────────┴────────────┴────────────┘
```
## Efficiency Gain
```
One-hot: 2^128 possible states
GF(3): 3 possible states
Reduction: 128 bits → 1.58 bits (log₂(3))
Speedup: O(2^128) → O(1) behavior lookup
```
## Perception/Action Field Growth
The perception/action field grows through PLR navigation:
```
Capacity(t) = Capacity(0) × (1 + α × PLR_diversity(t))
Where:
- PLR_diversity = entropy of PLR sequence distribution
- α = learning rate (typically 0.01-0.1)
```
## User Illusion
The user perceives rich control over a 128-bit thread space while the system operates on a 9-class behavior index. This compression preserves the "feeling" of agency while enabling tractable computation.
## Full Sexp Representation
```lisp
(plr-thread-coloring
:seed 1069
:thread-to-color
(lambda (thread-id)
(let* ((seed (thread->seed thread-id))
((L C H) (seed->lch seed)))
`(:L ,L :C ,C :H ,H :trit ,(hue->trit H))))
:plr-ops
((P . (lambda (c d) `(:L ,(@ c :L) :C ,(@ c :C) :H ,(mod (+ (@ c :H) (* 15 d)) 360))))
(L . (lambda (c d) `(:L ,(clamp (+ (@ c :L) (* 10 d)) 1 99) :C ,(@ c :C) :H ,(@ c :H))))
(R . (lambda (c d) `(:L ,(@ c :L) :C ,(clamp (+ (@ c :C) (* 20 d)) 0 150)
:H ,(mod (+ (@ c :H) (* 30 d)) 360)))))
:one-hot->gf3
(lambda (one-hot-vec) (hue->trit (seed->hue (one-hot->seed one-hot-vec)))))
```
## Implementations
See [detailed implementations](references/IMPLEMENTATIONS.md) for:
- Python with full PLR operations
- Julia module
- DuckDB behavior index schema
- Field capacity growth algorithms
---
**Skill Name**: plr-thread-coloring
**Type**: Thread Identity + Behavior Indexing
**Trit**: 0 (ERGODIC - coordination between perception and action)
**Seed**: 1069 (zubuyul)
**Reduction**: 128-bit → 1.58-bit (one-hot → GF(3))
**Behavior Classes**: 9 (3 PLR × 3 trits)
**Field Growth**: Capacity × (1 + α × diversity)
> *The user illusion is sufficient when the keyspace fits in working memory.*Related Skills
tidar-thread-probe
TIDAR Thread Probe Skill
Geohash Coloring Skill
GF(3) colored geohashes for hierarchical spatial indexing with deterministic color derivation.
zx-calculus
Coecke's ZX-calculus for quantum circuit reasoning via string diagrams with Z-spiders (green) and X-spiders (red)
zulip-cogen
Zulip Cogen Skill 🐸⚡
zls-integration
zls-integration skill
zig
zig skill
zig-syrup-bci
Multimodal BCI pipeline in Zig: DSI-24 EEG, fNIRS mBLL, eye tracking IVT, LSL sync, EDF read/write, GF(3) conservation
zig-programming
zig-programming skill
zeroth-bot
Zeroth Bot - 3D-printed open-source humanoid robot platform for sim-to-real and RL research. Affordable entry point for humanoid robotics.
xlsx
Comprehensive spreadsheet creation, editing, and analysis with support
wycheproof
Google's Wycheproof test vectors for cryptographic implementation testing.
Writing Hookify Rules
This skill should be used when the user asks to "create a hookify rule", "write a hook rule", "configure hookify", "add a hookify rule", or needs guidance on hookify rule syntax and patterns.