@monoes/monomindcli 2.10.4 → 2.10.6

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 (181) hide show
  1. package/.claude/helpers/handlers/gates-handler.cjs +47 -14
  2. package/.claude/settings.json +1 -1
  3. package/.claude/skills/mastermind/SKILL.md +15 -0
  4. package/.claude/skills/mastermind/references/antigravity-tools.md +62 -0
  5. package/.claude/skills/mastermind/references/claude-code-tools.md +52 -0
  6. package/.claude/skills/mastermind/references/codex-tools.md +66 -0
  7. package/.claude/skills/mastermind/references/copilot-tools.md +51 -0
  8. package/.claude/skills/mastermind/references/gemini-tools.md +65 -0
  9. package/.claude/skills/mastermind/references/pi-tools.md +30 -0
  10. package/.claude/skills/mastermind-createorg/SKILL.md +11 -3
  11. package/.claude/skills/mastermind-debug/SKILL.md +274 -0
  12. package/.claude/skills/mastermind-execute/SKILL.md +99 -0
  13. package/.claude/skills/mastermind-memory/SKILL.md +316 -0
  14. package/.claude/skills/mastermind-org/SKILL.md +13 -0
  15. package/.claude/skills/mastermind-plan/SKILL.md +212 -0
  16. package/.claude/skills/mastermind-research/SKILL.md +163 -0
  17. package/.claude/skills/mastermind-review/SKILL.md +228 -0
  18. package/.claude/skills/monodesign/scripts/detector/engines/browser/drivers.mjs +33 -0
  19. package/dist/src/commands/agent-exec.d.ts.map +1 -1
  20. package/dist/src/commands/agent-exec.js +52 -13
  21. package/dist/src/commands/agent-exec.js.map +1 -1
  22. package/dist/src/commands/doctor-project-checks.d.ts.map +1 -1
  23. package/dist/src/commands/doctor-project-checks.js.map +1 -1
  24. package/dist/src/commands/org-observe.d.ts.map +1 -1
  25. package/dist/src/commands/org-observe.js +34 -8
  26. package/dist/src/commands/org-observe.js.map +1 -1
  27. package/dist/src/commands/org.d.ts.map +1 -1
  28. package/dist/src/commands/org.js +10 -5
  29. package/dist/src/commands/org.js.map +1 -1
  30. package/dist/src/commands/security-scan.d.ts +64 -1
  31. package/dist/src/commands/security-scan.d.ts.map +1 -1
  32. package/dist/src/commands/security-scan.js +75 -2
  33. package/dist/src/commands/security-scan.js.map +1 -1
  34. package/dist/src/init/mcp-generator.d.ts.map +1 -1
  35. package/dist/src/init/mcp-generator.js.map +1 -1
  36. package/dist/src/orgrt/agent-exec.d.ts +1 -1
  37. package/dist/src/orgrt/agent-exec.d.ts.map +1 -1
  38. package/dist/src/orgrt/agent-exec.js +64 -6
  39. package/dist/src/orgrt/agent-exec.js.map +1 -1
  40. package/dist/src/orgrt/agent-runner.d.ts.map +1 -1
  41. package/dist/src/orgrt/agent-runner.js +29 -1
  42. package/dist/src/orgrt/agent-runner.js.map +1 -1
  43. package/dist/src/orgrt/kimicode-runner.d.ts.map +1 -1
  44. package/dist/src/orgrt/kimicode-runner.js.map +1 -1
  45. package/dist/src/orgrt/org-design-skill.d.ts +9 -0
  46. package/dist/src/orgrt/org-design-skill.d.ts.map +1 -0
  47. package/dist/src/orgrt/org-design-skill.js +61 -0
  48. package/dist/src/orgrt/org-design-skill.js.map +1 -0
  49. package/dist/src/orgrt/role-skills/account-strategist.md +26 -0
  50. package/dist/src/orgrt/role-skills/accounts-payable.md +26 -0
  51. package/dist/src/orgrt/role-skills/adaptive-coordinator.md +26 -0
  52. package/dist/src/orgrt/role-skills/adaptive-coordinator2.md +25 -0
  53. package/dist/src/orgrt/role-skills/ai-citation.md +25 -0
  54. package/dist/src/orgrt/role-skills/ai-engineer.md +28 -0
  55. package/dist/src/orgrt/role-skills/analytics-reporter.md +27 -0
  56. package/dist/src/orgrt/role-skills/api-tester.md +27 -0
  57. package/dist/src/orgrt/role-skills/automation-governance.md +26 -0
  58. package/dist/src/orgrt/role-skills/backend-dev.md +27 -0
  59. package/dist/src/orgrt/role-skills/benchmarker.md +28 -0
  60. package/dist/src/orgrt/role-skills/blockchain-auditor.md +27 -0
  61. package/dist/src/orgrt/role-skills/byzantine-coord.md +25 -0
  62. package/dist/src/orgrt/role-skills/case-analyst.md +25 -0
  63. package/dist/src/orgrt/role-skills/cicd-engineer.md +28 -0
  64. package/dist/src/orgrt/role-skills/cloud-architect.md +25 -0
  65. package/dist/src/orgrt/role-skills/code-review-swarm.md +26 -0
  66. package/dist/src/orgrt/role-skills/coder.md +27 -0
  67. package/dist/src/orgrt/role-skills/collective-coord.md +25 -0
  68. package/dist/src/orgrt/role-skills/compliance-auditor.md +27 -0
  69. package/dist/src/orgrt/role-skills/consensus-coordinator.md +25 -0
  70. package/dist/src/orgrt/role-skills/content-creator.md +25 -0
  71. package/dist/src/orgrt/role-skills/cro-specialist.md +26 -0
  72. package/dist/src/orgrt/role-skills/data-consolidator.md +27 -0
  73. package/dist/src/orgrt/role-skills/data-engineer.md +27 -0
  74. package/dist/src/orgrt/role-skills/database-optimizer.md +25 -0
  75. package/dist/src/orgrt/role-skills/deal-strategist.md +26 -0
  76. package/dist/src/orgrt/role-skills/defender.md +25 -0
  77. package/dist/src/orgrt/role-skills/devops-automator.md +25 -0
  78. package/dist/src/orgrt/role-skills/discovery-coach.md +26 -0
  79. package/dist/src/orgrt/role-skills/email-marketing.md +27 -0
  80. package/dist/src/orgrt/role-skills/embedded-firmware.md +25 -0
  81. package/dist/src/orgrt/role-skills/evidence-collector.md +27 -0
  82. package/dist/src/orgrt/role-skills/experiment-tracker.md +28 -0
  83. package/dist/src/orgrt/role-skills/feedback-synthesizer.md +26 -0
  84. package/dist/src/orgrt/role-skills/finance-tracker.md +26 -0
  85. package/dist/src/orgrt/role-skills/frontend-developer.md +25 -0
  86. package/dist/src/orgrt/role-skills/game-audio-engineer.md +26 -0
  87. package/dist/src/orgrt/role-skills/game-designer.md +26 -0
  88. package/dist/src/orgrt/role-skills/hierarchical-coord.md +26 -0
  89. package/dist/src/orgrt/role-skills/incident-commander.md +26 -0
  90. package/dist/src/orgrt/role-skills/infrastructure.md +25 -0
  91. package/dist/src/orgrt/role-skills/input-validator.md +27 -0
  92. package/dist/src/orgrt/role-skills/ios-developer.md +25 -0
  93. package/dist/src/orgrt/role-skills/issue-tracker.md +26 -0
  94. package/dist/src/orgrt/role-skills/judge.md +25 -0
  95. package/dist/src/orgrt/role-skills/launch-strategist.md +25 -0
  96. package/dist/src/orgrt/role-skills/legal-compliance.md +25 -0
  97. package/dist/src/orgrt/role-skills/level-designer.md +26 -0
  98. package/dist/src/orgrt/role-skills/load-balancer.md +28 -0
  99. package/dist/src/orgrt/role-skills/mcp-builder.md +27 -0
  100. package/dist/src/orgrt/role-skills/memory-coordinator.md +28 -0
  101. package/dist/src/orgrt/role-skills/mesh-coordinator.md +26 -0
  102. package/dist/src/orgrt/role-skills/ml-developer.md +28 -0
  103. package/dist/src/orgrt/role-skills/mobile-app-builder.md +25 -0
  104. package/dist/src/orgrt/role-skills/mobile-dev.md +25 -0
  105. package/dist/src/orgrt/role-skills/model-qa.md +28 -0
  106. package/dist/src/orgrt/role-skills/narrative-designer.md +26 -0
  107. package/dist/src/orgrt/role-skills/outbound-strategist.md +26 -0
  108. package/dist/src/orgrt/role-skills/path-validator.md +27 -0
  109. package/dist/src/orgrt/role-skills/payment-agent.md +26 -0
  110. package/dist/src/orgrt/role-skills/perf-analyzer.md +28 -0
  111. package/dist/src/orgrt/role-skills/pipeline-analyst.md +26 -0
  112. package/dist/src/orgrt/role-skills/planner.md +27 -0
  113. package/dist/src/orgrt/role-skills/pr-manager.md +26 -0
  114. package/dist/src/orgrt/role-skills/pricing-strategist.md +25 -0
  115. package/dist/src/orgrt/role-skills/product-manager.md +26 -0
  116. package/dist/src/orgrt/role-skills/production-validator.md +27 -0
  117. package/dist/src/orgrt/role-skills/project-shepherd.md +25 -0
  118. package/dist/src/orgrt/role-skills/proposal-strategist.md +26 -0
  119. package/dist/src/orgrt/role-skills/prosecutor.md +25 -0
  120. package/dist/src/orgrt/role-skills/queen-coordinator.md +25 -0
  121. package/dist/src/orgrt/role-skills/quorum-manager.md +25 -0
  122. package/dist/src/orgrt/role-skills/raft-manager.md +25 -0
  123. package/dist/src/orgrt/role-skills/reality-checker.md +27 -0
  124. package/dist/src/orgrt/role-skills/recruitment.md +25 -0
  125. package/dist/src/orgrt/role-skills/release-manager.md +26 -0
  126. package/dist/src/orgrt/role-skills/repo-architect.md +25 -0
  127. package/dist/src/orgrt/role-skills/researcher.md +27 -0
  128. package/dist/src/orgrt/role-skills/resource-allocator.md +28 -0
  129. package/dist/src/orgrt/role-skills/reviewer.md +27 -0
  130. package/dist/src/orgrt/role-skills/safe-executor.md +27 -0
  131. package/dist/src/orgrt/role-skills/sales-coach.md +26 -0
  132. package/dist/src/orgrt/role-skills/sales-engineer.md +26 -0
  133. package/dist/src/orgrt/role-skills/scout-explorer.md +25 -0
  134. package/dist/src/orgrt/role-skills/security-architect.md +27 -0
  135. package/dist/src/orgrt/role-skills/security-auditor.md +27 -0
  136. package/dist/src/orgrt/role-skills/senior-developer.md +27 -0
  137. package/dist/src/orgrt/role-skills/senior-pm.md +25 -0
  138. package/dist/src/orgrt/role-skills/seo-specialist.md +25 -0
  139. package/dist/src/orgrt/role-skills/social-media.md +25 -0
  140. package/dist/src/orgrt/role-skills/solidity-engineer.md +28 -0
  141. package/dist/src/orgrt/role-skills/sprint-prioritizer.md +26 -0
  142. package/dist/src/orgrt/role-skills/sre.md +26 -0
  143. package/dist/src/orgrt/role-skills/studio-operations.md +25 -0
  144. package/dist/src/orgrt/role-skills/studio-producer.md +25 -0
  145. package/dist/src/orgrt/role-skills/support-responder.md +25 -0
  146. package/dist/src/orgrt/role-skills/system-architect.md +27 -0
  147. package/dist/src/orgrt/role-skills/task-orchestrator.md +28 -0
  148. package/dist/src/orgrt/role-skills/technical-artist.md +26 -0
  149. package/dist/src/orgrt/role-skills/technical-writer.md +27 -0
  150. package/dist/src/orgrt/role-skills/tester.md +27 -0
  151. package/dist/src/orgrt/role-skills/threat-detection.md +27 -0
  152. package/dist/src/orgrt/role-skills/trend-researcher.md +28 -0
  153. package/dist/src/orgrt/role-skills/trial-director.md +25 -0
  154. package/dist/src/orgrt/role-skills/unity-architect.md +26 -0
  155. package/dist/src/orgrt/role-skills/visionos-engineer.md +25 -0
  156. package/dist/src/orgrt/role-skills/worker-specialist.md +25 -0
  157. package/dist/src/orgrt/role-skills/workflow-architect.md +25 -0
  158. package/dist/src/orgrt/role-skills/workflow-automation.md +26 -0
  159. package/dist/src/orgrt/role-skills/zk-steward.md +27 -0
  160. package/dist/src/orgrt/role-skills.d.ts +9 -0
  161. package/dist/src/orgrt/role-skills.d.ts.map +1 -0
  162. package/dist/src/orgrt/role-skills.js +52 -0
  163. package/dist/src/orgrt/role-skills.js.map +1 -0
  164. package/dist/src/orgrt/runner-registry.d.ts.map +1 -1
  165. package/dist/src/orgrt/runner-registry.js +7 -3
  166. package/dist/src/orgrt/runner-registry.js.map +1 -1
  167. package/dist/src/orgrt/session.d.ts +16 -2
  168. package/dist/src/orgrt/session.d.ts.map +1 -1
  169. package/dist/src/orgrt/session.js +36 -3
  170. package/dist/src/orgrt/session.js.map +1 -1
  171. package/dist/src/orgrt/types.d.ts +12 -0
  172. package/dist/src/orgrt/types.d.ts.map +1 -1
  173. package/dist/src/orgrt/types.js +15 -0
  174. package/dist/src/orgrt/types.js.map +1 -1
  175. package/dist/src/ui/dashboard.html +15 -225
  176. package/dist/src/ui/data/mastermind-sessions.json +1 -0
  177. package/dist/src/ui/routes-monoes.mjs +7 -3
  178. package/dist/src/ui/routes-org.mjs +1 -68
  179. package/dist/src/ui/server.mjs +1 -1
  180. package/dist/tsconfig.tsbuildinfo +1 -1
  181. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/orgrt/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/orgrt/types.ts"],"names":[],"mappings":"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"}
