crdt

Implement conflict-free replicated data types with deterministic merge semantics.

60|13|Updated Dec 22, 2025
One-click install
npx skills add https://github.com/plurigrid/asi --skill crdt
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: crdt
Source: https://github.com/plurigrid/asi/tree/main/skills/crdt
Command: npx skills add https://github.com/plurigrid/asi --skill crdt

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill provides conflict-free replicated data types (CRDTs) with bidirectional lens optics for distributed state, enabling safe merges and concurrent updates.

Core Features & Use Cases

  • Core CRDT types: LWW Register, G-Counter, PN-Counter, OR-Set, Text CRDT.
  • Properties & merges: Idempotence, commutativity, associativity, and vector clocks.
  • Open Games API: Play (forward) and coplay (backward) semantics.

Quick Start

Create a CRDT, mutate it, and merge states across replicas, then verify properties.

Frequently Asked Questions about crdt

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I merge state across distributed replicas without conflicts?

CRDTs (conflict-free replicated data types) enable safe merges by ensuring all replicas converge to the same state through commutative, associative operations. This Skill provides LWW Registers, counters, sets, and text CRDTs with deterministic merge semantics that eliminate manual conflict resolution.

What CRDT types are available for different distributed state scenarios?

This Skill includes LWW Register for last-write-wins semantics, G-Counter and PN-Counter for monotonic and signed counts, OR-Set for concurrent additions and removals, and Text CRDT for collaborative editing. Each type guarantees idempotence, commutativity, and associativity across replicas.

How do vector clocks track causality in distributed updates?

Vector clocks record the causal history of updates across replicas, enabling the Skill to verify that concurrent operations merge correctly and detect which updates preceded others. They support incremental updates and ensure merge verification satisfies ordering constraints.

Can I use bidirectional optics to work with distributed state?

Yes. This Skill implements play (forward) and coplay (backward) semantics via Open Games API, enabling bidirectional lens optics for composable state transformations. This supports flexible data access patterns while maintaining merge properties.

What happens if two replicas make concurrent updates to the same data?

CRDTs guarantee both replicas automatically converge to the same final state without coordination. The Skill's merge semantics are commutative and associative, so the order of updates doesn't matter—both paths produce identical results.