ralph-hero-mcp-server 2.5.113 → 2.5.115
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/dist/lib/activity.js +14 -1
- package/dist/tools/activity-tools.js +4 -2
- package/package.json +1 -1
package/dist/lib/activity.js
CHANGED
|
@@ -69,7 +69,20 @@ export function readActivity(config) {
|
|
|
69
69
|
events.sort((a, b) => a.ts.localeCompare(b.ts));
|
|
70
70
|
const limited = events.slice(0, config.limit);
|
|
71
71
|
const cursor = limited.length > 0 ? limited[limited.length - 1].ts : null;
|
|
72
|
-
|
|
72
|
+
const out = config.compact
|
|
73
|
+
? limited.map((e) => {
|
|
74
|
+
const projected = { ts: e.ts, kind: e.kind };
|
|
75
|
+
const toolName = e.target && typeof e.target === "object" && "tool" in e.target
|
|
76
|
+
? e.target.tool
|
|
77
|
+
: undefined;
|
|
78
|
+
if (typeof toolName === "string")
|
|
79
|
+
projected.tool = toolName;
|
|
80
|
+
if (e.project)
|
|
81
|
+
projected.project = e.project;
|
|
82
|
+
return projected;
|
|
83
|
+
})
|
|
84
|
+
: limited;
|
|
85
|
+
return { events: out, cursor_advanced_to: cursor, skipped_lines: skipped };
|
|
73
86
|
}
|
|
74
87
|
function safeReadDir(dir) {
|
|
75
88
|
try {
|
|
@@ -13,7 +13,8 @@ export function registerActivityTools(server) {
|
|
|
13
13
|
kinds: z.array(z.string()).nullable().default(null).describe("Filter by event kind (e.g., ['pr_opened','issue_advanced'])"),
|
|
14
14
|
category: z.enum(["work", "meta", "all"]).default("work").describe("Filter by category; default 'work' excludes meta noise"),
|
|
15
15
|
project: z.string().nullable().default(null).describe("Filter by project name"),
|
|
16
|
-
limit: z.number().int().min(1).default(
|
|
16
|
+
limit: z.number().int().min(1).default(50).describe("Max events to return (default 50; was 100 before 2.5.x)"),
|
|
17
|
+
compact: z.boolean().default(false).describe("When true, project each event to {ts, kind, tool, project}; drops actor/session_id/category/wrapper-target. Use for narrative synthesis."),
|
|
17
18
|
}, async (params) => {
|
|
18
19
|
try {
|
|
19
20
|
const result = readActivity({
|
|
@@ -23,7 +24,8 @@ export function registerActivityTools(server) {
|
|
|
23
24
|
kinds: params.kinds ?? null,
|
|
24
25
|
category: (params.category ?? "work"),
|
|
25
26
|
project: params.project ?? null,
|
|
26
|
-
limit: params.limit ??
|
|
27
|
+
limit: params.limit ?? 50,
|
|
28
|
+
compact: params.compact ?? false,
|
|
27
29
|
now: new Date(),
|
|
28
30
|
});
|
|
29
31
|
return toolSuccess(result);
|