# `Agentic.Workspace.Identity`

Workspace identity file detection and status.

Determines workspace identity status: fresh (no files), partial (some),
or established (all present). Used by ContextAssembler for prompt assembly.

# `status`

```elixir
@type status() :: :fresh | :partial | :established
```

# `all_files`

The list of all workspace files.

# `check`

```elixir
@spec check(String.t() | Agentic.Storage.Context.t()) :: %{
  status: status(),
  present: [String.t()],
  missing: [String.t()]
}
```

Check the identity status of a workspace.

Returns a map with:
- `:status` — `:fresh` (no identity files), `:partial` (some), or `:established` (all three)
- `:present` — list of existing identity files
- `:missing` — list of missing identity files

# `identity_files`

The list of core identity files that trigger onboarding.

# `read_all_files`

```elixir
@spec read_all_files(String.t() | Agentic.Storage.Context.t()) :: %{
  required(String.t()) =&gt; String.t() | nil
}
```

Read all workspace files, returning a map of filename to content.

Missing files have `nil` as their value.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
