一键导入
profile-user
Analyze Claude Code session history to generate a developer behavioral profile across 8 dimensions.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Analyze Claude Code session history to generate a developer behavioral profile across 8 dimensions.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Run multiple phases hands-free. Chains discuss, plan, build, and verify automatically.
Start a new project. Deep questioning, research, requirements, and roadmap.
Execute all plans in a phase. Spawns agents to build in parallel, commits atomically.
Configure settings: depth, model profiles, features, git, and gates.
Execute the next logical step automatically. No prompts, no decisions — just do it.
Systematic debugging with hypothesis testing. Persistent across sessions.
| name | profile-user |
| description | Analyze Claude Code session history to generate a developer behavioral profile across 8 dimensions. |
| allowed-tools | Read, Write, Bash, Glob, Grep, AskUserQuestion |
| argument-hint | [--sessions N] |
STOP -- DO NOT READ THIS FILE. You are already reading it. This prompt was injected into your context by Claude Code's plugin system. Using the Read tool on this SKILL.md file wastes tokens. Begin executing Step 0 immediately.
Before ANY tool calls, display this banner:
╔══════════════════════════════════════════════════════════════╗
║ PLAN-BUILD-RUN ► USER PROFILE ║
╚══════════════════════════════════════════════════════════════╝
Then proceed to Step 1.
You are running the profile-user skill. Your job is to analyze the user's Claude Code session history across 8 behavioral dimensions and generate a .planning/USER-PROFILE.md file with actionable insights. If insufficient session data exists, fall back to a short interactive questionnaire.
Check if the developer profiling feature is enabled:
pbr-tools config get developer_profile.enabled
false, empty, or the key is missing: tell the user to enable it first with /pbr:config set developer_profile.enabled true and STOP.true: proceed to Step 2.Find the Claude Code session log directory for this project:
# List ~/.claude/projects/ to find the encoded project path
ls -la ~/.claude/projects/
The directory name is the project root path with path separators replaced by -. For example, D:\Repos\plan-build-run becomes something like D--Repos-plan-build-run or D-Repos-plan-build-run.
Once found, list JSONL files sorted by modification time:
ls -lt ~/.claude/projects/{encoded-path}/*.jsonl 2>/dev/null | head -20
Count the files that are larger than 1KB:
find ~/.claude/projects/{encoded-path}/ -name "*.jsonl" -size +1k 2>/dev/null | wc -l
Read the 5 most recent session JSONL files. For each file, parse the JSON lines and extract behavioral signals.
For each session, scan type: "human" messages (user inputs) and type: "assistant" messages (responses) to detect patterns:
--auto flags?Score each dimension on a 3-point scale:
| Dimension | Low | Medium | High |
|---|---|---|---|
| Communication style | terse | balanced | detailed |
| Decision speed | fast | measured | deliberate |
| Debugging approach | delegation | intuitive | systematic |
| UX philosophy | function-first | balanced | polish-first |
| Code style | pragmatic | balanced | perfectionist |
| Review thoroughness | light | standard | deep |
| Risk tolerance | conservative | moderate | adventurous |
| Domain expertise | (list top 3-5 domains) |
After scoring, proceed to Step 6.
When insufficient session data is available, use AskUserQuestion to ask these 4 questions one at a time:
Question 1:
How do you prefer Claude to communicate? (a) Brief and direct (b) Balanced -- concise but with enough context (c) Detailed with thorough explanations
Question 2:
When you encounter a bug, do you prefer to: (a) Get a fix immediately -- just make it work (b) Understand the root cause first, then fix (c) Have Claude investigate and report back before changing anything
Question 3:
How important is code quality vs shipping speed? (a) Ship fast, refactor later (b) Balance both -- good enough quality, reasonable speed (c) Quality first, take the time needed
Question 4:
What is your primary domain? (e.g., backend, frontend, DevOps, data, mobile, full-stack)
| Answer | Dimension mappings |
|---|---|
| Q1=a | communication_style: terse, review_thoroughness: light |
| Q1=b | communication_style: balanced, review_thoroughness: standard |
| Q1=c | communication_style: detailed, review_thoroughness: deep |
| Q2=a | debugging_approach: delegation, decision_speed: fast |
| Q2=b | debugging_approach: systematic, decision_speed: measured |
| Q2=c | debugging_approach: systematic, decision_speed: deliberate |
| Q3=a | code_style: pragmatic, risk_tolerance: adventurous, ux_philosophy: function-first |
| Q3=b | code_style: balanced, risk_tolerance: moderate, ux_philosophy: balanced |
| Q3=c | code_style: perfectionist, risk_tolerance: conservative, ux_philosophy: balanced |
| Q4 | domain_expertise: [user's answer] |
After mapping, proceed to Step 6.
CRITICAL: Write USER-PROFILE.md NOW. Do not skip this step.
Write .planning/USER-PROFILE.md with the following structure:
---
generated: "{ISO date from node -e 'console.log(new Date().toISOString())'}"
source: "session-analysis" or "questionnaire"
sessions_analyzed: {N, or 0 for questionnaire}
dimensions:
communication_style: "{terse|balanced|detailed}"
decision_speed: "{fast|measured|deliberate}"
debugging_approach: "{delegation|intuitive|systematic}"
ux_philosophy: "{function-first|balanced|polish-first}"
code_style: "{pragmatic|balanced|perfectionist}"
review_thoroughness: "{light|standard|deep}"
risk_tolerance: "{conservative|moderate|adventurous}"
domain_expertise: ["{domain1}", "{domain2}"]
---
After the frontmatter, write a body section with 1-2 sentences per dimension explaining:
Example body format:
## Communication Style: balanced
You communicate with a mix of brief directives and contextual detail. Agents should
match this style -- provide enough explanation to be useful but avoid over-explaining
concepts you clearly understand.
## Decision Speed: measured
You take time to evaluate options before committing. Agents should present choices
clearly and wait for your input rather than assuming a default.
(... one section per dimension ...)
Reference: skills/shared/commit-planning-docs.md -- if planning.commit_docs is true, commit USER-PROFILE.md.
After writing USER-PROFILE.md, display a summary table:
Profile generated: .planning/USER-PROFILE.md
Source: {session-analysis|questionnaire}
| Dimension | Value |
|----------------------|----------------|
| Communication style | {value} |
| Decision speed | {value} |
| Debugging approach | {value} |
| UX philosophy | {value} |
| Code style | {value} |
| Review thoroughness | {value} |
| Risk tolerance | {value} |
| Domain expertise | {domains} |
Run /pbr:profile-user again at any time to regenerate your profile
with updated session data.
If developer_profile.inject_prompts is enabled in config, also note:
Profile dimensions will be injected into agent prompts for personalized communication.