Priority: Low — audit / onboarding lens on top of the inventory
Effort: ~1–2 days
Engine: None — fixed per-harness lifecycle template + classification of detected units
Depends on: #74 (detect + inventory)
Part of: the v2.1.0 agentic-workflow surfaces
Second view mode on the Workflow panel: arrange the same detected units on the harness's real session lifecycle, so you see what takes effect at what stage and — the main point — what is advisory context vs. an enforced hook.
The lifecycle (Claude Code; grounded in docs)
Fixed template; detected units are classified onto it:
- Session start (context, once): managed / user / project
CLAUDE.md + unscoped rules + MEMORY.md; MCP connect; skills registered.
- Agentic loop — repeats per turn:
- Prompt submitted:
UserPromptSubmit hooks; skills surface by relevance.
- Reading / editing files: path-scoped rules + subdir
CLAUDE.md activate lazily, by glob — not at start.
- Tool call:
PreToolUse (can block) → PostToolUse.
- Finish / commit:
Stop hooks; pre-commit (git) hooks.
- Session end:
SessionEnd; auto-memory write-back.
Refs: https://code.claude.com/docs/en/memory · https://code.claude.com/docs/en/hooks
Classification (no engine)
paths: frontmatter → "reading / editing files" stage (path-scoped).
- hook event name → its lifecycle stage (PreToolUse → tool call; Stop / pre-commit → finish).
- skill → "prompt submitted".
- plain
CLAUDE.md / rules / memory → "session start".
Presentation
- Color-code context (advisory — may be ignored) vs path-scoped vs hook (enforced — can block). This advisory-vs-enforced split is the primary value.
- Bracket the repeating agentic-loop stages.
- Per-harness selector — Codex / opencode share the shape, different event names.
- Honest framing in the UI copy: a timeline of trigger points, not a data-transform pipeline; the harness owns final assembly.
Stretch / future (own issue if pursued)
- "Precedence" view — the assembly / override stack (managed → user → project → cwd → local → imports → memory); flag two units fighting over the same behavior ("Claude resolves arbitrarily").
Acceptance criteria
Priority: Low — audit / onboarding lens on top of the inventory
Effort: ~1–2 days
Engine: None — fixed per-harness lifecycle template + classification of detected units
Depends on: #74 (detect + inventory)
Part of: the v2.1.0 agentic-workflow surfaces
Second view mode on the Workflow panel: arrange the same detected units on the harness's real session lifecycle, so you see what takes effect at what stage and — the main point — what is advisory context vs. an enforced hook.
The lifecycle (Claude Code; grounded in docs)
Fixed template; detected units are classified onto it:
CLAUDE.md+ unscoped rules +MEMORY.md; MCP connect; skills registered.UserPromptSubmithooks; skills surface by relevance.CLAUDE.mdactivate lazily, by glob — not at start.PreToolUse(can block) →PostToolUse.Stophooks; pre-commit (git) hooks.SessionEnd; auto-memory write-back.Refs: https://code.claude.com/docs/en/memory · https://code.claude.com/docs/en/hooks
Classification (no engine)
paths:frontmatter → "reading / editing files" stage (path-scoped).CLAUDE.md/ rules / memory → "session start".Presentation
Stretch / future (own issue if pursued)
Acceptance criteria