← Receivers

world:declare-types

world family

Persist a resource-type manifest for the caller's workspace; pass a template name (e.g. ecommerce) to seed from a built-in, or explicit types

Effect
ask
Awaits an outcome — the call returns the response below.
Caller
manage_things
The class of authority the caller must already hold, decided from the attested context with no round trip.
Reversible
yes
The effect can be undone by a later call.

Send it with your agent

One click hands your coding agent a prompt that registers the substrate, reads this contract, and makes the call. Launch opens the app; the others copy the prompt.

Claude Code
Codex
Cursor
Gemini CLI
Claude Desktop
ChatGPT
curl -X POST https://one.ie/api/ask/world:declare-types \
  -H "Authorization: Bearer $ONE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"data": { "group": <string> }}'

The key is never in a link. npx -y @oneie/cli login writes it to ~/.config/oneie/key on your machine.

Request

Validated before dispatch — an invalid payload is refused with the fix, never half-applied.

  • group string required
  • types object[] optional
  • template string optional

Response

What comes back from the call.

  • ok true
  • count number

Traffic

Every call to world:declare-types, counted where it is dispatched — over HTTP or in-process alike. Aggregate only — no actor, no payload, no workspace.

Counting…

Wiring

Every place in the open source that names world:declare-types, and the file that answers it. Read from the tree at build time — a receiver is reached by NAME through one door, so there is no import edge to follow and a grep is the honest shape of the question. Structure, not volume — the count is in Traffic above.

Called from

UI 2
  • one.ie/web/src/components/data/TypesEditor.tsx:61
  • one.ie/web/src/components/views/OptionSelect.tsx:71
CLI 1
  • packages/cli/src/compiler.ts:233
JSON Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "group": {
      "type": "string"
    },
    "types": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string"
          },
          "label": {
            "type": "string"
          },
          "dimension": {
            "type": "string",
            "enum": [
              "groups",
              "actors",
              "things",
              "paths",
              "events",
              "learning"
            ]
          },
          "type": {
            "type": "string"
          },
          "icon": {
            "type": "string"
          },
          "columns": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "field": {
                  "type": "string"
                },
                "label": {
                  "type": "string"
                },
                "kind": {
                  "type": "string",
                  "enum": [
                    "text",
                    "number",
                    "currency",
                    "tags",
                    "select",
                    "image",
                    "date",
                    "relation",
                    "markdown"
                  ]
                },
                "required": {
                  "type": "boolean"
                },
                "options": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                },
                "maxChars": {
                  "type": "number"
                },
                "multiLine": {
                  "type": "boolean"
                }
              },
              "required": [
                "field",
                "label",
                "kind"
              ]
            }
          },
          "fields": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "field": {
                  "type": "string"
                },
                "label": {
                  "type": "string"
                },
                "kind": {
                  "type": "string",
                  "enum": [
                    "text",
                    "number",
                    "currency",
                    "tags",
                    "select",
                    "image",
                    "date",
                    "relation",
                    "markdown"
                  ]
                },
                "required": {
                  "type": "boolean"
                },
                "options": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                },
                "maxChars": {
                  "type": "number"
                },
                "multiLine": {
                  "type": "boolean"
                }
              },
              "required": [
                "field",
                "label",
                "kind"
              ]
            }
          },
          "filters": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "field": {
                  "type": "string"
                },
                "label": {
                  "type": "string"
                },
                "kind": {
                  "type": "string",
                  "enum": [
                    "text",
                    "number",
                    "currency",
                    "tags",
                    "select",
                    "image",
                    "date",
                    "relation",
                    "markdown"
                  ]
                },
                "required": {
                  "type": "boolean"
                },
                "options": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                },
                "maxChars": {
                  "type": "number"
                },
                "multiLine": {
                  "type": "boolean"
                }
              },
              "required": [
                "field",
                "label",
                "kind"
              ]
            }
          },
          "actions": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "bind": {
            "type": "string"
          },
          "render": {
            "type": "object",
            "properties": {
              "card": {
                "type": "string"
              },
              "detail": {
                "type": "string"
              }
            }
          }
        },
        "required": [
          "key",
          "label",
          "dimension",
          "type",
          "columns",
          "fields"
        ]
      }
    },
    "template": {
      "type": "string"
    }
  },
  "required": [
    "group"
  ]
}
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "ok": {
      "type": "boolean",
      "const": true
    },
    "count": {
      "type": "number"
    }
  },
  "required": [
    "ok",
    "count"
  ]
}