@oh-my-pi/omp-stats 16.2.2 → 16.2.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -2,6 +2,12 @@
2
2
 
3
3
  ## [Unreleased]
4
4
 
5
+ ## [16.2.3] - 2026-06-28
6
+
7
+ ### Added
8
+
9
+ - Support for parsing named advisor transcripts using the `__advisor.<slug>.jsonl` naming convention.
10
+
5
11
  ## [16.2.0] - 2026-06-27
6
12
 
7
13
  ### Added
@@ -4,9 +4,10 @@ import type { AgentType, MessageStats, SessionEntry, UserMessageLink, UserMessag
4
4
  * directory. Layout: `<sessionsDir>/<project>/<file>.jsonl` is the `main`
5
5
  * agent; subagent and advisor transcripts live nested one level deeper inside
6
6
  * the session's artifacts dir (`<project>/<session>/<id>.jsonl`,
7
- * `<project>/<session>/__advisor.jsonl`). Any `__advisor.jsonl` — at any depth,
8
- * including a subagent's own advisor counts as `advisor`; every other nested
9
- * transcript is a task `subagent`.
7
+ * `<project>/<session>/__advisor.jsonl`). Any advisor transcript
8
+ * (`__advisor.jsonl` or `__advisor.<slug>.jsonl`)at any depth, including a
9
+ * subagent's own advisor counts as `advisor`; every other nested transcript
10
+ * is a task `subagent`.
10
11
  */
11
12
  export declare function classifyAgentType(sessionPath: string): AgentType;
12
13
  /**
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "type": "module",
3
3
  "name": "@oh-my-pi/omp-stats",
4
- "version": "16.2.2",
4
+ "version": "16.2.3",
5
5
  "description": "Local observability dashboard for pi AI usage statistics",
6
6
  "homepage": "https://omp.sh",
7
7
  "author": "Can Boluk",
@@ -39,9 +39,9 @@
39
39
  "fmt": "biome format --write ."
40
40
  },
41
41
  "dependencies": {
42
- "@oh-my-pi/pi-ai": "16.2.2",
43
- "@oh-my-pi/pi-catalog": "16.2.2",
44
- "@oh-my-pi/pi-utils": "16.2.2",
42
+ "@oh-my-pi/pi-ai": "16.2.3",
43
+ "@oh-my-pi/pi-catalog": "16.2.3",
44
+ "@oh-my-pi/pi-utils": "16.2.3",
45
45
  "@tailwindcss/node": "^4.3.0",
46
46
  "chart.js": "^4.5.1",
47
47
  "date-fns": "^4.4.0",
package/src/parser.ts CHANGED
@@ -21,12 +21,16 @@ const ADVISOR_TRANSCRIPT_BASENAME = "__advisor.jsonl";
21
21
  * directory. Layout: `<sessionsDir>/<project>/<file>.jsonl` is the `main`
22
22
  * agent; subagent and advisor transcripts live nested one level deeper inside
23
23
  * the session's artifacts dir (`<project>/<session>/<id>.jsonl`,
24
- * `<project>/<session>/__advisor.jsonl`). Any `__advisor.jsonl` — at any depth,
25
- * including a subagent's own advisor counts as `advisor`; every other nested
26
- * transcript is a task `subagent`.
24
+ * `<project>/<session>/__advisor.jsonl`). Any advisor transcript
25
+ * (`__advisor.jsonl` or `__advisor.<slug>.jsonl`)at any depth, including a
26
+ * subagent's own advisor counts as `advisor`; every other nested transcript
27
+ * is a task `subagent`.
27
28
  */
28
29
  export function classifyAgentType(sessionPath: string): AgentType {
29
- if (path.basename(sessionPath) === ADVISOR_TRANSCRIPT_BASENAME) return "advisor";
30
+ const base = path.basename(sessionPath);
31
+ if (base === ADVISOR_TRANSCRIPT_BASENAME || (base.startsWith("__advisor.") && base.endsWith(".jsonl"))) {
32
+ return "advisor";
33
+ }
30
34
  const rel = path.relative(getSessionsDir(), sessionPath);
31
35
  // `<project>/<file>.jsonl` -> 2 segments. Deeper nesting is a subagent.
32
36
  return rel.split(path.sep).length <= 2 ? "main" : "subagent";