# ol.llx.agent.schema

_platforms: clj, cljs_

## state-atom?

### clj

_platforms: clj_

```clojure
(state-atom? x)
```

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/agent/schema.cljc#L13-L16)

### cljs

_platforms: cljs_

```clojure
(state-atom? x)
```

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/agent/schema.cljc#L13-L16)

---

## queue?

### clj

_platforms: clj_

```clojure
(queue? coll)
```

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/agent/schema.cljc#L18-L21)

### cljs

_platforms: cljs_

```clojure
(queue? coll)
```

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/agent/schema.cljc#L18-L21)

---

## multiplexer?

### clj

_platforms: clj_

```clojure
(multiplexer? x)
```

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/agent/schema.cljc#L23-L25)

### cljs

_platforms: cljs_

```clojure
(multiplexer? x)
```

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/agent/schema.cljc#L23-L25)

---

## schema-registry?

### clj

_platforms: clj_

```clojure
(schema-registry? x)
```

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/agent/schema.cljc#L27-L29)

### cljs

_platforms: cljs_

```clojure
(schema-registry? x)
```

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/agent/schema.cljc#L27-L29)

---

## canonical-message-roles

### clj

_platforms: clj_

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/agent/schema.cljc#L31-L31)

### cljs

_platforms: cljs_

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/agent/schema.cljc#L31-L31)

---

## custom-message-role?

### clj

_platforms: clj_

```clojure
(custom-message-role? role)
```

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/agent/schema.cljc#L33-L36)

### cljs

_platforms: cljs_

```clojure
(custom-message-role? role)
```

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/agent/schema.cljc#L33-L36)

---

## message-dispatch

### clj

_platforms: clj_

```clojure
(message-dispatch message)
```

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/agent/schema.cljc#L38-L40)

### cljs

_platforms: cljs_

```clojure
(message-dispatch message)
```

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/agent/schema.cljc#L38-L40)

---

## schemas

### clj

_platforms: clj_

```clojure
(schemas {:keys [custom-message-schemas]})
```

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/agent/schema.cljc#L47-L513)

### cljs

_platforms: cljs_

```clojure
(schemas {:keys [custom-message-schemas]})
```

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/agent/schema.cljc#L47-L513)

---

## custom-schemas

### clj

_platforms: clj_

```clojure
(custom-schemas opts)
```

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/agent/schema.cljc#L515-L518)

### cljs

_platforms: cljs_

```clojure
(custom-schemas opts)
```

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/agent/schema.cljc#L515-L518)

---

## registry

### clj

_platforms: clj_

```clojure
(registry opts)
```

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/agent/schema.cljc#L520-L524)

### cljs

_platforms: cljs_

```clojure
(registry opts)
```

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/agent/schema.cljc#L520-L524)

---

## validate!

### clj

_platforms: clj_

```clojure
(validate! schema-registry schema-id data)
```

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/agent/schema.cljc#L529-L538)

### cljs

_platforms: cljs_

```clojure
(validate! schema-registry schema-id data)
```

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/agent/schema.cljc#L529-L538)
