slickit
Semantic, LLM-Interpretable Component Kit. Foundation types for composable components.
What
Three types that let components be discovered, composed, and instantiated across languages:
Manifest— structural surface (type_url, source, requires, provides, relations)TypedStruct— typed data envelope (type_url + opaque JSON value)TypedRegistry— type_url → factory → instance
MSG framework: Manifest = Mechanics. Skills = Semantics. Governance = external.
Install
# Rust
# Python
# TypeScript (npm publish pending)
Usage
Rust
use ;
use HashMap;
// Describe a component
let manifest = Manifest ;
// Register and instantiate
let registry = new
.register
.build;
let instance = registry.create.unwrap;
Python
=
=
=
TypeScript
import { Manifest } from "slickit";
const manifest = Manifest.fromObject({
type_url: "cix.commands.v1.Recon",
source: "git+https://github.com/mox-labs/tools/recon",
requires: ["cix.v1.Target"],
provides: ["cix.v1.ReconReport"],
relations: { skills: ["git+https://github.com/mox-labs/skills/recon"] },
});
console.log(manifest.typeUrl); // "cix.commands.v1.Recon"
Manifest
Five fields. Pure structure.
type_url: cix.commands.v1.Recon
source: git+https://github.com/mox-labs/tools/recon
requires:
provides:
relations:
skills:
tested_with:
- type_url — globally unique identity (namespace convention for kind)
- source — where it lives (git URL, local path)
- requires — input port declarations
- provides — output port declarations
- relations — extensible typed edges (skills, tested_with, replaces, etc.)
Dependencies
serde + serde_json. Nothing else.
License
Apache-2.0 — see LICENSE.