Help us improve
Share bugs, ideas, or general feedback.
Share bugs, ideas, or general feedback.
Share bugs, ideas, or general feedback.
By francismiko
Agent behavior recording layer for Claude Code — local-first JSONL, side-effect only, uploads to team backend
npx claudepluginhub francismiko/harness-trace --plugin harness-traceMatches all tools
Hooks run on every tool call, not just specific ones
Share bugs, ideas, or general feedback.
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge.
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge.
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
This plugin requires configuration values that are prompted when the plugin is enabled. Sensitive values are stored in your system keychain.
ingest_tokenIngest API auth token (leave empty if endpoint requires no auth)
${user_config.ingest_token}ingest_endpointTeam ingest API endpoint (leave empty for local-only mode, e.g. https://harness-ingest.internal)
${user_config.ingest_endpoint}Ultra-compressed communication mode. Cuts ~75% of tokens while keeping full technical accuracy by speaking like a caveman.
Memory compression system for Claude Code - persist context across sessions
Multi-model consensus engine integrating OpenAI Codex CLI, Gemini CLI, and Claude CLI for collaborative code review and problem-solving.
Curate auto-memory, promote learnings to CLAUDE.md and rules, extract proven patterns into reusable skills.
Agent behavior recording layer for Claude Code. Records structured side-effect events (tool calls, skill activations, file I/O, git state) to local JSONL and uploads asynchronously to a team backend. Distributed as a Claude Code Plugin.
This is a recording layer. Analysis, dashboards, governance, and decisions belong to downstream projects in the harness-* family.
Recommended: install at project scope per team repo. The plugin binds to the repo, travels with git, and leaves personal projects untouched.
# Add the team marketplace (once per user)
/plugin marketplace add <your-team-marketplace-url>
# In each team repo where you want tracking:
cd <team-repo>
/plugin install harness-trace --scope project
This writes .claude/settings.json with an enabledPlugins entry (commit it — teammates will be auto-prompted to install when they git pull).
Claude Code will prompt for ingest_endpoint (optional — leave empty for local-only mode) and ingest_token (optional).
Less common alternatives:
--scope user: enable for all projects on your machine. Fine if you want telemetry everywhere.--scope managed: admin-enforced via organization settings.--scope local: per-repo override that stays out of git (via .claude/settings.local.json).To disable in a specific repo you do want tracked by default, add to .claude/settings.local.json:
{ "enabledPlugins": { "harness-trace@<marketplace>": false } }
Use official Claude Code commands:
/plugin disable harness-trace
/plugin enable harness-trace
/plugin uninstall harness-trace
/harness-trace:status — local collection health (last event age, queue depth, upload lag, errors)/harness-trace:push — manually trigger uploadRecords (structured metadata only):
Does NOT record (internal state):
Hard guarantees (enforced in code):
(path, blob_sha, range) stored${CLAUDE_PLUGIN_DATA}/events-YYYY-MM-DD.jsonl${CLAUDE_PLUGIN_DATA}/state/upload-offset.json.git/harness-repo-id (written once, stable across remote migrations)${CLAUDE_PLUGIN_DATA} resolves to ~/.claude/plugins/data/harness-trace-<marketplace>/.
MIT