autodev-cli 1.4.131 → 1.4.133
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/LICENSE.md +21 -0
- package/media/profile/00b-self-verifiable-work.md +62 -0
- package/media/profile/00c-verifiable-threads.md +78 -0
- package/media/profile/00d-turn-end-retrospective.md +61 -0
- package/media/profile/00e-long-horizon-planning.md +83 -0
- package/out/commands/office.js +4 -0
- package/out/commands/office.js.map +1 -1
- package/out/commands/start.js +1 -1
- package/out/commands/start.js.map +1 -1
- package/out/core/claudeUsage.d.ts +1 -26
- package/out/core/claudeUsage.js +15 -91
- package/out/core/claudeUsage.js.map +1 -1
- package/out/core/modelInfo.d.ts +1 -28
- package/out/core/modelInfo.js +15 -94
- package/out/core/modelInfo.js.map +1 -1
- package/out/core/provider/BaseProvider.d.ts +1 -14
- package/out/core/provider/BaseProvider.js +15 -22
- package/out/core/provider/BaseProvider.js.map +1 -1
- package/out/core/provider/ProviderRegistry.d.ts +1 -12
- package/out/core/provider/ProviderRegistry.js +15 -38
- package/out/core/provider/ProviderRegistry.js.map +1 -1
- package/out/core/provider/contract.d.ts +1 -62
- package/out/core/provider/contract.js +15 -6
- package/out/core/provider/contract.js.map +1 -1
- package/out/core/provider/implementations.d.ts +1 -65
- package/out/core/provider/implementations.js +4 -169
- package/out/core/provider/implementations.js.map +1 -1
- package/out/dispatcher.js +7 -0
- package/out/dispatcher.js.map +1 -1
- package/out/hookEventNormalizer.d.ts +1 -33
- package/out/hookEventNormalizer.js +15 -424
- package/out/hookEventNormalizer.js.map +1 -1
- package/out/profileBuilder.js +32 -0
- package/out/profileBuilder.js.map +1 -1
- package/out/providers/base/BaseProvider.d.ts +14 -0
- package/out/providers/base/BaseProvider.js +25 -0
- package/out/providers/base/BaseProvider.js.map +1 -0
- package/out/providers/base/ProviderEvents.d.ts +12 -0
- package/out/providers/base/ProviderEvents.js +81 -0
- package/out/providers/base/ProviderEvents.js.map +1 -0
- package/out/providers/base/ProviderManager.d.ts +25 -0
- package/out/providers/base/ProviderManager.js +22 -0
- package/out/providers/base/ProviderManager.js.map +1 -0
- package/out/providers/base/ProviderModels.d.ts +28 -0
- package/out/providers/base/ProviderModels.js +89 -0
- package/out/providers/base/ProviderModels.js.map +1 -0
- package/out/providers/base/ProviderNormalizer.d.ts +42 -0
- package/out/providers/base/ProviderNormalizer.js +439 -0
- package/out/providers/base/ProviderNormalizer.js.map +1 -0
- package/out/providers/base/ProviderRegistry.d.ts +12 -0
- package/out/providers/base/ProviderRegistry.js +42 -0
- package/out/providers/base/ProviderRegistry.js.map +1 -0
- package/out/providers/base/ProviderSessions.d.ts +15 -0
- package/out/providers/base/ProviderSessions.js +15 -0
- package/out/providers/base/ProviderSessions.js.map +1 -0
- package/out/providers/base/ProviderState.d.ts +9 -0
- package/out/providers/base/ProviderState.js +16 -0
- package/out/providers/base/ProviderState.js.map +1 -0
- package/out/providers/base/ProviderUsage.d.ts +12 -0
- package/out/providers/base/ProviderUsage.js +33 -0
- package/out/providers/base/ProviderUsage.js.map +1 -0
- package/out/providers/base/contract.d.ts +62 -0
- package/out/providers/base/contract.js +9 -0
- package/out/providers/base/contract.js.map +1 -0
- package/out/providers/base/factories.d.ts +64 -0
- package/out/providers/base/factories.js +265 -0
- package/out/providers/base/factories.js.map +1 -0
- package/out/providers/base/implementations.d.ts +5 -0
- package/out/providers/base/implementations.js +23 -0
- package/out/providers/base/implementations.js.map +1 -0
- package/out/providers/base/index.d.ts +13 -0
- package/out/providers/base/index.js +29 -0
- package/out/providers/base/index.js.map +1 -0
- package/out/providers/base/types.d.ts +30 -0
- package/out/providers/base/types.js +8 -0
- package/out/providers/base/types.js.map +1 -0
- package/out/providers/claude/ProviderEvents.d.ts +5 -0
- package/out/providers/claude/ProviderEvents.js +18 -0
- package/out/providers/claude/ProviderEvents.js.map +1 -0
- package/out/providers/claude/ProviderManager.d.ts +39 -0
- package/out/providers/claude/ProviderManager.js +50 -0
- package/out/providers/claude/ProviderManager.js.map +1 -0
- package/out/providers/claude/ProviderModels.d.ts +8 -0
- package/out/providers/claude/ProviderModels.js +23 -0
- package/out/providers/claude/ProviderModels.js.map +1 -0
- package/out/providers/claude/ProviderNormalizer.d.ts +5 -0
- package/out/providers/claude/ProviderNormalizer.js +10 -0
- package/out/providers/claude/ProviderNormalizer.js.map +1 -0
- package/out/providers/claude/ProviderSessions.d.ts +14 -0
- package/out/providers/claude/ProviderSessions.js +35 -0
- package/out/providers/claude/ProviderSessions.js.map +1 -0
- package/out/providers/claude/ProviderState.d.ts +13 -0
- package/out/providers/claude/ProviderState.js +19 -0
- package/out/providers/claude/ProviderState.js.map +1 -0
- package/out/providers/claude/ProviderUsage.d.ts +13 -0
- package/out/providers/claude/ProviderUsage.js +59 -0
- package/out/providers/claude/ProviderUsage.js.map +1 -0
- package/out/providers/claude/cli.d.ts +95 -0
- package/out/providers/claude/cli.js +674 -0
- package/out/providers/claude/cli.js.map +1 -0
- package/out/providers/claude/index.d.ts +9 -0
- package/out/providers/claude/index.js +26 -0
- package/out/providers/claude/index.js.map +1 -0
- package/out/providers/claude/tui.d.ts +38 -0
- package/out/providers/claude/tui.js +346 -0
- package/out/providers/claude/tui.js.map +1 -0
- package/out/providers/claudeCliProvider.d.ts +1 -95
- package/out/providers/claudeCliProvider.js +4 -660
- package/out/providers/claudeCliProvider.js.map +1 -1
- package/out/providers/claudeTuiProvider.d.ts +1 -38
- package/out/providers/claudeTuiProvider.js +4 -332
- package/out/providers/claudeTuiProvider.js.map +1 -1
- package/out/providers/copilot/ProviderEvents.d.ts +6 -0
- package/out/providers/copilot/ProviderEvents.js +18 -0
- package/out/providers/copilot/ProviderEvents.js.map +1 -0
- package/out/providers/copilot/ProviderManager.d.ts +39 -0
- package/out/providers/copilot/ProviderManager.js +98 -0
- package/out/providers/copilot/ProviderManager.js.map +1 -0
- package/out/providers/copilot/ProviderModels.d.ts +7 -0
- package/out/providers/copilot/ProviderModels.js +18 -0
- package/out/providers/copilot/ProviderModels.js.map +1 -0
- package/out/providers/copilot/ProviderNormalizer.d.ts +5 -0
- package/out/providers/copilot/ProviderNormalizer.js +10 -0
- package/out/providers/copilot/ProviderNormalizer.js.map +1 -0
- package/out/providers/copilot/ProviderSessions.d.ts +12 -0
- package/out/providers/copilot/ProviderSessions.js +39 -0
- package/out/providers/copilot/ProviderSessions.js.map +1 -0
- package/out/providers/copilot/ProviderState.d.ts +11 -0
- package/out/providers/copilot/ProviderState.js +17 -0
- package/out/providers/copilot/ProviderState.js.map +1 -0
- package/out/providers/copilot/ProviderUsage.d.ts +12 -0
- package/out/providers/copilot/ProviderUsage.js +41 -0
- package/out/providers/copilot/ProviderUsage.js.map +1 -0
- package/out/providers/copilot/cli.d.ts +16 -0
- package/out/providers/copilot/cli.js +52 -0
- package/out/providers/copilot/cli.js.map +1 -0
- package/out/providers/copilot/index.d.ts +10 -0
- package/out/providers/copilot/index.js +27 -0
- package/out/providers/copilot/index.js.map +1 -0
- package/out/providers/copilot/sdk.d.ts +22 -0
- package/out/providers/copilot/sdk.js +489 -0
- package/out/providers/copilot/sdk.js.map +1 -0
- package/out/providers/copilot/sessions.d.ts +25 -0
- package/out/providers/copilot/sessions.js +214 -0
- package/out/providers/copilot/sessions.js.map +1 -0
- package/out/providers/copilotCliProvider.d.ts +1 -16
- package/out/providers/copilotCliProvider.js +15 -49
- package/out/providers/copilotCliProvider.js.map +1 -1
- package/out/providers/copilotSdkProvider.d.ts +1 -22
- package/out/providers/copilotSdkProvider.js +4 -475
- package/out/providers/copilotSdkProvider.js.map +1 -1
- package/out/providers/copilotSessions.d.ts +1 -25
- package/out/providers/copilotSessions.js +4 -200
- package/out/providers/copilotSessions.js.map +1 -1
- package/out/providers/dummy/ProviderEvents.d.ts +5 -0
- package/out/providers/dummy/ProviderEvents.js +16 -0
- package/out/providers/dummy/ProviderEvents.js.map +1 -0
- package/out/providers/dummy/ProviderManager.d.ts +31 -0
- package/out/providers/dummy/ProviderManager.js +115 -0
- package/out/providers/dummy/ProviderManager.js.map +1 -0
- package/out/providers/dummy/ProviderModels.d.ts +7 -0
- package/out/providers/dummy/ProviderModels.js +15 -0
- package/out/providers/dummy/ProviderModels.js.map +1 -0
- package/out/providers/dummy/ProviderNormalizer.d.ts +4 -0
- package/out/providers/dummy/ProviderNormalizer.js +9 -0
- package/out/providers/dummy/ProviderNormalizer.js.map +1 -0
- package/out/providers/dummy/ProviderSessions.d.ts +12 -0
- package/out/providers/dummy/ProviderSessions.js +105 -0
- package/out/providers/dummy/ProviderSessions.js.map +1 -0
- package/out/providers/dummy/ProviderState.d.ts +12 -0
- package/out/providers/dummy/ProviderState.js +23 -0
- package/out/providers/dummy/ProviderState.js.map +1 -0
- package/out/providers/dummy/ProviderUsage.d.ts +9 -0
- package/out/providers/dummy/ProviderUsage.js +27 -0
- package/out/providers/dummy/ProviderUsage.js.map +1 -0
- package/out/providers/dummy/commands.d.ts +9 -0
- package/out/providers/dummy/commands.js +48 -0
- package/out/providers/dummy/commands.js.map +1 -0
- package/out/providers/dummy/index.d.ts +10 -0
- package/out/providers/dummy/index.js +27 -0
- package/out/providers/dummy/index.js.map +1 -0
- package/out/providers/dummy/office.d.ts +23 -0
- package/out/providers/dummy/office.js +66 -0
- package/out/providers/dummy/office.js.map +1 -0
- package/out/providers/dummy/traces.d.ts +8 -0
- package/out/providers/dummy/traces.js +174 -0
- package/out/providers/dummy/traces.js.map +1 -0
- package/out/providers/grok/ProviderEvents.d.ts +6 -0
- package/out/providers/grok/ProviderEvents.js +17 -0
- package/out/providers/grok/ProviderEvents.js.map +1 -0
- package/out/providers/grok/ProviderManager.d.ts +42 -0
- package/out/providers/grok/ProviderManager.js +48 -0
- package/out/providers/grok/ProviderManager.js.map +1 -0
- package/out/providers/grok/ProviderModels.d.ts +7 -0
- package/out/providers/grok/ProviderModels.js +16 -0
- package/out/providers/grok/ProviderModels.js.map +1 -0
- package/out/providers/grok/ProviderNormalizer.d.ts +5 -0
- package/out/providers/grok/ProviderNormalizer.js +10 -0
- package/out/providers/grok/ProviderNormalizer.js.map +1 -0
- package/out/providers/grok/ProviderSessions.d.ts +12 -0
- package/out/providers/grok/ProviderSessions.js +27 -0
- package/out/providers/grok/ProviderSessions.js.map +1 -0
- package/out/providers/grok/ProviderState.d.ts +10 -0
- package/out/providers/grok/ProviderState.js +15 -0
- package/out/providers/grok/ProviderState.js.map +1 -0
- package/out/providers/grok/ProviderUsage.d.ts +7 -0
- package/out/providers/grok/ProviderUsage.js +20 -0
- package/out/providers/grok/ProviderUsage.js.map +1 -0
- package/out/providers/grok/index.d.ts +9 -0
- package/out/providers/grok/index.js +26 -0
- package/out/providers/grok/index.js.map +1 -0
- package/out/providers/grok/sessions.d.ts +27 -0
- package/out/providers/grok/sessions.js +246 -0
- package/out/providers/grok/sessions.js.map +1 -0
- package/out/providers/grok/tui.d.ts +38 -0
- package/out/providers/grok/tui.js +1630 -0
- package/out/providers/grok/tui.js.map +1 -0
- package/out/providers/grokSessions.d.ts +1 -27
- package/out/providers/grokSessions.js +4 -232
- package/out/providers/grokSessions.js.map +1 -1
- package/out/providers/grokTuiProvider.d.ts +1 -38
- package/out/providers/grokTuiProvider.js +4 -1616
- package/out/providers/grokTuiProvider.js.map +1 -1
- package/out/providers/opencode/ProviderEvents.d.ts +6 -0
- package/out/providers/opencode/ProviderEvents.js +18 -0
- package/out/providers/opencode/ProviderEvents.js.map +1 -0
- package/out/providers/opencode/ProviderManager.d.ts +39 -0
- package/out/providers/opencode/ProviderManager.js +90 -0
- package/out/providers/opencode/ProviderManager.js.map +1 -0
- package/out/providers/opencode/ProviderModels.d.ts +7 -0
- package/out/providers/opencode/ProviderModels.js +17 -0
- package/out/providers/opencode/ProviderModels.js.map +1 -0
- package/out/providers/opencode/ProviderNormalizer.d.ts +5 -0
- package/out/providers/opencode/ProviderNormalizer.js +10 -0
- package/out/providers/opencode/ProviderNormalizer.js.map +1 -0
- package/out/providers/opencode/ProviderSessions.d.ts +11 -0
- package/out/providers/opencode/ProviderSessions.js +28 -0
- package/out/providers/opencode/ProviderSessions.js.map +1 -0
- package/out/providers/opencode/ProviderState.d.ts +14 -0
- package/out/providers/opencode/ProviderState.js +20 -0
- package/out/providers/opencode/ProviderState.js.map +1 -0
- package/out/providers/opencode/ProviderUsage.d.ts +7 -0
- package/out/providers/opencode/ProviderUsage.js +20 -0
- package/out/providers/opencode/ProviderUsage.js.map +1 -0
- package/out/providers/opencode/cli.d.ts +29 -0
- package/out/providers/opencode/cli.js +199 -0
- package/out/providers/opencode/cli.js.map +1 -0
- package/out/providers/opencode/index.d.ts +9 -0
- package/out/providers/opencode/index.js +26 -0
- package/out/providers/opencode/index.js.map +1 -0
- package/out/providers/opencode/sdk.d.ts +32 -0
- package/out/providers/opencode/sdk.js +610 -0
- package/out/providers/opencode/sdk.js.map +1 -0
- package/out/providers/opencodeCliProvider.d.ts +1 -29
- package/out/providers/opencodeCliProvider.js +15 -196
- package/out/providers/opencodeCliProvider.js.map +1 -1
- package/out/providers/opencodeSdkProvider.d.ts +1 -32
- package/out/providers/opencodeSdkProvider.js +4 -596
- package/out/providers/opencodeSdkProvider.js.map +1 -1
- package/out/providers.d.ts +1 -1
- package/out/providers.js +5 -0
- package/out/providers.js.map +1 -1
- package/out/sdk/index.js +5 -0
- package/out/sdk/index.js.map +1 -1
- package/package.json +2 -2
|
@@ -0,0 +1,214 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// ---------------------------------------------------------------------------
|
|
3
|
+
// copilotSessions — list + read GitHub Copilot CLI sessions.
|
|
4
|
+
//
|
|
5
|
+
// Copilot keeps one directory per session at
|
|
6
|
+
// ~/.copilot/session-state/<uuid>/
|
|
7
|
+
// workspace.yaml → id, cwd, name, created_at/updated_at (flat scalars)
|
|
8
|
+
// events.jsonl → one JSON event per line (session.start, user.message,
|
|
9
|
+
// assistant.message, tool.execution_start/_complete, …)
|
|
10
|
+
// ~/.copilot/session-store.db (SQLite index — NOT needed for discovery)
|
|
11
|
+
//
|
|
12
|
+
// Pure filesystem — no SQLite, no yaml dependency (a tiny line scan parses the
|
|
13
|
+
// handful of top-level `key: value` scalars we need). Read-only; every store
|
|
14
|
+
// miss degrades to [] and no path ever throws.
|
|
15
|
+
// ---------------------------------------------------------------------------
|
|
16
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
17
|
+
if (k2 === undefined) k2 = k;
|
|
18
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
19
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
20
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
21
|
+
}
|
|
22
|
+
Object.defineProperty(o, k2, desc);
|
|
23
|
+
}) : (function(o, m, k, k2) {
|
|
24
|
+
if (k2 === undefined) k2 = k;
|
|
25
|
+
o[k2] = m[k];
|
|
26
|
+
}));
|
|
27
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
28
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
29
|
+
}) : function(o, v) {
|
|
30
|
+
o["default"] = v;
|
|
31
|
+
});
|
|
32
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
33
|
+
var ownKeys = function(o) {
|
|
34
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
35
|
+
var ar = [];
|
|
36
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
37
|
+
return ar;
|
|
38
|
+
};
|
|
39
|
+
return ownKeys(o);
|
|
40
|
+
};
|
|
41
|
+
return function (mod) {
|
|
42
|
+
if (mod && mod.__esModule) return mod;
|
|
43
|
+
var result = {};
|
|
44
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
45
|
+
__setModuleDefault(result, mod);
|
|
46
|
+
return result;
|
|
47
|
+
};
|
|
48
|
+
})();
|
|
49
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
50
|
+
exports.listAllCopilotSessions = listAllCopilotSessions;
|
|
51
|
+
exports.listCopilotSessions = listCopilotSessions;
|
|
52
|
+
exports.readCopilotTranscript = readCopilotTranscript;
|
|
53
|
+
const fs = __importStar(require("fs"));
|
|
54
|
+
const path = __importStar(require("path"));
|
|
55
|
+
const layout_1 = require("../../agentBackup/layout");
|
|
56
|
+
/** Normalise a path for comparison (absolute, no trailing slash). */
|
|
57
|
+
function norm(p) {
|
|
58
|
+
try {
|
|
59
|
+
return path.resolve(p).replace(/\/+$/, '');
|
|
60
|
+
}
|
|
61
|
+
catch {
|
|
62
|
+
return p;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
/** Scan the flat top-level `key: value` scalars of a workspace.yaml. Only the
|
|
66
|
+
* first occurrence of each key is kept; quotes are stripped. Good enough for
|
|
67
|
+
* copilot's file (a flat map of scalars) without pulling in a YAML parser. */
|
|
68
|
+
function readWorkspaceYaml(file) {
|
|
69
|
+
const out = {};
|
|
70
|
+
let text = '';
|
|
71
|
+
try {
|
|
72
|
+
text = fs.readFileSync(file, 'utf8');
|
|
73
|
+
}
|
|
74
|
+
catch {
|
|
75
|
+
return out;
|
|
76
|
+
}
|
|
77
|
+
for (const line of text.split('\n')) {
|
|
78
|
+
const m = /^([A-Za-z0-9_]+):\s*(.*)$/.exec(line);
|
|
79
|
+
if (!m) {
|
|
80
|
+
continue;
|
|
81
|
+
}
|
|
82
|
+
const key = m[1];
|
|
83
|
+
if (key in out) {
|
|
84
|
+
continue;
|
|
85
|
+
}
|
|
86
|
+
let val = m[2].trim();
|
|
87
|
+
if ((val.startsWith('"') && val.endsWith('"')) || (val.startsWith("'") && val.endsWith("'"))) {
|
|
88
|
+
val = val.slice(1, -1);
|
|
89
|
+
}
|
|
90
|
+
out[key] = val;
|
|
91
|
+
}
|
|
92
|
+
return out;
|
|
93
|
+
}
|
|
94
|
+
/** All Copilot sessions on this machine (newest first). `updated` is epoch ms
|
|
95
|
+
* from events.jsonl mtime (falls back to workspace.yaml / the folder mtime). */
|
|
96
|
+
function listAllCopilotSessions() {
|
|
97
|
+
const stateDir = (0, layout_1.copilotSessionStateDir)();
|
|
98
|
+
let uuids = [];
|
|
99
|
+
try {
|
|
100
|
+
uuids = fs.readdirSync(stateDir);
|
|
101
|
+
}
|
|
102
|
+
catch {
|
|
103
|
+
return [];
|
|
104
|
+
}
|
|
105
|
+
const out = [];
|
|
106
|
+
for (const uuid of uuids) {
|
|
107
|
+
const dir = path.join(stateDir, uuid);
|
|
108
|
+
try {
|
|
109
|
+
if (!fs.statSync(dir).isDirectory()) {
|
|
110
|
+
continue;
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
catch {
|
|
114
|
+
continue;
|
|
115
|
+
}
|
|
116
|
+
const meta = readWorkspaceYaml(path.join(dir, 'workspace.yaml'));
|
|
117
|
+
const cwd = meta['cwd'] || meta['directory'] || '';
|
|
118
|
+
let updated = 0;
|
|
119
|
+
for (const f of ['events.jsonl', 'workspace.yaml']) {
|
|
120
|
+
try {
|
|
121
|
+
updated = Math.max(updated, fs.statSync(path.join(dir, f)).mtimeMs);
|
|
122
|
+
}
|
|
123
|
+
catch { /* skip */ }
|
|
124
|
+
}
|
|
125
|
+
if (!updated) {
|
|
126
|
+
try {
|
|
127
|
+
updated = fs.statSync(dir).mtimeMs;
|
|
128
|
+
}
|
|
129
|
+
catch { /* keep 0 */ }
|
|
130
|
+
}
|
|
131
|
+
out.push({ id: uuid, name: (meta['name'] || '').trim() || '(untitled)', cwd, updated });
|
|
132
|
+
}
|
|
133
|
+
return out.sort((a, b) => b.updated - a.updated);
|
|
134
|
+
}
|
|
135
|
+
/** Copilot sessions whose cwd matches `root` (for per-workspace collectSessions). */
|
|
136
|
+
function listCopilotSessions(root) {
|
|
137
|
+
const target = norm(root);
|
|
138
|
+
return listAllCopilotSessions()
|
|
139
|
+
.filter(s => s.cwd && norm(s.cwd) === target)
|
|
140
|
+
.map(s => ({ id: s.id, title: s.name, updated: s.updated }));
|
|
141
|
+
}
|
|
142
|
+
function ellipsis(s, max) {
|
|
143
|
+
return s.length > max ? s.slice(0, max) + '…' : s;
|
|
144
|
+
}
|
|
145
|
+
/** Parse a copilot session's events.jsonl into a normalized message array.
|
|
146
|
+
* Renders user/assistant prose, tool calls (assistant.message.toolRequests +
|
|
147
|
+
* tool.execution_complete results) and the system prompt (heavily truncated).
|
|
148
|
+
* Returns at most `limit` messages (the tail). */
|
|
149
|
+
function readCopilotTranscript(id, limit = 400) {
|
|
150
|
+
const file = path.join((0, layout_1.copilotSessionStateDir)(), id, 'events.jsonl');
|
|
151
|
+
let text = '';
|
|
152
|
+
try {
|
|
153
|
+
text = fs.readFileSync(file, 'utf8');
|
|
154
|
+
}
|
|
155
|
+
catch {
|
|
156
|
+
return [];
|
|
157
|
+
}
|
|
158
|
+
const msgs = [];
|
|
159
|
+
for (const line of text.split('\n')) {
|
|
160
|
+
const s = line.trim();
|
|
161
|
+
if (!s) {
|
|
162
|
+
continue;
|
|
163
|
+
}
|
|
164
|
+
let o;
|
|
165
|
+
try {
|
|
166
|
+
o = JSON.parse(s);
|
|
167
|
+
}
|
|
168
|
+
catch {
|
|
169
|
+
continue;
|
|
170
|
+
}
|
|
171
|
+
const type = String(o['type'] ?? '');
|
|
172
|
+
const data = (o['data'] ?? {});
|
|
173
|
+
const ts = o['timestamp'] ? Date.parse(String(o['timestamp'])) : undefined;
|
|
174
|
+
if (type === 'user.message') {
|
|
175
|
+
const c = String(data['content'] ?? '').trim();
|
|
176
|
+
if (c) {
|
|
177
|
+
msgs.push({ role: 'user', text: c, ts });
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
else if (type === 'assistant.message') {
|
|
181
|
+
const c = String(data['content'] ?? '').trim();
|
|
182
|
+
if (c) {
|
|
183
|
+
msgs.push({ role: 'assistant', text: c, ts });
|
|
184
|
+
}
|
|
185
|
+
const reqs = data['toolRequests'];
|
|
186
|
+
if (Array.isArray(reqs)) {
|
|
187
|
+
for (const r of reqs) {
|
|
188
|
+
const name = String(r['name'] ?? '');
|
|
189
|
+
if (!name) {
|
|
190
|
+
continue;
|
|
191
|
+
}
|
|
192
|
+
const args = r['arguments'] != null ? ellipsis(JSON.stringify(r['arguments']), 200) : '';
|
|
193
|
+
msgs.push({ role: 'tool', text: `🔧 ${name}(${args})`, ts });
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
else if (type === 'tool.execution_complete') {
|
|
198
|
+
const result = (data['result'] ?? {});
|
|
199
|
+
const content = result['content'] ?? result['detailedContent'];
|
|
200
|
+
const txt = typeof content === 'string' ? content : (content == null ? '' : JSON.stringify(content));
|
|
201
|
+
if (txt.trim()) {
|
|
202
|
+
msgs.push({ role: 'tool', text: `↳ ${ellipsis(txt.trim(), 400)}`, ts });
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
else if (type === 'system.message') {
|
|
206
|
+
const c = String(data['content'] ?? '').trim();
|
|
207
|
+
if (c) {
|
|
208
|
+
msgs.push({ role: 'system', text: ellipsis(c, 200), ts });
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
return msgs.slice(-limit);
|
|
213
|
+
}
|
|
214
|
+
//# sourceMappingURL=sessions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sessions.js","sourceRoot":"","sources":["../../../src/providers/copilot/sessions.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,16 +1 @@
|
|
|
1
|
-
|
|
2
|
-
* Build the shell command string for the copilot-cli provider.
|
|
3
|
-
* Accepts a pre-combined file written by the dispatcher and passes it as a
|
|
4
|
-
* single `@file` reference so copilot reads it directly.
|
|
5
|
-
*
|
|
6
|
-
* Resume behaviour:
|
|
7
|
-
* - sessionId provided → --resume <id>
|
|
8
|
-
* - neither → fresh session
|
|
9
|
-
*/
|
|
10
|
-
export declare function buildCopilotCliCommand(combinedFile: string, sessionId?: string, model?: string, sessionName?: string, mcpConfigFile?: string): string;
|
|
11
|
-
/**
|
|
12
|
-
* Run a tiny probe prompt against Copilot CLI (via Node exec, not the terminal)
|
|
13
|
-
* and extract the session ID from the JSON output.
|
|
14
|
-
* Used to obtain a real session ID before sending the main prompt.
|
|
15
|
-
*/
|
|
16
|
-
export declare function probeCopilotSession(cwd: string, log: (msg: string) => void): Promise<string | undefined>;
|
|
1
|
+
export * from './copilot/cli';
|
|
@@ -1,52 +1,18 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
2
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports
|
|
4
|
-
exports.probeCopilotSession = probeCopilotSession;
|
|
5
|
-
const child_process_1 = require("child_process");
|
|
6
|
-
// ---------------------------------------------------------------------------
|
|
7
|
-
// Copilot CLI command builder
|
|
8
|
-
// ---------------------------------------------------------------------------
|
|
9
|
-
/**
|
|
10
|
-
* Build the shell command string for the copilot-cli provider.
|
|
11
|
-
* Accepts a pre-combined file written by the dispatcher and passes it as a
|
|
12
|
-
* single `@file` reference so copilot reads it directly.
|
|
13
|
-
*
|
|
14
|
-
* Resume behaviour:
|
|
15
|
-
* - sessionId provided → --resume <id>
|
|
16
|
-
* - neither → fresh session
|
|
17
|
-
*/
|
|
18
|
-
function buildCopilotCliCommand(combinedFile, sessionId, model, sessionName, mcpConfigFile) {
|
|
19
|
-
const resumeFlag = sessionId ? ` --resume=${sessionId}` : '';
|
|
20
|
-
const modelFlag = model ? ` --model=${model}` : '';
|
|
21
|
-
// `--name` only applies to a NEW session (resume keeps the prior name).
|
|
22
|
-
const nameFlag = (!sessionId && sessionName) ? ` --name ${JSON.stringify(sessionName)}` : '';
|
|
23
|
-
// Per-workspace MCP config. Copilot's own config file is GLOBAL, so on a box
|
|
24
|
-
// running several agents each sync clobbered the last and every copilot agent
|
|
25
|
-
// wound up driving whichever workspace synced most recently — i.e. operating
|
|
26
|
-
// the WRONG office character, since the pixel-office entry carries that agent's
|
|
27
|
-
// bearer token. `--additional-mcp-config @<file>` is per session, so pointing it
|
|
28
|
-
// at a file inside the workspace keeps agents from fighting over one config.
|
|
29
|
-
// (See copilotMcpConfigPath(); the `@` prefix means "read this path".)
|
|
30
|
-
const mcpFlag = mcpConfigFile ? ` --additional-mcp-config ${JSON.stringify(`@${mcpConfigFile}`)}` : '';
|
|
31
|
-
const flags = `--autopilot --yolo --no-ask-user --allow-all --no-auto-update --allow-all-paths --allow-all-urls --allow-all-tools --enable-all-github-mcp-tools --no-color --max-autopilot-continues 2000${resumeFlag}${modelFlag}${nameFlag}${mcpFlag}`;
|
|
32
|
-
const fileRef = JSON.stringify(`@${combinedFile}`);
|
|
33
|
-
return `copilot ${flags} -p ${fileRef}`;
|
|
34
|
-
}
|
|
35
|
-
/**
|
|
36
|
-
* Run a tiny probe prompt against Copilot CLI (via Node exec, not the terminal)
|
|
37
|
-
* and extract the session ID from the JSON output.
|
|
38
|
-
* Used to obtain a real session ID before sending the main prompt.
|
|
39
|
-
*/
|
|
40
|
-
function probeCopilotSession(cwd, log) {
|
|
41
|
-
return new Promise(resolve => {
|
|
42
|
-
const cmd = `copilot --yolo --allow-all --allow-all-paths --allow-all-urls --allow-all-tools --output-format json -p "session-init"`;
|
|
43
|
-
log(`Copilot CLI probe: ${cmd}`);
|
|
44
|
-
(0, child_process_1.exec)(cmd, { cwd, encoding: 'utf8', timeout: 30000 }, (_err, stdout) => {
|
|
45
|
-
const match = (stdout ?? '').match(/"sessionId"\s*:\s*"([^"]+)"/);
|
|
46
|
-
const id = match?.[1];
|
|
47
|
-
log(`Copilot CLI probe result: ${id ?? 'no session ID found'}`);
|
|
48
|
-
resolve(id);
|
|
49
|
-
});
|
|
50
|
-
});
|
|
51
|
-
}
|
|
17
|
+
__exportStar(require("./copilot/cli"), exports);
|
|
52
18
|
//# sourceMappingURL=copilotCliProvider.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"copilotCliProvider.js","sourceRoot":"","sources":["../../src/providers/copilotCliProvider.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"copilotCliProvider.js","sourceRoot":"","sources":["../../src/providers/copilotCliProvider.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA8B"}
|
|
@@ -1,22 +1 @@
|
|
|
1
|
-
export
|
|
2
|
-
export declare function clearCopilotAuthCache(): void;
|
|
3
|
-
/** Expose the npm root path so callers can run `npm rebuild` there. */
|
|
4
|
-
export declare function copilotNpmRoot(): string;
|
|
5
|
-
/** Clear the cached SDK dynamic import so the next call to _getSdk() re-imports it. */
|
|
6
|
-
export declare function clearCopilotSdkCache(): void;
|
|
7
|
-
export declare function isCopilotSdkBusy(root: string): boolean;
|
|
8
|
-
export declare function getLatestCopilotSdkSessionId(root: string): string | undefined;
|
|
9
|
-
/**
|
|
10
|
-
* Steer the live Copilot SDK session MID-TURN. Unlike copilot-cli (a one-shot
|
|
11
|
-
* subprocess), the SDK holds a persistent LocalSession whose send() accepts
|
|
12
|
-
* mode:'immediate' — the message is injected into the CURRENTLY-RUNNING turn
|
|
13
|
-
* (the model's next call includes it) instead of the default 'enqueue' which
|
|
14
|
-
* waits for the next turn. Returns true only if there's a live/busy session to
|
|
15
|
-
* inject into; false otherwise, so the caller falls back to the durable TODO
|
|
16
|
-
* queue (at-least-once delivery preserved).
|
|
17
|
-
*/
|
|
18
|
-
export declare function steerCopilotSdk(root: string, text: string, log: (msg: string) => void): Promise<boolean>;
|
|
19
|
-
export declare function readCopilotSdkOutputSince(stdoutFile: string, fromByte: number): string;
|
|
20
|
-
export declare function sendCopilotSdkPrompt(root: string, promptFilePath: string, _resolvedSessionId: string | undefined, stdoutFile: string, exitFile: string, log: (msg: string) => void, showOutput?: () => void): void;
|
|
21
|
-
export declare function closeCopilotSdkSession(root: string, log: (msg: string) => void): void;
|
|
22
|
-
export declare function closeAllCopilotSdkSessions(): void;
|
|
1
|
+
export * from './copilot/sdk';
|