원클릭으로
ownership-session-security
Session ownership and authorization workflow.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Session ownership and authorization workflow.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Iterative multi-round codebase audit with diminishing-returns detection. Run 5-20+ rounds, each focusing on one specific area. Built from 19 rounds of dogfooding pi-crew on itself.
Pi TUI crew widget data sources, display priority, and rendering performance.
Multi-phase orchestration for planners and executors.
Spawn 3 adversarial subagents (Skeptic, Pragmatist, Critic) to evaluate a decision, architecture choice, or plan. Anti-anchoring: each role receives ONLY the question, not conversation history. Aggregates votes into consensus recommendation with dissent tracking. Use when facing critical decisions, architecture choices, security tradeoffs, or plan reviews where single-perspective analysis is insufficient.
Background worker, heartbeat, stale-run, crash-recovery, and deadletter workflow. Use when debugging stuck/dead workers or changing async run reliability.
Child Pi worker spawning, lifecycle callbacks, and failure modes.
| name | ownership-session-security |
| description | Session ownership and authorization workflow. |
| origin | pi-crew |
| triggers | ["cancel run","respond to task","cross-session action","ownership verify","session security"] |
Use this skill for cross-session safety and trust-boundary work.
ctx.sessionManager.getSessionId() from Pi core ExtensionContextTeamRunManifest.ownerSessionId, src/extension/team-tool/run.ts, cancel.ts, respond.tssrc/utils/safe-paths.ts, src/state/state-store.ts, src/state/mailbox.tssrc/extension/team-tool/lifecycle-actions.ts, src/worktree/cleanup.tsTeamContext for every production tool/command path.ownerSessionId when available.ownerSessionId may remain permissive for backward compatibility, but document this behavior.cwd, import paths, artifact paths, task IDs) must be normalized and contained under an allowed base.resolveContainedPath, resolveRealContainedPath, assertSafePathId, and symlink checks rather than ad-hoc startsWith checks.confirm: true; referenced resource deletes must require force: true where applicable.Before mutating run state or cross-session operations, verify:
If ANY answer is NO → Stop. Verify ownership before mutating state.
ctx.sessionId exists directly on Pi context.cwd: ../other-project move run state into another project.respond/cancel mutate a foreign owned run.cd pi-crew
npx tsc --noEmit
node --experimental-strip-types --test test/unit/cancel-ownership.test.ts test/unit/respond-tool.test.ts test/unit/cwd-override-security.test.ts test/unit/api-artifact-security.test.ts
npm test