interfluence
What it does: A Claude Code plugin that learns a user’s writing voice from a corpus and rewrites AI-generated text to match it. Per the actual code: a TypeScript MCP server (server/, ~10 stdio tools for corpus CRUD, profile CRUD, config, learnings — a ‘filing cabinet’) plus 6 skills (ingest/analyze/apply/refine/compare/optimize), a /interfluence router command, an Opus voice-analyzer agent (deep literary analysis producing prose — not numeric — voice profiles), and a now-DISABLED PostToolUse:Edit hook (learn-from-edits.sh) that batched edit diffs for later profile refinement. Per-project data lives in .interfluence/ (profile, config, corpus, learnings). It routed between voices by per-project file glob.
Rationale: This plugin is already deprecated by its own authors, and the deprecation is complete and clean — not aspirational. plugin.json v0.2.12 description literally opens “[DEPRECATED — use intervoice]”; README line 3 says “Deprecated. Replaced by intervoice.” The successor intervoice (v0.1.0) exists at interverse/intervoice/ and ported the useful surface (apply, compare, analyze, optimize skills + the voice-analyzer agent) while deliberately dropping the MCP server, the corpus model, and the edit-logging hook. The edit hook is already neutralized: hooks/hooks.json has “hooks”: {} with the original registration parked under _original_hooks and a _deprecated note explaining it prevents double-logging during migration. Git history confirms a finished arc (c8e2362 “deprecate: interfluence superseded by intervoice” → da0cfc1 “deprecate: finish interfluence hook + description”). intervoice replaces interfluence in the same capability slot (the roster itself lists “interfluence: DEPRECATED -> intervoice” and “intervoice: generate/edit prose in your voice, multi-register profile”). There is no case for keep/improve/modernize on a retired plugin with a live, leaner successor. The only outstanding work is migration cleanup, not plugin maintenance.
SOTA gap: N/A for a retired plugin — but the deprecation rationale itself is SOTA-aligned: per-project glob-routed voice files were replaced by one global multi-register profile with register selection by name/inference, and the heavy MCP “filing-cabinet” server was dropped in favor of thin skills. That matches the 2026 practitioner consensus that “skills beat heavy MCP” and that registering many eager MCP tools (interfluence’s ~10) for what is essentially file I/O is an anti-pattern (progressive-disclosure / RAG-MCP findings). The successor intervoice is where any frontier work (e.g., embedding-based register routing instead of glob/inference) should land — not here.
Redundancy: Fully redundant with intervoice (its named successor, same capability slot). No other interverse plugin covers personal writing-voice styling.
Actions:
- Update the canonical marketplace (Sylveste/core/marketplace/.claude-plugin/marketplace.json:153) to list intervoice and remove or tombstone the interfluence entry — currently users who install still get the deprecated plugin and intervoice is in no marketplace.json.
- Publish/register intervoice via interpub so the successor is actually installable, then archive the interfluence GitHub repo (mistakeknot/interfluence) with a README pointer to intervoice.
- Verify intervoice ships a one-time migration path that reads existing per-project .interfluence/ profile data into its global multi-register profile (deprecation note promises data is preserved — confirm the import exists, not just that files aren’t deleted).
- After a deprecation window, remove the interfluence plugin from the active interverse roster/build so it stops appearing in audits and tool listings.