evolve-lite:provenance
Analyze saved trajectories and recall audit events offline to record whether recalled guidelines influenced completed sessions.
Best use case
evolve-lite:provenance is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Analyze saved trajectories and recall audit events offline to record whether recalled guidelines influenced completed sessions.
Teams using evolve-lite:provenance should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/evolve-lite-provenance/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How evolve-lite:provenance Compares
| Feature / Agent | evolve-lite:provenance | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Analyze saved trajectories and recall audit events offline to record whether recalled guidelines influenced completed sessions.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# Provenance Analyzer
## Overview
This skill runs after one or more sessions have completed. It reads saved trajectories from `.evolve/trajectories/`, matches them to `recall` events in `.evolve/audit.log`, and records post-hoc `influence` events for recalled guidelines.
Use this skill when you want to compute usage provenance without coupling the work to the live learn step.
## Workflow
### Step 1: Load Recall Events
Read `.evolve/audit.log` as JSONL. Find entries where `event == "recall"` and `entities` is a non-empty list.
Skip any recall event that already has `influence` entries for the same `session_id` and entity ids. Do not write duplicate influence records.
### Step 2: Locate Saved Trajectories
List `.evolve/trajectories/` and match each recall event to a trajectory by `session_id`.
Matching strategy (in order):
1. `claude-transcript_<session-id>.jsonl` - the stop-hook transcript dump; the session id is in the filename.
2. `trajectory_<timestamp>_<session-id>.json` - written by the evolve-lite:save-trajectory skill when a session id is available. Match on the `<session-id>` slice of the filename.
3. `trajectory_<timestamp>.json` - open the file and match its top-level `session_id` field against the recall event. Only fall back to this step when the filename alone does not identify the session.
If none of the above yields a confident match for a recall event, skip it. Do not guess.
### Step 3: Read Recalled Entities
For each recalled entity id, open `.evolve/entities/<id>.md`. The id is a path relative to `.evolve/entities/` without the `.md` suffix, such as `guideline/foo` or `subscribed/alice/guideline/foo`.
Read the entity content and trigger. Skip ids whose files are missing.
### Step 4: Assess Influence
Compare each recalled entity with the matched trajectory. Pick exactly one verdict:
- `followed` - the agent's actual actions are consistent with the guideline.
- `contradicted` - the guideline applied, but the agent did the opposite or repeated the avoidable dead end.
- `not_applicable` - the guideline was recalled but did not apply to this session.
Keep `evidence` to one short sentence citing a concrete action, tool call, or absence in the trajectory.
### Step 5: Write Influence Events
Pipe one JSON payload per assessed session to the helper:
```bash
echo '{
"session_id": "<session-id>",
"assessments": [
{"entity": "guideline/<slug>", "verdict": "followed", "evidence": "Agent used the saved parser before trying shell fallbacks."}
]
}' | python3 .bob/skills/evolve-lite-provenance/scripts/log_influence.py
```
The `entity` value must match exactly what appeared in the recall event, including any `subscribed/<source>/` prefix.
It is valid to emit an empty `assessments` list when recall events exist but no recalled guideline can be assessed.Related Skills
provenance
Analyze saved trajectories and recall audit events offline to record whether recalled guidelines influenced completed sessions.
evolve-lite:unsubscribe
Remove a repo from the unified repos list and delete its local clone.
evolve-lite:sync
Pull the latest guidelines from every configured repo (read- and write-scope).
evolve-lite:subscribe
Add a shared guidelines repo (read-scope subscription or write-scope publish target) to the unified repos list.
evolve-lite:save
Captures the current session's successful workflow and saves it as a reusable skill with SKILL.md and helper scripts
evolve-lite:save-trajectory
Save the current conversation as a trajectory JSON file in OpenAI chat completion format for analysis and fine-tuning
evolve-lite:recall
Must be used at the start of any non-trivial task involving code changes, debugging, repo exploration, file inspection, or environment/tooling investigation to surface stored guidance before analysis or tool use.
evolve-lite:publish
Publish a private guideline to a configured write-scope repo.
evolve-lite:learn
Must be used near the end of any non-trivial turn that produced potentially reusable tools, guidance, errors, workarounds, or workflows, so those lessons are saved for future turns.
unsubscribe
Remove a repo from the unified repos list and delete its local clone.
sync
Pull the latest guidelines from every configured repo (read- and write-scope).
subscribe
Add a shared guidelines repo (read-scope subscription or write-scope publish target) to the unified repos list.