Skip to content

Repository files navigation

devpersona

CI License: MIT Node

Builds a developer character profile from your local coding-agent history and turns it into skill, coding-habit and architecture suggestions. Claude Code, Codex CLI and Gemini CLI are read through one shared adapter, so a project you worked on in more than one agent appears once, with the agents named.

Everything runs locally — nothing ever leaves your machine.

Site: https://hailneed.github.io/devpersona/ · Türkçe açıklama aşağıda.

What it looks like

$ npx --yes github:hailneed/devpersona --md
# Coding agent usage profile

Source: Claude Code, Codex CLI · 367 sessions scanned

## Totals

| | |
|---|---|
| Projects | 74 |
| Sessions | 367 |
| Human prompts | 1007 |
| Tool calls | 26222 |
| Tool errors | 888 |
| Permission denials | 64 |
| Avg prompt length (chars) | 1720 |

## Work rhythm

- Peak hours: 11:00 (125), 15:00 (123), 16:00 (101)
- Peak days: Monday (265), Tuesday (256), Friday (177)
- Hours are in this machine's local timezone.

## Projects (by prompt count)

| Project       | Agents             | Sessions | Prompts | Languages              | Top commands             |
|---------------|--------------------|----------|---------|------------------------|--------------------------|
| my-web-app    | claude-code, codex | 10       | 82      | C#, JavaScript, Razor  | dotnet test, git commit  |
| data-pipeline | claude-code        | 8        | 64      | Python, SQL, Markdown  | python, pytest, git push |

Those totals are a real run on a real machine — 26,222 tool calls across 367 sessions, and 888 of those calls errored. The project rows are illustrative; the real ones carry directory names.

This report was generated entirely locally; no data left this machine.

What it does

Coding agents record every session onto your machine. This plugin reads those logs and produces three things:

Command What you get
/devpersona:stats Numeric usage profile: projects, sessions, prompts, tools, errors, peak hours
/devpersona:analyze Persona card: your stack, working style, communication style, strengths and risk patterns — every claim with an evidence citation
/devpersona:advise [skills|code|architecture] Suggestions built on that card: skills worth authoring (drafts included), coding-habit fixes, architecture recommendations

The analysis draws on two layers: the numeric patterns in the logs (which languages, which commands, error rate, work rhythm) and the auto-memory files Claude Code accumulates per project (facts distilled from past conversations).

Which agents are read

Agent Log path Status
Claude Code ~/.claude/projects/*.jsonl verified
Codex CLI ~/.codex/sessions/**/rollout-*.jsonl verified
Gemini CLI ~/.gemini/tmp/**/*.json unverified — written against the documented layout; skipped silently if no logs exist

Narrow to one agent with --agent <id>, or shorten the window with --days N. Only Claude Code writes auto-memory files; on the other agents that layer stays empty and the report says so.

Privacy

  • The scanner (scripts/scan.mjs) puts no raw chat text in its default output — only numbers, file names and session titles. Be aware that session titles are short AI-generated summaries derived from chat content, so review the output before sharing it with anyone.
  • Raw prompt samples are printed only when you explicitly ask (--prompts <project>), and only to your terminal.
  • Nothing is sent over the network. Interpretation happens inside the Claude Code session you are already running.

Install

# Inside Claude Code:
/plugin marketplace add hailneed/plugins
/plugin install devpersona@hailneed

Then:

/devpersona:analyze

Requirements

Claude Code + Node.js 18+ (for the scanner). No dependencies, no API key.

Without the plugin

The scanner runs on its own — you can get the numeric report without installing anything:

git clone https://github.com/hailneed/devpersona
cd devpersona

node scripts/scan.mjs --md              # English report (default)
node scripts/scan.mjs --md --lang tr    # Turkish report
node scripts/scan.mjs --agent codex     # limit to one agent
node scripts/scan.mjs --days 90         # last 90 days
node scripts/scan.mjs --out profile.json
node scripts/scan.mjs --selftest        # classifier self-test (no network/disk)

An unrecognised flag exits 2 rather than being ignored, so a typo fails instead of quietly scanning something else.

How it works

  1. scripts/lib/adapters.mjs (the shared adapter layer of the agentlens family) turns each agent's log into one event schema. scan.mjs separates human prompts from tool injections, derives languages from the extensions of edited files and command habits from shell calls, and groups projects by working directory — so a project worked on in two agents is not counted twice.
  2. The analyze skill combines those numbers, the project memory files and a small prompt sample into an evidence-cited persona card (~/.claude/persona/persona.md).
  3. The advise skill turns every observation on the card into a concrete suggestion — a suggestion with no evidence behind it does not make it into the report.

License

MIT.


Türkçe

devpersona, yerel kodlama ajanı geçmişinden geliştirici karakterini çıkarır ve ona göre skill, kod alışkanlığı ve mimari önerileri üretir. Claude Code, Codex CLI ve Gemini CLI tek bir adaptör katmanından okunur; birden çok ajanda çalıştığın bir proje tek profilde birleşir, ajanlar adıyla listelenir.

  • /devpersona:stats — sayısal kullanım profili: proje, oturum, prompt, araç, hata, en yoğun saatler
  • /devpersona:analyzekarakter kartı: yığının, çalışma tarzın, iletişim üslubun, güçlü yanların, risk desenlerin — her iddia kanıt atıflı
  • /devpersona:advise [skills|code|architecture] — karta dayanan öneriler: yazmaya değer skill'ler (taslak dahil), kod alışkanlığı düzeltmeleri, mimari tavsiyeler

Gizlilik: tarayıcının varsayılan çıktısında ham sohbet metni yoktur — yalnızca sayılar, dosya adları ve oturum başlıkları. Oturum başlıkları sohbet içeriğinden üretilmiş kısa özetlerdir; çıktıyı paylaşacaksan önce göz at. Ham prompt örneklemi yalnızca açıkça --prompts <proje> istendiğinde ve yalnızca ekrana yazılır. Hiçbir şey ağa gönderilmez.

Çıktı varsayılan olarak İngilizcedir; Türkçe için --lang tr ver:

node scripts/scan.mjs --md --lang tr
/plugin marketplace add hailneed/plugins
/plugin install devpersona@hailneed

About

Builds a developer character profile from your local coding-agent history, then turns it into skill, habit and architecture suggestions. Runs entirely on your machine.

Topics

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages