Keysmith Lens documentation

Chapter 03

Reading the page

What the overview, rule tracking, request composition, segments and flags each answer.

Layers

Every piece of text in a request belongs to one layer:

Layer What it is
system System prompt, instructions, developer messages, and messages with role system
user User messages, including reminders the agent itself inserts there
assistant Earlier replies from the model
tool call Tool calls the model made
tool result What tools returned
tool schema The tool list sent with the request

Color only tells layers apart; every cell also names its layer.

Overview

One row per run, one column per rule. A cell is the layer where the rule first arrived; a ring means it never appeared in any agent request. On the right: the request count and the number of serious flags (never delivered, dropped). Click a row to replay it.

Rule tracking

One row per rule file, one column per request. See where a rule starts, where it drops, and whether it comes back. A striped cell is partly present; ×2 means the rule appears in two places in that request. Faded columns are side requests.

What the model was sent

Each request is a bar, its length in proportion to its characters, split by layer, with thin ticks where rule text sits. Hover for each layer’s size and share.

Piece by piece

The selected request split into segments, in request order: the layer, where the segment sits in the request JSON (for example messages[3].content[0]), and its size. “new” means the text was not in the previous agent request. Open a segment for its raw text, rule lines highlighted.

The address follows you as lens.html#run=<name>&step=<n>; copy it to reopen the same run and request. ?lang=zh|en switches language and ?theme=light|dark the theme.

Something wrong or unclear? Tell us on GitHub