# `Wardrik.Activity`

What an agent is doing now.

  * `:doing` - every tool call running, oldest first, or else the one thing it's doing. Each is
    the protocol's `doing` map.
  * `:since` - when it started.
  * `:pending` - how many messages wait behind it.

# `t`

```elixir
@type t() :: %Wardrik.Activity{doing: term(), pending: term(), since: term()}
```

# `from_json`

```elixir
@spec from_json(map()) :: t()
```

Builds one from the protocol's JSON.

# `to_json`

```elixir
@spec to_json(t()) :: map()
```

Returns it as the protocol's JSON, without fields that are `nil`.

---

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