@kynver-app/mcp-agent-os 0.3.60 → 0.3.61

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/server.js CHANGED
@@ -22,20 +22,21 @@ import { registerOperatingRulesTools } from "./tools/operating-rules.js";
22
22
  import { registerProviderEvidenceTools } from "./tools/provider-evidence.js";
23
23
  import { registerPrBacklogTools } from "./tools/pr-backlog.js";
24
24
  import { registerTaskBoardWatchdogTools } from "./tools/task-board-watchdog.js";
25
- import { registerTaskflowTools } from "./tools/taskflow.js";
26
25
  import { registerPlanAuditRollupTools } from "./tools/plan-audit-rollup.js";
27
26
  import { registerMeshLivenessTools } from "./tools/mesh-liveness.js";
28
27
  import { registerDiagnosticsTools } from "./tools/diagnostics.js";
29
28
  import { registerSkillsTools } from "./tools/skills.js";
30
29
  import { registerMemoryLedgerTools } from "./tools/memory-ledger.js";
31
30
  import { registerMemoryVaultTools } from "./tools/memory-vault.js";
32
- import { registerContextExpandTools } from "./tools/context-expand.js";
33
31
  import { registerMonitorTools } from "./tools/monitor.js";
34
32
  import { registerMacroControlsTools } from "./tools/macro-controls.js";
35
33
  import { registerKariAdMarketingLoopTools } from "./tools/kariad-marketing-loop.js";
36
34
  import { registerKariAdOutcomeImportTools } from "./tools/kariad-outcome-import.js";
37
35
  import { registerCmoControlTools } from "./tools/cmo-control.js";
38
36
  import { registerCurrentFocusTools } from "./tools/current-focus.js";
37
+ import { registerContextExpandTools } from "./tools/context-expand.js";
38
+ import { registerContextPreviewTools } from "./tools/context-preview.js";
39
+ import { registerTaskflowTools } from "./tools/taskflow.js";
39
40
  import { readOwnPackageVersion } from "./lib/package-version.js";
40
41
  const PACKAGE_VERSION = readOwnPackageVersion(import.meta.url);
41
42
  function jsonResult(data) {
@@ -723,6 +724,7 @@ export function createAgentOsServer() {
723
724
  registerPrBacklogTools({ register, resolveToolSlug, jsonResult });
724
725
  // Kynver-native task board watchdog (read + tick for verify_live).
725
726
  registerTaskBoardWatchdogTools({ register, resolveToolSlug, jsonResult });
727
+ // Taskflow list/get/mutate (factory task board).
726
728
  registerTaskflowTools({ register, resolveToolSlug, jsonResult });
727
729
  // Compact active-plan audit rollup (broad completion audits).
728
730
  registerPlanAuditRollupTools({ register, resolveToolSlug, jsonResult });
@@ -730,6 +732,8 @@ export function createAgentOsServer() {
730
732
  registerMeshLivenessTools({ register, resolveToolSlug, jsonResult });
731
733
  // Visible Diagnostics report (dispatch-funnel, closed-loop, verify-live health …).
732
734
  registerDiagnosticsTools({ register, resolveToolSlug, jsonResult });
735
+ // PR6 dark preview shadow comparison (operator verification).
736
+ registerContextPreviewTools({ register, jsonResult });
733
737
  // Skill library: query-first discovery + on-demand recipe fetch (bounded, metadata-first).
734
738
  registerSkillsTools({ register, resolveToolSlug, jsonResult });
735
739
  registerMemoryLedgerTools({ register, resolveToolSlug, jsonResult });
@@ -0,0 +1,14 @@
1
+ type ToolResult = {
2
+ content: {
3
+ type: "text";
4
+ text: string;
5
+ }[];
6
+ structuredContent?: unknown;
7
+ };
8
+ export interface ContextPreviewToolDeps {
9
+ register: (name: string, description: string, inputSchema: Record<string, unknown>, cb: (args: Record<string, unknown>) => unknown) => void;
10
+ jsonResult: (data: unknown) => ToolResult;
11
+ }
12
+ /** Admin-safe MCP tool — reports legacy vs shadow preview deltas (PR6 dark integration). */
13
+ export declare function registerContextPreviewTools({ register, jsonResult }: ContextPreviewToolDeps): void;
14
+ export {};
@@ -0,0 +1,51 @@
1
+ import { z } from "zod";
2
+ import { buildChatMemoryShadowPreview, buildLegacyChatMemorySection, } from "@kynver-app/runtime";
3
+ function envTruthy(value) {
4
+ if (!value)
5
+ return false;
6
+ const normalized = value.trim().toLowerCase();
7
+ return normalized === "1" || normalized === "true" || normalized === "yes" || normalized === "on";
8
+ }
9
+ const DEFAULT_EXPANSION_ROUTE = "agent_os_search_memory";
10
+ /** Admin-safe MCP tool — reports legacy vs shadow preview deltas (PR6 dark integration). */
11
+ export function registerContextPreviewTools({ register, jsonResult }) {
12
+ register("agent_os_context_preview_shadow", "Compare legacy vs unified preview renderer output for a sample memory list. Dark rollout only — does not mutate prompts. Safe for operator verification.", {
13
+ memories: z
14
+ .array(z.object({
15
+ content: z.string(),
16
+ similarity: z.number().optional(),
17
+ }))
18
+ .optional()
19
+ .describe("Sample recalled memories to shadow-compare (default: one fixture row)."),
20
+ }, async (args) => {
21
+ const memories = args.memories ?? [
22
+ {
23
+ content: "Context maps should use route-map previews before raw payloads.",
24
+ similarity: 0.92,
25
+ },
26
+ ];
27
+ const legacy = buildLegacyChatMemorySection(memories);
28
+ const shadow = buildChatMemoryShadowPreview(memories);
29
+ const flagEnabled = envTruthy(process.env.KYNVER_MEMORY_PREVIEW_ALL_SURFACES);
30
+ const legacyChars = legacy.length;
31
+ const shadowChars = shadow.length;
32
+ return jsonResult({
33
+ flag: {
34
+ enabled: flagEnabled,
35
+ envVar: "KYNVER_MEMORY_PREVIEW_ALL_SURFACES",
36
+ effectiveSource: flagEnabled ? "env_explicit_on" : "default_off",
37
+ },
38
+ comparison: {
39
+ surface: "chat_default",
40
+ legacyChars,
41
+ shadowChars,
42
+ charDelta: shadowChars - legacyChars,
43
+ shadowWithinBaseline: shadowChars <= legacyChars,
44
+ expansionRoutesRetained: shadow.includes(DEFAULT_EXPANSION_ROUTE),
45
+ usingShadow: flagEnabled,
46
+ },
47
+ legacyPreview: legacy.slice(0, 500),
48
+ shadowPreview: shadow.slice(0, 500),
49
+ });
50
+ });
51
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kynver-app/mcp-agent-os",
3
- "version": "0.3.60",
3
+ "version": "0.3.61",
4
4
  "description": "Kynver Agentic OS MCP server \u2014 slug-keyed agent identity, goals, projects, sessions, and long-term memory",
5
5
  "type": "module",
6
6
  "bin": {
@@ -25,7 +25,7 @@
25
25
  "node": ">=24.11.0"
26
26
  },
27
27
  "dependencies": {
28
- "@kynver-app/runtime": "^0.2.0",
28
+ "@kynver-app/runtime": "^0.2.3",
29
29
  "@modelcontextprotocol/sdk": "^1.29.0",
30
30
  "zod": "^3.23.0"
31
31
  },