@@ -2094,29 +2094,18 @@ select.pb-cfg-inp { padding: 4px 7px; cursor: pointer; }
2094
2094
  <div id="org-detail-tabs">
2095
2095
  <button class="odt-btn active" data-tab="chart" onclick="v2SwitchOrgTab('chart')">Chart</button>
2096
2096
  <button class="odt-btn" data-tab="chat" onclick="v2SwitchOrgTab('chat')">Chat</button>
2097
- <button class="odt-btn" data-tab="agents-full" onclick="v2SwitchOrgTab('agents-full')">Agents</button>
2098
- <button class="odt-btn" data-tab="activity" onclick="v2SwitchOrgTab('activity')">Activity</button>
2099
2097
  <div class="odt-tab-sep" title="Secondary tabs"></div>
2100
- <button class="odt-btn secondary" data-tab="skills" onclick="v2SwitchOrgTab('skills')">Skills</button>
2101
-
2102
- <button class="odt-btn secondary" data-tab="costs" onclick="v2SwitchOrgTab('costs')">Costs</button>
2103
2098
  <button class="odt-btn secondary" data-tab="config" onclick="v2SwitchOrgTab('config')">Config</button>
2104
2099
  <button class="odt-btn secondary" data-tab="files" onclick="v2SwitchOrgTab('files')">Files</button>
