{"version":"2.1.202","anchor":"skill-re-invocation-deduplication","canonical_anchor":"skill-re-invocation-deduplication","heading":"Skill Re-Invocation Deduplication","tier":null,"area":null,"scope":null,"heads_up":null,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.202\/e\/skill-re-invocation-deduplication","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.202","markdown":"### Skill Re-Invocation Deduplication\n\nWhen a slash command (skill) is invoked a second time within the same session, byte-identical invocations are now elided rather than injecting the full skill content again.\n\n**Details**\n\n- If the content is already present in the conversation body, a brief inline note replaces it: \"Skill \/[name] is already loaded above; instructions unchanged. Arguments: [args]\"\n- If the content is only in the invoked-skills attachment (compacted), a new-invocation message is injected: \"Skill \/[name] was loaded earlier (see the invoked-skills reminder above); this is a NEW invocation \u2014 follow those instructions now, including any setup steps.\"\n- If a skill was truncated by compaction, the re-invocation injects the full content preceded by: \"(Re-invocation of \/[name] \u2014 the previously loaded copy was truncated by compaction; the full instructions follow.)\"\n- Logged when elision occurs: \"SkillTool eliding byte-identical re-invocation of skill [name]\"\n\n**Evidence**\n\nSkill re-invocation handler (search for `\"SkillTool eliding byte-identical re-invocation of skill\"` and `\"is already loaded above; instructions unchanged\"`)"}