From personal-assistant
Research-driven self-upgrade pipeline for the Imli personal assistant. Fetches latest Claude Code features, audits Imli's architecture, plans upgrades, executes them, and verifies results. Use after Claude Code updates, when exploring new features, or periodically. Also use when the user says "let's modernize Imli", "evolve Imli", or "what Claude Code features are we missing".
npx claudepluginhub prince-khanna/claude-code-plugins --plugin personal-assistantThis skill uses the workspace's default tool permissions.
This skill researches the latest Claude Code platform state, audits Imli against it, plans upgrades, executes them, and verifies results. It auto-updates the reference files in this skill's `references/` directory to keep the knowledge base current between runs.
Guides Next.js Cache Components and Partial Prerendering (PPR) with cacheComponents enabled. Implements 'use cache', cacheLife(), cacheTag(), revalidateTag(), static/dynamic optimization, and cache debugging.
Guides building MCP servers enabling LLMs to interact with external services via tools. Covers best practices, TypeScript/Node (MCP SDK), Python (FastMCP).
Generates original PNG/PDF visual art via design philosophy manifestos for posters, graphics, and static designs on user request.
This skill researches the latest Claude Code platform state, audits Imli against it, plans upgrades, executes them, and verifies results. It auto-updates the reference files in this skill's references/ directory to keep the knowledge base current between runs.
Determine execution mode before doing anything else.
Check: Does <cwd>/personal-assistant/.claude-plugin/plugin.json exist AND does <cwd>/.git exist AND does <cwd>/CONVENTIONS.md exist?
YES -- Source Mode. Operating in the marketplace repo where Imli is maintained. Operate on skill files, hooks, and references directly. Bump version and update CHANGELOG when done.
NO -- Deployed Mode. Show this disclaimer:
Note: Evolve is designed to run from Imli's source repo where the plugin is maintained. Running here will audit and modify your installed copy at
~/.claude/plugins/cache/.... These changes will be overwritten on the next plugin update.To run from source, navigate to your marketplace repo.
Proceed with deployed copy?
Wait for confirmation. If declined, stop.
Set imli_ROOT:
<cwd>/personal-assistant~/.claude/plugins/cache/ai-launchpad/personal-assistant/)Run six research tasks in parallel using subagents. Each subagent summarizes its findings.
Fetch latest Claude Code releases:
WebFetch: https://github.com/anthropics/claude-code/releases
Also check the raw changelog:
WebFetch: https://raw.githubusercontent.com/anthropics/claude-code/main/CHANGELOG.md
Extract from the last 3-5 releases:
Discover the Claude Code documentation landscape. Do NOT hardcode doc page URLs -- discover them dynamically.
Find available documentation:
WebSearch: "Claude Code" site:docs.anthropic.com
WebFetch: https://docs.anthropic.com/en/docs/claude-code/overview
From the search results and overview page, identify and fetch pages covering these categories:
For each fetched page, extract:
${CLAUDE_SKILL_DIR}/references/platform-capabilities.mdFind and read the installed skill-creator:
Glob: ~/.claude/plugins/cache/*/skill-creator/*/skills/skill-creator/SKILL.md
Extract:
Check official plugins for patterns worth adopting:
Glob: ~/.claude/plugins/cache/*/superpowers/*/skills/*/SKILL.md
Note structural patterns, frontmatter conventions, or composition techniques.
Understand the full plugin specification and what Imli could be using:
Read the marketplace conventions (source mode only):
Read: <cwd>/CONVENTIONS.md
Examine other installed plugins for structural patterns:
Glob: ~/.claude/plugins/cache/*/*/skills/*/SKILL.md
Bash: ls ~/.claude/plugins/cache/*/*/ | head -50
Focus on: plugin.json fields, agents/ directories, MCP server integration, output style patterns.
Compare Imli's plugin structure against the full spec:
Check for model-level improvements that may supersede Imli's skills:
Search for recent Anthropic model releases:
WebSearch: "Anthropic Claude" model release OR capability update site:anthropic.com
WebSearch: "Claude" new capabilities 2026
Fetch the models overview page:
WebFetch: https://docs.anthropic.com/en/docs/about-claude/models
Extract capabilities relevant to skill obsolescence:
Compare against Imli's skill inventory:
Cross-reference against ${CLAUDE_SKILL_DIR}/references/platform-capabilities.md Model Capabilities table to detect changes since last run.
After all research completes, compile a Research Summary with sections:
In source mode: save to <cwd>/.docs/upgrade-research/personal-assistant-<date>.md
In deployed mode: present in-session only.
Using research findings from Phase 1 (especially 1A, 1B, and 1F), evaluate whether each skill, agent, and major component in Imli is still necessary.
For each skill and agent, assign one of:
| Rating | Meaning | Action |
|---|---|---|
| Active | Platform/model doesn't replicate this. Skill adds clear value. | Proceed to structural audit in Phase 2 |
| Augmented | Platform/model handles the basics, but skill adds meaningful structure, guardrails, or workflow orchestration on top. | Audit normally, but note what the platform handles natively |
| Superseded | Platform/model now does this natively with comparable quality. Skill adds marginal value over a direct prompt. | Skip structural audit. Recommend removal in Phase 3 plan. |
For each skill, answer these three questions:
What does this skill do that a direct prompt to Claude cannot? If the answer is only "it saves typing a prompt" -- likely Superseded.
Does this skill enforce a process, workflow, or multi-step structure? Process skills (TDD, debugging, code review) remain valuable even when the model can do each step -- the skill enforces discipline. Likely Active.
Has the platform added a native feature that replaces this skill's core function? Example: Claude Code added native web search -> a "web research" skill that just wraps web search is Superseded. But a "competitor analysis" skill that orchestrates multiple searches into a structured report may be Augmented.
Present results as a table:
| Component | Type | Rating | Rationale |
|---|---|---|---|
| [name] | skill/agent | Active/Augmented/Superseded | [1-line reason] |
If any component is rated Superseded, flag it for the user:
Obsolescence flag: [N] component(s) appear superseded by platform/model capabilities. These will appear in the "Recommend Removal" section of the upgrade plan. Review the rationale -- override to Active or Augmented if you disagree.
Proceed to Phase 2, skipping structural audit for Superseded components.
For each skill in ${imli_ROOT}/skills/, read the SKILL.md and evaluate:
references/ or scripts/ for progressive disclosureplugin:skill syntax used correctly?)Check the deployed system state:
cat ${imli_ROOT}/hooks/hooks.json
ls -la ~/.claude/rules/imli-core.md
ls ~/.claude/.context/core/
cat ~/.claude/settings.json | python3 -c "import sys,json; d=json.load(sys.stdin); print(json.dumps(d.get('hooks',{}), indent=2))" 2>/dev/null
Verify:
Compare current state against Phase 1 research:
| Category | Check |
|---|---|
| Skill structure | Frontmatter follows latest conventions? Under 500 lines? Progressive disclosure? |
| Descriptions | Triggering descriptions specific enough per skill-creator guidance? |
| Patterns | Uses latest Claude Code features? No deprecated patterns? |
| Composition | Follows plugin:skill invocation syntax? |
| Hook design | Non-blocking? SessionStart < 2 seconds? Uses additionalContext? |
| Plugin architecture | Using all beneficial plugin components (agents, MCP, output styles)? |
| System state | Platform capabilities and best practices references current? |
Compare ${CLAUDE_SKILL_DIR}/references/platform-capabilities.md and best-practices.md against research findings. Flag entries that are:
Check all plugin components, not just skills:
echo "=== Skills ===" && ls ${imli_ROOT}/skills/
echo "=== Hooks ===" && cat ${imli_ROOT}/hooks/hooks.json 2>/dev/null
echo "=== Output Styles ===" && ls ${imli_ROOT}/output-styles/ 2>/dev/null
echo "=== Plugin.json ===" && cat ${imli_ROOT}/.claude-plugin/plugin.json
echo "=== Agents ===" && ls ${imli_ROOT}/agents/ 2>/dev/null || echo "No agents/ directory"
Evaluate:
Read ${CLAUDE_SKILL_DIR}/references/platform-capabilities.md System State section:
If System State section is missing, flag as "first evolve run" and note that all findings are new.
Present a structured upgrade plan:
## Upgrade Plan: personal-assistant (Imli)
### Summary
- Current version: [from plugin.json]
- Proposed version: [with semver justification]
- Skills affected: N
- Reference files to update: N
### High Priority (Breaking/Deprecated)
1. [Change]
- **Why**: [What's wrong or deprecated]
- **What**: [Specific change]
- **Risk**: [What could break]
### Superseded (Recommend Removal)
Components flagged as Superseded in Phase 1.5. Review before approving removal.
1. [Component name] ([type])
- **What it does**: [1-line summary]
- **What replaces it**: [platform feature or model capability]
- **Migration**: [user-facing steps if any -- update docs, remove references]
- **Risk**: [what's lost if removed]
### Medium Priority (New Features)
1. [Change]
- **Why**: [What capability this enables]
- **What**: [Specific change]
### Low Priority (Polish)
1. [Change]
### Not Recommended
- [Considered but rejected, and why]
For removed components in source mode:
Apply approved changes:
Update ${CLAUDE_SKILL_DIR}/references/platform-capabilities.md and best-practices.md with findings from Phase 1. These files serve as "last known state" for future evolve runs.
Update the Model Capabilities table in ${CLAUDE_SKILL_DIR}/references/platform-capabilities.md with findings from Phase 1F. Add new capabilities, update proficiency levels, and revise skill design implications.
After all changes are applied, update the System State section in ${CLAUDE_SKILL_DIR}/references/platform-capabilities.md:
| Field | Value |
|---|---|
| Imli version | [from plugin.json after bump] |
| Last evolve run | [today's date] |
| Claude Code version at last audit | [latest version from Phase 1A research] |
| Platform docs last fetched | [today's date] |
| Model capabilities last assessed | [today's date] |
After all changes:
${imli_ROOT}/.claude-plugin/plugin.json per semver${imli_ROOT}/CHANGELOG.md in Keep a Changelog formatfor skill in $(find ${imli_ROOT}/skills -name "SKILL.md"); do
echo "=== $skill ==="
wc -l "$skill"
head -5 "$skill"
echo ""
done
git diff for user reviewplugin:skill references still validFor recommendations the user deferred or rejected, log to ~/.claude/.context/core/improvements.md as Active Proposals:
### ENHANCEMENT evolve-deferred -- [Short description]
- **Evidence**: Evolve audit [date] -- [what was found]
- **Current behavior**: [what exists now]
- **Proposed change**: [what was recommended]
- **Status**: Deferred
- **Source**: Evolve audit
Report: