PH

A framework for using phyllotaxis growth patterns in propagator-based computing.

Install

mkdir -p .claude/skills/phyllotaxis && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/11245" && unzip -o skill.zip -d .claude/skills/phyllotaxis && rm skill.zip

Installs to .claude/skills/phyllotaxis

Activation

This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.

Succulent rosette growth as propagator network — golden angle = Nash equilibrium, auxin chemotaxis = affective taxis, BCI modulation = closed-loop biofeedback
158 charsno explicit “when” trigger
Advanced

Key capabilities

  • Models growth as a propagator network
  • Implements BCI modulation for biofeedback
  • Simulates phyllotaxis in generative systems
  • Calculates auxin chemotaxis
  • Verifies GF(3) conservation

How it works

It treats succulent rosette growth as a propagator network where primordia placement emerges from auxin inhibition kernels.

Inputs & outputs

You give it
Growth parameters or BCI signals
You get back
Phyllotaxis simulation or growth model

When to use phyllotaxis

  • Model growth as a propagator network
  • Implement BCI modulation for biofeedback
  • Simulate phyllotaxis in generative systems

About this skill

Phyllotaxis

Spiral leaf arrangement as a propagator network where the golden angle emerges as Nash equilibrium.

Trit: +1 (PLUS - Generator) Color: #3DD98F (green — growth)

Core Insight

The Douady-Couder model of phyllotaxis IS a propagator network (SDF Ch7):

  • Cells = primordia (partial information: position, auxin, inhibition)
  • Propagators = Gaussian inhibition kernels (constraint transformers)
  • Scheduler = plastochron clock (SICP Ch5 explicit control)
  • Quiescence = golden angle spiral (Nash equilibrium)

The golden angle (137.508°) is not designed — it EMERGES from the constraint network, just as Nash equilibria emerge from propagator-based game solving.

Architecture

                    ┌─────────────────────────────────────┐
                    │        Phyllotaxis Propagator        │
                    │         (SDF Ch7 × Nash)             │
                    └──────────────┬──────────────────────┘
                                   │
          ┌────────────────────────┼────────────────────────┐
          │                        │                        │
    ┌─────▼──────┐          ┌──────▼──────┐          ┌──────▼──────┐
    │   Julia     │          │  TypeScript  │          │   Scheme    │
    │ succulents  │          │  Nashator    │          │  Goblins    │
    │   .jl       │          │  stress-     │          │  rosette-   │
    │             │          │  games.ts    │          │  actor.scm  │
    └─────┬──────┘          └──────┬──────┘          └──────┬──────┘
          │                        │                        │
    Continuous               Game-theoretic            Actor-based
    simulation               equilibrium               concurrency
    + BCI bridge             + propagator              + CapTP bridge
    + taxis bridge           + mechanism               + vat isolation
    + GF(3) verify           design (inverse)          + plugin spec

Mathematical Foundation

Douady-Couder Inhibition Model

New primordium placement at angle θ* that maximizes auxin:

θ* = argmax_θ [ A(θ) - Σᵢ α · exp(-d(θ, pᵢ)² / (2λ²)) ]

Where:

  • A(θ) = ambient auxin field
  • α = inhibition strength (optimal: 2.0)
  • λ = inhibition range (optimal: 0.08)
  • d(θ, pᵢ) = Euclidean distance from candidate to primordium i

Golden Angle as Nash Equilibrium

Two adjacent leaves compete for light. Strategies: angular deviations from current position. Payoff: light capture = 1 - overlap penalty.

The Nash equilibrium IS the golden angle: no leaf can unilaterally improve its light capture by deviating from 137.508° divergence.

Auxin Chemotaxis = Affective Taxis

From affective-taxis.jl: auxin_density(x) maps to attractant_density(z), and auxin_gradient(x) maps to grad_log_density(z). The Langevin dynamics are identical:

dz/dt = ∇_z log γ(z; β) + √2 dσ(t)

Where z = primordium position, γ = auxin concentration, β = temperature.

GF(3) Conservation

Index-based trit assignment ensures perfect balance:

classify_trit(i) = { +1 if i mod 3 = 0, 0 if i mod 3 = 1, -1 if i mod 3 = 2 }

For N primordia: N mod 3 = 0 → perfect 7/7/7 balance (21 primordia).

Implementations

Julia: succulents.jl (~550 LOC)

Full continuous simulation with BCI integration:

# Grow 21 primordia
M = Meristem(λ=0.08, α=2.0, plastochron=6)
for _ in 1:136; tick!(M); end

# Results: 9.49° golden deviation, GF(3) 7/8/7 BALANCED
verify_conservation(M)  # ✓

# BCI modulation
ps = PhenomenalState(φ=0.8, valence=0.6, entropy=1.5, trit=PLUS)
modulate_growth!(M, ps)

# Taxis bridge
AL = AuxinLandscape(M)
classify_valence(auxin_gradient(AL, θ))  # → PLUS/ERGODIC/MINUS

Optimal parameters (from sweep): λ=0.08, α=2.0 → 9.49° deviation from golden angle.

TypeScript: Nashator stress-games.ts

Game-theoretic formulation as OpenGame instances:

leafLightCompetition(5)   // 5-strategy light competition game
auxinCompetition(7)       // 7-position auxin inhibition game
rosetteLifecycle()        // seq(auxin ; light ; water) — GF(3) balanced

// Solve via propagator network
solvePropagator(leafLightCompetition(5), { maxRounds: 2000 })
// → golden angle offset = high-weight strategy

Scheme: Goblins rosette-actor.scm (~300 LOC)

Actor-based concurrent rosette growth:

