reflect
Reflect
Mine the current conversation for durable learnings, then route them into skill edits.
Invoke when the user says "reflect" or "/reflect". Skip when the conversation is trivial, off-topic, or already covered by an existing skill the parent followed correctly. One-offs are not learnings.
1. Locate the active transcript
The parent finds its own transcript before fanning out. Read this session's transcript with the profile's history recipe. Use only the transcripts the history recipe can reach. Do not search other workspaces or projects. That crosses workspace boundaries and reads private chats from unrelated projects.
If the recipe reaches more than one transcript, check each candidate's opening user prompt against the conversation's opening user prompt. Take the matching one. If no transcript resolves, write a tight digest of the session and pass that instead. If the profile says history: unsupported, ask the user to paste the transcript, and note that without it the reviewers work from a digest only.
2. Spawn three reviewers in parallel
One message, three spawns, each with access: full and run: foreground. Reviewers need MCP access to look up the tickets, chat threads, and observability traces the transcript references. A read-only subagent may lose MCP tools in some harnesses, and these roles need them. Reviewers must not modify files.
Each spawn below names a role from the pstack profile (written by /setup-pstack, always in your context). Spawn it with the profile's spawn recipe, passing that role's value as the model. A role with no line, or the value inherit, means no model override. If the harness rejects the model, retry with inherit and say so. With no profile in context, follow the fallback in the setup-pstack skill (references/profile-template.md) and tell the user once that /setup-pstack was not run. Pick each subagent's reasoning level and fast or standard speed for the job, per the Subagents section of the poteto-mode skill.