---
title: "home"
description: "The person's home folder, /zero/home/<username>: their own files, carried from world to world in the editor."
section: "API Reference"
slug: "api-home"
canonical: "https://origozero.ai/docs/api-home"
updated: "2026-10-16T20:06:46.805125582+00:00"
tags: ["api", "reference"]
---

# home

The person's home folder, `/zero/home/<username>`: their own files, carried from world to world in the editor. It is the content of the account's home world, an ordinary private world the account owns, mounted in every world the person opens in their own editor sessions. A write under the folder is saved to the home world as it is made, with no commit or push. World content cannot depend on it: a world script that requires a home module is refused, and a world file that references a home path is refused at push, naming the file. The person's own `execute` and a home module requiring another in the same folder work.

Read and write the folder with `vfs` like any other path; `home.status()`
says whether it is mounted and, when it is not, why. `guides { path:
"core/home" }` covers what to keep there and the rule that keeps it out
of worlds.

```lua
require("@builtin::modules.api.engine.home") -- home (also available as global 'home')
```

The `home` namespace: 6 functions.

## globals/home/folder {#globals-home-folder}

```lua
home.folder() -> (string?, string?)
```

The home folder mounted in this session, `/zero/home/<username>`,
or nil and the reason no home folder is mounted.

**Returns** `(string?, string?)` the folder, or nil and why there is none.

```lua
local folder, why = home.folder()
```

## globals/home/status {#globals-home-status}

```lua
home.status() -> Status
```

Where the home folder stands in this session. `state` is
`"mounted"` (with `folder`, the path to read and write, `owner`, the
account it belongs to, `world`, the guid of the home world that holds it,
`files`, how many files the home world held when it was mounted, and
`from`, `"launch"` or `"zeromind"`, saying where that world was named),
`"mounting"` while a world load is mounting it, or `"unmounted"` with
`reason` saying why no home folder is mounted.

**Returns** `Status` — The home folder's status.

```lua
local s = home.status(); if s.state == "mounted" then vfs.write(s.folder .. "/notes.md", "hi") end
```

## modules/home/folder {#modules-home-folder}

```lua
folder(): (string?, string?)
```

The home folder mounted in this session, `/zero/home/<username>`,
or nil and the reason no home folder is mounted.

```lua
local folder, why = home.folder()
```

## modules/home/status {#modules-home-status}

```lua
status(): Status
```

Where the home folder stands in this session. `state` is
`"mounted"` (with `folder`, the path to read and write, `owner`, the
account it belongs to, `world`, the guid of the home world that holds it,
`files`, how many files the home world held when it was mounted, and
`from`, `"launch"` or `"zeromind"`, saying where that world was named),
`"mounting"` while a world load is mounting it, or `"unmounted"` with
`reason` saying why no home folder is mounted.

```lua
local s = home.status(); if s.state == "mounted" then vfs.write(s.folder .. "/notes.md", "hi") end
```

## typed/builtin//modules/api/engine/home/home/folder {#typed-builtin-modules-api-engine-home-home-folder}

```lua
home.folder() -> (string?, string?)
```

The home folder mounted in this session, `/zero/home/<username>`,
or nil and the reason no home folder is mounted.

**Returns** `(string?, string?)` the folder, or nil and why there is none.

```lua
local folder, why = home.folder()
```

## typed/builtin//modules/api/engine/home/home/status {#typed-builtin-modules-api-engine-home-home-status}

```lua
home.status() -> Status
```

Where the home folder stands in this session. `state` is
`"mounted"` (with `folder`, the path to read and write, `owner`, the
account it belongs to, `world`, the guid of the home world that holds it,
`files`, how many files the home world held when it was mounted, and
`from`, `"launch"` or `"zeromind"`, saying where that world was named),
`"mounting"` while a world load is mounting it, or `"unmounted"` with
`reason` saying why no home folder is mounted.

**Returns** `Status` — The home folder's status.

```lua
local s = home.status(); if s.state == "mounted" then vfs.write(s.folder .. "/notes.md", "hi") end
```
