Agent Profiler
Profile and classify agent behavior patterns from traces using transition matrices and tool distributions.
Installation
pip install agent-profiler
Quick Start
Profile a Session
# Profile and classify behavior
aprof profile trace.jsonl
# Save results to JSON
aprof profile trace.jsonl -o results.json
Classify Behavior
aprof classify trace.jsonl
Generate Visualizations
aprof visualize trace.jsonl --output profile_chart.png
Programming API
from agent_profiler import AgentProfiler, BehaviorClassifier, ProfileVisualizer
# Profile a session
profiler = AgentProfiler()
result = profiler.profile("trace.jsonl")
print(f"Category: {result.category} (confidence: {result.confidence:.1%})")
print(f"Tool distribution: {result.tool_distribution.tool_counts}")
# Classify directly
classifier = BehaviorClassifier()
category, confidence, scores = classifier.classify(
edit_ratio=0.25, read_ratio=0.15, bash_ratio=0.30,
error_rate=0.4, error_recovery_rate=0.35
)
# Generate visualizations
visualizer = ProfileVisualizer()
visualizer.generate_profile_chart(result, output="profile.png")
visualizer.generate_transition_heatmap("trace.jsonl", output="heatmap.png")
visualizer.generate_tool_distribution_pie("trace.jsonl", output="tools.png")
Behavior Categories
| Category | Description | Key Indicators |
|---|---|---|
| Debugging | Active debugging sessions | High Edit+Bash, many errors, recoveries |
| Building | Feature development | High Write+Bash, low Read |
| Exploring | Code investigation | High Read+Grep, low Edit |
| Lost | Confused/circular behavior | Circular transitions, high Read |
| Verifying | Change verification | Read after Edit, test runs |
License
MIT
Ecosystem
Part of the FableForge ecosystem — 21 open-source projects built from 210K real agent traces:
| Project | Description |
|---|---|
| Anvil | Self-verified coding agent |
| VerifyLoop | Plan→Execute→Verify→Recover framework |
| ErrorRecovery | Self-healing middleware (3,725 error patterns) |
| FableForge-14B | The fine-tuned 14B model (4-stage training) |
| ShellWhisperer | 1.5B edge agent (phone/RPi, 50ms) |
| ReasonCritic | Verification model (130 benchmark tasks) |
| TraceCompiler | Compile traces → LoRA skills |
| AgentRuntime | Persistent agent daemon (systemd for AI) |
| AgentSwarm | Multi-agent from real trace transitions |
| AgentTelemetry | Datadog for agents (token tracking, costs) |
| BenchAgent | HumanEval for tool-use (107 tasks) |
| AgentDev | VSCode extension with verification |
| TraceViz | Trace replay visualizer (Next.js) |
| AgentSkills | npm for agent behaviors |
| AgentCurriculum | 5-stage progressive training |
| AgentFuzzer | Adversarial testing for agents |
| AgentConstitution | Safety guardrails from traces |
| CostOptimizer | Token cost reduction (50-80%) |
| AgentProfiler | Behavioral fingerprinting |
| TrajectoryDistiller | Trace→training data pipeline |
| Fable5-Dataset | HuggingFace dataset release |
Release files for fableforge-agent-profiler 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| fableforge_agent_profiler-0.1.0.tar.gz | 13.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| fableforge_agent_profiler-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 27.6 kB
Release files / fableforge_agent_profiler-0.1.0.tar.gz
| Download URL | fableforge_agent_profiler-0.1.0.tar.gz |
|---|---|
| Size | 13.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
eac07dd979099f9a92b56c0f74b13b0f9591656b7e4767c47752b79a58ba79fd
|
|
BLAKE2b-256 checksum How to use checksums |
9dce9738bb52fd03894d25ba3397a87cb7e4d25844d4184a8b61eb2bc555c8a5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jun 14, 2026.
Transparency logRelease files / fableforge_agent_profiler-0.1.0-py3-none-any.whl
| Download URL | fableforge_agent_profiler-0.1.0-py3-none-any.whl |
|---|---|
| Size | 14.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
f09f4cba9491d10536210bb5dcf787d8ce749405c52c2155001b0296a370d4b5
|
|
BLAKE2b-256 checksum How to use checksums |
1874ff8daa1c2fba66dfe6a58aac673911713454e149a16ec7f0dd24e1e0f809
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jun 14, 2026.
Transparency log