From swe
Update a specific feature's memory files to reflect current codebase state
How this skill is triggered — by the user, by Claude, or both
Slash command
/swe:swe-feature-updateThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
**If starting a new session**, first read workflow initialization:
If starting a new session, first read workflow initialization:
mcp__plugin_swe_serena__read_memory("wf/WF_INIT")
Follow WF_INIT instructions before executing this skill.
Update a specific feature's memory files to accurately reflect current codebase state.
/swe-update-feature BLOCKS # Update BLOCKS feature memories
/swe-update-feature THEME_DISTRICT # Update THEME_DISTRICT feature memories
/swe-update-feature TESTS # Update TESTS feature memories
Synchronize feature documentation with actual codebase:
Verify feature exists:
mcp__plugin_swe_serena__read_memory("index/INDEX_FEATURES")
Check: Feature key exists in registered features table.
If not found:
> Feature [KEY] not registered. Use /swe-feature-onboard [KEY] to register it first.
Exit skill with needs_clarification status.
mcp__plugin_swe_serena__read_memory("feature/FEATURE_[KEY]")
Extract from current memory:
For each root path in the feature:
mcp__plugin_swe_serena__list_dir({ relative_path: "[root_path]", depth: 2 })
mcp__plugin_swe_serena__get_symbols_overview({ relative_path: "[root_path]" })
Use Serena tools to detect:
Compare current state vs. documented state:
| Aspect | Check For |
|---|---|
| Directories | New directories, removed directories |
| Key files | New files, renamed files, removed files |
| Layers | Layer changes, new components |
| Dependencies | New internal/external dependencies |
| Entry points | Changed entry points |
Report changes found:
Changes detected for [KEY]:
- [+] Added: [new items]
- [-] Removed: [removed items]
- [~] Modified: [changed items]
When updating the SWE feature itself, memories follow a dual-location architecture:
$SWE_PLUGIN_ROOT/memories//swe-syncThis ensures changes are preserved in the portable plugin and propagated correctly.
DO NOT edit SWE memories directly in .serena/memory/ - they will be overwritten on sync.
mcp__plugin_swe_serena__write_memory("FEATURE_[KEY]", "<updated content>")
Preserve:
Update:
Check and update as needed:
ARCH_[KEY] - Architecture documentationINDEX_[KEY]_* - File/symbol indexesDOM_[KEY]_* - Domain documentationOnly update if significant changes detected.
After updating FEATURE_[KEY] and related memories, regenerate the Related Docs table.
Invoke the /swe-symbol-index skill:
/swe-symbol-index [KEY]
This will:
get_symbols_overview## Related Docs table after Feature OverviewThis ensures the symbol index stays in sync with any memory changes.
Output to user:
## Feature Update Complete: [KEY]
### Changes Applied
- FEATURE_[KEY]: [summary of changes]
-
### Current State
| Property | Value |
| ------------ | ----------- |
| Root Path(s) | [paths] |
| Key Files | [count] |
| Last Updated | [timestamp] |
## Skill Return
- **Skill**: swe-feature-update
- **Status**: success
- **Feature Key**: [KEY]
- **Memories Updated**: [list]
- **Changes Summary**: [brief description]
- **Next Step Hint**: WF_START
> **Skill /swe-feature-update complete** - Feature [KEY] memories updated
Feature [KEY] is not registered in INDEX_FEATURES.
Run: /swe-feature-onboard [KEY]
> Feature [KEY] is up to date. No changes needed.
Exit with success status (no changes to make is still success).
npx claudepluginhub earthmanweb/serena-workflow-engine --plugin sweCreates bite-sized, testable implementation plans from specs or requirements, with file structure and task decomposition. Activates before coding multi-step tasks.