Skip to content
Back to skills

Skill Dispatch

ASecurity

GF(3) Triadic Task Routing for Subagent Orchestration

  • 61 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added May 29, 2026
toolspythongorubybashsqldatabase

Works with

  • mcp

Security analysis

A100/100

Scanned May 29, 2026

npx -y skills add plurigrid/asi --skill skill-dispatch --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Skill Dispatch?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Skill Dispatch
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/plurigrid-skill-dispatch/badge)](https://www.skillsdirectory.com/skills/plurigrid-skill-dispatch)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: skill-dispatch
description: GF(3) Triadic Task Routing for Subagent Orchestration
version: 1.0.0
---


# skill-dispatch

> GF(3) Triadic Task Routing for Subagent Orchestration

**Version**: 1.0.0  
**Trit**: 0 (Ergodic - coordinates routing)  
**Bundle**: core  

## Overview

Skill-dispatch routes tasks to appropriate skills based on GF(3) triadic conservation. Each task is assigned to a triad of skills (MINUS/ERGODIC/PLUS) that sum to 0 mod 3, ensuring balanced execution.

## Core Concept

```
Task → Infer Bundle → Select Triad → Dispatch to Subagents

Each triad: (-1) ⊗ (0) ⊗ (+1) = 0 mod 3
```

## Skill Registry

```ruby
SKILLS = {
  # MINUS (-1): Validators
  'sheaf-cohomology'    => { trit: -1, bundle: :cohomological, action: :verify },
  'three-match'         => { trit: -1, bundle: :core, action: :reduce },
  'clj-kondo-3color'    => { trit: -1, bundle: :database, action: :lint },
  'influence-propagation' => { trit: -1, bundle: :network, action: :validate },
  
  # ERGODIC (0): Coordinators
  'unworld'             => { trit: 0, bundle: :core, action: :derive },
  'acsets'              => { trit: 0, bundle: :database, action: :query },
  'cognitive-surrogate' => { trit: 0, bundle: :learning, action: :predict },
  'entropy-sequencer'   => { trit: 0, bundle: :core, action: :arrange },
  
  # PLUS (+1): Generators
  'gay-mcp'             => { trit: 1, bundle: :core, action: :color },
  'agent-o-rama'        => { trit: 1, bundle: :learning, action: :train },
  'atproto-ingest'      => { trit: 1, bundle: :acquisition, action: :fetch },
  'triad-interleave'    => { trit: 1, bundle: :core, action: :interleave }
}
```

## Canonical Triads

```ruby
TRIADS = {
  core:        %w[three-match unworld gay-mcp],
  database:    %w[clj-kondo-3color acsets rama-gay-clojure],
  learning:    %w[self-validation-loop cognitive-surrogate agent-o-rama],
  network:     %w[influence-propagation bisimulation-game atproto-ingest],
  repl:        %w[slime-lisp borkdude cider-clojure]
}
```

## Capabilities

### 1. dispatch

Route a task to the appropriate triad.

```python
from skill_dispatch import Dispatcher

dispatcher = Dispatcher(seed=0xf061ebbc2ca74d78)

assignment = dispatcher.dispatch(
    task="analyze interaction patterns",
    bundle="learning"  # optional, inferred if not provided
)

# Returns:
# {
#   task: "analyze interaction patterns",
#   bundle: "learning",
#   triad: ["self-validation-loop", "cognitive-surrogate", "agent-o-rama"],
#   assignments: [
#     {skill: "self-validation-loop", trit: -1, role: "validator"},
#     {skill: "cognitive-surrogate", trit: 0, role: "coordinator"},
#     {skill: "agent-o-rama", trit: 1, role: "generator"}
#   ],
#   gf3_sum: 0,
#   conserved: true
# }
```

### 2. execute-triad

Execute a full triad pipeline: MINUS → ERGODIC → PLUS.

```python
result = dispatcher.execute_triad(
    bundle="core",
    input_data=raw_interactions,
    executor=lambda skill, data, info: skill.run(data)
)

# Pipeline: three-match → unworld → gay-mcp
# Each step's output feeds into the next
```

### 3. cross-compose

Compose skills across different bundles while maintaining GF(3).

```python
hybrid = dispatcher.cross_compose(
    minus_bundle="database",    # clj-kondo-3color
    ergodic_bundle="learning",  # cognitive-surrogate
    plus_bundle="core"          # gay-mcp
)

# Still conserves: (-1) + (0) + (+1) = 0
```

### 4. infer-bundle

Automatically determine bundle from task description.

```python
bundle = dispatcher.infer_bundle("lint the clojure code")
# Returns: "database" (matches kondo pattern)

bundle = dispatcher.infer_bundle("train a predictor")
# Returns: "learning"
```

## Subagent Roles

```python
ROLES = {
    -1: {
        "name": "validator",
        "color": "#2626D8",  # Blue
        "verbs": ["verify", "constrain", "reduce", "filter", "lint"]
    },
    0: {
        "name": "coordinator", 
        "color": "#26D826",  # Green
        "verbs": ["transport", "derive", "navigate", "bridge", "arrange"]
    },
    1: {
        "name": "generator",
        "color": "#D82626",  # Red
        "verbs": ["create", "compose", "generate", "expand", "train"]
    }
}
```

## DuckDB Integration

```sql
CREATE TABLE dispatch_log (
    dispatch_id VARCHAR PRIMARY KEY,
    task VARCHAR,
    bundle VARCHAR,
    triad VARCHAR[],
    gf3_sum INT,
    conserved BOOLEAN,
    seed BIGINT,
    dispatched_at TIMESTAMP
);

-- Verify all dispatches conserve GF(3)
SELECT COUNT(*) as violations
FROM dispatch_log
WHERE NOT conserved;
-- Should always be 0
```

## Configuration

```yaml
# skill-dispatch.yaml
dispatcher:
  seed: 0xf061ebbc2ca74d78
  default_bundle: core
  strict_conservation: true

bundles:
  core: [three-match, unworld, gay-mcp]
  learning: [self-validation-loop, cognitive-surrogate, agent-o-rama]
  network: [influence-propagation, bisimulation-game, atproto-ingest]

inference:
  patterns:
    - pattern: "lint|kondo|clojure"
      bundle: database
    - pattern: "train|learn|predict"
      bundle: learning
    - pattern: "network|influence|propagat"
      bundle: network
```

## Justfile Recipes

```makefile
# Dispatch a task
dispatch task="analyze" bundle="core":
    ruby lib/skill_dispatch.rb dispatch "{{task}}" "{{bundle}}"

# Execute full triad
execute-triad bundle="learning" input="data.json":
    ruby lib/skill_dispatch.rb execute "{{bundle}}" "{{input}}"

# Verify all triads conserve GF(3)
verify-triads:
    ruby lib/skill_dispatch.rb verify
```

## Example Workflow

```bash
# 1. Dispatch a learning task
just dispatch "train cognitive model" learning

# 2. Execute the triad
just execute-triad learning interactions.json

# 3. Verify conservation
just verify-triads
# Output:
# core: three-match ⊗ unworld ⊗ gay-mcp = 0 ✓
# learning: self-validation-loop ⊗ cognitive-surrogate ⊗ agent-o-rama = 0 ✓
# network: influence-propagation ⊗ bisimulation-game ⊗ atproto-ingest = 0 ✓
```

## Related Skills

- `gay-mcp` - Provides deterministic seeding
- `triad-interleave` - Interleaves dispatched tasks
- `tripartite_dispatcher.rb` - Reference implementation



## 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 equipment structure:

```
Trit: 0 (ERGODIC)
Home: Prof
Poly Op: ⊗
Kan Role: Adj
Color: #26D826
```

### GF(3) Naturality

The skill participates in triads satisfying:
```
(-1) + (0) + (+1) ≡ 0 (mod 3)
```

This ensures compositional coherence in the Cat# equipment structure.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.