| name | effect-collections-datastructs |
| description | Value-based data structures (Data.struct, tuple, array) and high-performance collections (Chunk, HashSet). Use for safe comparisons and pipelines. |
| allowed-tools | Read, Grep, Glob, Edit, Write |
Data Structures & Collections
Structural Equality
import { Data, Equal } from "effect"
const a = Data.struct({ id: 1, name: "A" })
const b = Data.struct({ id: 1, name: "A" })
Equal.equals(a, b) // true
Tuples & Arrays
const t = Data.tuple(1, "x")
const arr = Data.array([1,2,3])
Chunk
import { Chunk } from "effect"
const items = Chunk.fromIterable([1,2,3])
HashSet
import { HashSet } from "effect"
const set = HashSet.fromIterable([1,2,3])
Local Source Reference
CRITICAL: Search local Effect source before implementing
The full Effect source code is available at docs/effect-source/. Always search the actual implementation before writing Effect code.
Key Source Files
- Data:
docs/effect-source/effect/src/Data.ts - Chunk:
docs/effect-source/effect/src/Chunk.ts - HashSet:
docs/effect-source/effect/src/HashSet.ts - Equal:
docs/effect-source/effect/src/Equal.ts
Example Searches
# Find Data.struct and equality patterns
grep -F "Data.struct" docs/effect-source/effect/src/Data.ts
grep -F "Data.tuple" docs/effect-source/effect/src/Data.ts
# Find Chunk operations
grep -F "export" docs/effect-source/effect/src/Chunk.ts | grep -F "function"
# Study HashSet API
grep -F "export" docs/effect-source/effect/src/HashSet.ts | grep -F "function"
# Find Equal implementation
grep -F "equals" docs/effect-source/effect/src/Equal.ts
Workflow
- Identify the collection API you need (e.g., Chunk, HashSet)
- Search
docs/effect-source/effect/src/for the implementation - Study the types and available operations
- Look at test files for usage examples
- Write your code based on real implementations
Real source code > documentation > assumptions
References
- Agent Skills overview: https://www.anthropic.com/news/skills
- Skills guide: https://docs.claude.com/en/docs/claude-code/skills