discohy-streams

DisCoPy categorical color streams via Hy with 3 parallel TAP streams

16 stars

Best use case

discohy-streams is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

DisCoPy categorical color streams via Hy with 3 parallel TAP streams

Teams using discohy-streams 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

$curl -o ~/.claude/skills/discohy-streams/SKILL.md --create-dirs "https://raw.githubusercontent.com/plurigrid/asi/main/ies/music-topos/.claude/skills/discohy-streams/skill.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/discohy-streams/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How discohy-streams Compares

Feature / Agentdiscohy-streamsStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

DisCoPy categorical color streams via Hy with 3 parallel TAP streams

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

# discohy-streams - Discopy Color Streams via Hy

## Overview

Provides personalized color streams using discopy categorical diagrams via Hy (discohy). Each human gets a self-learning color embedding with 3 parallel streams.

## Core Concepts

### 3 Parallel Streams (Balanced Ternary)

```
color://human-id/LIVE      → +1 (forward, real-time)
color://human-id/VERIFY    →  0 (verification, BEAVER)
color://human-id/BACKFILL  → -1 (historical, archived)
```

### Discopy Integration

```hy
;; Create color chain diagram
(import [discopy.monoidal [Ty Box]])
(setv Color (Ty "Color"))
(setv boxes [(Box "C1" Color Color)
             (Box "C2" Color Color)
             (Box "C3" Color Color)])
(setv diagram (>> (get boxes 0) (get boxes 1) (get boxes 2)))
```

### GayMCP color:// Resource

```
color://alice           → All 3 streams simultaneously
color://alice/LIVE      → Current LIVE color
color://alice/VERIFY/5  → Time travel to index 5
```

## Usage

```hy
#!/usr/bin/env hy
(import [gay_world_ducklake [create-gay-world color-at]])

;; Create world
(setv world (create-gay-world 0x42D))

;; Get surface for human
(setv surface (.get-or-create-surface (get world "world") "bob"))

;; Get simultaneous colors
(setv colors (.get-simultaneous-colors surface))

;; Access via MCP
(setv mcp (get world "mcp"))
(.get-resource mcp "color://bob/LIVE")
```

## Self-Learning Embedding

Each stream maintains a learnable embedding for color preferences:

```hy
(setv stream surface.live-stream)

;; Generate color
(setv color (.next-color stream))

;; Learn from preference
(.learn stream color True)   ; liked
(.learn stream color False)  ; disliked

;; Get prediction
(.predict stream color)  ; → 0.0-1.0
```

## Time Travel

```hy
;; Travel to specific index
(.time-travel surface 10 "LIVE")

;; Mark pattern as disallowed
(.mark-disallowed surface 10 5 TAP-LIVE)

;; Attempt disallowed travel → error
(.time-travel surface 5 "LIVE")
```

## DuckDB Integration

```sql
-- Query color history
SELECT * FROM color_history
WHERE stream_id LIKE 'alice%'
ORDER BY timestamp DESC;

-- View time travel log
SELECT * FROM time_travel_log
WHERE status = 'DISALLOWED';
```

## Configuration

```toml
[discohy-streams]
seed = 1069  # 0x42D
streams = ["LIVE", "VERIFY", "BACKFILL"]
learning_rate = 0.1
db_path = ":memory:"
```

## See Also

- `plurigrid/discohy` - Hy wrapper for discopy
- `gay_world_ducklake.hy` - Full implementation
- `unified_verification_bridge.jl` - 1/4 verification