From perspective-writer
Auto-learn from user edits to draft files. When a system-reminder shows a draft was modified, diff the changes, extract concrete rules, and update .claude/rules/ files. Trigger when you detect a file modification system-reminder on a file you recently wrote or edited.
npx claudepluginhub psychquant/psychquant-claude-plugins --plugin perspective-writerThis skill is limited to using the following tools:
You have been triggered because a file you recently wrote or edited in this conversation was modified by the user. Your job is to learn from their edits and persist those preferences as reusable rules.
Generates design tokens/docs from CSS/Tailwind/styled-components codebases, audits visual consistency across 10 dimensions, detects AI slop in UI.
Records polished WebM UI demo videos of web apps using Playwright with cursor overlay, natural pacing, and three-phase scripting. Activates for demo, walkthrough, screen recording, or tutorial requests.
Delivers idiomatic Kotlin patterns for null safety, immutability, sealed classes, coroutines, Flows, extensions, DSL builders, and Gradle DSL. Use when writing, reviewing, refactoring, or designing Kotlin code.
You have been triggered because a file you recently wrote or edited in this conversation was modified by the user. Your job is to learn from their edits and persist those preferences as reusable rules.
Read tool (the path comes from the system-reminder or conversation context).| Category | Examples |
|---|---|
| Tone shift | Formality level, honorifics (你→您), pronoun changes, register |
| Content cut | Removed sentences, paragraphs, compliments, filler |
| Content add | Added greetings, closings, disclaimers, details |
| Structure change | Merged/split paragraphs, reordered sections, changed formatting |
| Wording swap | Specific word or phrase replacements (e.g., "希望"→"期盼") |
Turn each change into a concrete, reusable rule. Specificity is critical.
If the reason behind a change is inferable, include it parenthetically:
One rule per change. Do not merge multiple distinct edits into a single vague rule.
Use Grep and Glob to check if a relevant .claude/rules/ file already exists in the project.
| Draft type | Rules file pattern |
|---|---|
| Correspondence to a person | .claude/rules/correspondence-[recipient-name].md |
| Reports / documents | .claude/rules/[document-type]-style.md |
| Code comments / docs | .claude/rules/code-writing-style.md |
| General writing | .claude/rules/writing-style.md |
Read tool..claude/rules/[suggested-name].md 來記住這些偏好?"When updating an existing rules file:
<!-- updated YYYY-MM-DD --> next to the replacement.## Tone, ## Structure, ## Vocabulary, ## Opening/Closing). Create new sections as needed.Use the Edit tool for surgical updates. Only use Write if creating a new file.
After updating (or deciding not to), show a short summary:
從你的修改我學到了:
1. [concrete change 1]
2. [concrete change 2]
3. [concrete change 3]
已更新 `.claude/rules/[filename]`,你隨時可以打開修改。
If the user declined to create a rules file:
從你的修改我觀察到:
1. [concrete change 1]
2. [concrete change 2]
如果之後想儲存這些偏好,跟我說一聲就好。