mossbear 0.1.0-alpha.36 → 0.1.0-alpha.39
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/README.md +2 -0
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/doctor.js +52 -12
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/guides/index.d.ts.map +1 -1
- package/dist/commands/guides/index.js +6 -1
- package/dist/commands/guides/index.js.map +1 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +134 -36
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/pull.js +2 -2
- package/dist/commands/pull.js.map +1 -1
- package/dist/commands/session-start.js +1 -1
- package/dist/commands/status.js +1 -1
- package/dist/commands/status.js.map +1 -1
- package/dist/docs/bundle-by-name.d.ts +25 -2
- package/dist/docs/bundle-by-name.d.ts.map +1 -1
- package/dist/docs/bundle-by-name.js +20 -3
- package/dist/docs/bundle-by-name.js.map +1 -1
- package/dist/docs/committed.d.ts +24 -0
- package/dist/docs/committed.d.ts.map +1 -1
- package/dist/docs/committed.js +40 -0
- package/dist/docs/committed.js.map +1 -1
- package/dist/docs/guide-projection.d.ts +33 -0
- package/dist/docs/guide-projection.d.ts.map +1 -1
- package/dist/docs/guide-projection.js +46 -3
- package/dist/docs/guide-projection.js.map +1 -1
- package/dist/docs/repo-config.d.ts +57 -4
- package/dist/docs/repo-config.d.ts.map +1 -1
- package/dist/docs/repo-config.js +105 -12
- package/dist/docs/repo-config.js.map +1 -1
- package/dist/docs/sidecar.d.ts +11 -5
- package/dist/docs/sidecar.d.ts.map +1 -1
- package/dist/docs/sidecar.js +59 -13
- package/dist/docs/sidecar.js.map +1 -1
- package/dist/docs/sync-docs.d.ts +97 -8
- package/dist/docs/sync-docs.d.ts.map +1 -1
- package/dist/docs/sync-docs.js +79 -3
- package/dist/docs/sync-docs.js.map +1 -1
- package/dist/docs/sync-plan.d.ts +103 -0
- package/dist/docs/sync-plan.d.ts.map +1 -1
- package/dist/docs/sync-plan.js +205 -1
- package/dist/docs/sync-plan.js.map +1 -1
- package/dist/docs/workspace-declaration.d.ts +68 -0
- package/dist/docs/workspace-declaration.d.ts.map +1 -0
- package/dist/docs/workspace-declaration.js +58 -0
- package/dist/docs/workspace-declaration.js.map +1 -0
- package/dist/harness-formats/antigravity.d.ts +119 -0
- package/dist/harness-formats/antigravity.d.ts.map +1 -0
- package/dist/harness-formats/antigravity.js +209 -0
- package/dist/harness-formats/antigravity.js.map +1 -0
- package/dist/harness-manifest-schema.d.ts +64 -0
- package/dist/harness-manifest-schema.d.ts.map +1 -0
- package/dist/harness-manifest-schema.js +81 -0
- package/dist/harness-manifest-schema.js.map +1 -0
- package/dist/harness-writers.d.ts +12 -68
- package/dist/harness-writers.d.ts.map +1 -1
- package/dist/harness-writers.js +20 -83
- package/dist/harness-writers.js.map +1 -1
- package/dist/harnesses.d.ts +255 -49
- package/dist/harnesses.d.ts.map +1 -1
- package/dist/harnesses.js +315 -57
- package/dist/harnesses.js.map +1 -1
- package/dist/hook-bin.js +17 -1
- package/dist/hook-bin.js.map +1 -1
- package/dist/hook-logger.d.ts +2 -0
- package/dist/hook-logger.d.ts.map +1 -1
- package/dist/hook-logger.js +21 -6
- package/dist/hook-logger.js.map +1 -1
- package/dist/hooks-settings.d.ts +41 -9
- package/dist/hooks-settings.d.ts.map +1 -1
- package/dist/hooks-settings.js +54 -11
- package/dist/hooks-settings.js.map +1 -1
- package/dist/init/wire-harnesses.d.ts +51 -35
- package/dist/init/wire-harnesses.d.ts.map +1 -1
- package/dist/init/wire-harnesses.js +144 -113
- package/dist/init/wire-harnesses.js.map +1 -1
- package/dist/mcp/client.d.ts +11 -1
- package/dist/mcp/client.d.ts.map +1 -1
- package/dist/mcp/client.js +5 -1
- package/dist/mcp/client.js.map +1 -1
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +180 -71
- package/dist/mcp/server.js.map +1 -1
- package/dist/project-hooks.d.ts +35 -13
- package/dist/project-hooks.d.ts.map +1 -1
- package/dist/project-hooks.js +114 -49
- package/dist/project-hooks.js.map +1 -1
- package/dist/rules/bundled-skills.d.ts +18 -0
- package/dist/rules/bundled-skills.d.ts.map +1 -1
- package/dist/rules/bundled-skills.js +31 -0
- package/dist/rules/bundled-skills.js.map +1 -1
- package/dist/rules/discover.d.ts.map +1 -1
- package/dist/rules/discover.js +11 -1
- package/dist/rules/discover.js.map +1 -1
- package/dist/rules/import-client.d.ts +17 -0
- package/dist/rules/import-client.d.ts.map +1 -1
- package/dist/rules/import-client.js +3 -2
- package/dist/rules/import-client.js.map +1 -1
- package/dist/rules/init-import.d.ts +17 -0
- package/dist/rules/init-import.d.ts.map +1 -1
- package/dist/rules/init-import.js +40 -5
- package/dist/rules/init-import.js.map +1 -1
- package/dist/rules/manifest.d.ts.map +1 -1
- package/dist/rules/manifest.js +117 -2
- package/dist/rules/manifest.js.map +1 -1
- package/dist/update/version.d.ts +1 -1
- package/dist/update/version.js +1 -1
- package/package.json +4 -4
- package/dist/commands/guides/project.d.ts +0 -15
- package/dist/commands/guides/project.d.ts.map +0 -1
- package/dist/commands/guides/project.js +0 -74
- package/dist/commands/guides/project.js.map +0 -1
package/README.md
CHANGED
|
@@ -10,6 +10,8 @@ The CLI is the on-device half of the product: it hooks into your agent's lifecyc
|
|
|
10
10
|
npm install -g mossbear
|
|
11
11
|
```
|
|
12
12
|
|
|
13
|
+
There is no stable release yet: this installs an alpha, and breaking changes can land on it without a deprecation window.
|
|
14
|
+
|
|
13
15
|
A global install is required (not just `npx`). The hooks `mossbear init` registers run from your agent's session by name — `mossbear-hook` on every tool call, `mossbear sync` at the end of each turn and of the session — so both binaries must be on `PATH`. Node 20+ required.
|
|
14
16
|
|
|
15
17
|
## Staying up to date
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"AA6DA,eAAO,MAAM,aAAa;;;;;;;;;;;;EAyaxB,CAAA"}
|
package/dist/commands/doctor.js
CHANGED
|
@@ -4,8 +4,7 @@ import { describeDashboardHealth } from '../dashboard-health.js';
|
|
|
4
4
|
import { describeGuideDelivery } from '../docs/delivery-check.js';
|
|
5
5
|
import { classifyUnresolvedSubscription, repoBundleIds, unresolvedSubscriptionMessage, } from '../docs/delivery.js';
|
|
6
6
|
import { collidesWithHomeConfig, readRepoDocsConfig } from '../docs/repo-config.js';
|
|
7
|
-
import { CODEX_TRUST_NOTE } from '../
|
|
8
|
-
import { harnessDefinition } from '../harnesses.js';
|
|
7
|
+
import { CODEX_TRUST_NOTE, harnessDefinition, loggerCommand } from '../harnesses.js';
|
|
9
8
|
import { MOSSBEAR_HOOK_COMMAND, MOSSBEAR_SYNC_COMMAND, sessionStartHookAlreadyPulls, sessionStartHookUpdatesCli, sessionStartHookBootstraps, stopHookUploadsActions, } from '../hooks-settings.js';
|
|
10
9
|
import { createContextClient } from '../mcp/client.js';
|
|
11
10
|
import { resolveOnPath } from '../path-resolve.js';
|
|
@@ -60,19 +59,56 @@ export const doctorCommand = defineCommand({
|
|
|
60
59
|
const wiredHarnesses = harnessWiring.filter((harness) => harness.logsActions);
|
|
61
60
|
const codexWired = wiredHarnesses.some((harness) => harness.id === 'codex');
|
|
62
61
|
// Names the event per harness rather than just the file, because the event
|
|
63
|
-
// is the thing that differs between them — `PostToolUse
|
|
64
|
-
// `post_tool_use` are the same hook under
|
|
65
|
-
// user checks their own config against. The sibling checks below are
|
|
62
|
+
// is the thing that differs between them — Claude Code's `PostToolUse` and
|
|
63
|
+
// Codex's `post_tool_use` are the same hook under two names — and it is
|
|
64
|
+
// what a user checks their own config against. The sibling checks below are
|
|
66
65
|
// Claude Code's alone and keep their own wording.
|
|
67
66
|
const wiredHarnessDetail = wiredHarnesses
|
|
68
67
|
.map((harness) => {
|
|
69
|
-
const
|
|
70
|
-
|
|
68
|
+
const manifest = harnessDefinition(harness.id);
|
|
69
|
+
const outbound = manifest.outbound;
|
|
70
|
+
const detail = outbound
|
|
71
|
+
? `${outbound.projectConfig} ${outbound.events.logger} hook (${loggerCommand(manifest)})`
|
|
72
|
+
: `${MOSSBEAR_HOOK_COMMAND} hook`;
|
|
73
|
+
// An entry that logs but names no field map is reported as the problem
|
|
74
|
+
// it is, not folded into the wired list: `mossbear-hook` would read
|
|
75
|
+
// this harness's payload with Claude Code's field names, resolve
|
|
76
|
+
// nothing, and log every session under `'unknown'` — one merged run
|
|
77
|
+
// per machine, graded as if it meant something.
|
|
78
|
+
const suffix = harness.fieldMapOk
|
|
79
|
+
? ''
|
|
80
|
+
: ` — missing \`--harness ${manifest.id}\`, so its payload reads as empty; re-run \`mossbear init\``;
|
|
81
|
+
return `${manifest.label} — ${detail}${suffix}`;
|
|
71
82
|
})
|
|
72
83
|
.join('; ');
|
|
73
84
|
const hooksConfigured = wiredHarnesses.length > 0;
|
|
85
|
+
// Claude Code's alone, and gated on Claude Code being wired rather than on
|
|
86
|
+
// *any* harness. `PostToolUseFailure` is a Claude Code event — no other
|
|
87
|
+
// harness has one — so in an Antigravity- or Codex-only repo this check was
|
|
88
|
+
// reporting a hook that cannot exist as missing, failing `doctor` with a
|
|
89
|
+
// remedy ("run `mossbear init` to add it") that could only be satisfied by
|
|
90
|
+
// wiring a different harness than the one the repo uses.
|
|
91
|
+
const claudeCodeWired = wiredHarnesses.some((harness) => harness.id === 'claude_code');
|
|
74
92
|
const failureHookConfigured = detectLoggerHook(projectHooks, 'PostToolUseFailure') !== null;
|
|
75
|
-
|
|
93
|
+
// The upload question is every harness's, so it is answered from every
|
|
94
|
+
// wired harness's own config rather than from `.claude/settings.json`.
|
|
95
|
+
// Reading only Claude Code's file told an Antigravity repo its actions were
|
|
96
|
+
// never uploaded while its `.agents/hooks.json` Stop hook was uploading
|
|
97
|
+
// them — a false red on the exact state `mossbear init --platform
|
|
98
|
+
// antigravity` produces.
|
|
99
|
+
const uploadConfigured = detectUploadHook(projectHooks) ||
|
|
100
|
+
wiredHarnesses.some((harness) => harness.uploadsRun);
|
|
101
|
+
// Named per harness so the reader can open the file the check just read.
|
|
102
|
+
// Claude Code is listed through `detectUploadHook` rather than its wiring
|
|
103
|
+
// row because that reader knows about `--no-actions`/`--dry-run` Stop
|
|
104
|
+
// hooks, which mention `mossbear sync` and upload nothing.
|
|
105
|
+
const uploadingConfigs = [
|
|
106
|
+
...(detectUploadHook(projectHooks) ? ['.claude/settings.json'] : []),
|
|
107
|
+
...wiredHarnesses
|
|
108
|
+
.filter((harness) => harness.uploadsRun && harness.id !== 'claude_code')
|
|
109
|
+
.map((harness) => harnessDefinition(harness.id).outbound?.projectConfig)
|
|
110
|
+
.filter((path) => path !== undefined),
|
|
111
|
+
];
|
|
76
112
|
// Reported rather than checked — see `describeSessionStart`. This hook is
|
|
77
113
|
// the one `mossbear init` lets a user decline, and its absence is
|
|
78
114
|
// indistinguishable from having declined it.
|
|
@@ -206,7 +242,7 @@ export const doctorCommand = defineCommand({
|
|
|
206
242
|
// inert case reported as healthy.
|
|
207
243
|
//
|
|
208
244
|
// Passes on *any* wired harness, not on Claude Code specifically: a
|
|
209
|
-
//
|
|
245
|
+
// Codex-only repo is correctly set up, and failing it here would be
|
|
210
246
|
// the check telling a working repo it is broken. Which harnesses those
|
|
211
247
|
// are is the detail line's job.
|
|
212
248
|
ok: hooksConfigured && runnerOk,
|
|
@@ -219,7 +255,7 @@ export const doctorCommand = defineCommand({
|
|
|
219
255
|
// Only meaningful once the logger is wired: with no PostToolUse hook
|
|
220
256
|
// there is nothing to upload, and the check above already says so. Two
|
|
221
257
|
// failures for one cause would just make the output harder to act on.
|
|
222
|
-
...(
|
|
258
|
+
...(claudeCodeWired
|
|
223
259
|
? [
|
|
224
260
|
{
|
|
225
261
|
// PostToolUse fires only after a tool call succeeds; a failing
|
|
@@ -237,6 +273,10 @@ export const doctorCommand = defineCommand({
|
|
|
237
273
|
? `.claude/settings.json has PostToolUseFailure hook (${MOSSBEAR_HOOK_COMMAND})`
|
|
238
274
|
: `${MOSSBEAR_HOOK_COMMAND} not on PATH — reinstall globally (npm install -g mossbear)`,
|
|
239
275
|
},
|
|
276
|
+
]
|
|
277
|
+
: []),
|
|
278
|
+
...(hooksConfigured
|
|
279
|
+
? [
|
|
240
280
|
{
|
|
241
281
|
label: 'Session uploads to the dashboard',
|
|
242
282
|
// Configured is not the same as able to run. The runner check
|
|
@@ -246,10 +286,10 @@ export const doctorCommand = defineCommand({
|
|
|
246
286
|
// case `missingHookPathWarning` already covers for init.
|
|
247
287
|
ok: uploadConfigured && mossbearBinPath !== null,
|
|
248
288
|
detail: !uploadConfigured
|
|
249
|
-
? `actions are being logged to ~/.mossbear/runs/ and never uploaded — run \`mossbear init\` to add the \`${MOSSBEAR_SYNC_COMMAND}\` Stop hook. If you upload some other way, this check will keep reporting.`
|
|
289
|
+
? `actions are being logged to ~/.mossbear/runs/ and never uploaded — run \`mossbear init\` to add the \`${MOSSBEAR_SYNC_COMMAND}\` Stop hook to ${wiredHarnesses.map((harness) => harnessDefinition(harness.id).label).join(', ')}. If you upload some other way, this check will keep reporting.`
|
|
250
290
|
: mossbearBinPath === null
|
|
251
291
|
? '`mossbear` is not on PATH, so the configured Stop hook fails with command-not-found and nothing uploads — reinstall globally (npm install -g mossbear)'
|
|
252
|
-
:
|
|
292
|
+
: `${uploadingConfigs.join(', ')} has a Stop hook (${MOSSBEAR_SYNC_COMMAND})`,
|
|
253
293
|
},
|
|
254
294
|
]
|
|
255
295
|
: []),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/guides/index.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,aAAa,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/guides/index.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,aAAa,qDA6BxB,CAAA"}
|
|
@@ -15,7 +15,12 @@ export const guidesCommand = defineCommand({
|
|
|
15
15
|
// now, so a repo receives guides by subscribing to the bundles they are in
|
|
16
16
|
// and the docs phase materializes them (`unified-item-sync-plan.md` → Slice
|
|
17
17
|
// 5, goal criterion 5). `mossbear pull <bundle>` is the deliberate one-shot.
|
|
18
|
-
|
|
18
|
+
//
|
|
19
|
+
// No `project`. It rendered AGENTS.md and `.agents/` from hand-written
|
|
20
|
+
// agent-config JSON under `.mossbear/`, a third writer of AGENTS.md
|
|
21
|
+
// alongside `mossbear init` and the docs phase, and nothing in the product
|
|
22
|
+
// has produced that JSON since guides became the unit of guidance
|
|
23
|
+
// (`guidance-delivery-and-alias-review.md` → Decision 6).
|
|
19
24
|
active: () => import('./active.js').then((m) => m.guidesActiveCommand),
|
|
20
25
|
search: () => import('./search.js').then((m) => m.guidesSearchCommand),
|
|
21
26
|
// The one verb here that reaches the network. `active` and `search` read the
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/guides/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAErC,MAAM,CAAC,MAAM,aAAa,GAAG,aAAa,CAAC;IACzC,IAAI,EAAE;QACJ,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,oCAAoC;KAClD;IACD,WAAW,EAAE;QACX,6EAA6E;QAC7E,uEAAuE;QACvE,yEAAyE;QACzE,uDAAuD;QACvD,EAAE;QACF,2EAA2E;QAC3E,6EAA6E;QAC7E,2EAA2E;QAC3E,4EAA4E;QAC5E,6EAA6E;QAC7E,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/guides/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAErC,MAAM,CAAC,MAAM,aAAa,GAAG,aAAa,CAAC;IACzC,IAAI,EAAE;QACJ,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,oCAAoC;KAClD;IACD,WAAW,EAAE;QACX,6EAA6E;QAC7E,uEAAuE;QACvE,yEAAyE;QACzE,uDAAuD;QACvD,EAAE;QACF,2EAA2E;QAC3E,6EAA6E;QAC7E,2EAA2E;QAC3E,4EAA4E;QAC5E,6EAA6E;QAC7E,EAAE;QACF,uEAAuE;QACvE,oEAAoE;QACpE,2EAA2E;QAC3E,kEAAkE;QAClE,0DAA0D;QAC1D,MAAM,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,mBAAmB,CAAC;QACtE,MAAM,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,mBAAmB,CAAC;QACtE,6EAA6E;QAC7E,4EAA4E;QAC5E,sDAAsD;QACtD,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,oBAAoB,CAAC;KAC1E;CACF,CAAC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAkPA,eAAO,MAAM,kBAAkB,+JAM9B,CAAA;AA+ED,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA28CtB,CAAA"}
|
package/dist/commands/init.js
CHANGED
|
@@ -7,13 +7,14 @@ import { defineCommand } from 'citty';
|
|
|
7
7
|
import { MOSSBEAR_CONFIG_MODE, DEFAULT_DASHBOARD_URL, MOSSBEAR_DASHBOARD_URL_ENV, ensureMossbearDir, normalizeDashboardUrl, readConfigDashboardUrl, readEnvDashboardUrl, readConfigDiscoverGlobal, removeConfigEvalSection, resolveDashboardUrl, resolveToken, writeConfigDashboardUrl, writeConfigDiscoverGlobal, writeConfigToken, readGlobalDeliveryConsent, writeGlobalDeliveryConsent, } from '../config.js';
|
|
8
8
|
import { deliveryBundles, legacySubscribedSlugs, legacySubscriptionMessage, repoBundleIds, } from '../docs/delivery.js';
|
|
9
9
|
import { globalSkillsRoot, namespaceDir } from '../docs/global-namespace.js';
|
|
10
|
-
import { readRepoDocsConfig, readRepoProjectId } from '../docs/repo-config.js';
|
|
10
|
+
import { readRepoDocsConfig, readRepoProjectId, readRepoWorkspaceId, writeRepoWorkspaceId, } from '../docs/repo-config.js';
|
|
11
11
|
import { resolveInitSubscriptionSelection, subscribeBundleSelections, } from '../docs/subscribe.js';
|
|
12
12
|
import { formatDocsSyncLine, syncSubscribedDocs } from '../docs/sync-docs.js';
|
|
13
|
+
import { resolveWorkspaceDeclarationSelection, shareableWorkspaces, } from '../docs/workspace-declaration.js';
|
|
13
14
|
import { errText } from '../err-text.js';
|
|
14
|
-
import { detectHarnesses, harnessDefinition, parsePlatformFlag, resolveHarnessSelection, } from '../harnesses.js';
|
|
15
|
+
import { detectHarnesses, harnessDefinition, harnessOffers, loggerCommand, parseHarnessSelection, parsePlatformFlag, resolveHarnessSelection, } from '../harnesses.js';
|
|
15
16
|
import { MOSSBEAR_HOOK_COMMAND, MOSSBEAR_SESSION_END_COMMAND, MOSSBEAR_SESSION_START_COMMAND, MOSSBEAR_SYNC_COMMAND, hookGroupsHaveCommand, mergeMossbearHookEntry, mergeMossbearLoggerHook, missingHookPathWarning, pruneStaleHooks, sessionStartHookAlreadyPulls, staleHookWarning, legacyFreshnessHookNote, supersededSessionStartWarning, SUPERSEDED_SESSION_START_COMMANDS, stopHookUploadsActions, } from '../hooks-settings.js';
|
|
16
|
-
import {
|
|
17
|
+
import { wireHarness } from '../init/wire-harnesses.js';
|
|
17
18
|
import { createContextClient } from '../mcp/client.js';
|
|
18
19
|
import { MOSSBEAR_CONFIG, MOSSBEAR_GLOBAL_DIR, MOSSBEAR_HOME, MOSSBEAR_RUNS_DIR, } from '../mossbear-paths.js';
|
|
19
20
|
import { resolveOnPath } from '../path-resolve.js';
|
|
@@ -168,6 +169,72 @@ export const AGENTS_MD_TEMPLATE = `# AGENTS.md
|
|
|
168
169
|
<!-- Add rules below. Adopt them with \`${ADOPT_VERB}\` and the dashboard
|
|
169
170
|
grades each session's actions against them. -->
|
|
170
171
|
`;
|
|
172
|
+
/**
|
|
173
|
+
* Ask which workspace this repo's guidance belongs to, and commit the answer.
|
|
174
|
+
*
|
|
175
|
+
* **Attended only, and asked only when it is a real question.** An account with
|
|
176
|
+
* no shared workspace has nothing to pick, and a repo that already declares one
|
|
177
|
+
* is not re-asked — re-prompting would invite someone to change a committed
|
|
178
|
+
* value they did not come here to change, and a bare Enter would then read as
|
|
179
|
+
* "leave it", which is not what the empty answer means anywhere else.
|
|
180
|
+
*
|
|
181
|
+
* Nothing here is fatal. The declaration narrows import resolution; without it
|
|
182
|
+
* imports resolve exactly as they did before this existed, so a failed listing
|
|
183
|
+
* or a failed write costs the repo convergence, not correctness.
|
|
184
|
+
*/
|
|
185
|
+
async function offerWorkspaceDeclaration(client, cwd) {
|
|
186
|
+
let declared;
|
|
187
|
+
try {
|
|
188
|
+
declared = (await readRepoWorkspaceId(cwd)).workspaceId;
|
|
189
|
+
}
|
|
190
|
+
catch {
|
|
191
|
+
// Unreadable committed config — the bundle pick below reports that state on
|
|
192
|
+
// its own terms; there is nothing this step can add.
|
|
193
|
+
return;
|
|
194
|
+
}
|
|
195
|
+
if (declared !== null)
|
|
196
|
+
return;
|
|
197
|
+
let offered;
|
|
198
|
+
try {
|
|
199
|
+
offered = shareableWorkspaces((await client.listWorkspaces()).workspaces);
|
|
200
|
+
}
|
|
201
|
+
catch (err) {
|
|
202
|
+
console.warn(` warning: could not list your workspaces — ${errText(err)}. This repo's guidance stays in your personal workspace.`);
|
|
203
|
+
return;
|
|
204
|
+
}
|
|
205
|
+
if (offered.length === 0)
|
|
206
|
+
return;
|
|
207
|
+
console.log('\nWhich workspace does this repo\u2019s guidance belong to?');
|
|
208
|
+
console.log('Everyone in it shares one guide per file, instead of each keeping their own copy.');
|
|
209
|
+
offered.forEach((workspace, index) => {
|
|
210
|
+
console.log(` ${index + 1}. ${workspace.name} [${workspace.slug}]`);
|
|
211
|
+
});
|
|
212
|
+
const rl = createInterface({ input: process.stdin, output: process.stdout });
|
|
213
|
+
let answer = '';
|
|
214
|
+
try {
|
|
215
|
+
answer = await rl.question('Number or slug [enter = keep it personal]: ');
|
|
216
|
+
}
|
|
217
|
+
finally {
|
|
218
|
+
rl.close();
|
|
219
|
+
}
|
|
220
|
+
const selection = resolveWorkspaceDeclarationSelection(answer, offered);
|
|
221
|
+
if (selection.kind === 'unrecognized') {
|
|
222
|
+
console.log(` No workspace here is called \u201c${selection.input}\u201d, so nothing was declared. Run \`mossbear init\` again to pick one.`);
|
|
223
|
+
return;
|
|
224
|
+
}
|
|
225
|
+
if (selection.kind === 'none')
|
|
226
|
+
return;
|
|
227
|
+
try {
|
|
228
|
+
const { removedToken } = await writeRepoWorkspaceId(cwd, selection.workspace.id);
|
|
229
|
+
console.log(` This repo\u2019s guidance belongs to ${selection.workspace.name} — commit .mossbear/config.json so teammates import into the same workspace`);
|
|
230
|
+
if (removedToken) {
|
|
231
|
+
console.warn(' warning: removed an API token from .mossbear/config.json — rotate it if that file was ever committed.');
|
|
232
|
+
}
|
|
233
|
+
}
|
|
234
|
+
catch (err) {
|
|
235
|
+
console.warn(` warning: could not record the workspace — ${errText(err)}`);
|
|
236
|
+
}
|
|
237
|
+
}
|
|
171
238
|
export const initCommand = defineCommand({
|
|
172
239
|
meta: {
|
|
173
240
|
name: 'init',
|
|
@@ -211,7 +278,7 @@ export const initCommand = defineCommand({
|
|
|
211
278
|
},
|
|
212
279
|
platform: {
|
|
213
280
|
type: 'string',
|
|
214
|
-
description: 'Comma-separated harnesses to wire, overriding detection: claude_code,
|
|
281
|
+
description: 'Comma-separated harnesses to wire, overriding detection: claude_code, codex. Required when there is no TTY and the repo has no harness config to detect',
|
|
215
282
|
valueHint: 'list',
|
|
216
283
|
default: '',
|
|
217
284
|
},
|
|
@@ -287,7 +354,7 @@ export const initCommand = defineCommand({
|
|
|
287
354
|
// No eval-provider block: grading runs on the server against what `mossbear
|
|
288
355
|
// sync` uploads, so nothing here needs an LLM key.
|
|
289
356
|
// No `platform` field. It was written unconditionally as the string
|
|
290
|
-
// `'claude_code'`, so the moment `init` wires a
|
|
357
|
+
// `'claude_code'`, so the moment `init` wires a Codex-only repo it would
|
|
291
358
|
// name a harness that repo does not use — and a second copy of a fact the
|
|
292
359
|
// hook files already hold is the dual-write CLAUDE.md's Simplicity section
|
|
293
360
|
// names. `mossbear status` and `doctor` read the config files instead
|
|
@@ -501,17 +568,46 @@ export const initCommand = defineCommand({
|
|
|
501
568
|
const resolution = resolveHarnessSelection({ detected, requested, interactive });
|
|
502
569
|
let wiring = resolution.ids;
|
|
503
570
|
if (resolution.confirm) {
|
|
504
|
-
//
|
|
505
|
-
//
|
|
506
|
-
//
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
//
|
|
511
|
-
|
|
512
|
-
|
|
571
|
+
// One numbered list, answered with one line, rather than a yes/no over
|
|
572
|
+
// the whole set. The yes/no could not express "wire Codex but not that
|
|
573
|
+
// other thing", and had nothing to say about a harness detection found
|
|
574
|
+
// and `init` cannot write. A numbered list also keeps the interaction
|
|
575
|
+
// inside `askLine` — `prompt.ts` has no multi-select primitive, and a
|
|
576
|
+
// raw-mode one would be untestable — and reads the same under `NO_COLOR`
|
|
577
|
+
// and in a pipe, where position carries the structure.
|
|
578
|
+
const offers = harnessOffers(resolution);
|
|
579
|
+
const width = Math.max(...offers.map((offer) => offer.label.length));
|
|
580
|
+
let printedMachineHeading = false;
|
|
581
|
+
console.log('\nDetected in this repo:');
|
|
582
|
+
offers.forEach((offer, index) => {
|
|
583
|
+
if (!offer.inRepo && !printedMachineHeading) {
|
|
584
|
+
console.log('Also installed on this machine:');
|
|
585
|
+
printedMachineHeading = true;
|
|
586
|
+
}
|
|
587
|
+
// A wireable row names the file it will write; a prompt-only row says
|
|
588
|
+
// there is nothing to write, because naming a path there would promise
|
|
589
|
+
// a file this run cannot produce.
|
|
590
|
+
const detail = offer.path
|
|
591
|
+
? `→ ${offer.path}`
|
|
592
|
+
: ' prompt-only — nothing to write yet';
|
|
593
|
+
console.log(` ${index + 1}. ${offer.label.padEnd(width)} ${detail}`);
|
|
594
|
+
});
|
|
595
|
+
const preselected = offers
|
|
596
|
+
.map((offer, index) => (offer.preselected ? String(index + 1) : null))
|
|
597
|
+
.filter((label) => label !== null);
|
|
598
|
+
const answer = await askLine(`\nWire which? [${preselected.join(',')}] (Enter to accept, \`none\` to skip): `);
|
|
599
|
+
const selection = parseHarnessSelection(answer, offers);
|
|
600
|
+
if (!selection.ok) {
|
|
601
|
+
// Refused rather than reinterpreted: a user who typed `5` and silently
|
|
602
|
+
// got the default wired would have no way to tell that from having
|
|
603
|
+
// typed it correctly.
|
|
604
|
+
console.error(` ${selection.message}`);
|
|
605
|
+
process.exitCode = 1;
|
|
606
|
+
return;
|
|
607
|
+
}
|
|
608
|
+
wiring = selection.ids;
|
|
609
|
+
if (wiring.length === 0) {
|
|
513
610
|
console.log(' skipped hook setup — `mossbear init --platform <harness>` to wire one');
|
|
514
|
-
wiring = [];
|
|
515
611
|
}
|
|
516
612
|
}
|
|
517
613
|
const wireClaudeCode = wiring.includes('claude_code');
|
|
@@ -525,8 +621,8 @@ export const initCommand = defineCommand({
|
|
|
525
621
|
* **Two lists rather than one boolean**, because "no hooks were installed"
|
|
526
622
|
* and "Claude Code's hooks were not installed" are different sentences and
|
|
527
623
|
* the second one is often the true one: the harness loop below is not gated
|
|
528
|
-
* on Claude Code succeeding, so a repo using
|
|
529
|
-
*
|
|
624
|
+
* on Claude Code succeeding, so a repo using Codex as well still gets its
|
|
625
|
+
* Codex hooks when `.claude/settings.json` is corrupt. Claiming *nothing*
|
|
530
626
|
* will be recorded there is false, and it is false in the command's final
|
|
531
627
|
* verdict, which is the worst place to be wrong.
|
|
532
628
|
*
|
|
@@ -545,7 +641,7 @@ export const initCommand = defineCommand({
|
|
|
545
641
|
// Bare command, resolved through PATH from the `mossbear-hook` bin. Nothing
|
|
546
642
|
// machine-specific, so this file is identical everywhere and safe to
|
|
547
643
|
// commit.
|
|
548
|
-
command:
|
|
644
|
+
command: loggerCommand(harnessDefinition('claude_code')),
|
|
549
645
|
timeout: 5,
|
|
550
646
|
};
|
|
551
647
|
try {
|
|
@@ -911,20 +1007,12 @@ export const initCommand = defineCommand({
|
|
|
911
1007
|
if (id === 'claude_code')
|
|
912
1008
|
continue;
|
|
913
1009
|
try {
|
|
914
|
-
// The same opt-out
|
|
915
|
-
// `--no-session-start-hook`
|
|
916
|
-
//
|
|
917
|
-
//
|
|
918
|
-
|
|
919
|
-
|
|
920
|
-
const optIns = {
|
|
921
|
-
sessionStart: args['session-start-hook'] !== false,
|
|
922
|
-
sessionEnd: args['session-end-hook'] !== false,
|
|
923
|
-
sync: args['sync-hook'] !== false,
|
|
924
|
-
};
|
|
925
|
-
const written = id === 'gemini_cli'
|
|
926
|
-
? await wireGeminiCli(cwd, optIns)
|
|
927
|
-
: await wireCodex(cwd, optIns);
|
|
1010
|
+
// The same opt-out flag that gates Claude Code's Stop entry. Codex
|
|
1011
|
+
// has no session-scoped event, so `--no-session-start-hook` and
|
|
1012
|
+
// `--no-session-end-hook` have nothing to decline here and are not
|
|
1013
|
+
// passed on — see `HookOptIns` in `init/wire-harnesses.ts`.
|
|
1014
|
+
const optIns = { sync: args['sync-hook'] !== false };
|
|
1015
|
+
const written = await wireHarness(cwd, harnessDefinition(id), optIns);
|
|
928
1016
|
if (written.unreadable) {
|
|
929
1017
|
console.warn(` ${written.unreadable}`);
|
|
930
1018
|
hookWiringFailedFor.push(harnessDefinition(id).label);
|
|
@@ -935,9 +1023,12 @@ export const initCommand = defineCommand({
|
|
|
935
1023
|
console.log(note(`${written.installed.length} hook${written.installed.length === 1 ? '' : 's'}: ${written.installed.join(', ')}`));
|
|
936
1024
|
// Printed on the run that writes the file, for the same reason the
|
|
937
1025
|
// SessionStart consent notice is: it names a step the user still owes,
|
|
938
|
-
// and `doctor` reporting it later is a worse place to learn it.
|
|
939
|
-
|
|
940
|
-
|
|
1026
|
+
// and `doctor` reporting it later is a worse place to learn it. Read
|
|
1027
|
+
// off the manifest rather than branched on the id, so a harness with
|
|
1028
|
+
// its own outstanding step says so without an edit here.
|
|
1029
|
+
const writeNote = harnessDefinition(id).outbound?.writeNote;
|
|
1030
|
+
if (writeNote)
|
|
1031
|
+
console.log(note(writeNote));
|
|
941
1032
|
}
|
|
942
1033
|
if (written.present.length > 0) {
|
|
943
1034
|
console.log(` kept ${written.present.join(', ')} in ${written.path}`);
|
|
@@ -948,7 +1039,7 @@ export const initCommand = defineCommand({
|
|
|
948
1039
|
}
|
|
949
1040
|
}
|
|
950
1041
|
catch {
|
|
951
|
-
console.warn(` warning: could not update ${harnessDefinition(id).projectConfig}`);
|
|
1042
|
+
console.warn(` warning: could not update ${harnessDefinition(id).outbound?.projectConfig ?? id}`);
|
|
952
1043
|
// Same reasoning as the Claude Code catch above: a harness this run set
|
|
953
1044
|
// out to wire and could not is a failed setup, whichever harness it is.
|
|
954
1045
|
hookWiringFailedFor.push(harnessDefinition(id).label);
|
|
@@ -1015,6 +1106,13 @@ export const initCommand = defineCommand({
|
|
|
1015
1106
|
const dashboardUrl = await resolveDashboardUrl(args['dashboard-url']);
|
|
1016
1107
|
try {
|
|
1017
1108
|
const client = createContextClient({ dashboardUrl, token });
|
|
1109
|
+
// Asked before the bundle pick, and only when it is a real question —
|
|
1110
|
+
// see `offerWorkspaceDeclaration`. It writes a different key of the same
|
|
1111
|
+
// committed file, so the two are adjacent rather than combined: one says
|
|
1112
|
+
// which bundles this repo receives, the other whose guidance it is.
|
|
1113
|
+
if (interactive && !forcedPull) {
|
|
1114
|
+
await offerWorkspaceDeclaration(client, cwd);
|
|
1115
|
+
}
|
|
1018
1116
|
const offered = (await client.listBundles()).bundles.map((bundle) => ({
|
|
1019
1117
|
id: bundle.id,
|
|
1020
1118
|
slug: bundle.slug,
|