Blame an entity
blameTrace the most recent change to any code entity, including who, when, why, and whether it is active, reverted, or superseded, to understand its provenance.
Instructions
Most recent change to an entity — what changed, when, who, why.
Like git blame but for semantic entities (DB columns, functions, env
vars, dependencies) and AI agents. Also carries the derived decision
state: status (active / reverted / reopened) and
superseded_by (id of a later supersede overriding this change, or
""). If no history exists for the entity, returns {"error": "..."}
with protocol-level isError: false.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| entity_path | Yes | Exact entity path (no prefix matching). Examples: 'users.email', 'src/auth.py::login', 'env/STRIPE_SECRET_KEY'. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| diff | Yes | ||
| agent | Yes | ||
| error | Yes | ||
| status | Yes | ||
| project | Yes | ||
| metadata | Yes | ||
| reasoning | Yes | ||
| timestamp | Yes | ||
| constraint | Yes | ||
| git_commit | Yes | ||
| session_id | Yes | ||
| stale_when | Yes | ||
| supersedes | Yes | ||
| change_type | Yes | ||
| entity_path | Yes | ||
| entity_type | Yes | ||
| changeset_id | Yes | ||
| expires_when | Yes | ||
| revisit_after | Yes | ||
| superseded_by | Yes |