2105
2100
  <button class="odt-btn secondary" data-tab="approvals" onclick="v2SwitchOrgTab('approvals')">Approvals</button>
2106
- <button class="odt-btn secondary" data-tab="budgets" onclick="v2SwitchOrgTab('budgets')">Budgets</button>
2107
2101
  <button class="odt-btn secondary" data-tab="decisions" onclick="v2SwitchOrgTab('decisions')">Decisions</button>
2108
2102
  </div>
2109
2103
  <div id="org-detail-body">
2110
2104
  <div class="odt-pane active" id="odt-chart"></div>
2111
- <div class="odt-pane" id="odt-agents-full"></div>
2112
- <div class="odt-pane" id="odt-activity"></div>
2113
2105
  <div class="odt-pane" id="odt-chat" style="flex-direction:column;height:100%;overflow:hidden;"></div>
2114
- <div class="odt-pane" id="odt-skills"></div>
2115
- <div class="odt-pane" id="odt-costs"></div>
2116
2106
  <div class="odt-pane" id="odt-config" style="overflow-y:auto"></div>
2117
2107
  <div class="odt-pane" id="odt-files" style="overflow-y:auto"></div>
2118
2108
  <div class="odt-pane" id="odt-approvals"></div>
2119
- <div class="odt-pane" id="odt-budgets"></div>
2120
2109
  <div class="odt-pane" id="odt-decisions"></div>
2121
2110
  </div>
2122
2111
  </div>
