安装
npx skills add https://github.com/petekp/claude-code-setup --skill personality-profiler
- Personality Profiler
- Generate comprehensive, extensible personality profiles from social media data exports.
- Overview
- This skill analyzes exported social media data to create detailed personality profiles suitable for:
- AI assistant personalization (training data for personalized responses)
- Self-reflection and pattern discovery
- Workflow
- Receive data
- — User provides exported data files (JSON/CSV)
- Parse data
- — Extract posts, comments, interactions using platform-specific parsers
- Analyze dimensions
- — Evaluate across 8 personality dimensions
- Generate profile
- — Output structured profile in extensible JSON format
- Summarize insights
- — Provide human-readable summary
- Supported Platforms
- Platform
- Export Type
- Key Files
- Twitter/X
- ZIP archive
- tweets.js
- ,
- like.js
- ,
- profile.js
- LinkedIn
- ZIP archive
- Profile.csv
- ,
- Connections.csv
- ,
- Comments.csv
- ,
- Shares.csv
- Instagram
- ZIP archive
- content/posts_1.json
- ,
- comments.json
- ,
- profile.json
- For detailed format specifications, see
- references/platform-formats.md
- .
- Analysis Dimensions
- Analyze content across these 8 dimensions:
- 1. Communication Style
- Tone
-
- formal ↔ casual, serious ↔ playful, direct ↔ diplomatic
- Verbosity
-
- concise ↔ elaborate, uses bullet points vs paragraphs
- Vocabulary
-
- technical level, industry jargon, colloquialisms
- 2. Interests & Expertise
- Topics
-
- recurring themes, domains of focus
- Depth
-
- surface mentions vs deep engagement
- Evolution
-
- how interests have changed over time
- 3. Values & Beliefs
- Priorities
-
- what matters most (inferred from emphasis)
- Advocacy
-
- causes supported or promoted
- Philosophy
-
- worldview indicators
- 4. Social Patterns
- Engagement style
-
- initiator vs responder, commenter vs creator
- Network orientation
-
- broad reach vs tight community
- Interaction tone
-
- supportive, challenging, neutral
- 5. Emotional Expression
- Range
-
- emotional vocabulary breadth
- Valence
-
- positive/negative tendency
- Triggers
-
- what elicits strong reactions
- 6. Cognitive Style
- Reasoning
-
- analytical vs intuitive, data-driven vs narrative
- Complexity
-
- nuanced vs straightforward positions
- Openness
-
- receptivity to new ideas
- 7. Professional Identity
- Domain
-
- industry, role, expertise areas
- Aspirations
-
- career direction signals
- Network
-
- professional relationship patterns
- 8. Temporal Patterns
- Activity rhythms
-
- when they post, reply, engage
- Content cycles
-
- seasonal or event-driven patterns
- Growth trajectory
- how expression has evolved
Profile Schema
Output profiles in this extensible JSON structure:
{
"version"
:
"1.0"
,
"generated_at"
:
"ISO-8601 timestamp"
,
"data_sources"
:
[
{
"platform"
:
"twitter|linkedin|instagram"
,
"date_range"
:
{
"start"
:
"YYYY-MM-DD"
,
"end"
:
"YYYY-MM-DD"
}
,
"item_count"
:
1234
}
]
,
"profile"
:
{
"summary"
:
"2-3 paragraph narrative summary"
,
"dimensions"
:
{
"communication_style"
:
{
"confidence"
:
0.0
-1.0
,
"traits"
:
{
"formality"
:
{
"value"
:
-1.0
to
1.0
,
"evidence"
:
[
"quote1"
,
"quote2"
]
}
,
"verbosity"
:
{
"value"
:
-1.0
to
1.0
,
"evidence"
:
[
]
}
,
"directness"
:
{
"value"
:
-1.0
to
1.0
,
"evidence"
:
[
]
}
}
,
"patterns"
:
[
"pattern1"
,
"pattern2"
]
,
"recommendations_for_ai"
:
"How an AI should communicate with this person"
}
}
,
"notable_quotes"
:
[
{
"text"
:
"quote"
,
"context"
:
"why notable"
,
"dimension"
:
"which dimension"
}
]
,
"keywords"
:
[
"term1"
,
"term2"
]
,
"topics_ranked"
:
[
{
"topic"
:
"name"
,
"frequency"
:
0.0
-1.0
,
"sentiment"
:
-1.0
to
1.0
}
]
}
,
"extensions"
:
{
}
}
The
extensions
field allows adding custom dimensions without breaking compatibility.
Process
Step 1: Data Ingestion
When user provides files:
Identify platform from file structure
Locate key content files (see platform table above)
Parse using appropriate format handler
Normalize to common internal structure:
{
"items"
:
[
{
"id"
:
"unique_id"
,
"type"
:
"post|comment|share|like"
,
"timestamp"
:
"ISO-8601"
,
"content"
:
"text content"
,
"metadata"
:
{
"platform"
:
"twitter"
,
"engagement"
:
{
"likes"
:
0
,
"replies"
:
0
,
"shares"
:
0
}
,
"context"
:
"reply_to_id or null"
}
}
]
}
Step 2: Content Analysis
For each dimension:
Extract signals
— Find relevant content snippets
Score traits
— Rate on dimension-specific scales
Gather evidence
— Collect representative quotes
Calculate confidence
— Based on data volume and consistency
Minimum thresholds for confident analysis:
50+ posts for basic profile
200+ posts for detailed profile
500+ posts for high-confidence profile
If below thresholds, note reduced confidence in output.
Step 3: Profile Generation
Populate all dimension objects in schema
Write narrative summary synthesizing key findings
Extract notable quotes (5-10 most characteristic)
Rank topics by frequency and engagement
Generate AI personalization recommendations
Step 4: Output Delivery
Provide two outputs:
JSON profile
— Complete structured data (save as
personality_profile.json
)
Markdown summary
— Human-readable insights document
AI Personalization Recommendations
For each dimension, include specific guidance for AI systems:
Example recommendations:
communication_style.recommendations_for_ai:
"Use a conversational but informed tone. Avoid excessive formality.
Include occasional humor. Lead with conclusions, then supporting detail.
Match their tendency for medium-length responses (2-3 paragraphs)."
interests.recommendations_for_ai:
"Can reference machine learning, distributed systems, and startup culture
without explanation. Assume familiarity with Python ecosystem. May enjoy
tangential connections to philosophy of technology."
Handling Multiple Platforms
When analyzing data from multiple platforms:
Process each platform separately first
Cross-reference for consistency
Note platform-specific behaviors (e.g., more formal on LinkedIn)
Weight professional platforms for work identity
Weight personal platforms for authentic voice
Merge into unified profile with platform annotations
Privacy Considerations
Before processing:
Confirm user owns the data
Note that analysis stays local (no external API calls for content)
Offer to redact specific people/topics if requested
Output can be edited before use
Extending the Profile
The profile schema supports extensions:
{
"extensions"
:
{
"custom_dimension"
:
{
"confidence"
:
0.8
,
"traits"
:
{
}
,
"patterns"
:
[
]
,
"recommendations_for_ai"
:
""
}
,
"domain_specific"
:
{
"developer_profile"
:
{
"languages"
:
[
"python"
,
"rust"
]
,
"paradigm_preference"
:
"functional-leaning"
}
}
}
}
Users can request custom dimensions by describing what they want analyzed.
← 返回排行榜