(define garden (spawn ^rosette-garden))
($ garden plant! "echeveria")
($ garden plant! "sempervivum")
($ garden grow-all! 21)
($ garden garden-gf3)           ; → balanced
($ garden modulate-all! 0.8 0.6 1.5)  ; BCI modulation

Plugin spec for ^vat-bridge integration: plant/grow/modulate/gf3 actions.

Calibrated Parameters

ParameterSymbolOptimalRange TestedUnit
Inhibition rangeλ0.080.05-0.30radius
Inhibition strengthα2.02-8dimensionless
Growth rateg0.010.005-0.02radius/tick
PlastochronP64-10ticks
Taxis thresholdε0.0010.001-0.01gradient
Golden deviationΔ9.49°degrees

Files

succulents.jl                              Julia continuous simulation
nashator/src/stress-games.ts               TypeScript game generators (leafLight, auxin, lifecycle)
nashator/src/stress-games.test.ts          4 phyllotaxis tests (33/33 passing)
goblins-adapter/rosette-actor.scm          Goblins actors (^primordium, ^meristem, ^rosette-garden)
goblins-adapter/rosette-captp-bridge.scm   CapTP bridge: rosette ↔ Nashator solver
asi/skills/phyllotaxis/SKILL.md            This file
asi/skills/phyllotaxis/NEIGHBOR_SKILLS.md  Skill connections

GF(3) Triads

phyllotaxis (+1) ⊗ nashator (0) ⊗ affective-taxis (-1) = 0 ✓
    growth          equilibrium      chemotaxis

phyllotaxis (+1) ⊗ propagators (0) ⊗ cybernetic-open-game (-1) = 0 ✓
    biology         SDF Ch7           game theory

succulents (+1) ⊗ bridge-9 (0) ⊗ BCI (-1) = 0 ✓
    output          pipeline          input

Concomitant Skills

SkillTritInterface
nashator0Golden angle = Nash equilibrium; leafLightCompetition, auxinCompetition
propagators0SDF Ch7 cells = primordia; inhibition = constraint propagation
affective-taxis-1Auxin chemotaxis ≡ interoceptive taxis; Langevin dynamics
goblins0^rosette-garden actor; vat isolation; CapTP bridge
sdf-1Ch7 propagators, Ch8 degeneracy (parameter sweep fallback)
sicp+1Ch3 mutable state, Ch5 explicit control (scheduler)
gay-julia0GF(3) coloring, golden spiral, color conservation
enzyme-autodiff-1Gradient of inhibition kernel via Enzyme.jl

References

  • Douady & Couder, "Phyllotaxis as a Physical Self-Organized Growth Process" (1996)
  • Atela, Golé & Hotton, "A Dynamical System for Plant Pattern Formation" (2002)
  • Hanson & Sussman, "Software Design for Flexibility" Ch7 (2021)
  • Ghani, Hedges et al., "Compositional Game Theory" (2018)
  • Sennesh & Ramstead, "Affective-Taxis Hypothesis" (2025)

Para(Optic) atlas

Part of: para-mensch-commons.

ALife atlas

Part of: alife-commons. Family: morphogenesis-and-growth. Canonical: lindenmayer-systems.

When not to use it

  • Standard plant growth simulation
  • Non-generative biological modeling

Limitations

  • Optimal parameters are specific to the Douady-Couder model
  • Requires specific environment for BCI integration

How it compares

It uses a game-theoretic approach (Nash equilibrium) to model phyllotaxis, rather than purely geometric or L-system approaches.

Compared to similar skills

phyllotaxis side by side with the closest alternatives in the catalog.

SkillInstallsUpdatedSafetyDifficulty
phyllotaxis (this skill)02moNo flagsAdvanced
opencode-cli147moReviewAdvanced
robotics-code-generator147moNo flagsAdvanced
modal57moReviewIntermediate

Try saying

Example prompts that trigger this skill in your AI assistant.

You might also like

opencode-cli

SpillwaveSolutions

This skill should be used when configuring or using the OpenCode CLI for headless LLM automation. Use when the user asks to "configure opencode", "use opencode cli", "set up opencode", "opencode run command", "opencode model selection", "opencode providers", "opencode vertex ai", "opencode mcp servers", "opencode ollama", "opencode local models", "opencode deepseek", "opencode kimi", "opencode mistral", "fallback cli tool", or "headless llm cli". Covers command syntax, provider configuration, Vertex AI setup, MCP servers, local models, cloud providers, and subprocess integration patterns.

14174

robotics-code-generator

HumaizaNaz

Generates clean, runnable ROS 2, Gazebo, Isaac Sim, and VLA code for humanoid robotics

1490

modal

davila7

Run Python code in the cloud with serverless containers, GPUs, and autoscaling. Use when deploying ML models, running batch processing jobs, scheduling compute-intensive tasks, or serving APIs that require GPU acceleration or dynamic scaling.

587

hugging-face-cli

patchy631

Execute Hugging Face Hub operations using the `hf` CLI. Use when the user needs to download models/datasets/spaces, upload files to Hub repositories, create repos, manage local cache, or run compute jobs on HF infrastructure. Covers authentication, file transfers, repository creation, cache operations, and cloud compute.

350

computer-use-agents

davila7

Build AI agents that interact with computers like humans do - viewing screens, moving cursors, clicking buttons, and typing text. Covers Anthropic's Computer Use, OpenAI's Operator/CUA, and open-source alternatives. Critical focus on sandboxing, security, and handling the unique challenges of vision-based control. Use when: computer use, desktop automation agent, screen control AI, vision-based agent, GUI automation.

1040

machine-learning-ops-ml-pipeline

sickn33

Design and implement a complete ML pipeline for: $ARGUMENTS

436

Search skills

Search the agent skills registry