@@ -2751,7 +2740,7 @@ async function toggleMonoesConnection() {
2751
2740
  if (error || !authorizeUrl) { alert(`Could not start monoes.me connection: ${error || 'unknown error'}`); return; }
2752
2741
  const popup = window.open(authorizeUrl, 'monoes-connect', 'width=520,height=680');
2753
2742
  const poll = setInterval(async () => {
2754
- if (popup && popup.closed) {
2743
+ if (popup?.closed) {
2755
2744
  clearInterval(poll);
2756
2745
  await refreshMonoesStatus();
2757
2746
  }
@@ -2761,6 +2750,9 @@ async function toggleMonoesConnection() {
2761
2750
  }
2762
2751
  }
2763
2752
 
2753
+ // The sidebar button invokes this from inline HTML, which Biome cannot trace.
2754
+ window.toggleMonoesConnection = toggleMonoesConnection;
2755
+
2764
2756
  // ── project switching ──────────────────────────────────────
2765
2757
  function _showNavProjectCtx(path) {
2766
2758
  const projName = baseName(path);
@@ -5841,21 +5833,19 @@ async function v2SelectOrg(name) {
5841
5833
  _v2OrgData._activity = Array.isArray(actR) ? actR : [];
5842
5834
  _v2OrgData._health = healthR;
5843
5835
  // Fetch supplemental data for new tabs in parallel
5844
- const [agentsR, budgetsR, membersR, issuesR] = await Promise.all([
5836
+ const [agentsR, membersR, issuesR] = await Promise.all([
5845
5837
  fetch(`/api/org/${_enc}/agents${DIR ? `?dir=${encodeURIComponent(DIR)}` : ''}`).then(r=>r.ok?r.json():[]).catch(()=>[]),
5846
- fetch(`/api/org/${_enc}/budgets${DIR ? `?dir=${encodeURIComponent(DIR)}` : ''}`).then(r=>r.ok?r.json():null).catch(()=>null),
5847
5838
  fetch(`/api/org/${_enc}/members${DIR ? `?dir=${encodeURIComponent(DIR)}` : ''}`).then(r=>r.ok?r.json():[]).catch(()=>[]),
5848
5839
  fetch(`/api/org/${_enc}/issues${DIR ? `?dir=${encodeURIComponent(DIR)}` : ''}`).then(r=>r.ok?r.json():[]).catch(()=>[]),
5849
5840
  ]);
5850
5841
  if (_v2SelOrg !== requested || DIR !== requestedDir) return;
5851
5842
  _v2OrgData._agents = Array.isArray(agentsR) ? agentsR : (agentsR?.agents || []);
5852
- _v2OrgData._budgets = budgetsR;
5853
5843
  _v2OrgData._members = Array.isArray(membersR) ? membersR : (membersR?.members || []);
5854
5844
  _v2OrgData._joinRequests = (membersR?.join_requests) || [];
5855
5845
  _v2OrgData._issues = Array.isArray(issuesR) ? issuesR : (issuesR?.issues || []);
5856
5846
  } catch (_) {
5857
5847
  if (_v2SelOrg !== requested || DIR !== requestedDir) return;
5858
- _v2OrgData = { ...listOrg, communication: [], _activity: [], _health: null, _agents: [], _budgets: null, _members: [], _issues: [] };
5848
+ _v2OrgData = { ...listOrg, communication: [], _activity: [], _health: null, _agents: [], _members: [], _issues: [] };
5859
5849
  }
5860
5850
 
5861
5851
  v2UpdateOrgHeader(listOrg, _v2OrgData);
@@ -5913,11 +5903,9 @@ function v2RenderOrgTab(tab) {
5913
5903
  }
5914
5904
  if (tab === 'chart') v2RenderOrgChart();
5915
5905
  else if (tab === 'roles') v2RenderOrgRoles();
5916
- else if (tab === 'activity') v2RenderOrgActivity();
5917
5906
  else if (tab === 'health') v2RenderOrgHealth();
5918
5907
  else if (tab === 'heartbeats') v2RenderOrgHeartbeats();
5919
5908
  else if (tab === 'tasks') v2RenderOrgTasks();
5920
- else if (tab === 'costs') v2RenderOrgCosts();
5921
5909
  else if (tab === 'members') v2RenderOrgMembers();
5922
5910
  else if (tab === 'goals') v2RenderOrgGoals();
5923
5911
  else if (tab === 'board') v2RenderOrgBoard();
@@ -5927,15 +5915,12 @@ function v2RenderOrgTab(tab) {
5927
5915
  else if (tab === 'settings') v2RenderOrgSettings();
5928
5916
  else if (tab === 'routines') v2RenderOrgRoutines();
5929
5917
  else if (tab === 'myissues') v2RenderOrgMyIssues();
5930
- else if (tab === 'budgets') v2RenderOrgBudgets();
5931
5918
  else if (tab === 'decisions') v2RenderOrgDecisions();
5932
5919
  else if (tab === 'plugins') v2RenderOrgPlugins();
5933
5920
  else if (tab === 'charts') v2RenderOrgCharts();
5934
5921
  else if (tab === 'projects') v2RenderOrgProjects();
5935
- else if (tab === 'skills') v2RenderOrgSkills();
5936
5922
  else if (tab === 'workspaces') v2RenderOrgWorkspaces();
5937
5923
  else if (tab === 'invites') v2RenderOrgInvites();
5938
- else if (tab === 'agents-full') v2RenderOrgAgentsFull();
5939
5924
  else if (tab === 'environments') v2RenderOrgEnvironments();
5940
5925
  else if (tab === 'access') v2RenderOrgAccess();
5941
5926
  else if (tab === 'issues-full') v2RenderOrgIssuesFull();
@@ -6801,16 +6786,12 @@ function v2RenderAgentDrawer(data) {
6801
6786
  if (cap.termination) chars.push(['Done when', cap.termination]);
6802
6787
  if (cap.version) chars.push(['Version', cap.version]);
6803
6788
 
6804
- const skills = [];
6805
- (Array.isArray(role.skills) ? role.skills : []).forEach(s => { if (s && !skills.includes(s)) skills.push(s); });
6806
- (Array.isArray(cap.expertise) ? cap.expertise : []).forEach(s => { if (s && !skills.includes(s)) skills.push(s); });
6807
6789
  const taskTypes = Array.isArray(cap.task_types) ? cap.task_types : [];
6808
6790
  const resps = Array.isArray(role.responsibilities) ? role.responsibilities : [];
6809
6791
 
6810
6792
  let html = '';
6811
6793
  if (def.description) html += `<div class="oad-desc">${esc(def.description)}</div>`;
6812
6794
  if (chars.length) html += `<div class="oad-sec"><div class="oad-sec-h">Characteristics</div><div class="oad-chars">${chars.map(([k, v]) => `<div class="oad-char"><span class="oad-char-k">${esc(k)}</span><span class="oad-char-v">${esc(v)}</span></div>`).join('')}</div></div>`;
6813
- if (skills.length) html += `<div class="oad-sec"><div class="oad-sec-h">Skills &amp; expertise</div><div class="oad-chips">${skills.map(s => `<span class="oad-chip">${esc(s)}</span>`).join('')}</div></div>`;
6814
6795
  if (resps.length) html += `<div class="oad-sec"><div class="oad-sec-h">Responsibilities</div><ul class="oad-list">${resps.map(s => `<li>${esc(s)}</li>`).join('')}</ul></div>`;
6815
6796
  if (taskTypes.length) html += `<div class="oad-sec"><div class="oad-sec-h">Task types</div><div class="oad-chips">${taskTypes.map(s => `<span class="oad-chip alt">${esc(s)}</span>`).join('')}</div></div>`;
6816
6797
  if (def.found && def.document) {
@@ -6927,36 +6908,6 @@ function fmtOrgEvDetail(ev) {
6927
6908
  return ev.role||ev.result||ev.msg||ev.message||ev.progress||ev.agent||ev.status||'';
6928
6909
  }
6929
6910
 
6930
- function v2RenderOrgActivity() {
6931
- if (!_v2SelOrg) return;
6932
- const activity = _v2OrgData?._activity || [];
6933
- const orgEvents = _v2OrgEventLog[_v2SelOrg] || [];
6934
- const _actSeen = new Set();
6935
- const events = [...activity, ...orgEvents]
6936
- .filter(e => { const k=`${e.ts||''}|${e.type||''}|${e.runId||e.session||''}|${e.from||e.role||e.agent||''}|${(e.result||e.msg||e.message||e.summary||'').slice(0,20)}`; return _actSeen.has(k)?false:(_actSeen.add(k),true); })
6937
- .sort((a,b) => (b.ts||0)-(a.ts||0)).slice(0,80);
6938
- const pane = document.getElementById('odt-activity');
6939
- if (!pane) return;
6940
- const fmtOrgEvType = t => {
6941
- const m={
6942
- 'org:start':'start','org:stop':'stop','org:complete':'done','org:create':'create',
6943
- 'org:heartbeat':'hb','org:agent:online':'agent-on','org:comms':'comms',
6944
- 'org:checkpoint':'checkpoint','run:cycle:complete':'cycle','run:complete':'run-done',
6945
- 'org:error':'error','org:agent:offline':'agent-off',
6946
- };
6947
- return m[t]||(t||'').replace(/^(?:org|run):/,'');
6948
- };
6949
- if (!events.length) {
6950
- pane.innerHTML = '<div class="empty">No activity recorded</div>';
6951
- return;
6952
- }
6953
- pane.innerHTML = `<div class="act-v2-list">${events.map(ev => {
6954
- const t = ev.ts ? new Date(ev.ts).toLocaleTimeString('en',{hour12:false,hour:'2-digit',minute:'2-digit',second:'2-digit'}) : '';
6955
- const detail = fmtOrgEvDetail(ev) || ev.role || ev.agent || '';
6956
- return `<div class="av2-row"><span class="av2-time">${esc(t)}</span><span class="av2-type">${esc(fmtOrgEvType(ev.type))}</span><span class="av2-msg">${esc(detail)}</span></div>`;
6957
- }).join('')}</div>`;
6958
- }
6959
-
6960
6911
  // ── org health ──────────────────────────────
6961
6912
  function v2RenderOrgHealth() {
6962
6913
  if (!_v2SelOrg) return;
@@ -7037,45 +6988,6 @@ function v2RenderOrgTasks() {
7037
6988
  </div>`).join('');
7038
6989
  }
7039
6990
 
7040
- // ── org costs tab ──────────────────────────────────────────
7041
- function v2RenderOrgCosts() {
7042
- if (!_v2SelOrg) return;
7043
- const pane = document.getElementById('odt-costs');
7044
- if (!pane) return;
7045
- // Primary source: per-agent cost rollup from the org budgets endpoint (already loaded)
7046
- const b = _v2OrgData?._budgets;
7047
- let rows = (b && Array.isArray(b.agents)) ? b.agents.map(a => ({
7048
- label: a.title || a.id || '—',
7049
- cost: Number(a.total_cost_usd ?? a.cost ?? 0),
7050
- tin: Number(a.tokens_in ?? a.tokensIn ?? 0),
7051
- tout: Number(a.tokens_out ?? a.tokensOut ?? 0),
7052
- })) : [];
7053
- // Fallback to legacy _v2OrgData.costs if ever present
7054
- if (!rows.length && _v2OrgData?.costs) {
7055
- const c = _v2OrgData.costs;
7056
- rows = Array.isArray(c)
7057
- ? c.map(r => ({ label: r.label ?? r.name ?? '—', cost: Number(r.value ?? r.cost ?? 0), tin: 0, tout: 0 }))
7058
- : Object.entries(c).map(([k, v]) => ({ label: k, cost: Number(v) || 0, tin: 0, tout: 0 }));
7059
- }
7060
- if (!rows.length) { pane.innerHTML = '<div class="empty" style="text-align:center;padding:24px 16px"><div style="font-size:13px;color:var(--text-lo);margin-bottom:6px">No cost data tracked yet</div><div style="font-size:11px;color:var(--text-lo);opacity:0.7">Agents must emit <code>agent:usage</code> events to populate this tab</div></div>'; return; }
7061
- const cur = (b?.currency) || 'USD';
7062
- const period = (b?.period) || '';
7063
- const total = rows.reduce((s, r) => s + r.cost, 0);
7064
- const totIn = rows.reduce((s, r) => s + r.tin, 0), totOut = rows.reduce((s, r) => s + r.tout, 0);
7065
- rows.sort((a, c) => c.cost - a.cost);
7066
- pane.innerHTML = `<div class="m-group-title">Cost Breakdown${period ? ` · ${esc(period)}` : ''}</div>
7067
- <div style="display:flex;justify-content:space-between;align-items:baseline;padding:8px 0 10px;border-bottom:1px solid var(--border);margin-bottom:6px">
7068
- <span style="color:var(--text-lo);font-size:11px">Total (${esc(cur)})</span>
7069
- <span style="color:var(--accent);font-family:var(--mono);font-size:15px;font-weight:600">$${total.toFixed(4)}</span>
7070
- </div>` +
7071
- rows.map(r => `<div style="display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding:6px 0;border-bottom:1px solid var(--border);font-size:12px">
7072
- <span style="color:var(--text-hi);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap">${esc(String(r.label))}</span>
7073
- <span style="color:var(--text-lo);font-family:var(--mono);font-size:10px;white-space:nowrap">${(r.tin + r.tout).toLocaleString()} tok</span>
7074
- <span style="color:var(--accent);font-family:var(--mono);white-space:nowrap">$${r.cost.toFixed(4)}</span>
7075
- </div>`).join('') +
7076
- `<div style="color:var(--text-lo);font-size:10px;margin-top:10px">${totIn.toLocaleString()} in · ${totOut.toLocaleString()} out · sourced from org budgets</div>`;
7077
- }
7078
-
7079
6991
  // ── org members tab ────────────────────────────────────────
7080
6992
  function v2RenderOrgMembers() {
7081
6993
  if (!_v2SelOrg) return;
@@ -7427,54 +7339,6 @@ async function v2RenderOrgMyIssues() {
7427
7339
  } catch (e) { el.innerHTML = `<div class="empty">Failed: ${esc(e.message)}</div>`; }
7428
7340
  }
7429
7341
 
7430
- // ── BUDGETS ────────────────────────────────────────────────
7431
- function v2RenderOrgBudgets() {
7432
- const el = document.getElementById('odt-budgets');
7433
- if (!el || !_v2OrgData) return;
7434
- const b = _v2OrgData._budgets || _v2OrgData.budgets || {};
7435
- // Server returns { org_budget: {limit_tokens, limit_usd}, agents: [{id, title, tokens_in, tokens_out, total_cost_usd}] }
7436
- const orgBudget = b.org_budget || {};
7437
- const tokenLimit = orgBudget.limit_tokens || b.tokenLimit || null;
7438
- const usdLimit = orgBudget.limit_usd || b.usdLimit || null;
7439
- // Per-agent data comes from the budgets endpoint (has cost); fall back to agents roster
7440
- const budgetAgents = Array.isArray(b.agents) && b.agents.length ? b.agents : [];
7441
- const usedTokens = budgetAgents.reduce((s, a) => s + (a.tokens_in || 0) + (a.tokens_out || 0), 0);
7442
- const usedUsd = budgetAgents.reduce((s, a) => s + (a.total_cost_usd || 0), 0);
7443
-
7444
- function fillBar(used, limit) {
7445
- if (!limit) return '';
7446
- const pct = Math.min(100, Math.round((used / limit) * 100));
7447
- const col = pct >= 90 ? 'var(--red)' : pct >= 70 ? 'oklch(70% 0.18 60)' : 'var(--accent)';
7448
- const filled = Math.round(pct / 5);
7449
- return `<div style="font-family:var(--mono);font-size:11px;color:${col}">${'█'.repeat(filled)}${'░'.repeat(20 - filled)} ${pct}%</div>`;
7450
- }
7451
-
7452
- let html = '';
7453
- if (tokenLimit != null || usedTokens > 0) {
7454
- html += `<div class="m-group-title">Tokens</div>${fillBar(usedTokens, tokenLimit)}<div style="font-size:12px;color:var(--text-lo);margin:4px 0 14px">${usedTokens.toLocaleString()} / ${tokenLimit ? tokenLimit.toLocaleString() : '∞'}</div>`;
7455
- }
7456
- if (usdLimit != null || usedUsd > 0) {
7457
- html += `<div class="m-group-title">USD Budget</div>${fillBar(usedUsd, usdLimit)}<div style="font-size:12px;color:var(--text-lo);margin:4px 0 14px">$${usedUsd.toFixed(4)} / ${usdLimit ? `$${Number(usdLimit).toFixed(2)}` : '∞'}</div>`;
7458
- }
7459
- if (budgetAgents.length) {
7460
- html += '<div class="m-group-title" style="margin-bottom:6px">Per Agent</div>' +
7461
- `<table style="width:100%;border-collapse:collapse;font-size:12px"><thead><tr style="color:var(--text-xs);text-align:left"><th style="padding:4px 8px">Agent</th><th>Tokens In</th><th>Tokens Out</th><th>Cost</th></tr></thead><tbody>` +
7462
- budgetAgents.slice(0, 20).map(a => {
7463
- const tIn = a.tokens_in || 0, tOut = a.tokens_out || 0;
7464
- const cost = a.total_cost_usd || 0;
7465
- const limit = a.limit_usd || orgBudget.limit_usd || 0;
7466
- const over = limit && cost > limit;
7467
- return `<tr style="border-top:1px solid var(--border)${over ? ';color:var(--red)' : ''}">
7468
- <td style="padding:4px 8px;font-family:var(--mono);font-size:11px;color:${over ? 'var(--red)' : 'var(--text-hi)'}">${esc((a.title || a.id || '—').toString().slice(0, 14))}</td>
7469
- <td style="padding:4px 8px;color:var(--text-lo)">${tIn.toLocaleString()}</td>
7470
- <td style="padding:4px 8px;color:var(--text-lo)">${tOut.toLocaleString()}</td>
7471
- <td style="padding:4px 8px;color:var(--accent)">$${cost.toFixed(4)}${over ? ' ⚠' : ''}</td>
7472
- </tr>`;
7473
- }).join('') + '</tbody></table>';
7474
- }
7475
- el.innerHTML = html || '<div class="empty">No budget data</div>';
7476
- }
7477
-
7478
7342
  // ── PLUGINS ────────────────────────────────────────────────
7479
7343
  async function v2RenderOrgPlugins() {
7480
7344
  const el = document.getElementById('odt-plugins');
@@ -7590,41 +7454,6 @@ async function v2RenderOrgProjects() {
7590
7454
  } catch (e) { el.innerHTML = `<div class="empty">Failed: ${esc(e.message)}</div>`; }
7591
7455
  }
7592
7456
 
7593
- // ── SKILLS ─────────────────────────────────────────────────
7594
- async function v2RenderOrgSkills() {
7595
- const el = document.getElementById('odt-skills');
7596
- if (!el || !_v2OrgData) return;
7597
- const roles = Array.isArray(_v2OrgData.roles) ? _v2OrgData.roles : [];
7598
- if (!roles.length) { el.innerHTML = '<div class="empty">No roles defined</div>'; return; }
7599
- el.innerHTML = '<div class="empty">Loading skills…</div>';
7600
- const org = _v2SelOrg, dirq = DIR ? `?dir=${encodeURIComponent(DIR)}` : '';
7601
- // Enrich each role with expertise + task types from its agent definition (same source as the detail drawer)
7602
- const enriched = await Promise.all(roles.map(async r => {
7603
- const expertise = Array.isArray(r.skills) ? r.skills.slice() : [];
7604
- let taskTypes = [];
7605
- try {
7606
- const j = await fetch(`/api/org/${encodeURIComponent(org)}/agent/${encodeURIComponent(r.id)}${dirq}`).then(x => x.ok ? x.json() : null);
7607
- const cap = j?.definition?.capability;
7608
- if (cap) {
7609
- (cap.expertise || []).forEach(s => { if (s && !expertise.includes(s)) expertise.push(s); });
7610
- taskTypes = cap.task_types || [];
7611
- }
7612
- } catch (_) {}
7613
- return { name: r.name || r.title || r.id, type: r.type || r.agent_type || '', expertise, taskTypes };
7614
- }));
7615
- if (_v2SelOrg !== org) return; // org switched while fetching
7616
- el.innerHTML = enriched.map(e => `<div style="padding:10px 0;border-bottom:1px solid var(--border)">
7617
- <div style="display:flex;align-items:baseline;gap:8px;margin-bottom:6px">
7618
- <span style="font-size:13px;font-weight:600;color:var(--text-hi)">${esc(e.name)}</span>
7619
- ${e.type ? `<span style="font-size:10px;color:var(--text-lo)">${esc(e.type)}</span>` : ''}
7620
- </div>
7621
- ${e.expertise.length
7622
- ? `<div style="display:flex;flex-wrap:wrap;gap:5px;${e.taskTypes.length ? 'margin-bottom:6px' : ''}">${e.expertise.map(s => `<span class="oad-chip">${esc(s)}</span>`).join('')}</div>`
7623
- : '<div style="font-size:11px;color:var(--text-lo)">No skills listed</div>'}
7624
- ${e.taskTypes.length ? `<div style="display:flex;flex-wrap:wrap;gap:5px">${e.taskTypes.map(s => `<span class="oad-chip alt">${esc(s)}</span>`).join('')}</div>` : ''}
7625
- </div>`).join('');
7626
- }
7627
-
7628
7457
  // ── ORG CHAT ───────────────────────────────────────────────
7629
7458
  let _odtChatSessions = [];
7630
7459
  let _odtChatCurrentId = null;
@@ -9105,28 +8934,6 @@ async function v2RenderOrgInvites() {
9105
8934
  } catch (e) { el.innerHTML = `<div class="empty">Failed: ${esc(e.message)}</div>`; }
9106
8935
  }
9107
8936
 
9108
- // ── AGENTS (FULL) ──────────────────────────────────────────
9109
- function v2RenderOrgAgentsFull() {
9110
- const el = document.getElementById('odt-agents-full');
9111
- if (!el || !_v2OrgData) return;
9112
- const agents = _v2OrgData._agents || [];
9113
- if (!agents.length) { el.innerHTML = '<div class="empty">No agents found</div>'; return; }
9114
- el.innerHTML = `<table style="width:100%;border-collapse:collapse;font-size:12px">
9115
- <thead><tr style="color:var(--text-xs);text-align:left">
9116
- <th style="padding:5px 8px">ID</th><th>Type</th><th>Adapter</th><th>Status</th><th>Heartbeat</th><th>Tokens In</th><th>Tokens Out</th>
9117
- </tr></thead>
9118
- <tbody>${agents.map(a => `<tr style="border-top:1px solid var(--border)">
9119
- <td style="padding:5px 8px;color:var(--text-hi);font-family:var(--mono);font-size:11px">${esc((a.id||'—').toString().slice(0,12))}</td>
9120
- <td style="padding:5px 8px;color:var(--text-hi)">${esc(a.adapterType||a.type||a.title||'—')}</td>
9121
- <td style="padding:5px 8px;color:var(--text-lo)">${esc(a.adapterModel||a.adapter||'—')}</td>
9122
- <td style="padding:5px 8px"><span class="ss-pill ${(a.status==='running'||a.running)?'on':''}">${esc(a.status||'idle')}</span></td>
9123
- <td style="padding:5px 8px;color:var(--text-lo)">${a.lastHeartbeat ? relTime(a.lastHeartbeat) : '—'}</td>
9124
- <td style="padding:5px 8px;color:var(--text-lo)">${(a.tokensIn ?? a.tokens_in) != null ? Number(a.tokensIn ?? a.tokens_in).toLocaleString() : '—'}</td>
9125
- <td style="padding:5px 8px;color:var(--text-lo)">${(a.tokensOut ?? a.tokens_out) != null ? Number(a.tokensOut ?? a.tokens_out).toLocaleString() : '—'}</td>
9126
- </tr>`).join('')}</tbody>
9127
- </table>`;
9128
- }
9129
-
9130
8937
  // ── ENVIRONMENTS ───────────────────────────────────────────
9131
8938
  async function v2RenderOrgEnvironments() {
9132
8939
  const el = document.getElementById('odt-environments');
@@ -9417,7 +9224,6 @@ function _filterOrgList(q) {
9417
9224
  if (!_v2OrgEventLog[n]) _v2OrgEventLog[n] = [];
9418
9225
  _v2OrgEventLog[n].push(ev);
9419
9226
  if (_v2OrgEventLog[n].length > 50) _v2OrgEventLog[n].shift();
9420
- if (n === _v2SelOrg && _v2OrgTab === 'activity') v2RenderOrgActivity();
9421
9227
  // Update in-memory agent status so Live tab running-agents section reflects reality.
9422
9228
  // org:agent:online → mark that agent running; org:complete/run:complete → reset all to idle.
9423
9229
  if (n === _v2SelOrg && _v2OrgData && Array.isArray(_v2OrgData._agents)) {
@@ -9431,8 +9237,7 @@ function _filterOrgList(q) {
9431
9237
  } else if (ev.type === 'org:complete' || ev.type === 'run:complete') {
9432
9238
  _v2OrgData._agents.forEach(a => { a.status = 'idle'; });
9433
9239
  }
9434
- if (_v2OrgTab === 'agents-full' && (ev.type === 'org:agent:online' || ev.type === 'org:agent:offline' || ev.type === 'org:complete' || ev.type === 'run:complete')) v2RenderOrgAgentsFull();
9435
- else if (_v2OrgTab === 'live' && (ev.type === 'org:agent:online' || ev.type === 'org:agent:offline' || ev.type === 'org:complete' || ev.type === 'run:complete')) v2RenderOrgLive();
9240
+ if (_v2OrgTab === 'live' && (ev.type === 'org:agent:online' || ev.type === 'org:agent:offline' || ev.type === 'org:complete' || ev.type === 'run:complete')) v2RenderOrgLive();
9436
9241
  else if (_v2OrgTab === 'heartbeats' && (ev.type === 'org:agent:online' || ev.type === 'org:agent:offline' || ev.type === 'org:complete' || ev.type === 'run:complete')) v2RenderOrgHeartbeats();
9437
9242
  else if (_v2OrgTab === 'members' && (ev.type === 'org:agent:online' || ev.type === 'org:agent:offline' || ev.type === 'org:complete' || ev.type === 'run:complete')) v2RenderOrgMembers();
9438
9243
  else if (_v2OrgTab === 'roles' && (ev.type === 'org:agent:online' || ev.type === 'org:agent:offline' || ev.type === 'org:complete' || ev.type === 'run:complete')) v2RenderOrgRoles();
@@ -9505,14 +9310,6 @@ function _filterOrgList(q) {
9505
9310
  .then(d => { if (d && _v2OrgData && _v2SelOrg === n && d.tasks !== undefined) { _v2OrgData.tasks = d.tasks; v2RenderOrgTasks(); } })
9506
9311
  .catch(() => { v2RenderOrgTasks(); });
9507
9312
  }
9508
- if (_v2OrgTab === 'budgets' || _v2OrgTab === 'costs') {
9509
- // Re-fetch budgets after run events so token/cost counters stay current
9510
- const _bEnc = encodeURIComponent(_v2SelOrg);
9511
- fetch(`/api/org/${_bEnc}/budgets${DIR ? `?dir=${encodeURIComponent(DIR)}` : ''}`)
9512
- .then(r => r.ok ? r.json() : null)
9513
- .then(b => { if (b && _v2OrgData && _v2SelOrg === n) { _v2OrgData._budgets = b; _v2OrgTab === 'budgets' ? v2RenderOrgBudgets() : v2RenderOrgCosts(); } })
9514
- .catch(() => { _v2OrgTab === 'budgets' ? v2RenderOrgBudgets() : v2RenderOrgCosts(); });
9515
- }
9516
9313
  if (_v2OrgTab === 'board' || _v2OrgTab === 'issues-full') {
9517
9314
  // Re-fetch issues after run events so board/issues-full reflect current state
9518
9315
  const _iEnc = encodeURIComponent(_v2SelOrg);
@@ -9533,14 +9330,14 @@ function _filterOrgList(q) {
9533
9330
  // Re-load chat run list after run events so cycleCount/eventCount in dropdown reflect disk state
9534
9331
  _odtLoadChatSessions().catch(() => {});
9535
9332
  }
9536
- if (_v2OrgTab === 'agents-full' || _v2OrgTab === 'heartbeats') {
9333
+ if (_v2OrgTab === 'heartbeats') {
9537
9334
  // Re-fetch agents after run events to get fresh tokensIn/tokensOut/lastHeartbeat
9538
- // Heartbeats tab derives from _v2OrgData._agents so shares this re-fetch.
9335
+ // Heartbeats tab derives from _v2OrgData._agents.
9539
9336
  const _agEnc = encodeURIComponent(_v2SelOrg);
9540
9337
  fetch(`/api/org/${_agEnc}/agents${DIR ? `?dir=${encodeURIComponent(DIR)}` : ''}`)
9541
9338
  .then(r => r.ok ? r.json() : null)
9542
- .then(d => { if (d && _v2OrgData && _v2SelOrg === n) { _v2OrgData._agents = Array.isArray(d) ? d : (d?.agents || []); _v2OrgTab === 'agents-full' ? v2RenderOrgAgentsFull() : v2RenderOrgHeartbeats(); } })
9543
- .catch(() => { _v2OrgTab === 'agents-full' ? v2RenderOrgAgentsFull() : v2RenderOrgHeartbeats(); });
9339
+ .then(d => { if (d && _v2OrgData && _v2SelOrg === n) { _v2OrgData._agents = Array.isArray(d) ? d : (d?.agents || []); v2RenderOrgHeartbeats(); } })
9340
+ .catch(() => { v2RenderOrgHeartbeats(); });
9544
9341
  }
9545
9342
  if (_v2OrgTab === 'myissues') {
9546
9343
  // Re-render myissues after run events — it fetches its own data on every render
@@ -9558,16 +9355,9 @@ function _filterOrgList(q) {
9558
9355
  }
9559
9356
  }, 400);
9560
9357
  }
9561
- // run:cycle:complete: lightweight re-fetch for budgets/costs/tasks without renderOrgs()
9562
- // — cycles fire frequently and only affect token counters and task state, not org-list status.
9358
+ // run:cycle:complete: lightweight re-fetch for tasks without renderOrgs()
9359
+ // — cycles fire frequently and only affect task state, not org-list status.
9563
9360
  if (ev.type === 'run:cycle:complete' && _v2SelOrg === n && _v2OrgData) {
9564
- if (_v2OrgTab === 'budgets' || _v2OrgTab === 'costs') {
9565
- const _bcEnc = encodeURIComponent(_v2SelOrg);
9566
- fetch(`/api/org/${_bcEnc}/budgets${DIR ? `?dir=${encodeURIComponent(DIR)}` : ''}`)
9567
- .then(r => r.ok ? r.json() : null)
9568
- .then(b => { if (b && _v2OrgData && _v2SelOrg === n) { _v2OrgData._budgets = b; _v2OrgTab === 'budgets' ? v2RenderOrgBudgets() : v2RenderOrgCosts(); } })
9569
- .catch(() => { _v2OrgTab === 'budgets' ? v2RenderOrgBudgets() : v2RenderOrgCosts(); });
9570
- }
9571
9361
  if (_v2OrgTab === 'tasks') {
9572
9362
  const _tcEnc = encodeURIComponent(_v2SelOrg);
9573
9363
  fetch(`/api/org/${_tcEnc}${DIR ? `?dir=${encodeURIComponent(DIR)}` : ''}`)
@@ -9827,8 +9617,8 @@ function cmdSearch(q) {
9827
9617
 
9828
9618
  // TABS group — only if org room is open
9829
9619
  const orgTabs = (_v2SelOrg && currentView === 'orgs') ? [
9830
- 'chart','roles','activity','health','heartbeats','tasks','costs','members',
9831
- 'goals','board','live','approvals','secrets','settings','routines','myissues','budgets','plugins'
9620
+ 'chart','roles','health','heartbeats','tasks','members',
9621
+ 'goals','board','live','approvals','secrets','settings','routines','myissues','plugins'
9832
9622
  ].filter(t => !lq || t.includes(lq))
9833
9623
  .map(t => ({ label: `Org Tab: ${t}`, tab: t })) : [];
9834
9624
 
@@ -13,7 +13,7 @@ import fs from 'node:fs';
13
13
  import path from 'node:path';
14
14
 
15
15
  const MONOES_BASE_URL = process.env.MONOMIND_MONOES_URL || 'https://monoes.me';
16
- const MONOES_SCOPE = 'community:read community:write';
16
+ const MONOES_SCOPE = 'community:read community:write offline_access';
17
17
 
18
18
  // state -> { codeVerifier, createdAt } — short-lived, in-memory only. The
19
19
  // user completes the browser redirect within a few minutes of clicking
@@ -209,7 +209,9 @@ export async function handleMonoesRoutes(req, res, url, corsOrigin, ctx) {
209
209
  };
210
210
 
211
211
  if (!code || !pending) {
212
- closeTab('Connection failed — the request was invalid or expired. You can close this tab and try again.');
212
+ closeTab(
213
+ 'Connection failed — the request was invalid or expired. You can close this tab and try again.',
214
+ );
213
215
  return true;
214
216
  }
215
217
  _pendingStates.delete(state);
@@ -258,7 +260,9 @@ export async function handleMonoesRoutes(req, res, url, corsOrigin, ctx) {
258
260
  // explicit connect/disconnect actions.
259
261
  if (req.method === 'GET' && url === '/api/monoes/status') {
260
262
  const beforeConn = readMonoesConnection(MONOMIND_HOME);
261
- const validToken = /* value */ beforeConn?.accessToken ? await getValidMonoesToken(MONOMIND_HOME) : null;
263
+ const validToken = /* value */ beforeConn?.accessToken
264
+ ? await getValidMonoesToken(MONOMIND_HOME)
265
+ : null;
262
266
  const afterConn = readMonoesConnection(MONOMIND_HOME);
263
267
  if (validToken !== (beforeConn?.accessToken || null)) {
264
268
  _syncMonoesMcpEntry(path.resolve(projectDir || process.cwd()), validToken);
@@ -663,74 +663,8 @@ export async function handleOrgRoutes(req, res, url, corsOrigin, ctx) {
663
663
  return true;
664
664
  }
665
665
 
666
- // GET /api/org/:name/skills — list skills from .claude/skills/ mapped to org roles
667
- if (req.method === 'GET' && /^\/api\/org\/[a-z0-9][a-z0-9_-]{0,63}\/skills$/i.test(url)) {
668
- try {
669
- const parts = url.split('/');
670
- const orgName = decodeURIComponent(parts[3]);
671
- if (orgName.length > 64 || !/^[a-z0-9][a-z0-9_-]*$/i.test(orgName)) {
672
- res.writeHead(400);
673
- res.end('{}');
674
- return true;
675
- }
676
- const _skillsQs = new URL(req.url, 'http://localhost').searchParams;
677
- const d = path.resolve(_skillsQs.get('dir') || ctx.projectDir || process.cwd());
678
- const skillsDir = path.join(d, '.claude', 'skills');
679
- const orgFile = path.join(d, '.monomind', 'orgs', `${orgName}.json`);
680
-
681
- // Scan skills directory
682
- const skills = [];
683
- if (fs.existsSync(skillsDir)) {
684
- const scanDir = (dir, prefix) => {
685
- try {
686
- for (const entry of fs.readdirSync(dir, { withFileTypes: true })) {
687
- if (entry.isDirectory()) {
688
- scanDir(path.join(dir, entry.name), `${entry.name}:`);
689
- } else if (entry.name.endsWith('.md') && !entry.name.startsWith('_')) {
690
- const slug = entry.name.replace(/\.md$/, '');
691
- const content = fs.readFileSync(path.join(dir, entry.name), 'utf8').slice(0, 500);
692
- const typeMatch = content.match(/^type:\s*(.+)$/m);
693
- const modeMatch = content.match(/^default_mode:\s*(.+)$/m);
694
- const descMatch = content.match(/^description:\s*(.+)$/m);
695
- skills.push({
696
- name: `${prefix}${slug}`,
697
- slug,
698
- type: typeMatch ? typeMatch[1].trim() : 'skill',
699
- default_mode: modeMatch ? modeMatch[1].trim() : 'auto',
700
- description: descMatch ? descMatch[1].trim() : '',
701
- });
702
- }
703
- }
704
- } catch (_) {}
705
- };
706
- scanDir(skillsDir, '');
707
- }
708
-
709
- // Map skills enabled per role from org config
710
- const roleSkillMap = {};
711
- if (fs.existsSync(orgFile)) {
712
- try {
713
- const config = JSON.parse(fs.readFileSync(orgFile, 'utf8'));
714
- for (const role of config.roles || []) {
715
- roleSkillMap[role.id] = role.skills || [];
716
- }
717
- } catch (_) {}
718
- }
719
-
720
- res.writeHead(200, {
721
- 'Content-Type': 'application/json',
722
- ...(corsOrigin ? { 'Access-Control-Allow-Origin': corsOrigin } : {}),
723
- });
724
- res.end(JSON.stringify({ skills, role_skill_map: roleSkillMap }));
725
- } catch (_) {
726
- res.writeHead(500);
727
- res.end('{}');
728
- }
729
- return true;
730
- }
731
-
732
666
  // GET /api/org/:name/agent/:roleId — full agent detail: org role + .claude/agents definition
733
- // (characteristics, skills/expertise, responsibilities, instructions document)
667
+ // (characteristics, responsibilities, instructions document)
734
668
  if (
735
669
  req.method === 'GET' &&
736
670
  /^\/api\/org\/[a-z0-9][a-z0-9_-]{0,63}\/agent\/[a-z0-9][a-z0-9_-]{0,63}$/i.test(url)
@@ -1457,7 +1391,6 @@ export async function handleOrgRoutes(req, res, url, corsOrigin, ctx) {
1457
1391
  lastHeartbeat: s.last_heartbeat || s.lastHeartbeat || null,
1458
1392
  tokensIn: s.tokens_in || 0,
1459
1393
  tokensOut: s.tokens_out || 0,
1460
- skills: r.skills || [],
1461
1394
  };
1462
1395
  });
1463
1396
  res.writeHead(200, {
@@ -18,8 +18,8 @@ import {
18
18
  collectSystem,
19
19
  collectTokens,
20
20
  } from './collector.mjs';
21
- import { handleMonographRoutes } from './routes-monograph.mjs';
22
21
  import { handleMonoesRoutes } from './routes-monoes.mjs';
22
+ import { handleMonographRoutes } from './routes-monograph.mjs';
23
23
  import { handleOrgRoutes } from './routes-org.mjs';
24
24
  import {
25
25
  addMmClient,