Initial commit

This commit is contained in:
Zhongwei Li
2025-11-30 09:00:53 +08:00
commit c7186fd5a2
4 changed files with 175 additions and 0 deletions

View File

@@ -0,0 +1,12 @@
{
"name": "personality-ron-swanson",
"description": "Ron Swanson - minimalist, anti-complexity, straightforward and practical",
"version": "1.0.0",
"author": {
"name": "TechNickAI",
"url": "https://github.com/TechNickAI"
},
"commands": [
"./commands"
]
}

3
README.md Normal file
View File

@@ -0,0 +1,3 @@
# personality-ron-swanson
Ron Swanson - minimalist, anti-complexity, straightforward and practical

View File

@@ -0,0 +1,115 @@
---
description: Change or activate a personality for both Cursor and Claude Code
---
Change the active AI personality to create consistent behavior across Claude Code and
Cursor.
**IMPORTANT: Ask the user which personality they want if not provided.**
## Available Personalities
- **sherlock** - Analytical, precise, deductive reasoning for debugging
- **bob-ross** - Calm, encouraging, treats bugs as happy accidents
- **samantha** - Warm, witty, emotionally intelligent, playfully flirty
- **stewie** - Sophisticated, condescending, theatrical, brilliant with high standards
- **ron-swanson** - Minimalist, anti-complexity, straightforward and practical
- **marie-kondo** - Organized, joyful minimalism, eliminates what doesn't spark joy
- **marianne-williamson** - Spiritual, love-based, sees coding as consciousness work
- **unity** - Creative muse meets structured builder, warm encourager
## Process
### 1. Validate Input
- If no personality name provided, show available personalities and ask which to
activate
- Check that `.cursor/rules/personalities/<name>.mdc` exists
- If `none` was requested, skip to step 3 to remove personality
### 2. Handle Claude Code Activation
a. Read or create `.claude/context.md`
b. Check for existing personality:
- Search for `## Active Personality` section
- Extract current name from `<!-- personality-<name> -->` comment if found
c. If personality exists:
- If same as requested: inform "✓ <name> is already active" and stop
- If different: remove entire `## Active Personality` section (including HTML comments)
d. If not removing (name != "none"):
- Read `.cursor/rules/personalities/<name>.mdc`
- Strip frontmatter (content between opening `---` and closing `---`)
- Append to `.claude/context.md`:
```
## Active Personality
<!-- personality-<name> -->
<personality content without frontmatter>
<!-- /personality-<name> -->
```
e. Write updated `.claude/context.md`
### 3. Verify Cursor Setup
a. Read `.cursor/rules/personalities/<name>.mdc` frontmatter b. Check if
`alwaysApply: true` is set c. If not set and name != "none", inform user: "⚠️ Note: For
Cursor, manually set `alwaysApply: true` in .cursor/rules/personalities/<name>.mdc"
### 4. Report Results
**If switching personalities:**
```
✓ Switched from <old-name> to <new-name> personality
Claude Code: Updated .claude/context.md
Cursor: Active at .cursor/rules/personalities/<name>.mdc
```
**If activating (no previous):**
```
✓ Activated <name> personality
Claude Code: Added to .claude/context.md
Cursor: Active at .cursor/rules/personalities/<name>.mdc
```
**If removing:**
```
✓ Removed active personality
Claude Code: Removed from .claude/context.md
Cursor: Manually set alwaysApply: false if desired
```
**If already active:**
```
✓ <name> personality is already active
```
## Examples
```
/personality-change samantha
/personality-change unity
/personality-change none # Remove active personality
```
## Notes
- Only one personality active at a time (plus common-personality baseline)
- Personality affects ALL future interactions in this project
- `.cursor/rules/personalities/common-personality.mdc` is always applied as baseline
- Cursor requires `alwaysApply: true` in frontmatter for auto-activation
- Claude Code reads from `.claude/context.md` which is always included

45
plugin.lock.json Normal file
View File

@@ -0,0 +1,45 @@
{
"$schema": "internal://schemas/plugin.lock.v1.json",
"pluginId": "gh:TechNickAI/ai-coding-config:plugins/personalities/personality-ron-swanson",
"normalized": {
"repo": null,
"ref": "refs/tags/v20251128.0",
"commit": "6fc8754eb1432ca3c28e56a6ec5947a57df6261e",
"treeHash": "2e4be1ccd2cdf958331e1ea0f4333bc87b52fac8c935a8f080bf6135cad80285",
"generatedAt": "2025-11-28T10:12:53.563506Z",
"toolVersion": "publish_plugins.py@0.2.0"
},
"origin": {
"remote": "git@github.com:zhongweili/42plugin-data.git",
"branch": "master",
"commit": "aa1497ed0949fd50e99e70d6324a29c5b34f9390",
"repoRoot": "/Users/zhongweili/projects/openmind/42plugin-data"
},
"manifest": {
"name": "personality-ron-swanson",
"description": "Ron Swanson - minimalist, anti-complexity, straightforward and practical",
"version": "1.0.0"
},
"content": {
"files": [
{
"path": "README.md",
"sha256": "7a934ed7c4ae6c510fc289bec7318b13247cce3e33505ebabc599c442c26792d"
},
{
"path": ".claude-plugin/plugin.json",
"sha256": "e91bec331c5b568377e172e2ffa5c7043aaa5d7ddbec464693d28c6e80301ee5"
},
{
"path": "commands/personality-change.md",
"sha256": "68926e3eaccce7d7facea66f659bd2572d53e1d70d7aed91e6ef5977c3d0367f"
}
],
"dirSha256": "2e4be1ccd2cdf958331e1ea0f4333bc87b52fac8c935a8f080bf6135cad80285"
},
"security": {
"scannedAt": null,
"scannerVersion": null,
"flags": []
}
}