@monoes/monomindcli 2.14.1 → 2.15.0
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/.claude/helpers/control-start.cjs +10 -13
- package/.claude/skills/monodesign/scripts/context.mjs +4 -4
- package/.claude/skills/monodesign/scripts/critique-storage.mjs +1 -1
- package/.claude/skills/monodesign/scripts/detect-csp.mjs +1 -6
- package/.claude/skills/monodesign/scripts/detector/browser/injected/index.mjs +16 -18
- package/.claude/skills/monodesign/scripts/detector/cli/main.mjs +3 -3
- package/.claude/skills/monodesign/scripts/detector/detect-antipatterns-browser.js +67 -47
- package/.claude/skills/monodesign/scripts/detector/engines/regex/detect-text.mjs +6 -6
- package/.claude/skills/monodesign/scripts/detector/engines/static-html/css-cascade.mjs +6 -5
- package/.claude/skills/monodesign/scripts/detector/engines/static-html/detect-html.mjs +6 -6
- package/.claude/skills/monodesign/scripts/detector/fix/index.mjs +3 -3
- package/.claude/skills/monodesign/scripts/detector/node/file-system.mjs +1 -1
- package/.claude/skills/monodesign/scripts/detector/registry/antipatterns.mjs +1 -1
- package/.claude/skills/monodesign/scripts/detector/rules/checks.mjs +24 -25
- package/.claude/skills/monodesign/scripts/detector/shared/color.mjs +2 -2
- package/.claude/skills/monodesign/scripts/detector/shared/constants.mjs +1 -1
- package/.claude/skills/monodesign/scripts/detector/shared/inline-ignores.mjs +2 -2
- package/.claude/skills/monodesign/scripts/hook-admin.mjs +6 -6
- package/.claude/skills/monodesign/scripts/hook-before-edit.mjs +4 -4
- package/.claude/skills/monodesign/scripts/hook-lib.mjs +20 -11
- package/.claude/skills/monodesign/scripts/hook.mjs +1 -1
- package/.claude/skills/monodesign/scripts/lib/design-parser.mjs +9 -42
- package/.claude/skills/monodesign/scripts/lib/is-generated.mjs +1 -1
- package/.claude/skills/monodesign/scripts/lib/monodesign-config.mjs +5 -5
- package/.claude/skills/monodesign/scripts/lib/monodesign-paths.mjs +1 -1
- package/.claude/skills/monodesign/scripts/live/event-validation.mjs +13 -13
- package/.claude/skills/monodesign/scripts/live/manual-apply.mjs +4 -4
- package/.claude/skills/monodesign/scripts/live/manual-edits-buffer.mjs +1 -1
- package/.claude/skills/monodesign/scripts/live/session-store.mjs +5 -5
- package/.claude/skills/monodesign/scripts/live/svelte-component.mjs +13 -13
- package/.claude/skills/monodesign/scripts/live/sveltekit-adapter.mjs +4 -4
- package/.claude/skills/monodesign/scripts/live/ui-core.mjs +1 -1
- package/.claude/skills/monodesign/scripts/live-accept.mjs +24 -24
- package/.claude/skills/monodesign/scripts/live-browser-dom.js +8 -7
- package/.claude/skills/monodesign/scripts/live-browser-session.js +8 -7
- package/.claude/skills/monodesign/scripts/live-browser.js +405 -432
- package/.claude/skills/monodesign/scripts/live-commit-manual-edits.mjs +6 -6
- package/.claude/skills/monodesign/scripts/live-copy-edit-agent.mjs +2 -2
- package/.claude/skills/monodesign/scripts/live-discard-manual-edits.mjs +1 -1
- package/.claude/skills/monodesign/scripts/live-inject.mjs +7 -7
- package/.claude/skills/monodesign/scripts/live-insert.mjs +11 -11
- package/.claude/skills/monodesign/scripts/live-manual-edit-evidence.mjs +4 -4
- package/.claude/skills/monodesign/scripts/live-poll.mjs +5 -5
- package/.claude/skills/monodesign/scripts/live-server.mjs +10 -10
- package/.claude/skills/monodesign/scripts/live-wrap.mjs +31 -41
- package/.claude/skills/monodesign/scripts/live.mjs +5 -5
- package/.claude/skills/monodesign/scripts/palette.mjs +3 -1
- package/.claude/skills/monodesign/scripts/pin.mjs +1 -1
- package/dist/src/commands/doc-filters.d.ts.map +1 -1
- package/dist/src/commands/doc-filters.js +6 -0
- package/dist/src/commands/doc-filters.js.map +1 -1
- package/dist/src/commands/doc-library.d.ts +2 -1
- package/dist/src/commands/doc-library.d.ts.map +1 -1
- package/dist/src/commands/doc-library.js +66 -2
- package/dist/src/commands/doc-library.js.map +1 -1
- package/dist/src/commands/doc.d.ts.map +1 -1
- package/dist/src/commands/doc.js +2 -0
- package/dist/src/commands/doc.js.map +1 -1
- package/dist/src/commands/ui.d.ts.map +1 -1
- package/dist/src/commands/ui.js +60 -0
- package/dist/src/commands/ui.js.map +1 -1
- package/dist/src/knowledge/capture-envelope.d.ts +5 -0
- package/dist/src/knowledge/capture-envelope.d.ts.map +1 -1
- package/dist/src/knowledge/capture-envelope.js +2 -0
- package/dist/src/knowledge/capture-envelope.js.map +1 -1
- package/dist/src/knowledge/document-chunking.d.ts +42 -0
- package/dist/src/knowledge/document-chunking.d.ts.map +1 -0
- package/dist/src/knowledge/document-chunking.js +288 -0
- package/dist/src/knowledge/document-chunking.js.map +1 -0
- package/dist/src/knowledge/document-index.d.ts +124 -0
- package/dist/src/knowledge/document-index.d.ts.map +1 -0
- package/dist/src/knowledge/document-index.js +314 -0
- package/dist/src/knowledge/document-index.js.map +1 -0
- package/dist/src/knowledge/document-ingest.d.ts +23 -0
- package/dist/src/knowledge/document-ingest.d.ts.map +1 -0
- package/dist/src/knowledge/document-ingest.js +368 -0
- package/dist/src/knowledge/document-ingest.js.map +1 -0
- package/dist/src/knowledge/document-pipeline.d.ts +26 -208
- package/dist/src/knowledge/document-pipeline.d.ts.map +1 -1
- package/dist/src/knowledge/document-pipeline.js +25 -1104
- package/dist/src/knowledge/document-pipeline.js.map +1 -1
- package/dist/src/knowledge/document-search.d.ts +27 -0
- package/dist/src/knowledge/document-search.d.ts.map +1 -0
- package/dist/src/knowledge/document-search.js +138 -0
- package/dist/src/knowledge/document-search.js.map +1 -0
- package/dist/src/knowledge/document-store.d.ts +28 -0
- package/dist/src/knowledge/document-store.d.ts.map +1 -0
- package/dist/src/knowledge/document-store.js +61 -0
- package/dist/src/knowledge/document-store.js.map +1 -0
- package/dist/src/knowledge/document-types.d.ts +103 -0
- package/dist/src/knowledge/document-types.d.ts.map +1 -0
- package/dist/src/knowledge/document-types.js +12 -0
- package/dist/src/knowledge/document-types.js.map +1 -0
- package/dist/src/knowledge/highlights.d.ts +168 -0
- package/dist/src/knowledge/highlights.d.ts.map +1 -0
- package/dist/src/knowledge/highlights.js +311 -0
- package/dist/src/knowledge/highlights.js.map +1 -0
- package/dist/src/knowledge/lookup.d.ts +80 -0
- package/dist/src/knowledge/lookup.d.ts.map +1 -0
- package/dist/src/knowledge/lookup.js +156 -0
- package/dist/src/knowledge/lookup.js.map +1 -0
- package/dist/src/knowledge/okf-bundle.d.ts +19 -0
- package/dist/src/knowledge/okf-bundle.d.ts.map +1 -0
- package/dist/src/knowledge/okf-bundle.js +106 -0
- package/dist/src/knowledge/okf-bundle.js.map +1 -0
- package/dist/src/knowledge/profile-store.d.ts +134 -0
- package/dist/src/knowledge/profile-store.d.ts.map +1 -0
- package/dist/src/knowledge/profile-store.js +237 -0
- package/dist/src/knowledge/profile-store.js.map +1 -0
- package/dist/src/orgrt/agent-runner.d.ts +4 -0
- package/dist/src/orgrt/agent-runner.d.ts.map +1 -1
- package/dist/src/orgrt/agent-runner.js +22 -0
- package/dist/src/orgrt/agent-runner.js.map +1 -1
- package/dist/src/orgrt/antigravity-runner.d.ts.map +1 -1
- package/dist/src/orgrt/antigravity-runner.js +2 -1
- package/dist/src/orgrt/antigravity-runner.js.map +1 -1
- package/dist/src/orgrt/authority-mask.d.ts +32 -0
- package/dist/src/orgrt/authority-mask.d.ts.map +1 -0
- package/dist/src/orgrt/authority-mask.js +135 -0
- package/dist/src/orgrt/authority-mask.js.map +1 -0
- package/dist/src/orgrt/codex-runner.d.ts.map +1 -1
- package/dist/src/orgrt/codex-runner.js +2 -1
- package/dist/src/orgrt/codex-runner.js.map +1 -1
- package/dist/src/orgrt/copilot-runner.d.ts.map +1 -1
- package/dist/src/orgrt/copilot-runner.js +2 -1
- package/dist/src/orgrt/copilot-runner.js.map +1 -1
- package/dist/src/orgrt/crush-runner.d.ts.map +1 -1
- package/dist/src/orgrt/crush-runner.js +6 -1
- package/dist/src/orgrt/crush-runner.js.map +1 -1
- package/dist/src/orgrt/daemon.d.ts +4 -0
- package/dist/src/orgrt/daemon.d.ts.map +1 -1
- package/dist/src/orgrt/daemon.js +13 -2
- package/dist/src/orgrt/daemon.js.map +1 -1
- package/dist/src/orgrt/decisions.d.ts +9 -0
- package/dist/src/orgrt/decisions.d.ts.map +1 -1
- package/dist/src/orgrt/decisions.js +32 -5
- package/dist/src/orgrt/decisions.js.map +1 -1
- package/dist/src/orgrt/file-roots.d.ts +2 -1
- package/dist/src/orgrt/file-roots.d.ts.map +1 -1
- package/dist/src/orgrt/file-roots.js +7 -3
- package/dist/src/orgrt/file-roots.js.map +1 -1
- package/dist/src/orgrt/grok-runner.d.ts.map +1 -1
- package/dist/src/orgrt/grok-runner.js +2 -1
- package/dist/src/orgrt/grok-runner.js.map +1 -1
- package/dist/src/orgrt/hermes-runner.d.ts.map +1 -1
- package/dist/src/orgrt/hermes-runner.js +2 -1
- package/dist/src/orgrt/hermes-runner.js.map +1 -1
- package/dist/src/orgrt/inbox.d.ts.map +1 -1
- package/dist/src/orgrt/inbox.js +70 -4
- package/dist/src/orgrt/inbox.js.map +1 -1
- package/dist/src/orgrt/kimicode-runner.d.ts.map +1 -1
- package/dist/src/orgrt/kimicode-runner.js +2 -1
- package/dist/src/orgrt/kimicode-runner.js.map +1 -1
- package/dist/src/orgrt/opencode-runner.d.ts.map +1 -1
- package/dist/src/orgrt/opencode-runner.js +3 -2
- package/dist/src/orgrt/opencode-runner.js.map +1 -1
- package/dist/src/orgrt/pi-rpc-runner.d.ts.map +1 -1
- package/dist/src/orgrt/pi-rpc-runner.js +3 -2
- package/dist/src/orgrt/pi-rpc-runner.js.map +1 -1
- package/dist/src/orgrt/pi-runner.d.ts.map +1 -1
- package/dist/src/orgrt/pi-runner.js +2 -1
- package/dist/src/orgrt/pi-runner.js.map +1 -1
- package/dist/src/orgrt/policy.d.ts.map +1 -1
- package/dist/src/orgrt/policy.js +3 -0
- package/dist/src/orgrt/policy.js.map +1 -1
- package/dist/src/orgrt/qwen-rpc-runner.d.ts.map +1 -1
- package/dist/src/orgrt/qwen-rpc-runner.js +3 -2
- package/dist/src/orgrt/qwen-rpc-runner.js.map +1 -1
- package/dist/src/orgrt/qwen-runner.d.ts.map +1 -1
- package/dist/src/orgrt/qwen-runner.js +2 -1
- package/dist/src/orgrt/qwen-runner.js.map +1 -1
- package/dist/src/orgrt/role-sandbox.d.ts +21 -0
- package/dist/src/orgrt/role-sandbox.d.ts.map +1 -1
- package/dist/src/orgrt/role-sandbox.js +31 -6
- package/dist/src/orgrt/role-sandbox.js.map +1 -1
- package/dist/src/orgrt/session.d.ts.map +1 -1
- package/dist/src/orgrt/session.js +21 -2
- package/dist/src/orgrt/session.js.map +1 -1
- package/dist/src/orgrt/task-dag.d.ts +3 -0
- package/dist/src/orgrt/task-dag.d.ts.map +1 -1
- package/dist/src/orgrt/task-dag.js +1 -0
- package/dist/src/orgrt/task-dag.js.map +1 -1
- package/dist/src/orgrt/types.d.ts +5 -0
- package/dist/src/orgrt/types.d.ts.map +1 -1
- package/dist/src/orgrt/types.js +23 -1
- package/dist/src/orgrt/types.js.map +1 -1
- package/dist/src/ui/dashboard.html +28 -848
- package/dist/src/ui/human-auth.mjs +103 -0
- package/dist/src/ui/org-hil.mjs +86 -37
- package/dist/src/ui/org-runtime.mjs +21 -13
- package/dist/src/ui/routes-org.mjs +49 -445
- package/dist/src/ui/server.mjs +90 -2
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +6 -6
package/dist/src/ui/server.mjs
CHANGED
|
@@ -22,6 +22,13 @@ import {
|
|
|
22
22
|
collectSystem,
|
|
23
23
|
collectTokens,
|
|
24
24
|
} from './collector.mjs';
|
|
25
|
+
import {
|
|
26
|
+
consumeLoginNonce,
|
|
27
|
+
humanSessionCookie,
|
|
28
|
+
isHumanRequest,
|
|
29
|
+
issueLoginNonce,
|
|
30
|
+
loginRequiredPage,
|
|
31
|
+
} from './human-auth.mjs';
|
|
25
32
|
import { handleMonoesRoutes } from './routes-monoes.mjs';
|
|
26
33
|
import { handleMonographRoutes } from './routes-monograph.mjs';
|
|
27
34
|
import { handleOrgRoutes } from './routes-org.mjs';
|
|
@@ -856,7 +863,7 @@ export function watchSafely(watcher, label) {
|
|
|
856
863
|
/**
|
|
857
864
|
* Opens a URL in the default browser, cross-platform.
|
|
858
865
|
*/
|
|
859
|
-
async function openUrl(url) {
|
|
866
|
+
export async function openUrl(url) {
|
|
860
867
|
const { exec } = await import('node:child_process');
|
|
861
868
|
const cmd =
|
|
862
869
|
process.platform === 'darwin'
|
|
@@ -1921,7 +1928,20 @@ export async function startServer({
|
|
|
1921
1928
|
'/orgs-files.js',
|
|
1922
1929
|
'/markdown.js',
|
|
1923
1930
|
'/favicon.ico',
|
|
1931
|
+
'/api/identity',
|
|
1924
1932
|
]);
|
|
1933
|
+
// Pages that embed the token: served only to a browser with the human session.
|
|
1934
|
+
const _HUMAN_PAGES = new Set(['/', '/v2', '/orgs', '/mastermind']);
|
|
1935
|
+
// Mutations that act as the human supervising an org (org-hil.mjs,
|
|
1936
|
+
// org-runtime.mjs's config patch): the token alone is not enough.
|
|
1937
|
+
const _HUMAN_ROUTES = [
|
|
1938
|
+
/^\/api\/questions\/answer$/,
|
|
1939
|
+
/^\/api\/org\/[^/]+\/approvals\/[^/]+$/,
|
|
1940
|
+
/^\/api\/org\/[^/]+\/gates\/[^/]+$/,
|
|
1941
|
+
/^\/api\/org\/[^/]+\/config$/,
|
|
1942
|
+
/^\/api\/orgs\/[^/]+\/chat$/,
|
|
1943
|
+
];
|
|
1944
|
+
const _isHumanRoute = (url) => _HUMAN_ROUTES.some((re) => re.test(url));
|
|
1925
1945
|
const _isOpenRoute = (url, method) =>
|
|
1926
1946
|
(method === 'GET' || method === 'HEAD' || method === 'OPTIONS') &&
|
|
1927
1947
|
(_OPEN_ROUTES.has(url) ||
|
|
@@ -2002,6 +2022,67 @@ export async function startServer({
|
|
|
2002
2022
|
}
|
|
2003
2023
|
}
|
|
2004
2024
|
|
|
2025
|
+
// ------------------------------------------------ GET /api/identity
|
|
2026
|
+
// Which process serves this port and where its token file is — never the
|
|
2027
|
+
// token itself. control-start.cjs pairs another project with a server it
|
|
2028
|
+
// finds already listening, by reading that file as the same user.
|
|
2029
|
+
if (req.method === 'GET' && url === '/api/identity') {
|
|
2030
|
+
res.writeHead(200, { 'Content-Type': 'application/json' });
|
|
2031
|
+
res.end(
|
|
2032
|
+
JSON.stringify({
|
|
2033
|
+
pid: process.pid,
|
|
2034
|
+
dir: projectDir || process.cwd(),
|
|
2035
|
+
tokenFile: _dashboardTokenFilePath,
|
|
2036
|
+
}),
|
|
2037
|
+
);
|
|
2038
|
+
return;
|
|
2039
|
+
}
|
|
2040
|
+
|
|
2041
|
+
// ── Human session (human-auth.mjs) ─────────────────────────────────────
|
|
2042
|
+
// The pages embed the dashboard token, and the decision routes act as the
|
|
2043
|
+
// human who supervises an org — both need the browser session cookie, not
|
|
2044
|
+
// just the token any local process can obtain. A one-time `?login=` link
|
|
2045
|
+
// sets that cookie.
|
|
2046
|
+
if (req.method === 'GET' && _HUMAN_PAGES.has(url)) {
|
|
2047
|
+
const _login = new URL(req.url, 'http://localhost').searchParams.get('login');
|
|
2048
|
+
if (_login && consumeLoginNonce(_login)) {
|
|
2049
|
+
res.writeHead(302, {
|
|
2050
|
+
Location: url,
|
|
2051
|
+
'Set-Cookie': humanSessionCookie(),
|
|
2052
|
+
'Cache-Control': 'no-store',
|
|
2053
|
+
});
|
|
2054
|
+
res.end();
|
|
2055
|
+
return;
|
|
2056
|
+
}
|
|
2057
|
+
if (!isHumanRequest(req)) {
|
|
2058
|
+
res.writeHead(401, {
|
|
2059
|
+
'Content-Type': 'text/html; charset=utf-8',
|
|
2060
|
+
'Cache-Control': 'no-store',
|
|
2061
|
+
});
|
|
2062
|
+
res.end(loginRequiredPage());
|
|
2063
|
+
return;
|
|
2064
|
+
}
|
|
2065
|
+
}
|
|
2066
|
+
if (
|
|
2067
|
+
req.method !== 'GET' &&
|
|
2068
|
+
req.method !== 'HEAD' &&
|
|
2069
|
+
_isHumanRoute(url) &&
|
|
2070
|
+
!isHumanRequest(req)
|
|
2071
|
+
) {
|
|
2072
|
+
res.writeHead(403, {
|
|
2073
|
+
'Content-Type': 'application/json',
|
|
2074
|
+
...(corsOrigin ? { 'Access-Control-Allow-Origin': corsOrigin } : {}),
|
|
2075
|
+
});
|
|
2076
|
+
res.end(
|
|
2077
|
+
JSON.stringify({
|
|
2078
|
+
ok: false,
|
|
2079
|
+
error:
|
|
2080
|
+
'this acts as the human supervising the org — open the dashboard with `monomind dashboard open` and do it from that browser',
|
|
2081
|
+
}),
|
|
2082
|
+
);
|
|
2083
|
+
return;
|
|
2084
|
+
}
|
|
2085
|
+
|
|
2005
2086
|
// ------------------------------------------------------------------ GET /
|
|
2006
2087
|
if (req.method === 'GET' && url === '/') {
|
|
2007
2088
|
const htmlPath = path.join(__dirname, 'dashboard.html');
|
|
@@ -6091,7 +6172,14 @@ export async function startServer({
|
|
|
6091
6172
|
|
|
6092
6173
|
// ---------------------------------------------------------- Auto-open
|
|
6093
6174
|
if (openBrowser) {
|
|
6094
|
-
|
|
6175
|
+
// A one-time login link, so the browser this opens gets the human session.
|
|
6176
|
+
let _openAt = url;
|
|
6177
|
+
try {
|
|
6178
|
+
_openAt = `${url}/?login=${issueLoginNonce()}`;
|
|
6179
|
+
} catch (_) {
|
|
6180
|
+
/* no session possible — the page explains how to get one */
|
|
6181
|
+
}
|
|
6182
|
+
openUrl(_openAt).catch(() => {
|
|
6095
6183
|
// Non-fatal: browser open failure should not crash the server
|
|
6096
6184
|
});
|
|
6097
6185
|
}
|