mtron

Write and evaluate mtron expressions to traverse and manipulate the metatron uri/obj graph.

3|1|Updated Aug 22, 2025
One-click install
npx skills add https://github.com/phaseshift-studio/metatron --skill mtron-phaseshift-studio
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: mtron
Source: https://github.com/phaseshift-studio/metatron/tree/main/docs/website/skills/mtron
Command: npx skills add https://github.com/phaseshift-studio/metatron --skill mtron-phaseshift-studio

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and references (resource) and assets (resource) components.

What problem does it solve? Working with the metatron virtual machine requires fluency in mtron, its functional, monadic graph-traversal language, whose sugar operators, type system, and space abstractions are unfamiliar to most developers. This Skill teaches an agent how to read, write, and reason about mtron code so it can store, query, and transform data across metatron spaces without guessing at instruction signatures. ## Core Features & Use Cases - Graph CRUD and traversal: Write objs to uri addresses with ->, dereference with * (clone) or @ (anchor), and navigate paths with >>/repeat across the metatron split graph. - Type system and validation: Define structural types with predicates, validate values via .as(type::T), and work with mono, poly, and call types including coefficients and multisets. - Space integrations: Manipulate Docker resources via dckrspace, relational databases via tblespace, filesystems via fsspace, and web/MCP services, all through one uniform uri syntax. - Use Case: Ask the agent to spin up a SQLite container through dckrspace, mount it as a tblespace, insert rows, and run a filtered query, all expressed as mtron expressions. ## Quick Start Ask the agent to explain and evaluate an mtron expression such as building a small graph under /a and then traversing it with rshift, consulting the language reference when needed.

Frequently Asked Questions about mtron

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

FAQPage Schema
How do I write and read data in the mtron language?

Use the `->` (ref) instruction to write an obj to a uri address, such as `/a/x -> 1`. Read it back with `*uri` for a cloned copy or `@uri` for an anchored reference whose edits propagate to the source obj.

What is mtron and how does it relate to metatron?

mtron is the functional, fluent, monadic language used to control the metatron virtual machine. Metatron structures data as a split graph of uris and objs, and mtron expressions define traverser paths through that graph using serial compose and parallel branch.

How do I find the signature of an mtron instruction?

Append the `?docq` query processor to any instruction, for example `*plus?docq`, to retrieve its domain, range, arguments, description, and usage examples. The Skill explicitly directs agents to read instruction documentation before executing code.

Can mtron manage Docker containers and databases?

Yes. dckrspace exposes Docker images, containers, volumes, networks, and compose stacks as uri-addressable objs, while tblespace mounts JDBC databases so tables can be created and queried with the same mtron read and write syntax.

What types does the mtron type system support?

mtron supports mono types (bool, bytes, int, real, str, uri), poly types (rel, lst, rec), and call types (inst). Types can be refined with predicates, validated structurally via `.as(type::T)`, and combined with coefficients for multiset semantics.

Why does my mtron expression return a fail obj?

Failures are returned as `fail::[...]` objs stored under `/sys/fail/`, often from argument mismatches or backend errors like a Docker CLI exit code. Inspect the fail message and verify instruction signatures with `?docq` before retrying.