@serviceme/devtools-core 2.0.3 → 2.0.5
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/dist/{device-Bn2NzajD.mjs → device-BVcUUQ9t.mjs} +2 -2
- package/dist/{device-Bn2NzajD.mjs.map → device-BVcUUQ9t.mjs.map} +1 -1
- package/dist/device-DCo0rgUt.mjs +793 -0
- package/dist/device-DCo0rgUt.mjs.map +1 -0
- package/dist/device-uFAQxlNt.js +874 -0
- package/dist/device-uFAQxlNt.js.map +1 -0
- package/dist/device-yWpY_Zds.js +874 -0
- package/dist/device-yWpY_Zds.js.map +1 -0
- package/dist/device.js +1 -1
- package/dist/device.mjs +1 -1
- package/dist/index.d.mts +12 -81
- package/dist/index.d.ts +12 -81
- package/dist/index.js +72 -138
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +74 -135
- package/dist/index.mjs.map +1 -1
- package/dist/skill-linker.js +1 -1
- package/dist/skill-linker.mjs +1 -1
- package/dist/{submit-Cg7wSa3x.mjs → submit-6zQPPrOJ.mjs} +2 -2
- package/dist/{submit-Cg7wSa3x.mjs.map → submit-6zQPPrOJ.mjs.map} +1 -1
- package/dist/submit-BTdbGEAd.mjs +84 -0
- package/dist/submit-BTdbGEAd.mjs.map +1 -0
- package/dist/submit-CW9schoc.js +98 -0
- package/dist/submit-CW9schoc.js.map +1 -0
- package/dist/submit-Dy0KTHzm.js +98 -0
- package/dist/submit-Dy0KTHzm.js.map +1 -0
- package/dist/submit.js +1 -1
- package/dist/submit.mjs +1 -1
- package/dist/toolbox-BV7vLGXZ.js +614 -0
- package/dist/toolbox-BV7vLGXZ.js.map +1 -0
- package/dist/{toolbox-CbfxpNg-.mjs → toolbox-BxgnUyDU.mjs} +2 -2
- package/dist/{toolbox-CbfxpNg-.mjs.map → toolbox-BxgnUyDU.mjs.map} +1 -1
- package/dist/toolbox-GSWMRdts.js +614 -0
- package/dist/toolbox-GSWMRdts.js.map +1 -0
- package/dist/toolbox-UG4dA2TI.mjs +540 -0
- package/dist/toolbox-UG4dA2TI.mjs.map +1 -0
- package/dist/toolbox.js +1 -1
- package/dist/toolbox.mjs +1 -1
- package/dist/userHome-B97jBm5O.mjs +196 -0
- package/dist/userHome-B97jBm5O.mjs.map +1 -0
- package/dist/userHome-Baz205B7.js +498 -0
- package/dist/userHome-Baz205B7.js.map +1 -0
- package/dist/userHome-CLlsXCvW.js +518 -0
- package/dist/userHome-CLlsXCvW.js.map +1 -0
- package/dist/{userHome-CcnAQPG1.mjs → userHome-DOMLiHy7.mjs} +2 -4
- package/dist/userHome-DOMLiHy7.mjs.map +1 -0
- package/package.json +2 -2
- package/dist/userHome-CcnAQPG1.mjs.map +0 -1
package/dist/index.mjs
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { a as isGitHubLocalEmail, c as KeychainUnavailableError, d as AuthStateManager, f as createConsoleLogger, i as buildGitHubLocalEmail, l as AuthCore, m as AccessControl, n as MicrosoftProviderNotHostedError, o as resolvePrimaryEmail, p as noopLogger, r as GitHubAuthProvider, s as InMemoryKeychainAuthTokenStore, t as MicrosoftAuthProvider, u as ProviderRegistry } from "./auth-Bzss8zOv.mjs";
|
|
2
|
-
import { A as
|
|
3
|
-
import { a as DeviceReenrollRequiresAuthError, c as deriveInstallationId, d as DeviceAuthHeaders, f as buildSignedHeaders, i as DEVICE_JSON_SCHEMA_VERSION, l as fingerprintSource, n as FsIdentityFileBackend, o as DeviceSecretVersionMismatchError, p as createDeviceRequestSignature, r as IdentityStore, s as Enroller, t as DeviceCore, u as randomInstallationId } from "./device-
|
|
2
|
+
import { A as getHomeDir, B as getScheduledTasksConfigPath, C as WORKSPACE_CONTENT_STATE_FILENAME, D as getCredentialsConfigPath, E as getCacheDir, F as getProfilesJsonPath, G as getServicemeHome, H as getSchedulerLockPath, I as getRepoCacheDir, J as getWorkspacesDir, K as getSkillDraftsDir, L as getRepoDir, M as getKnownWorkspacesPath, N as getMachineIdPath, O as getDeviceJsonPath, P as getMigrationFailuresPath, R as getReposConfigPath, S as WORKSPACES_SUBDIR, T as getAgentDraftsDir, U as getSchedulerLogPath, V as getScheduledTasksLogPath, W as getSchedulerPidPath, X as setUserHomeOverrides, Y as resetUserHomeOverrides, _ as SCHEDULER_PID_FILENAME, a as DRAFTS_SUBDIR, b as SKILL_DRAFTS_SUBDIR, c as MIGRATION_FAILURES_FILENAME, d as REPOS_SUBDIR, f as SAFE_REPO_ID_PATTERN, g as SCHEDULER_LOG_FILENAME, h as SCHEDULER_LOCK_FILENAME, i as DEVICE_JSON_FILENAME, j as getHomePlatform, k as getDraftsDir, l as PROFILES_JSON_FILENAME, m as SCHEDULED_TASKS_LOG_FILENAME, n as CACHE_SUBDIR, o as KNOWN_WORKSPACES_FILENAME, p as SCHEDULED_TASKS_CONFIG_FILENAME, q as getToolboxJsonPath, r as CREDENTIALS_CONFIG_FILENAME, s as MACHINE_ID_FILENAME, t as AGENT_DRAFTS_SUBDIR, u as REPOS_CONFIG_FILENAME, v as SERVICEME_DIR_NAME, w as assertSafeRepoId, x as TOOLBOX_JSON_FILENAME, y as SERVICEME_HOME_ENV, z as getReposDir } from "./userHome-B97jBm5O.mjs";
|
|
3
|
+
import { a as DeviceReenrollRequiresAuthError, c as deriveInstallationId, d as DeviceAuthHeaders, f as buildSignedHeaders, i as DEVICE_JSON_SCHEMA_VERSION, l as fingerprintSource, n as FsIdentityFileBackend, o as DeviceSecretVersionMismatchError, p as createDeviceRequestSignature, r as IdentityStore, s as Enroller, t as DeviceCore, u as randomInstallationId } from "./device-DCo0rgUt.mjs";
|
|
4
4
|
import { n as extractFrontmatter } from "./skill-store-Bym2yinU.mjs";
|
|
5
|
-
import { n as SubmitError, t as SubmitClient } from "./submit-
|
|
6
|
-
import { a as WORKSPACE_TOOLBOX_RELATIVE_PATH, c as mergeWithDefaults, d as sortByUserOrder, f as touchLastUsedAt, i as ToolboxStore, l as reindexOrder, n as ToolboxCore, o as BUILTIN_DEFAULT_TOOLS, r as FsToolboxFileBackend, s as TOOLBOX_JSON_SCHEMA_VERSION, t as DefaultToolImmutableError, u as sortByRecentFirst } from "./toolbox-
|
|
5
|
+
import { n as SubmitError, t as SubmitClient } from "./submit-BTdbGEAd.mjs";
|
|
6
|
+
import { a as WORKSPACE_TOOLBOX_RELATIVE_PATH, c as mergeWithDefaults, d as sortByUserOrder, f as touchLastUsedAt, i as ToolboxStore, l as reindexOrder, n as ToolboxCore, o as BUILTIN_DEFAULT_TOOLS, r as FsToolboxFileBackend, s as TOOLBOX_JSON_SCHEMA_VERSION, t as DefaultToolImmutableError, u as sortByRecentFirst } from "./toolbox-BxgnUyDU.mjs";
|
|
7
7
|
import { createRequire } from "node:module";
|
|
8
8
|
import { COPILOT_ERROR_CODES, DEFAULT_JSON_SORT_OPTIONS, KNOWN_ENVIRONMENT_TOOLS, ServicemeProtocolError, createServicemeError, isScheduledTaskV1, isScheduledTasksConfig, isScheduledTasksConfigV1, migrateV1ToV2 } from "@serviceme/devtools-protocol";
|
|
9
9
|
import * as fs$1 from "node:fs/promises";
|
|
10
|
-
import { access, copyFile, lstat, mkdir,
|
|
10
|
+
import { access, copyFile, lstat, mkdir, readdir, rename, rm } from "node:fs/promises";
|
|
11
11
|
import * as path from "node:path";
|
|
12
12
|
import { dirname, join } from "node:path";
|
|
13
13
|
import { EventEmitter } from "node:events";
|
|
@@ -5072,122 +5072,6 @@ function detectIndent(text) {
|
|
|
5072
5072
|
return 2;
|
|
5073
5073
|
}
|
|
5074
5074
|
//#endregion
|
|
5075
|
-
//#region src/paths/serverProxyGlobal.ts
|
|
5076
|
-
/**
|
|
5077
|
-
* serverProxyGlobal — `~/.serviceme/server-proxy.json` IO (rev.20).
|
|
5078
|
-
*
|
|
5079
|
-
* Persists the r7 BYOM Server Proxy toggle's self-state (`enabled` flag
|
|
5080
|
-
* + last-known server URL) in a cross-tool global config file under
|
|
5081
|
-
* `~/.serviceme/`. Mirrors the convention used by `scheduled-tasks.json`,
|
|
5082
|
-
* `migration-failures.json`, etc.
|
|
5083
|
-
*
|
|
5084
|
-
* Originally lived in `apps/extension/src/services/proxy/globalConfigStore.ts`
|
|
5085
|
-
* (rev.19). Promoted to `@serviceme/devtools-core` in rev.20 so the CLI
|
|
5086
|
-
* and Server can read the same file without booting VS Code.
|
|
5087
|
-
*
|
|
5088
|
-
* Why a dedicated `server-proxy.json` rather than a unified config?
|
|
5089
|
-
* - One file per concern = atomic writes = no shared-schema lock.
|
|
5090
|
-
* `scheduled-tasks.json` already takes this approach.
|
|
5091
|
-
*
|
|
5092
|
-
* Atomic write protocol (rev.20):
|
|
5093
|
-
* 1. Compute patch (read + merge).
|
|
5094
|
-
* 2. Open `<target>.tmp-<randomUUID>` for write in the same dir.
|
|
5095
|
-
* 3. `writeFile(content)` then `fh.sync()` (fsync) — flush to disk.
|
|
5096
|
-
* 4. `fs.rename(tmp, target)` — POSIX atomic on the same filesystem.
|
|
5097
|
-
*
|
|
5098
|
-
* The `crypto.randomUUID()` suffix + `fh.sync()` address two hardening
|
|
5099
|
-
* gaps identified in the rev.19 review:
|
|
5100
|
-
* - Concurrency: tmp filename collisions under same-pid concurrent
|
|
5101
|
-
* writes become effectively impossible.
|
|
5102
|
-
* - Durability: without fsync, a power loss between `writeFile` and
|
|
5103
|
-
* `rename` could surface as a stale target file (POSIX rename is
|
|
5104
|
-
* atomic, but the data behind it might not have hit the platter).
|
|
5105
|
-
*/
|
|
5106
|
-
/**
|
|
5107
|
-
* Reads the global config file. Returns `null` if the file does not
|
|
5108
|
-
* exist (first-run case) — does NOT throw. Throws on parse errors or
|
|
5109
|
-
* permission issues, so callers can surface those to the user.
|
|
5110
|
-
*/
|
|
5111
|
-
async function readServerProxyGlobal() {
|
|
5112
|
-
const filePath = getServerProxyGlobalPath();
|
|
5113
|
-
try {
|
|
5114
|
-
const raw = await fs$1.readFile(filePath, "utf8");
|
|
5115
|
-
const parsed = JSON.parse(raw);
|
|
5116
|
-
if (!isServerProxyGlobalState(parsed)) throw new Error(`Invalid ${SERVER_PROXY_GLOBAL_FILENAME}: expected {enabled: boolean, lastServerUrl?: string, updatedAt: string}, got ${JSON.stringify(parsed).slice(0, 80)}`);
|
|
5117
|
-
return parsed;
|
|
5118
|
-
} catch (err) {
|
|
5119
|
-
if (isENOENT(err)) return null;
|
|
5120
|
-
throw err;
|
|
5121
|
-
}
|
|
5122
|
-
}
|
|
5123
|
-
/**
|
|
5124
|
-
* Merges a partial patch into the existing state and writes back
|
|
5125
|
-
* atomically. Creates `~/.serviceme/` if missing.
|
|
5126
|
-
*
|
|
5127
|
-
* Returns the post-write state. Throws on IO/JSON errors.
|
|
5128
|
-
*/
|
|
5129
|
-
async function writeServerProxyGlobal(patch) {
|
|
5130
|
-
const filePath = getServerProxyGlobalPath();
|
|
5131
|
-
const dirPath = path.dirname(filePath);
|
|
5132
|
-
await fs$1.mkdir(dirPath, { recursive: true });
|
|
5133
|
-
const current = await readServerProxyGlobal() ?? {
|
|
5134
|
-
enabled: false,
|
|
5135
|
-
allowOverride: false,
|
|
5136
|
-
lastServerUrl: void 0,
|
|
5137
|
-
updatedAt: (/* @__PURE__ */ new Date(0)).toISOString()
|
|
5138
|
-
};
|
|
5139
|
-
const next = {
|
|
5140
|
-
enabled: patch.enabled !== void 0 ? patch.enabled : current.enabled,
|
|
5141
|
-
allowOverride: patch.allowOverride !== void 0 ? patch.allowOverride : current.allowOverride,
|
|
5142
|
-
lastServerUrl: patch.lastServerUrl === void 0 ? current.lastServerUrl : patch.lastServerUrl === null ? void 0 : patch.lastServerUrl,
|
|
5143
|
-
updatedAt: (/* @__PURE__ */ new Date()).toISOString()
|
|
5144
|
-
};
|
|
5145
|
-
const tmpPath = `${filePath}.tmp-${randomUUID()}`;
|
|
5146
|
-
const fh = await open(tmpPath, "w");
|
|
5147
|
-
try {
|
|
5148
|
-
await fh.writeFile(JSON.stringify(next, null, " "), "utf8");
|
|
5149
|
-
await fh.sync();
|
|
5150
|
-
} finally {
|
|
5151
|
-
await fh.close();
|
|
5152
|
-
}
|
|
5153
|
-
await fs$1.rename(tmpPath, filePath);
|
|
5154
|
-
return next;
|
|
5155
|
-
}
|
|
5156
|
-
/**
|
|
5157
|
-
* Best-effort migration of a legacy `enabled` flag (typically read from
|
|
5158
|
-
* VS Code's `settings.json` at `serverProxy.enabled`) into the global
|
|
5159
|
-
* config file.
|
|
5160
|
-
*
|
|
5161
|
-
* Reads via the provided accessor (so tests can stub it), writes the
|
|
5162
|
-
* global flag if present, then **clears** the legacy flag via the
|
|
5163
|
-
* provided writer — never silently leaves the migration half-done.
|
|
5164
|
-
*
|
|
5165
|
-
* Returns the migrated state, or `null` if no migration was needed
|
|
5166
|
-
* (legacy flag absent OR global config already up to date).
|
|
5167
|
-
*/
|
|
5168
|
-
async function migrateLegacyServerProxyEnabled(readLegacy, clearLegacy) {
|
|
5169
|
-
if (readLegacy() !== true) return null;
|
|
5170
|
-
if ((await readServerProxyGlobal())?.enabled === true) {
|
|
5171
|
-
await clearLegacy();
|
|
5172
|
-
return null;
|
|
5173
|
-
}
|
|
5174
|
-
const next = await writeServerProxyGlobal({ enabled: true });
|
|
5175
|
-
await clearLegacy();
|
|
5176
|
-
return next;
|
|
5177
|
-
}
|
|
5178
|
-
function isServerProxyGlobalState(v) {
|
|
5179
|
-
if (!v || typeof v !== "object") return false;
|
|
5180
|
-
const obj = v;
|
|
5181
|
-
if (typeof obj.enabled !== "boolean") return false;
|
|
5182
|
-
if (typeof obj.allowOverride !== "boolean") return false;
|
|
5183
|
-
if (typeof obj.updatedAt !== "string") return false;
|
|
5184
|
-
if (obj.lastServerUrl !== void 0 && obj.lastServerUrl !== null && typeof obj.lastServerUrl !== "string") return false;
|
|
5185
|
-
return true;
|
|
5186
|
-
}
|
|
5187
|
-
function isENOENT(err) {
|
|
5188
|
-
return typeof err === "object" && err !== null && "code" in err && err.code === "ENOENT";
|
|
5189
|
-
}
|
|
5190
|
-
//#endregion
|
|
5191
5075
|
//#region src/phase5/bootstrap.ts
|
|
5192
5076
|
/**
|
|
5193
5077
|
* Spec §11.12 — Phase 5 client-side state bootstrap.
|
|
@@ -5400,6 +5284,8 @@ const moveFiles = async (sourceDir, destDir, overwrite = false) => {
|
|
|
5400
5284
|
};
|
|
5401
5285
|
//#endregion
|
|
5402
5286
|
//#region src/project/projectTools.ts
|
|
5287
|
+
/** Master-side prune walks and deletes whole module trees — generous ceiling. */
|
|
5288
|
+
const SCAFFOLD_PRUNE_TIMEOUT_MS = 6e5;
|
|
5403
5289
|
var ProjectTools = class {
|
|
5404
5290
|
async extractTemplate(zipPath, workspacePath, tempExtractDir, input) {
|
|
5405
5291
|
await unzipFile(zipPath, tempExtractDir);
|
|
@@ -5466,24 +5352,72 @@ var ProjectTools = class {
|
|
|
5466
5352
|
command
|
|
5467
5353
|
};
|
|
5468
5354
|
}
|
|
5469
|
-
async runScaffoldPrune(workspacePath, preset) {
|
|
5355
|
+
async runScaffoldPrune(workspacePath, preset, options) {
|
|
5470
5356
|
if (!preset) throw createServicemeError("invalid_params", "Expected scaffold preset.");
|
|
5357
|
+
const disabledModules = options?.disabledModules ?? [];
|
|
5358
|
+
const pruneScript = path.join(workspacePath, "scripts", "scaffold", "prune.mjs");
|
|
5359
|
+
const modulesDir = path.join(workspacePath, ".ms-scaffold", "modules");
|
|
5360
|
+
if (!await this.pathExists(pruneScript) || !await this.pathExists(modulesDir)) throw createServicemeError("invalid_params", "Scaffold v2 assets not found in workspace (scripts/scaffold/prune.mjs, .ms-scaffold/modules) — an ms-full-stack v2 template is required.");
|
|
5471
5361
|
await this.ensurePresetManifest(workspacePath, preset);
|
|
5472
|
-
const
|
|
5473
|
-
|
|
5474
|
-
|
|
5475
|
-
|
|
5476
|
-
|
|
5477
|
-
|
|
5362
|
+
const stagingDir = await fs$1.mkdtemp(path.join(os.tmpdir(), "serviceme-scaffold-master-"));
|
|
5363
|
+
try {
|
|
5364
|
+
await fs$1.cp(workspacePath, stagingDir, {
|
|
5365
|
+
recursive: true,
|
|
5366
|
+
filter: (source) => {
|
|
5367
|
+
const base = path.basename(source);
|
|
5368
|
+
return base !== "node_modules" && base !== ".git";
|
|
5369
|
+
}
|
|
5370
|
+
});
|
|
5371
|
+
const args = [
|
|
5372
|
+
path.join(stagingDir, "scripts", "scaffold", "prune.mjs"),
|
|
5373
|
+
"--preset",
|
|
5374
|
+
preset,
|
|
5375
|
+
"--project-root",
|
|
5376
|
+
workspacePath,
|
|
5377
|
+
...disabledModules.flatMap((moduleId) => ["--no-module", moduleId]),
|
|
5378
|
+
"--format",
|
|
5379
|
+
"json"
|
|
5380
|
+
];
|
|
5381
|
+
const result = await runCommand(process.execPath, {
|
|
5382
|
+
args,
|
|
5478
5383
|
cwd: workspacePath,
|
|
5479
|
-
|
|
5384
|
+
timeoutMs: SCAFFOLD_PRUNE_TIMEOUT_MS
|
|
5385
|
+
});
|
|
5386
|
+
return {
|
|
5387
|
+
applied: true,
|
|
5388
|
+
preset,
|
|
5389
|
+
projectRoot: workspacePath,
|
|
5390
|
+
disabledModules,
|
|
5391
|
+
recommendedNextSteps: this.parseRecommendedNextSteps(result.stdout),
|
|
5392
|
+
commands: [formatCommand(process.execPath, args)]
|
|
5393
|
+
};
|
|
5394
|
+
} finally {
|
|
5395
|
+
await fs$1.rm(stagingDir, {
|
|
5396
|
+
recursive: true,
|
|
5397
|
+
force: true
|
|
5480
5398
|
});
|
|
5481
5399
|
}
|
|
5482
|
-
|
|
5483
|
-
|
|
5484
|
-
|
|
5485
|
-
|
|
5486
|
-
|
|
5400
|
+
}
|
|
5401
|
+
/**
|
|
5402
|
+
* `prune.mjs --format json` prints its result object (pretty-printed) as
|
|
5403
|
+
* the only stdout payload, but stay tolerant: if log noise precedes it,
|
|
5404
|
+
* fall back to the last line-initial `{` and try from there. Any parse
|
|
5405
|
+
* failure degrades to an empty list — follow-ups are advisory.
|
|
5406
|
+
*/
|
|
5407
|
+
parseRecommendedNextSteps(stdout) {
|
|
5408
|
+
const trimmed = stdout.trim();
|
|
5409
|
+
const payload = trimmed.startsWith("{") ? trimmed : (() => {
|
|
5410
|
+
const index = trimmed.lastIndexOf("\n{");
|
|
5411
|
+
return index >= 0 ? trimmed.slice(index + 1) : null;
|
|
5412
|
+
})();
|
|
5413
|
+
if (!payload) return [];
|
|
5414
|
+
try {
|
|
5415
|
+
const parsed = JSON.parse(payload);
|
|
5416
|
+
if (!Array.isArray(parsed.recommendedNextSteps)) return [];
|
|
5417
|
+
return parsed.recommendedNextSteps.filter((step) => typeof step === "string");
|
|
5418
|
+
} catch {
|
|
5419
|
+
return [];
|
|
5420
|
+
}
|
|
5487
5421
|
}
|
|
5488
5422
|
async ensurePresetManifest(workspacePath, preset) {
|
|
5489
5423
|
const presetManifestPath = path.join(workspacePath, ".ms-scaffold", "presets", `${preset}.json`);
|
|
@@ -5546,6 +5480,11 @@ var ProjectTools = class {
|
|
|
5546
5480
|
return entries.includes(projectFilePattern);
|
|
5547
5481
|
}
|
|
5548
5482
|
};
|
|
5483
|
+
/** Display form of an argv-style invocation (quote paths containing spaces). */
|
|
5484
|
+
function formatCommand(command, args) {
|
|
5485
|
+
const quote = (value) => /\s/.test(value) ? `"${value}"` : value;
|
|
5486
|
+
return [command, ...args].map(quote).join(" ");
|
|
5487
|
+
}
|
|
5549
5488
|
function createProjectTools() {
|
|
5550
5489
|
return new ProjectTools();
|
|
5551
5490
|
}
|
|
@@ -8303,6 +8242,6 @@ async function migrateLegacyUserSkillContent(input) {
|
|
|
8303
8242
|
return { entries: result };
|
|
8304
8243
|
}
|
|
8305
8244
|
//#endregion
|
|
8306
|
-
export { AGENT_DRAFTS_SUBDIR, AccessControl, AgentCatalogClient, AgentReconciler, AgentStore, AuthCore, AuthStateManager, BUILTIN_DEFAULT_TOOLS, CACHE_SUBDIR, CREDENTIALS_CONFIG_FILENAME, CannotRemoveDefaultRepoError, CopilotLinkMaterializer, CopilotPluginRegistrar, CopilotSourceCatalogService, FIXED_ADDED_AT as DEFAULT_REPO_FIXED_ADDED_AT, DEFAULT_REPO_ID, DEVICE_JSON_FILENAME, DEVICE_JSON_SCHEMA_VERSION, DRAFTS_SUBDIR, DaemonLogger, DefaultToolImmutableError, DeviceAuthHeaders, DeviceCore, DeviceReenrollRequiresAuthError, DeviceSecretVersionMismatchError, DisabledContentStore, DraftNotFoundError, DraftsError, DraftsStore, Enroller, EnvironmentInspector, FileHookConfigAdapter, FileMcpConfigAdapter, FsIdentityFileBackend, FsToolboxFileBackend, GIT_PROXY_PATH_SUFFIX, GitClient, GitError, GitHubAuthProvider, GithubCopilotCliExecutor, HttpRequestExecutor, IdentityStore, ImageTools, InMemoryKeychainAuthTokenStore, InvalidDraftError, InvalidRepoUrlError, KNOWN_WORKSPACES_FILENAME, KeychainUnavailableError, MACHINE_ID_FILENAME, MIGRATION_FAILURES_FILENAME, MicrosoftAuthProvider, MicrosoftProviderNotHostedError, NodeGitSpawner, PROFILES_JSON_FILENAME, PackageInstallationService, PersonalCopilotContentReconciler, PersonalInstallationStore, PidManager, ProjectTools, ProviderRegistry, REPOS_CONFIG_FILENAME, REPOS_SUBDIR, RepoAlreadyExistsError, RepoCloneConflictError, RepoManager, RepoManagerError, RepoNotFoundError, RepoNotInStoreError, ReposLoader, ReposStore, SAFE_REPO_ID_PATTERN, SCHEDULED_TASKS_CONFIG_FILENAME, SCHEDULED_TASKS_LOG_FILENAME, SCHEDULER_LOCK_FILENAME, SCHEDULER_LOG_FILENAME, SCHEDULER_PID_FILENAME,
|
|
8245
|
+
export { AGENT_DRAFTS_SUBDIR, AccessControl, AgentCatalogClient, AgentReconciler, AgentStore, AuthCore, AuthStateManager, BUILTIN_DEFAULT_TOOLS, CACHE_SUBDIR, CREDENTIALS_CONFIG_FILENAME, CannotRemoveDefaultRepoError, CopilotLinkMaterializer, CopilotPluginRegistrar, CopilotSourceCatalogService, FIXED_ADDED_AT as DEFAULT_REPO_FIXED_ADDED_AT, DEFAULT_REPO_ID, DEVICE_JSON_FILENAME, DEVICE_JSON_SCHEMA_VERSION, DRAFTS_SUBDIR, DaemonLogger, DefaultToolImmutableError, DeviceAuthHeaders, DeviceCore, DeviceReenrollRequiresAuthError, DeviceSecretVersionMismatchError, DisabledContentStore, DraftNotFoundError, DraftsError, DraftsStore, Enroller, EnvironmentInspector, FileHookConfigAdapter, FileMcpConfigAdapter, FsIdentityFileBackend, FsToolboxFileBackend, GIT_PROXY_PATH_SUFFIX, GitClient, GitError, GitHubAuthProvider, GithubCopilotCliExecutor, HttpRequestExecutor, IdentityStore, ImageTools, InMemoryKeychainAuthTokenStore, InvalidDraftError, InvalidRepoUrlError, KNOWN_WORKSPACES_FILENAME, KeychainUnavailableError, MACHINE_ID_FILENAME, MIGRATION_FAILURES_FILENAME, MicrosoftAuthProvider, MicrosoftProviderNotHostedError, NodeGitSpawner, PROFILES_JSON_FILENAME, PackageInstallationService, PersonalCopilotContentReconciler, PersonalInstallationStore, PidManager, ProjectTools, ProviderRegistry, REPOS_CONFIG_FILENAME, REPOS_SUBDIR, RepoAlreadyExistsError, RepoCloneConflictError, RepoManager, RepoManagerError, RepoNotFoundError, RepoNotInStoreError, ReposLoader, ReposStore, SAFE_REPO_ID_PATTERN, SCHEDULED_TASKS_CONFIG_FILENAME, SCHEDULED_TASKS_LOG_FILENAME, SCHEDULER_LOCK_FILENAME, SCHEDULER_LOG_FILENAME, SCHEDULER_PID_FILENAME, SERVICEME_DIR_NAME, SERVICEME_HOME_ENV, SKILL_DRAFTS_SUBDIR, SchedulerDaemonV2, ShellExecutor, SkillCatalogClient, SkillReconciler, SkillStore, StubGitSpawner, SubmitClient, SubmitError, TOOLBOX_JSON_FILENAME, TOOLBOX_JSON_SCHEMA_VERSION, TOOL_RISK_MAP, TaskConfigManager, TaskExecutionEngine, TaskLogManager, ToolboxCore, ToolboxStore, WORKSPACES_SUBDIR, WORKSPACE_CONTENT_STATE_FILENAME, WORKSPACE_MANIFEST_RELPATH, WORKSPACE_TOOLBOX_RELATIVE_PATH, WorkspaceContentStateStore, WorkspaceCopilotContentReconciler, WorkspaceExcludeStore, WorkspaceProbe, allPersonalLinkKinds, repoSchema as anyRepoConfigSchema, assertSafeRepoId, bootstrapDefaults, bootstrapPhase5Placeholders, buildContentIdentity, buildCopilotCustomizationView, buildDefaultReposFile, buildDisabledIdentityMatcher, buildGitHubLocalEmail, buildGitProxyBase, buildSignedHeaders, copilotDoctor, copilotPrompt, coveredTargetsOf, createConsoleLogger, createCopilotAuthRequiredError, createCopilotNotInstalledError, createDefaultCopilotHostCapabilities, createDeviceRequestSignature, createImageTools, createJsonTools, createPluginCatalogService, createProjectTools, createReposStore, dedupeAdoptionsByPluginManifests, defaultRepoSchema as defaultRepoConfigSchema, deriveCopilotUserStatus, deriveInstallationId, detectUnmanagedWorkspaceContent, ensureDefaultsInstalled, findPluginCoveringArtifact, findPluginMcpJson, findRepoHooksJson, fingerprintSource, generateDraftId, getAgentDraftsDir, getAllDefaultRepoConfigs, getCacheDir, getCredentialsConfigPath, getDefaultRepoConfig, getDeviceJsonPath, getDraftsDir, getExecutor, getHomeDir, getHomePlatform, getKnownWorkspacesPath, getMachineIdPath, getMigrationFailuresPath, getProfilesJsonPath, getRepoCacheDir, getRepoDir, getReposConfigPath, getReposDir, getScheduledTasksConfigPath, getScheduledTasksLogPath, getSchedulerLockPath, getSchedulerLogPath, getSchedulerPidPath, getServicemeHome, getSkillDraftsDir, getToolboxJsonPath, getWorkspaceManifestPath, getWorkspaceManifestPluginSourceId, getWorkspaceManifestSources, getWorkspaceStateDir, getWorkspacesDir, hashWorkspaceDir, isCopilotAuthenticated, isDefaultRepo, isGitHubLocalEmail, isStreamingTaskExecutor, isUserRepo, listPluginCatalog, loadWorkspaceCopilotManifest, mergeWithDefaults, migrateLegacyUserContent, migrateLegacyUserSkillContent, migrateToGlobal, moveFiles, narrowRepoConfig, noopLogger, parseAgentToolPermissions, parseContentIdentity, parseHooksJson, parseMcpJson, randomInstallationId, readDeclaredWorkspaceInstallations, reindexOrder, removeWorkspaceContentSelection, replaceWorkspaceContentSelection, reposFileSchema, resetUserHomeOverrides, resolveDraftDir, resolvePluginEntriesLenient, resolvePrimaryEmail, resolveTaskExecutionPayload, resolveWorkspaceContentPlan, setUserHomeOverrides, setWorkspacePluginArtifactsDisabled, sortByRecentFirst, sortByUserOrder, supportsPersonalIntegrationKind, supportsPersonalLinkKind, toArtifactSummary, toFileUrl, touchLastUsedAt, unmanagedDetectionSignature, unzipFile, upsertWorkspaceContentSelection, userRepoSchema as userRepoConfigSchema, validateReposFile, validateTaskPayload, writeWorkspaceCopilotManifest };
|
|
8307
8246
|
|
|
8308
8247
|
//# sourceMappingURL=index.mjs.map
|