一键导入
mm-shadow
Surfaces and promotes shadow-layer observations into the structural shadow identity layer
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Surfaces and promotes shadow-layer observations into the structural shadow identity layer
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
| name | mm-shadow |
| description | Surfaces and promotes shadow-layer observations into the structural shadow identity layer |
| user-invocable | true |
Shadow as structural cultivation — CV7.E4.S4.
The mirror has an across-conversation view that Vinícius doesn't. Shadow work is where that view becomes useful: recurring tensions, avoidances, contradictions, and blind spots that repeat across conversations but haven't been seen from the outside. This skill surfaces them with provenance, grounds each observation in specific memories, and writes accepted observations to the structural shadow layer — where they can then compose into the prompt on turns that touch shadow material.
Asymmetric activation: Shadow surfaces only when reception's touches_shadow axis
fires AND the structural layer has confirmed content. It surfaces with provenance
("this has come up in 3 contexts"), never as a bare verdict.
/mm-shadow — scan and surface observations
/mm-shadow apply <proposal_id> — accept an observation into the shadow layer
/mm-shadow reject <proposal_id> — reject (source memories unchanged)
/mm-shadow list [--status pending|accepted|rejected]
/mm-shadow show — show current structural shadow layer content
uv run python -m memory shadow show
uv run python -m memory shadow scan [--limit 50]
Scans memories where:
layer='shadow'memory_type IN ('tension', 'pattern')readiness_state IN ('observed', 'candidate') — includes memories advanced by mm-consolidateCalls the LLM (Gemini Flash) once with the full pool to surface 1-3 grounded observations.
Each observation is stored as a pending shadow_observation in the consolidations table.
The LLM will return nothing when there is insufficient evidence. That is correct behavior — the cost of false positive shadow surfacing is high.
For each observation, show:
Ask: accept / edit / reject?
Accept:
uv run python -m memory shadow apply <proposal_id>
Accept with edited content:
uv run python -m memory shadow apply <proposal_id> \
--content "User-revised observation text"
Reject:
uv run python -m memory shadow reject <proposal_id>
What happens on acceptance:
identity.shadow.profilereadiness_state='acknowledged'consolidations tableRejected proposals leave the shadow layer and source memories unchanged.
uv run python -m memory shadow list [--status pending|accepted|rejected]
Once the shadow layer has content, it composes into Mirror Mode prompts when:
touches_shadow axis is True (the turn involves existential tension,
avoidance, psychological patterns, or shadow-adjacent themes)MEMORY_RECEPTION=1 is set (the default)The shadow section includes a provenance framing note. It never surfaces as a bare verdict — always grounded in evidence.
Activates Builder Mode for a journey and loads project context/docs
Backs up the production memory database
Activates Builder Mode for a journey and loads project context/docs
Scans memories for recurring patterns and proposes consolidation (merge, identity update, or shadow candidate)
Asks other LLMs through OpenRouter with Mirror context
Lists recent conversations from the memory database