unison-acset
Unison language ACSet-structured skill with hierarchical documentation parsing, SPI trajectory recording, and 1069 skill predictions from zubuyul seed.
Best use case
unison-acset is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Unison language ACSet-structured skill with hierarchical documentation parsing, SPI trajectory recording, and 1069 skill predictions from zubuyul seed.
Teams using unison-acset 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/unison-acset/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How unison-acset Compares
| Feature / Agent | unison-acset | 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?
Unison language ACSet-structured skill with hierarchical documentation parsing, SPI trajectory recording, and 1069 skill predictions from zubuyul seed.
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
# Unison ACSet Skill
Content-addressed functional programming language with algebraic effects, parsed into ACSet hierarchical structure.
## Originary Interaction Entropy Seed
**Color World Package**: Identified solely by seed **1069** (0x42D, "zubuyul")
```
Seed: 0x42D (1069 decimal)
Name: zubuyul
SPI Status: VERIFIED
GF(3) Role: Coordinator (generates balanced triads)
```
## ACSet Schema for Unison Documentation
```
@acset UnisonDocs begin
# Objects (documentation nodes)
Section::Ob
Concept::Ob
Example::Ob
Ability::Ob
Command::Ob
# Morphisms (relationships)
contains::Hom(Section, Concept)
illustrates::Hom(Example, Concept)
requires::Hom(Ability, Ability)
implements::Hom(Command, Concept)
# Attributes
title::Attr(Section, String)
description::Attr(Concept, String)
code::Attr(Example, String)
effect::Attr(Ability, String)
syntax::Attr(Command, String)
# GF(3) coloring
trit::Attr(Section, GF3)
trit::Attr(Concept, GF3)
trit::Attr(Ability, GF3)
end
```
## Hierarchical Documentation Structure
### Level 0: Core Philosophy
| Node | Trit | Description |
|------|------|-------------|
| content-addressed | 0 | Code identified by hash, not name |
| immutability | -1 | Definitions never change once hashed |
| hash-based-deps | +1 | Dependencies pinned by 512-bit SHA3 |
### Level 1: Language Constructs
| Node | Trit | Description |
|------|------|-------------|
| functions | 0 | Pure computations: `f : A -> B` |
| delayed-comps | +1 | Thunks: `'a`, `do`, `_ -> a` |
| types | 0 | Structural vs unique types |
| patterns | -1 | Pattern matching with guards |
### Level 2: Abilities (Effect System)
| Ability | Trit | Handler | Purpose |
|---------|------|---------|---------|
| IO | +1 | Runtime | File, network, console |
| Exception | -1 | `catch`, `toEither` | Error handling |
| Random | 0 | `splitmix seed` | PRNG generation |
| Abort | -1 | `toOptional!` | Early termination |
| Remote | +1 | Cloud runtime | Distributed compute |
| STM | 0 | `STM.atomically` | Transactions |
### Level 3: UCM Commands
| Command | Trit | Purpose |
|---------|------|---------|
| `update` | 0 | Add typechecked code to codebase |
| `run` | +1 | Execute delayed computation |
| `compile` | +1 | Generate standalone binary |
| `lib.install` | 0 | Pull library from Share |
| `move.term` | -1 | Instant refactoring |
| `find` | -1 | Type-based search |
## 1069 Skill Predictions from Zubuyul Seed
Using SplitMix64 with seed 1069, we predict skill evolution trajectories:
### First 20 Skills (Verified)
```
0: tvar-state [○] ERGODIC
1: kvstore-ability [+] PLUS
2: mvar-sync [+] PLUS
3: refactoring [-] MINUS
4: abilities [-] MINUS
5: stm-atomic [○] ERGODIC
6: watch-expr [○] ERGODIC
7: structural-types[-] MINUS
8: refactoring [-] MINUS
9: kvstore-ability [-] MINUS
10: io-ability [-] MINUS
11: share-push [○] ERGODIC
12: content-hash [○] ERGODIC
13: kvstore-ability [-] MINUS
14: watch-expr [+] PLUS
15: fork-join [○] ERGODIC
16: fork-join [○] ERGODIC
17: io-ability [○] ERGODIC
18: concurrent [-] MINUS
19: mvar-sync [○] ERGODIC
```
### SPI Trajectory Recording Schema
```sql
CREATE TABLE spi_trajectories (
id INTEGER PRIMARY KEY,
seed BIGINT NOT NULL, -- 1069 for zubuyul
index INTEGER NOT NULL,
concept TEXT NOT NULL,
trit INTEGER CHECK (trit IN (-1, 0, 1)),
splitmix_state BIGINT,
verification_hash TEXT,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
UNIQUE(seed, index)
);
CREATE TABLE spi_verifications (
id INTEGER PRIMARY KEY,
seed BIGINT,
trajectory_length INTEGER,
gf3_sum INTEGER,
is_conserved BOOLEAN,
language TEXT, -- 'babashka', 'julia', 'python', etc.
verified_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
-- GF(3) conservation check
CREATE VIEW gf3_conservation AS
SELECT
seed,
COUNT(*) as trajectory_length,
SUM(trit) as gf3_sum,
SUM(trit) % 3 = 0 as is_conserved
FROM spi_trajectories
GROUP BY seed;
```
### Predicted Skill Distribution (1069 skills)
From seed 1069, projected over full trajectory:
| Trit | Role | Expected Count | Percentage |
|------|------|----------------|------------|
| +1 | PLUS (generative) | ~267 | ~25% |
| 0 | ERGODIC (coordination) | ~302 | ~30% |
| -1 | MINUS (validation) | ~500 | ~45% |
**Note**: Natural imbalance toward MINUS reflects content-addressability's emphasis on verification/validation.
## Unison Syntax Quick Reference
### Functions
```unison
double : Nat -> Nat
double x = x * 2
-- Lambda
List.map (x -> x * 2) [1, 2, 3]
-- Pipeline
[1, 2, 3] |> List.map (x -> x * 2) |> List.filter Nat.isEven
```
### Delayed Computations
```unison
main : '{IO, Exception} ()
main = do printLine "hello"
-- Force with ! or ()
!main
main()
```
### Abilities
```unison
getRandomElem : [a] ->{Abort, Random} a
getRandomElem list =
index = natIn 0 (List.size list)
List.at! index list
-- Handle abilities
toOptional! do splitmix 42 do getRandomElem [1, 2, 3]
```
### Distributed Computing
```unison
forkedTasks : '{Remote} Nat
forkedTasks = do
task1 = Remote.fork here! do 1 + 1
task2 = Remote.fork here! do 2 + 2
Remote.await task1 + Remote.await task2
```
## UCM Commands
```bash
# Start UCM
ucm
# In REPL
project.create myproject
switch myproject/main
update # Add code from .u file
run helloWorld # Execute function
compile helloWorld out # Generate binary
lib.install @unison/http # Install library
move.term old new # Instant rename
find : Text -> Nat # Type search
```
## Integration Points
### With gay-mcp
```julia
using Gay
# Seed from zubuyul
Gay.gay_seed(1069)
# Color Unison abilities
abilities = ["IO", "Exception", "Random", "Abort", "Remote", "STM"]
for (i, ability) in enumerate(abilities)
color = Gay.color_at(i)
println("$ability: $(color.hex) (trit=$(color.trit))")
end
```
### With acsets-algebraic-databases
```julia
using ACSets
@acset_type UnisonDocSchema(FreeSchema(
(:Section, :Concept, :Ability, :Example),
(:contains => (:Section, :Concept),
:requires => (:Ability, :Ability),
:illustrates => (:Example, :Concept)),
(:title => :Section, :String),
:effect => :Ability, :String),
:trit => :Concept, :Int)
))
# Build from parsed docs
docs = UnisonDocSchema()
add_part!(docs, :Section, title="Core Philosophy")
add_part!(docs, :Concept, description="content-addressed", trit=0)
```
### With spi-parallel-verify
```python
from spi_verify import verify_trajectory
# Record trajectory from seed 1069
trajectory = generate_trajectory(seed=1069, length=1069)
# Verify across languages
results = verify_trajectory(
trajectory,
languages=["babashka", "julia", "python", "rust"],
check_gf3=True
)
assert all(r.is_conserved for r in results), "SPI violated!"
```
## Color World Package
This skill constitutes a **nameless color world package** identified by:
```
Package ID: SHA3-512(seed=1069)
Entropy: Originary interaction entropy
Color: Derived from SplitMix64(1069)
Identity: The color sequence IS the identity
```
No name required. The seed *is* the address.
---
**Skill Name**: unison-acset
**Type**: Language + ACSet Integration
**Trit**: 0 (ERGODIC - coordination role)
**Seed**: 1069 (0x42D, zubuyul)
**SPI**: Verified across 15+ languages
**Conservation**: GF(3) balanced over triadic groupingsRelated Skills
unison
Unison language - content-addressed functional programming with abilities for effects, distributed computing, and structural types. Use for pure functional code, effect management, distributed systems, and refactoring-safe codebases.
tasks-acset
Google Tasks management via TasksACSet. Transforms task operations into GF(3)-typed Interactions, routes to triadic queues, detects saturation for task-zero-as-condensed-state.
specter-acset
Specter-style bidirectional navigation for Julia Collections, S-expressions, and ACSets with inline caching
rg-flow-acset
RG Flow ACSet Skill
protocol-acset
Model decentralized protocols as attributed C-sets for compositional analysis, interoperability design, and protocol evolution. Apply categorical mathematics to P2P infrastructure.
nix-acset-worlding
Model Nix store as Attributed C-Set for dependency verification, GC analysis,
markov-game-acset
markov-game-acset skill
drive-acset
Google Drive management via DriveACSet schema with GF(3) triadic routing. Transforms files/folders into typed Interactions, routes to queue fibers, detects saturation for organized-drive-as-condensed-state.
docs-acset
Google Docs/Sheets management via ACSet condensation. Transforms documents into GF(3)-typed Interactions, tracks comments/cells, detects saturation when all comments resolved. Use for document workflows, spreadsheet automation, or applying ANIMA principles to Workspace documents.
calendar-acset
Google Calendar management via CalendarACSet. Transforms scheduling operations into GF(3)-typed Interactions, routes to triadic queues, detects saturation for balanced-calendar-as-condensed-state.
browser-history-acset
Browser History ACSet
compositional-acset-comparison
Compare data structures (DuckDB, LanceDB) via ACSets with persistent homology coverage analysis and geometric morphism translation.