@monster-orange/den 0.1.0 → 0.2.1

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.
Files changed (64) hide show
  1. package/CHANGELOG.md +204 -0
  2. package/README.md +1 -1
  3. package/bin/den +8 -0
  4. package/docs/distributions.md +283 -12
  5. package/package.json +4 -2
  6. package/src/pillars/journeys/sandbox.ts +2 -5
  7. package/src/pillars/security/discover.ts +17 -1
  8. package/src/pillars/security/run.ts +31 -3
  9. package/src/shared/agent-actor.ts +77 -0
  10. package/src/shared/den-config.ts +122 -0
  11. package/src/shared/edge/status.ts +74 -0
  12. package/src/shared/environment-manager/health.ts +54 -8
  13. package/src/shared/environment-manager/load-applications.ts +31 -1
  14. package/src/shared/environment-manager/log-tail.ts +5 -4
  15. package/src/shared/environment-manager/opctl.ts +2 -1
  16. package/src/shared/environment-manager/service-container.ts +47 -0
  17. package/src/shared/environment-manager/service-runner.ts +19 -2
  18. package/src/shared/environment-manager/sync-targets.ts +66 -0
  19. package/src/shared/environment-manager/up-plan.ts +25 -1
  20. package/src/shared/manifest/merge-override.ts +75 -0
  21. package/src/shared/manifest/placement.ts +333 -0
  22. package/src/shared/manifest/read-manifest.ts +156 -38
  23. package/src/shared/manifest/schema.ts +14 -0
  24. package/src/shared/manifest/validate-layers.ts +229 -0
  25. package/src/shared/manifest/validate-manifest.ts +66 -6
  26. package/src/shared/paths.ts +12 -0
  27. package/src/shared/redact.ts +107 -0
  28. package/src/shared/stacks/manifest-commands.ts +30 -0
  29. package/src/shared/stacks/status.ts +99 -0
  30. package/src/shared/types/index.ts +23 -0
  31. package/src/ui/cli/applications-command.ts +34 -2
  32. package/src/ui/cli/edge-command.ts +9 -19
  33. package/src/ui/cli/graph-command.ts +50 -4
  34. package/src/ui/cli/index.ts +184 -55
  35. package/src/ui/cli/mcp-connect.ts +350 -0
  36. package/src/ui/cli/mcp-main.ts +13 -0
  37. package/src/ui/cli/mcp-stdout-guard.ts +10 -0
  38. package/src/ui/cli/named-target.ts +11 -0
  39. package/src/ui/cli/stack-command.ts +13 -40
  40. package/src/ui/cli/test-runner.ts +8 -1
  41. package/src/ui/mcp/api.ts +286 -0
  42. package/src/ui/mcp/connect.ts +304 -0
  43. package/src/ui/mcp/guards.ts +145 -0
  44. package/src/ui/mcp/server.ts +149 -0
  45. package/src/ui/mcp/tools.ts +644 -0
  46. package/src/ui/server/audit.ts +137 -0
  47. package/src/ui/server/changelog-parser.ts +11 -0
  48. package/src/ui/server/graph-prefs.ts +89 -0
  49. package/src/ui/server/health-row.ts +15 -0
  50. package/src/ui/server/index.ts +256 -61
  51. package/src/ui/server/lifecycle-exec.ts +188 -0
  52. package/src/ui/server/log-history.ts +4 -3
  53. package/src/ui/server/public/environments.html +4 -2
  54. package/src/ui/server/public/graph-model.js +416 -0
  55. package/src/ui/server/public/graph.css +980 -0
  56. package/src/ui/server/public/graph.js +986 -0
  57. package/src/ui/server/public/header.js +7 -5
  58. package/src/ui/server/public/local-dev.html +130 -2191
  59. package/src/ui/server/public/logs.html +11 -4
  60. package/src/ui/server/public/panel.js +790 -0
  61. package/src/ui/server/public/services.html +6 -1
  62. package/src/ui/server/readonly-routes.ts +209 -0
  63. package/src/ui/server/ui-assets.ts +73 -0
  64. package/src/ui/server/workspace-routes.ts +39 -8
@@ -469,6 +469,10 @@
469
469
  .log-output .log-err {
470
470
  color: var(--red);
471
471
  }
472
+ /* An action an agent asked for (via the MCP server). */
473
+ .log-output .log-agent {
474
+ color: var(--yellow);
475
+ }
472
476
  .log-output .log-done {
473
477
  color: var(--muted);
474
478
  font-style: italic;
@@ -687,11 +691,14 @@
687
691
  }
688
692
  function formatServerLogEntry(entry) {
689
693
  // "14:07:41 [lifecycle] ▶ run synthetic/local · modules=all [abcxyz]"
694
+ // An agent's action reads "[agent]" and ends "· by agent <client> …".
690
695
  const t = (entry.ts ?? "").slice(11, 19);
691
- const kind = (entry.kind ?? "info").padEnd(9);
696
+ const kind = (entry.actor ? "agent" : (entry.kind ?? "info")).padEnd(9);
692
697
  return `${t} [${kind}] ${entry.text ?? ""}`;
693
698
  }
694
- function serverLogClass(kind) {
699
+ function serverLogClass(entry) {
700
+ const kind = entry.kind;
701
+ if (entry.actor) return "log-agent";
695
702
  if (kind === "error") return "log-err";
696
703
  if (kind === "warn") return "log-err";
697
704
  if (kind === "lifecycle") return "log-cmd";
@@ -1224,12 +1231,12 @@
1224
1231
  if (serverLog) {
1225
1232
  if (msg.type === "history" && Array.isArray(msg.entries)) {
1226
1233
  for (const entry of msg.entries) {
1227
- append(formatServerLogEntry(entry), serverLogClass(entry.kind));
1234
+ append(formatServerLogEntry(entry), serverLogClass(entry));
1228
1235
  }
1229
1236
  } else if (msg.type === "log" && msg.entry) {
1230
1237
  append(
1231
1238
  formatServerLogEntry(msg.entry),
1232
- serverLogClass(msg.entry.kind),
1239
+ serverLogClass(msg.entry),
1233
1240
  );
1234
1241
  }
1235
1242
  return;