Agent skill

formax-expanded-transcript-workflow

Use when implementing/debugging Ctrl+O Expanded Transcript (second view) and thinking persistence in the REPL.

Stars 138
Forks 7

Install this agent skill to your Project

npx add-skill https://github.com/yusifeng/formax/tree/main/.codex/skills/formax-expanded-transcript-workflow

SKILL.md

formax-expanded-transcript-workflow

Goal

Use this skill when changing Ctrl+O expanded transcript behavior, thinking persistence, or compact / expanded projection boundaries in the REPL.

Read First

  • docs/contracts/transcript-surface-contract.md
  • docs/contracts/semantics-contract.md
  • docs/runbooks/repl-surface-debugging.md when the change can affect clear / remount behavior

These docs are canonical. If stable expanded-transcript behavior changes, update them before or with code.

If the change touches clear / remount ownership directly, also use formax-surface-reset-workflow.

Code Map

  • Key handling: packages/core/src/screens/repl/hotkeys.ts
  • View wiring + footer: packages/core/src/screens/REPL.tsx
  • Compact projection: packages/core/src/screens/repl/compactProjection.ts
  • Transcript rendering: packages/core/src/screens/repl/transcript.tsx
  • Thinking persistence: packages/core/src/features/repl/controller/streaming/streaming.ts
  • Expanded Transcript panels: packages/core/src/screens/repl/panels.tsx
  • Compact command lifecycle: packages/core/src/features/repl/controller/send/send.ts
  • Surface reset owner: packages/core/src/screens/repl/useSurfaceTransitionManager.ts

High-Signal Patterns

  • No fake thinking:
    • thinking_delta is the only source of truth
    • never synthesize thinking rows from timers or summaries
  • Avoid Static hacks for toggles:
    • Static is append-only; if content must disappear, use reset / remount ownership instead of trying to "unrender" it
  • One footer:
    • prefer a single global footer; avoid per-panel footer duplication
  • Compact ordering contract:
    • keep banner -> summary (expanded only) -> > /compact ... -> compact subline
  • UI vs LLM orthogonality:
    • transcript slicing and ui.kind remain independent from prompt-history packing and reminder injection

Minimal Workflow

  1. Lock the semantic source first: thinking_delta persistence and transcript projection rules before renderer polish.
  2. Keep default transcript low-noise and Expanded Transcript read-only.
  3. Preserve compact / expanded ordering before adjusting footer or panel layout.
  4. If clear / remount logic changes, route through the shared surface reset path instead of local Static workarounds.
  5. Run the regression set below before review.

Minimum Regression

  • bun run test -- packages/core/src/screens/repl/compactProjection.test.ts packages/core/src/screens/repl/expandedTranscript.test.tsx packages/core/src/screens/repl/hotkeys.test.tsx
  • bun run test -- packages/core/src/screens/repl/surfaceSmoke.test.tsx
  • bun run test:surface-screen-model
  • bun run type-check

Guardrails

  • Do not introduce synthetic thinking or show thinking when the model did not emit thinking_delta.
  • Do not let Ctrl+O steal input while prompt mode or overlays are active.
  • Do not move header / messages outside Static to “fix” duplication; solve ownership and remount boundaries instead.
  • Expanded Transcript stays read-only; do not quietly turn it into an interactive input surface.

Expand your agent's capabilities with these related and highly-rated skills.

yusifeng/formax

formax-dev-loop-workflow

Use when working on Formax code changes and you need a disciplined dev loop: keep a single mainline task, avoid scope drift, run only targeted tests (no coverage), avoid partial staging (MM), run mandatory review before commit, include an incremental optimization check, and keep commits small and reviewable.

138 7
Explore
yusifeng/formax

formax-rework-convergence-workflow

Use when code has gone through repeated rework and may contain redundant logic, style drift, or tangled structure. Trigger when user asks for "返工收敛", "cleanup-pass", or requests a focused cleanup pass that reduces churn without changing behavior.

138 7
Explore
yusifeng/formax

formax-tool-ui-blocks-workflow

Implement or refactor Formax tool transcript UI using the Tool UI Blocks (C-lite) pattern (ToolUiBlocks renderer + blocks presenters) to avoid touching many tool presenter files; use when adjusting ⏺/⎿ spacing, indent rules, or migrating additional tools to blocks presenters with targeted Ink/Vitest tests and Codex review before commit.

138 7
Explore
yusifeng/formax

formax-web-css-convergence-workflow

Use when changing web CSS/UI styling so requirements, state ownership, and acceptance checks are locked before edits to prevent rework churn.

138 7
Explore
yusifeng/formax

formax-config-settings-workflow

Use when implementing or extending /config (storage, prompt injection, request params, UI-only toggles) with tests and strict UI parity.

138 7
Explore
yusifeng/formax

formax-semantics-parity-workflow

Use when implementing or modifying behavior that must stay consistent across TUI and Web (mode/input/tool/replay/order). Require canonical semantics first, then TUI/Web adapters, then renderer-specific UI.

138 7
Explore

Didn't find tool you were looking for?

Be as detailed as possible for better results