feat: add concise codex trace inspection

This commit is contained in:
Codex
2026-06-16 03:14:53 +00:00
parent eacfdd68cb
commit c670ad8d92
4 changed files with 703 additions and 17 deletions
+6 -1
View File
@@ -389,6 +389,8 @@ function codexHelp(): unknown {
output: "json",
usage: [
"bun scripts/cli.ts codex trace list [--root ~/.codex] [--limit 30]",
"bun scripts/cli.ts codex trace active [--root ~/.codex]",
"bun scripts/cli.ts codex trace grep --pattern 'playwright|auth-login-failed' [--file sessions/...jsonl] [--since ISO]",
"bun scripts/cli.ts codex trace collect [--root ~/.codex] [--output .state/codex-trace/<timestamp>] [--limit 30]",
"bun scripts/cli.ts codex trace show --file sessions/2026/06/16/<session>.jsonl [--root ~/.codex] [--tail-bytes 12000]",
"bun scripts/cli.ts codex deploy <commitId> # disabled legacy deployment entry",
@@ -442,6 +444,9 @@ function codexHelp(): unknown {
defaultRoot: "~/.codex",
defaultIncludes: ["sessions/*.jsonl", "history.jsonl", "shell_snapshots", "*.log", "trace-named text files"],
defaultExcludes: ["auth/config", "sqlite", "cache/.tmp/generated_images/plugins/skills"],
active: "codex trace active finds open Codex session JSONL files from /proc without requiring lsof.",
grep: "codex trace grep parses JSONL records and returns bounded summaries/signals instead of printing whole matching lines.",
output: "Default output is concise text/table; use -o json|yaml|name|wide for machine or wider output.",
collectOutput: ".state/codex-trace/<timestamp>/manifest.json",
note: "Use --root <dir> to scan another local Codex trace directory; collect copies bounded files locally and never uploads or deletes source files.",
},
@@ -726,7 +731,7 @@ export async function staticNamespaceHelp(args: string[]): Promise<unknown | nul
if (top === "gc") return gcHelp();
if (top === "commander") return commanderHelp();
if (top === "schedule") return scheduleHelp();
if (top === "codex" && sub === "trace") return loadHelp(async () => (await import("./codex-trace")).codexTraceHelp(), codexHelp());
if (top === "codex" && sub === "trace") return null;
if (top === "codex") return codexHelp();
if (top === "job") return jobHelp();
if (top === "debug") return debugHelp();