glimmervoid 0.35.0 → 0.36.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/README.md +2 -0
- package/dist/bin/glimmervoid.js +17 -12
- package/dist/chunks/{adapters-B37wqNti.js → adapters-BVozg-Lg.js} +1 -1
- package/dist/chunks/{adapters-CADejSpq.js → adapters-BdnLyJjf.js} +10 -49
- package/dist/chunks/{agent-api-cli-CRj_FYbz.js → agent-api-cli-DIqRLvu3.js} +1 -1
- package/dist/chunks/{agent-api-cli-vGwstJ1j.js → agent-api-cli-d-Bgsshx.js} +3 -3
- package/dist/chunks/{agent-api-core-D1233u1U.js → agent-api-core-BUC9WND7.js} +2 -2
- package/dist/chunks/{agent-setup-cli-BTAFcckd.js → agent-setup-cli-CH7EHsAX.js} +1 -1
- package/dist/chunks/{config-rPbbL4nW.js → config-CuZ16F9W.js} +47 -771
- package/dist/chunks/config-store-LqQ7MuyV.js +4181 -0
- package/dist/chunks/config-store-tVmt_nfm.js +1 -0
- package/dist/chunks/{contracts-DjIgIuDk.js → contracts-BLZAOP57.js} +55 -6
- package/dist/chunks/{grok-KKgdSe-7.js → grok-Ch4-35_r.js} +3 -3
- package/dist/chunks/{hook-command-core-DclEoE9e.js → hook-command-core-qTNK-xMF.js} +4 -1
- package/dist/chunks/{hook-tools-UX2fmt81.js → hook-tools-BkxllUHE.js} +9 -16
- package/dist/chunks/{knowledge-graph-cli-Rj5nj87L.js → knowledge-graph-cli-DD7QvcFd.js} +1 -1
- package/dist/chunks/{main-BTI0J5QE.js → main-Rmo83Ow-.js} +3087 -834
- package/dist/chunks/{pair-cli-Dcyzv3In.js → pair-cli-DzFeAmq5.js} +2 -2
- package/dist/chunks/{remote-config-Dd1T-VJA.js → remote-config-CPdSF2Xi.js} +1 -1
- package/dist/chunks/{rtk-hook-core-BmEz2aq9.js → rtk-hook-core-VrUafGAp.js} +15 -5
- package/dist/chunks/rtk-resolver-B8BPgN9L.js +1 -0
- package/dist/chunks/{rtk-resolver-B9pzjLsM.js → rtk-resolver-C_micGrL.js} +1 -1
- package/dist/chunks/session-B8RhqQJe.js +986 -0
- package/dist/chunks/{session-routes-BYy3am9m.js → session-routes-DB5aDKsx.js} +1 -1
- package/dist/chunks/settings-cli-C2TY6hl-.js +484 -0
- package/dist/chunks/{ssh-sign-cli-DPHpT22B.js → ssh-sign-cli-C2nUwJC-.js} +2 -2
- package/dist/client/assets/index-BIaSyXwH.css +1 -0
- package/dist/client/assets/index-Ddu7M4Ad.js +259 -0
- package/dist/client/index.html +5 -3
- package/dist/server/index.js +1 -1
- package/dist/session/hook-tool-relay.js +3 -3
- package/package.json +3 -3
- package/dist/chunks/config-store-BeIxAZNn.js +0 -1
- package/dist/chunks/config-store-BtsYbNC3.js +0 -1713
- package/dist/chunks/rtk-resolver-SWU5VVM7.js +0 -1
- package/dist/chunks/session-D6xXN0UU.js +0 -232
- package/dist/client/assets/index-DE2GUmqs.css +0 -1
- package/dist/client/assets/index-Ds4ngkHp.js +0 -254
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { s as loadConfigFile } from "./config-store-LqQ7MuyV.js";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { A as MyPrKeepMergeableResult, D as LinkedPr, Dt as GithubPollingRefreshRequest, E as TaskTitle, F as MyPrMergeWhenReadyRequest, G as CommitSha, H as MyPrsStatus, I as MyPrMergeWhenReadyResult, M as MyPrMergeRequest, N as MyPrMergeResult, Ot as GithubPollingRefreshResult, S as SessionState, Tt as REPO_SLUG_RE, U as SessionPrLinks, _ as SESSION_DOC_PATH_MAX_CHARS, b as SessionDoc, ct as TeamReviewActionResult, d as ConversationApprovalDecision, ft as TeamReviewStatus, k as MyPrKeepMergeableRequest, kt as githubPollingShape, p as PendingWakeup, st as TeamReviewActionRequest, u as ConversationApproval, vt as hasRequiredActionHead, x as SessionSnapshot } from "./session-B8RhqQJe.js";
|
|
2
|
+
import { J as CoherenceRisk, K as CoherenceOrient, Q as CoherenceWorkState, n as BUILTIN_AGENT_IDS, q as CoherenceReadiness } from "./config-CuZ16F9W.js";
|
|
3
3
|
import { z } from "zod";
|
|
4
4
|
//#region shared/contracts/factory.ts
|
|
5
5
|
var FactoryConsequences = z.looseObject({ records: z.array(z.looseObject({
|
|
@@ -1233,6 +1233,7 @@ var UpdateJournalSummary = UpdateJournal.pick({
|
|
|
1233
1233
|
//#region shared/contracts/control-messages.ts
|
|
1234
1234
|
var requestId = z.string().nullable().optional();
|
|
1235
1235
|
var sessionId = z.string();
|
|
1236
|
+
var PullRequestKey = SessionPrLinks.shape.unlinkedKeys.unwrap().element;
|
|
1236
1237
|
function loose(type, shape) {
|
|
1237
1238
|
return z.looseObject({
|
|
1238
1239
|
type: z.literal(type),
|
|
@@ -1276,7 +1277,8 @@ var SessionCardFields = z.object({
|
|
|
1276
1277
|
worktree: z.boolean(),
|
|
1277
1278
|
workspace: z.boolean().optional(),
|
|
1278
1279
|
resumeSessionId: nullableString,
|
|
1279
|
-
ephemeral: z.boolean().optional()
|
|
1280
|
+
ephemeral: z.boolean().optional(),
|
|
1281
|
+
linkedPrs: z.array(LinkedPr).optional()
|
|
1280
1282
|
});
|
|
1281
1283
|
var DIFF_ANNOTATION_NOTE_MAX_CHARS = 1e3;
|
|
1282
1284
|
var DIFF_ANNOTATION_PATH_RE = new RegExp(`^[^${String.fromCharCode(0)}-${String.fromCharCode(31)}${String.fromCharCode(127)}-${String.fromCharCode(159)}]+$`);
|
|
@@ -1383,6 +1385,14 @@ var clientVariants = [
|
|
|
1383
1385
|
id: sessionId,
|
|
1384
1386
|
title: TaskTitle
|
|
1385
1387
|
}),
|
|
1388
|
+
loose("link-session-pr", {
|
|
1389
|
+
id: sessionId,
|
|
1390
|
+
key: PullRequestKey
|
|
1391
|
+
}),
|
|
1392
|
+
loose("unlink-session-pr", {
|
|
1393
|
+
id: sessionId,
|
|
1394
|
+
key: PullRequestKey
|
|
1395
|
+
}),
|
|
1386
1396
|
loose("reorder-sessions", { order: z.array(sessionId) }),
|
|
1387
1397
|
loose("ping", { requestId }),
|
|
1388
1398
|
loose("get-settings", { requestId }),
|
|
@@ -1418,9 +1428,16 @@ var clientVariants = [
|
|
|
1418
1428
|
action: z.string(),
|
|
1419
1429
|
requestId
|
|
1420
1430
|
}),
|
|
1431
|
+
loose("open-team-review-session", {
|
|
1432
|
+
requestId,
|
|
1433
|
+
key: PullRequestKey
|
|
1434
|
+
}),
|
|
1421
1435
|
loose("team-review-action", {
|
|
1422
1436
|
...TeamReviewActionRequest.shape,
|
|
1423
1437
|
requestId
|
|
1438
|
+
}).refine(hasRequiredActionHead, {
|
|
1439
|
+
message: "only discard may omit head",
|
|
1440
|
+
path: ["head"]
|
|
1424
1441
|
}),
|
|
1425
1442
|
loose("factory-queue-intent", {
|
|
1426
1443
|
...FactoryQueueIntentRequest.shape,
|
|
@@ -1484,6 +1501,7 @@ var clientVariants = [
|
|
|
1484
1501
|
}),
|
|
1485
1502
|
loose("session-trace", {
|
|
1486
1503
|
id: sessionId,
|
|
1504
|
+
requestId,
|
|
1487
1505
|
after: z.number().int().nonnegative().default(0),
|
|
1488
1506
|
endingAt: z.union([z.number().int().nonnegative(), z.literal("tail")]).optional()
|
|
1489
1507
|
}),
|
|
@@ -1494,6 +1512,15 @@ var clientVariants = [
|
|
|
1494
1512
|
draft: z.boolean().optional()
|
|
1495
1513
|
}),
|
|
1496
1514
|
loose("plan-decision", PlanDecision.shape),
|
|
1515
|
+
loose("set-session-conversation-view", {
|
|
1516
|
+
id: sessionId,
|
|
1517
|
+
isOn: z.boolean()
|
|
1518
|
+
}),
|
|
1519
|
+
loose("conversation-approval", {
|
|
1520
|
+
id: sessionId,
|
|
1521
|
+
requestId: ConversationApproval.shape.requestId,
|
|
1522
|
+
decision: ConversationApprovalDecision
|
|
1523
|
+
}),
|
|
1497
1524
|
loose("session-doc-read", {
|
|
1498
1525
|
id: sessionId,
|
|
1499
1526
|
path: sessionDocPath,
|
|
@@ -1528,11 +1555,13 @@ Object.freeze([
|
|
|
1528
1555
|
"session-removed",
|
|
1529
1556
|
"session-renamed",
|
|
1530
1557
|
"session-title",
|
|
1558
|
+
"session-prs",
|
|
1531
1559
|
"session-modified",
|
|
1532
1560
|
"session-git",
|
|
1533
1561
|
"session-agents",
|
|
1534
1562
|
"session-wakeup",
|
|
1535
1563
|
"session-prompt",
|
|
1564
|
+
"session-conversation",
|
|
1536
1565
|
"session-sleep",
|
|
1537
1566
|
"session-wake",
|
|
1538
1567
|
"session-merge-status",
|
|
@@ -1577,6 +1606,7 @@ Object.freeze([
|
|
|
1577
1606
|
"radar-open-session-result",
|
|
1578
1607
|
"issue-detail-result",
|
|
1579
1608
|
"open-issue-session-result",
|
|
1609
|
+
"open-team-review-session-result",
|
|
1580
1610
|
"radar-issue-action-result",
|
|
1581
1611
|
"team-review-action-result",
|
|
1582
1612
|
"benchmark-action-result",
|
|
@@ -1668,8 +1698,7 @@ var serverVariants = [
|
|
|
1668
1698
|
event: z.string(),
|
|
1669
1699
|
timestamp,
|
|
1670
1700
|
skipPerms: z.boolean().optional(),
|
|
1671
|
-
saneYolo: z.boolean().optional()
|
|
1672
|
-
hasEndedTurn: z.boolean().optional()
|
|
1701
|
+
saneYolo: z.boolean().optional()
|
|
1673
1702
|
}),
|
|
1674
1703
|
loose("session-added", SessionCardFields.shape),
|
|
1675
1704
|
loose("session-modified", SessionCardFields.shape),
|
|
@@ -1687,6 +1716,10 @@ var serverVariants = [
|
|
|
1687
1716
|
taskTitle: TaskTitle.nullable(),
|
|
1688
1717
|
isCustom: z.boolean()
|
|
1689
1718
|
}),
|
|
1719
|
+
loose("session-prs", {
|
|
1720
|
+
id: sessionId,
|
|
1721
|
+
linkedPrs: z.array(LinkedPr)
|
|
1722
|
+
}),
|
|
1690
1723
|
loose("session-git", {
|
|
1691
1724
|
id: sessionId,
|
|
1692
1725
|
worktree: z.boolean()
|
|
@@ -1706,9 +1739,14 @@ var serverVariants = [
|
|
|
1706
1739
|
isCompacting: z.boolean().optional(),
|
|
1707
1740
|
id: sessionId,
|
|
1708
1741
|
pendingPromptKind: nullableString,
|
|
1709
|
-
pendingPromptDetail: PendingPromptDetail.nullable().optional(),
|
|
1710
1742
|
timestamp
|
|
1711
1743
|
}),
|
|
1744
|
+
loose("session-conversation", {
|
|
1745
|
+
id: sessionId,
|
|
1746
|
+
hasConversationBridge: z.boolean(),
|
|
1747
|
+
isConversationViewOn: z.boolean(),
|
|
1748
|
+
conversationApproval: ConversationApproval.nullable()
|
|
1749
|
+
}),
|
|
1712
1750
|
loose("session-sleep"),
|
|
1713
1751
|
loose("session-wake"),
|
|
1714
1752
|
loose("session-merge-status", {
|
|
@@ -1795,6 +1833,7 @@ var serverVariants = [
|
|
|
1795
1833
|
}),
|
|
1796
1834
|
loose("session-trace-response", {
|
|
1797
1835
|
id: sessionId,
|
|
1836
|
+
requestId,
|
|
1798
1837
|
records: z.array(TraceRecord),
|
|
1799
1838
|
start: z.number().int().nonnegative(),
|
|
1800
1839
|
next: z.number().int().nonnegative(),
|
|
@@ -1958,6 +1997,16 @@ var serverVariants = [
|
|
|
1958
1997
|
pending: z.boolean().optional(),
|
|
1959
1998
|
existing: z.boolean().optional()
|
|
1960
1999
|
}),
|
|
2000
|
+
loose("open-team-review-session-result", {
|
|
2001
|
+
requestId,
|
|
2002
|
+
ok: z.boolean(),
|
|
2003
|
+
error: optionalError,
|
|
2004
|
+
key: PullRequestKey.optional(),
|
|
2005
|
+
sessionId: z.string().optional(),
|
|
2006
|
+
sessionName: z.string().optional(),
|
|
2007
|
+
pending: z.boolean().optional(),
|
|
2008
|
+
existing: z.boolean().optional()
|
|
2009
|
+
}),
|
|
1961
2010
|
loose("radar-issue-action-result", {
|
|
1962
2011
|
requestId,
|
|
1963
2012
|
ok: z.boolean(),
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { r as errorMessage } from "./text-DoirglWV.js";
|
|
2
2
|
import { o as relayPath } from "./runtime-paths-BkeftE60.js";
|
|
3
|
-
import { n as AGENT_URL_ENV,
|
|
3
|
+
import { n as AGENT_URL_ENV, v as SIGN_URL_ENV } from "./session-B8RhqQJe.js";
|
|
4
4
|
import { t as HOOK_URL_ENV } from "./hook-relay-core-DA_bz2KA.js";
|
|
5
5
|
import { n as isRecord } from "./coerce-NSst8oRP.js";
|
|
6
|
-
import {
|
|
7
|
-
import { t as buildHookCommand } from "./hook-command-core-
|
|
6
|
+
import { o as SANE_YOLO_PATH_ENV, r as RTK_PATH_ENV, s as saneYoloEnv } from "./rtk-hook-core-VrUafGAp.js";
|
|
7
|
+
import { t as buildHookCommand } from "./hook-command-core-qTNK-xMF.js";
|
|
8
8
|
import fs from "node:fs";
|
|
9
9
|
import path from "node:path";
|
|
10
10
|
import os from "node:os";
|
|
@@ -10,5 +10,8 @@ function buildHookCommand(relayPath, event, argvTail = []) {
|
|
|
10
10
|
const forwardSlashedPath = rawPath.replace(/\\/g, "/");
|
|
11
11
|
return `node ${/\s/.test(forwardSlashedPath) ? `"${forwardSlashedPath}"` : forwardSlashedPath} ${rawEvent}${argvTail.length ? ` ${argvTail.join(" ")}` : ""}`;
|
|
12
12
|
}
|
|
13
|
+
function shellQuote(value) {
|
|
14
|
+
return `'${String(value).replace(/'/g, `'\\''`)}'`;
|
|
15
|
+
}
|
|
13
16
|
//#endregion
|
|
14
|
-
export { buildHookCommand as t };
|
|
17
|
+
export { shellQuote as n, buildHookCommand as t };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { r as resolvePathCommandMatches } from "./spawn-command-Cc40FiZI.js";
|
|
2
|
-
import {
|
|
3
|
-
import { t as buildHookCommand } from "./hook-command-core-
|
|
2
|
+
import { o as SANE_YOLO_PATH_ENV, r as RTK_PATH_ENV, s as saneYoloEnv, t as CLAUDE_RELAY_FLAVOR } from "./rtk-hook-core-VrUafGAp.js";
|
|
3
|
+
import { n as shellQuote, t as buildHookCommand } from "./hook-command-core-qTNK-xMF.js";
|
|
4
4
|
import path from "node:path";
|
|
5
5
|
//#region session/core/hook-tools.ts
|
|
6
6
|
function firstExistingFile(candidates, fsApi) {
|
|
@@ -19,22 +19,9 @@ function resolveRtkPath({ glimmervoidHome, platform, exec, fsApi }) {
|
|
|
19
19
|
if (!firstMatch) return null;
|
|
20
20
|
return path.resolve(firstMatch);
|
|
21
21
|
}
|
|
22
|
-
function quoteCommandPath(commandPath) {
|
|
23
|
-
if (!/\s/.test(commandPath)) return commandPath;
|
|
24
|
-
return `"${commandPath}"`;
|
|
25
|
-
}
|
|
26
22
|
function toForwardSlashes(commandPath) {
|
|
27
23
|
return commandPath.replace(/\\/g, "/");
|
|
28
24
|
}
|
|
29
|
-
function buildRtkHookEntry(rtkPath) {
|
|
30
|
-
return {
|
|
31
|
-
matcher: "Bash",
|
|
32
|
-
hooks: [{
|
|
33
|
-
type: "command",
|
|
34
|
-
command: `${quoteCommandPath(toForwardSlashes(rtkPath))} hook claude`
|
|
35
|
-
}]
|
|
36
|
-
};
|
|
37
|
-
}
|
|
38
25
|
function codexGroup(command) {
|
|
39
26
|
if (!command) return null;
|
|
40
27
|
return `{matcher='Bash',hooks=[{type='command',command='${command}'}]}`;
|
|
@@ -44,7 +31,13 @@ var HOOK_TOOLS = {
|
|
|
44
31
|
capability: "rtk",
|
|
45
32
|
purpose: "rtk command rewriting",
|
|
46
33
|
env: (tool) => ({ [RTK_PATH_ENV]: tool.binPath }),
|
|
47
|
-
claudeEntry: (
|
|
34
|
+
claudeEntry: (_tool, relayPath) => ({
|
|
35
|
+
matcher: "Bash",
|
|
36
|
+
hooks: [{
|
|
37
|
+
type: "command",
|
|
38
|
+
command: `node ${shellQuote(toForwardSlashes(relayPath))} rtk ${CLAUDE_RELAY_FLAVOR}`
|
|
39
|
+
}]
|
|
40
|
+
}),
|
|
48
41
|
codexGroup: (_tool, relayPath) => codexGroup(buildHookCommand(relayPath, "rtk"))
|
|
49
42
|
},
|
|
50
43
|
saneYolo: {
|
|
@@ -2,7 +2,7 @@ import { r as errorMessage } from "./text-DoirglWV.js";
|
|
|
2
2
|
import { s as resolvePackageBin } from "./runtime-paths-BkeftE60.js";
|
|
3
3
|
import { r as execFileSync } from "./child-process-safe-CbQnyh7D.js";
|
|
4
4
|
import { n as glimmervoidHomeDir, t as decideConfigPath } from "./config-path-core-DFt-TemS.js";
|
|
5
|
-
import { r as BrowserConfig } from "./config-
|
|
5
|
+
import { r as BrowserConfig } from "./config-CuZ16F9W.js";
|
|
6
6
|
import fs, { closeSync, constants, existsSync, fstatSync, lstatSync, mkdirSync, openSync, readFileSync, readdirSync, realpathSync } from "node:fs";
|
|
7
7
|
import path, { dirname, join, posix, resolve, win32 } from "node:path";
|
|
8
8
|
import os from "node:os";
|