> ## Documentation Index
> Fetch the complete documentation index at: https://docs.otter-shell.org/llms.txt
> Use this file to discover all available pages before exploring further.

# otter-tools-core

> Pure-Zig helpers for small CLI tools: calc, emoji, clipboard, calendar, and more.

`otter-tools-core` is shared logic for small Otter utility apps. No Wayland, D-Bus, PipeWire, or rendering. Keep state bounded; keep UI in the app.

Small-app config schemas live in `app_configs.zig`, synced with `otter-settings` defaults.

Desktop search ships as a second build module, `otter_tools_search`, so only `otter-search` (and other embedders) pull in the index and fuzzy code.

## Documentation map

<CardGroup cols={2}>
  <Card title="Tool modules" icon="wrench" href="/developers/libraries/otter-tools-core/tool-modules">
    Calculator, emoji, clipboard, search, calendar, weather, color, record.
  </Card>

  <Card title="Theme helpers" icon="palette" href="/developers/libraries/otter-tools-core/theme-helpers">
    SplatHash, semantic palettes, and shared app configs.
  </Card>
</CardGroup>

## Module overview

| Module                       | Used by                                                       |
| ---------------------------- | ------------------------------------------------------------- |
| `calc`                       | `otter-calc`, `otter-launcher` (`=EXPR`)                      |
| `emoji`                      | `otter-emoji`, `otter-launcher` (`:QUERY`)                    |
| `clipboard` / `clip_history` | `otter-clip`, `otter-launcher`                                |
| `calendar`                   | `otter-cal`                                                   |
| `duration`                   | `otter-timer`                                                 |
| `weather`                    | `otter-weather`                                               |
| `color`                      | `otter-pick`                                                  |
| `record`                     | `otter-rec` encoder selection                                 |
| `search_client`              | `otter-searchctl`, `otter-launcher` (daemon protocol)         |
| `assist_client`              | `otter-assistctl`, `otter-assistant` (daemon socket protocol) |
| `otter_tools_search`         | `otter-search` daemon (Zig index and query core)              |
| `zidx`                       | Knowledge index helpers used by `otter-assist`                |

Clipboard helpers invoke `wl-copy` by name. Packaged installs shadow that binary with `otter-copy`.

## Dependencies

`otter-conf`, `otter-utils`. The `otter_tools_search` module also links `otter-config-types` for `search.Config`.
