autodev-cli 1.4.0 → 1.4.4
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/bin/autodev.js +0 -0
- package/out/agentBackup/archive.d.ts +44 -0
- package/out/agentBackup/archive.js +131 -0
- package/out/agentBackup/archive.js.map +1 -0
- package/out/agentBackup/export.d.ts +18 -0
- package/out/agentBackup/export.js +92 -0
- package/out/agentBackup/export.js.map +1 -0
- package/out/agentBackup/import.d.ts +21 -0
- package/out/agentBackup/import.js +40 -0
- package/out/agentBackup/import.js.map +1 -0
- package/out/agentBackup/index.d.ts +6 -0
- package/out/agentBackup/index.js +11 -0
- package/out/agentBackup/index.js.map +1 -0
- package/out/agentBackup/layout.d.ts +30 -0
- package/out/agentBackup/layout.js +126 -0
- package/out/agentBackup/layout.js.map +1 -0
- package/out/agentBackup/manifest.d.ts +24 -0
- package/out/agentBackup/manifest.js +70 -0
- package/out/agentBackup/manifest.js.map +1 -0
- package/out/agentBackup/opencodeDb.d.ts +20 -0
- package/out/agentBackup/opencodeDb.js +213 -0
- package/out/agentBackup/opencodeDb.js.map +1 -0
- package/out/agentBackup/sessionProviders.d.ts +35 -0
- package/out/agentBackup/sessionProviders.js +263 -0
- package/out/agentBackup/sessionProviders.js.map +1 -0
- package/out/agentBackup/upload.d.ts +9 -0
- package/out/agentBackup/upload.js +121 -0
- package/out/agentBackup/upload.js.map +1 -0
- package/out/cli.d.ts +1 -0
- package/out/cli.js +8 -0
- package/out/cli.js.map +1 -1
- package/out/cliExit.d.ts +34 -0
- package/out/cliExit.js +159 -0
- package/out/cliExit.js.map +1 -0
- package/out/commands/config.d.ts +2 -0
- package/out/commands/config.js +7 -7
- package/out/commands/config.js.map +1 -1
- package/out/commands/connect.d.ts +2 -0
- package/out/commands/connect.js +11 -0
- package/out/commands/connect.js.map +1 -1
- package/out/commands/export.d.ts +2 -0
- package/out/commands/export.js +79 -0
- package/out/commands/export.js.map +1 -0
- package/out/commands/import.d.ts +2 -0
- package/out/commands/import.js +92 -0
- package/out/commands/import.js.map +1 -0
- package/out/commands/init.d.ts +16 -0
- package/out/commands/init.js +9 -5
- package/out/commands/init.js.map +1 -1
- package/out/commands/resume.d.ts +2 -0
- package/out/commands/resume.js +65 -0
- package/out/commands/resume.js.map +1 -0
- package/out/commands/sessions.d.ts +2 -0
- package/out/commands/sessions.js +64 -0
- package/out/commands/sessions.js.map +1 -0
- package/out/commands/start.d.ts +2 -0
- package/out/commands/start.js +40 -7
- package/out/commands/start.js.map +1 -1
- package/out/commands/status.d.ts +2 -0
- package/out/commands/status.js +3 -3
- package/out/commands/status.js.map +1 -1
- package/out/commands/tailOutput.d.ts +12 -0
- package/out/commands/up.d.ts +3 -0
- package/out/configManager.d.ts +42 -0
- package/out/configManager.js +447 -0
- package/out/configManager.js.map +1 -0
- package/out/connect.d.ts +4 -0
- package/out/connect.js +7 -7
- package/out/connect.js.map +1 -1
- package/out/core/adapters.d.ts +34 -0
- package/out/core/adapters.js +84 -0
- package/out/core/adapters.js.map +1 -0
- package/out/core/commandHelpers.d.ts +12 -0
- package/out/core/commandHelpers.js +96 -0
- package/out/core/commandHelpers.js.map +1 -0
- package/out/core/projectMcp.d.ts +34 -0
- package/out/core/projectMcp.js +160 -0
- package/out/core/projectMcp.js.map +1 -0
- package/out/core/provider/BaseProvider.d.ts +14 -0
- package/out/core/provider/BaseProvider.js +25 -0
- package/out/core/provider/BaseProvider.js.map +1 -0
- package/out/core/provider/ProviderRegistry.d.ts +12 -0
- package/out/core/provider/ProviderRegistry.js +40 -0
- package/out/core/provider/ProviderRegistry.js.map +1 -0
- package/out/core/provider/contract.d.ts +62 -0
- package/out/core/provider/contract.js +9 -0
- package/out/core/provider/contract.js.map +1 -0
- package/out/core/provider/implementations.d.ts +54 -0
- package/out/core/provider/implementations.js +147 -0
- package/out/core/provider/implementations.js.map +1 -0
- package/out/core/settingsLoader.d.ts +221 -0
- package/out/core/settingsLoader.js +176 -0
- package/out/core/settingsLoader.js.map +1 -0
- package/out/discordGateway.d.ts +26 -0
- package/out/discordGateway.js +230 -0
- package/out/discordGateway.js.map +1 -0
- package/out/discordPoller.d.ts +28 -0
- package/out/discordPoller.js +247 -0
- package/out/discordPoller.js.map +1 -0
- package/out/dispatcher.d.ts +12 -0
- package/out/dispatcher.js +214 -0
- package/out/dispatcher.js.map +1 -0
- package/out/emailPoller.d.ts +42 -0
- package/out/emailPoller.js +221 -0
- package/out/emailPoller.js.map +1 -0
- package/out/git/gitService.d.ts +36 -0
- package/out/git/gitService.js +165 -0
- package/out/git/gitService.js.map +1 -0
- package/out/hookEventNormalizer.d.ts +39 -0
- package/out/hookEventNormalizer.js +397 -0
- package/out/hookEventNormalizer.js.map +1 -0
- package/out/hooksManager.d.ts +25 -0
- package/out/hooksManager.js +471 -0
- package/out/hooksManager.js.map +1 -0
- package/out/launchIde.d.ts +14 -0
- package/out/logger.d.ts +12 -0
- package/out/mcpEmailTest.d.ts +29 -0
- package/out/mcpEmailTest.js +245 -0
- package/out/mcpEmailTest.js.map +1 -0
- package/out/mcpInstallCheck.d.ts +23 -0
- package/out/mcpInstallCheck.js +219 -0
- package/out/mcpInstallCheck.js.map +1 -0
- package/out/mcpManager.d.ts +35 -0
- package/out/mcpManager.js +371 -0
- package/out/mcpManager.js.map +1 -0
- package/out/messageBuilder.d.ts +54 -0
- package/out/messageBuilder.js +373 -0
- package/out/messageBuilder.js.map +1 -0
- package/out/openCodeHooksManager.d.ts +23 -0
- package/out/openCodeHooksManager.js +511 -0
- package/out/openCodeHooksManager.js.map +1 -0
- package/out/periodicActions.d.ts +63 -0
- package/out/periodicActions.js +237 -0
- package/out/periodicActions.js.map +1 -0
- package/out/profileBuilder.d.ts +29 -0
- package/out/profileBuilder.js +366 -0
- package/out/profileBuilder.js.map +1 -0
- package/out/prompt.d.ts +12 -0
- package/out/prompt.js +18 -0
- package/out/prompt.js.map +1 -0
- package/out/protocolSections.d.ts +26 -0
- package/out/protocolSections.js +209 -0
- package/out/protocolSections.js.map +1 -0
- package/out/providers/claudeCliProvider.d.ts +71 -0
- package/out/providers/claudeCliProvider.js +425 -0
- package/out/providers/claudeCliProvider.js.map +1 -0
- package/out/providers/claudeTuiProvider.d.ts +23 -0
- package/out/providers/claudeTuiProvider.js +296 -0
- package/out/providers/claudeTuiProvider.js.map +1 -0
- package/out/providers/copilotCliProvider.d.ts +16 -0
- package/out/providers/copilotCliProvider.js +44 -0
- package/out/providers/copilotCliProvider.js.map +1 -0
- package/out/providers/copilotSdkProvider.d.ts +12 -0
- package/out/providers/copilotSdkProvider.js +445 -0
- package/out/providers/copilotSdkProvider.js.map +1 -0
- package/out/providers/grokTuiProvider.d.ts +14 -0
- package/out/providers/grokTuiProvider.js +271 -0
- package/out/providers/grokTuiProvider.js.map +1 -0
- package/out/providers/opencodeCliProvider.d.ts +29 -0
- package/out/providers/opencodeCliProvider.js +199 -0
- package/out/providers/opencodeCliProvider.js.map +1 -0
- package/out/providers/opencodeSdkProvider.d.ts +22 -0
- package/out/providers/opencodeSdkProvider.js +557 -0
- package/out/providers/opencodeSdkProvider.js.map +1 -0
- package/out/providers.d.ts +9 -0
- package/out/providers.js +44 -0
- package/out/providers.js.map +1 -0
- package/out/rateLimit.d.ts +18 -0
- package/out/rateLimit.js +90 -0
- package/out/rateLimit.js.map +1 -0
- package/out/rdp/auth.d.ts +55 -0
- package/out/rdp/auth.js +197 -0
- package/out/rdp/auth.js.map +1 -0
- package/out/rdp/bridge.d.ts +86 -0
- package/out/rdp/bridge.js +1398 -0
- package/out/rdp/bridge.js.map +1 -0
- package/out/rdp/constants.d.ts +86 -0
- package/out/rdp/constants.js +182 -0
- package/out/rdp/constants.js.map +1 -0
- package/out/rdp/index.d.ts +7 -0
- package/out/rdp/index.js +14 -0
- package/out/rdp/index.js.map +1 -0
- package/out/rdp/session.d.ts +30 -0
- package/out/rdp/session.js +196 -0
- package/out/rdp/session.js.map +1 -0
- package/out/rdp/types.d.ts +27 -0
- package/out/rdp/types.js +6 -0
- package/out/rdp/types.js.map +1 -0
- package/out/sdk/index.d.ts +22 -0
- package/out/sdk/index.js +81 -0
- package/out/sdk/index.js.map +1 -0
- package/out/sessionState.d.ts +54 -0
- package/out/sessionState.js +284 -0
- package/out/sessionState.js.map +1 -0
- package/out/sessions.d.ts +11 -0
- package/out/sessions.js +32 -0
- package/out/sessions.js.map +1 -0
- package/out/taskLoop.d.ts +152 -0
- package/out/taskLoop.js +2505 -0
- package/out/taskLoop.js.map +1 -0
- package/out/todo.d.ts +42 -0
- package/out/todo.js +311 -0
- package/out/todo.js.map +1 -0
- package/out/todoWriteManager.d.ts +26 -0
- package/out/todoWriteManager.js +44 -0
- package/out/todoWriteManager.js.map +1 -0
- package/out/vnc/auth.d.ts +52 -0
- package/out/vnc/auth.js +181 -0
- package/out/vnc/auth.js.map +1 -0
- package/out/vnc/bridge.d.ts +40 -0
- package/out/vnc/bridge.js +540 -0
- package/out/vnc/bridge.js.map +1 -0
- package/out/vnc/constants.d.ts +8 -0
- package/out/vnc/constants.js +34 -0
- package/out/vnc/constants.js.map +1 -0
- package/out/vnc/des.d.ts +6 -0
- package/out/vnc/des.js +93 -0
- package/out/vnc/des.js.map +1 -0
- package/out/vnc/index.d.ts +7 -0
- package/out/vnc/index.js +13 -0
- package/out/vnc/index.js.map +1 -0
- package/out/vnc/session.d.ts +18 -0
- package/out/vnc/session.js +193 -0
- package/out/vnc/session.js.map +1 -0
- package/out/vnc/types.d.ts +16 -0
- package/out/vnc/types.js +6 -0
- package/out/vnc/types.js.map +1 -0
- package/out/webSocketPoller.d.ts +95 -0
- package/out/webSocketPoller.js +986 -0
- package/out/webSocketPoller.js.map +1 -0
- package/out/webhook.d.ts +37 -0
- package/out/webhook.js +265 -0
- package/out/webhook.js.map +1 -0
- package/out/webhookPoller.d.ts +40 -0
- package/out/webhookPoller.js +378 -0
- package/out/webhookPoller.js.map +1 -0
- package/package.json +54 -41
|
@@ -0,0 +1,92 @@
|
|
|
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.importCommand = importCommand;
|
|
37
|
+
const path = __importStar(require("path"));
|
|
38
|
+
const logger_1 = require("../logger");
|
|
39
|
+
const agentBackup_1 = require("../agentBackup");
|
|
40
|
+
const launchIde_1 = require("../launchIde");
|
|
41
|
+
function importCommand(program) {
|
|
42
|
+
program
|
|
43
|
+
.command('import <zipFile> [destPath]')
|
|
44
|
+
.description('Restore an agent backup ZIP into a destination folder. ' +
|
|
45
|
+
'Extracts workspace state and rewires session traces for the new location.')
|
|
46
|
+
.option('--ide <ide>', 'Open the restored workspace in an IDE after restore: vscode | cursor')
|
|
47
|
+
.option('--no-extension', 'Skip auto-installing the autoaidev extension (with --ide)')
|
|
48
|
+
.action(async (zipFile, destPath, opts) => {
|
|
49
|
+
const zipPath = path.resolve(zipFile);
|
|
50
|
+
const destRoot = destPath ? path.resolve(destPath) : process.cwd();
|
|
51
|
+
logger_1.log.section('📥 AutoAIDev — Import Agent Backup');
|
|
52
|
+
logger_1.log.info(`ZIP : ${zipPath}`);
|
|
53
|
+
logger_1.log.info(`Dest : ${destRoot}`);
|
|
54
|
+
logger_1.log.plain('');
|
|
55
|
+
try {
|
|
56
|
+
const result = await (0, agentBackup_1.restoreAgentBackup)(zipPath, destRoot);
|
|
57
|
+
logger_1.log.success(`Workspace files restored: ${result.workspaceFiles}`);
|
|
58
|
+
if (Object.keys(result.restoredByProvider).length > 0) {
|
|
59
|
+
logger_1.log.info('Session traces restored:');
|
|
60
|
+
for (const [id, n] of Object.entries(result.restoredByProvider)) {
|
|
61
|
+
logger_1.log.gray(` ✓ ${id}: ${n} file(s)`);
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
else {
|
|
65
|
+
logger_1.log.warn('No provider session traces to restore (workspace state only).');
|
|
66
|
+
}
|
|
67
|
+
if (!result.manifestRestored) {
|
|
68
|
+
logger_1.log.warn('Manifest not found in archive — session IDs not verified.');
|
|
69
|
+
}
|
|
70
|
+
logger_1.log.plain('');
|
|
71
|
+
logger_1.log.success(`Restored to: ${destRoot}`);
|
|
72
|
+
logger_1.log.info('Edit TODO.md then run: autodev start');
|
|
73
|
+
if (opts.ide) {
|
|
74
|
+
if (!(0, launchIde_1.isIdeId)(opts.ide)) {
|
|
75
|
+
logger_1.log.error(`Unknown --ide value "${opts.ide}". Valid: vscode | cursor`);
|
|
76
|
+
process.exit(1);
|
|
77
|
+
}
|
|
78
|
+
const ide = opts.ide;
|
|
79
|
+
if (opts.extension !== false && !(0, launchIde_1.isAutodevExtensionInstalled)(ide)) {
|
|
80
|
+
const vsix = (0, launchIde_1.findBundledVsix)();
|
|
81
|
+
(0, launchIde_1.installAutodevExtension)(ide, vsix ?? undefined);
|
|
82
|
+
}
|
|
83
|
+
(0, launchIde_1.launchIde)(ide, destRoot);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
catch (err) {
|
|
87
|
+
logger_1.log.error(`Import failed: ${err.message}`);
|
|
88
|
+
process.exit(1);
|
|
89
|
+
}
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
//# sourceMappingURL=import.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"import.js","sourceRoot":"","sources":["../../src/commands/import.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { Command } from 'commander';
|
|
2
|
+
interface InitOpts {
|
|
3
|
+
provider: string;
|
|
4
|
+
force?: boolean;
|
|
5
|
+
ide?: string;
|
|
6
|
+
launch?: boolean;
|
|
7
|
+
extension?: boolean;
|
|
8
|
+
hooks?: boolean;
|
|
9
|
+
git?: boolean;
|
|
10
|
+
fileBrowser?: boolean;
|
|
11
|
+
profile?: string;
|
|
12
|
+
sessionName?: string;
|
|
13
|
+
}
|
|
14
|
+
export declare function runInit(workspacePath: string | undefined, opts: InitOpts): void;
|
|
15
|
+
export declare function initCommand(program: Command): void;
|
|
16
|
+
export {};
|
package/out/commands/init.js
CHANGED
|
@@ -38,8 +38,8 @@ exports.initCommand = initCommand;
|
|
|
38
38
|
const fs = __importStar(require("fs"));
|
|
39
39
|
const path = __importStar(require("path"));
|
|
40
40
|
const logger_1 = require("../logger");
|
|
41
|
-
const
|
|
42
|
-
const
|
|
41
|
+
const settingsLoader_1 = require("../core/settingsLoader");
|
|
42
|
+
const hooksManager_1 = require("../hooksManager");
|
|
43
43
|
const launchIde_1 = require("../launchIde");
|
|
44
44
|
const TODO_TEMPLATE = `# TODO
|
|
45
45
|
|
|
@@ -97,7 +97,7 @@ function runInit(workspacePath, opts) {
|
|
|
97
97
|
fs.mkdirSync(autodevDir, { recursive: true });
|
|
98
98
|
}
|
|
99
99
|
let settings = {
|
|
100
|
-
...
|
|
100
|
+
...settingsLoader_1.SETTINGS_DEFAULTS,
|
|
101
101
|
provider: opts.provider,
|
|
102
102
|
// hooks default ON for new workspaces — without them, pixel-office never
|
|
103
103
|
// sees tool_start/tool_end/etc. and the office UI looks empty.
|
|
@@ -123,6 +123,9 @@ function runInit(workspacePath, opts) {
|
|
|
123
123
|
if (opts.profile) {
|
|
124
124
|
settings.profilePath = opts.profile;
|
|
125
125
|
}
|
|
126
|
+
if (opts.sessionName) {
|
|
127
|
+
settings.sessionName = opts.sessionName;
|
|
128
|
+
}
|
|
126
129
|
fs.writeFileSync(configPath, JSON.stringify(settings, null, 2), 'utf8');
|
|
127
130
|
logger_1.log.success(`Created ${configPath}`);
|
|
128
131
|
}
|
|
@@ -130,8 +133,8 @@ function runInit(workspacePath, opts) {
|
|
|
130
133
|
// for this workspace. Skipped with --no-hooks, or if already installed.
|
|
131
134
|
if (opts.hooks !== false) {
|
|
132
135
|
try {
|
|
133
|
-
if (!(0,
|
|
134
|
-
(0,
|
|
136
|
+
if (!(0, hooksManager_1.areHooksInstalled)('project', cwd)) {
|
|
137
|
+
(0, hooksManager_1.installHooks)('project', cwd);
|
|
135
138
|
logger_1.log.success('Installed agent hooks (Claude + Copilot) under .claude/.github/copilot');
|
|
136
139
|
}
|
|
137
140
|
else {
|
|
@@ -184,6 +187,7 @@ function initCommand(program) {
|
|
|
184
187
|
.option('--no-launch', 'Do not actually launch the IDE (only install extension)')
|
|
185
188
|
.option('--no-extension', 'Skip auto-installing the autoaidev extension')
|
|
186
189
|
.option('--no-hooks', 'Skip auto-installing agent hooks')
|
|
190
|
+
.option('--session-name <name>', 'Session display name (opencode --title, copilot --name, shown in pixel-office)')
|
|
187
191
|
.option('--git', 'Enable git auto-commit (sets gitEnabled=true)')
|
|
188
192
|
.option('--file-browser', 'Enable file browser tab (sets enableFileBrowser=true)')
|
|
189
193
|
.option('--profile <path>', 'Use this AUTODEV.md profile (sets profilePath)')
|
package/out/commands/init.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,65 @@
|
|
|
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.resumeCommand = resumeCommand;
|
|
37
|
+
const fs = __importStar(require("fs"));
|
|
38
|
+
const path = __importStar(require("path"));
|
|
39
|
+
const logger_1 = require("../logger");
|
|
40
|
+
const settingsLoader_1 = require("../core/settingsLoader");
|
|
41
|
+
const sessionState_1 = require("../sessionState");
|
|
42
|
+
const providers_1 = require("../providers");
|
|
43
|
+
function resumeCommand(program) {
|
|
44
|
+
program
|
|
45
|
+
.command('resume <sessionId> [path]')
|
|
46
|
+
.description('Mark a session to resume on next start (sets resumeSession + the session id)')
|
|
47
|
+
.option('-p, --provider <provider>', 'Provider to resume under (e.g. claude-cli, opencode-cli)')
|
|
48
|
+
.action((sessionId, workspacePath, opts) => {
|
|
49
|
+
const cwd = workspacePath ? path.resolve(workspacePath) : process.cwd();
|
|
50
|
+
const settings = (0, settingsLoader_1.loadSettingsForRoot)(cwd);
|
|
51
|
+
const provider = (opts.provider ?? settings.provider);
|
|
52
|
+
if (!(provider in providers_1.PROVIDERS)) {
|
|
53
|
+
logger_1.log.error(`Unknown provider "${provider}". Valid: ${Object.keys(providers_1.PROVIDERS).join(', ')}`);
|
|
54
|
+
process.exit(1);
|
|
55
|
+
}
|
|
56
|
+
settings.provider = provider;
|
|
57
|
+
settings.resumeSession = true;
|
|
58
|
+
const file = path.join(cwd, '.autodev', 'settings.json');
|
|
59
|
+
fs.mkdirSync(path.dirname(file), { recursive: true });
|
|
60
|
+
fs.writeFileSync(file, JSON.stringify(settings, null, 2) + '\n', 'utf8');
|
|
61
|
+
(0, sessionState_1.saveSessionId)(cwd, provider, sessionId);
|
|
62
|
+
logger_1.log.success(`Will resume ${provider} session ${sessionId} on next start.`);
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
//# sourceMappingURL=resume.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resume.js","sourceRoot":"","sources":["../../src/commands/resume.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAQA,sCAqBC;AA7BD,uCAAyB;AACzB,2CAA6B;AAE7B,sCAAgC;AAChC,2DAA6D;AAC7D,kDAAgD;AAChD,4CAAqD;AAErD,SAAgB,aAAa,CAAC,OAAgB;IAC5C,OAAO;SACJ,OAAO,CAAC,2BAA2B,CAAC;SACpC,WAAW,CAAC,8EAA8E,CAAC;SAC3F,MAAM,CAAC,2BAA2B,EAAE,0DAA0D,CAAC;SAC/F,MAAM,CAAC,CAAC,SAAiB,EAAE,aAAiC,EAAE,IAA2B,EAAE,EAAE;QAC5F,MAAM,GAAG,GAAG,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;QACxE,MAAM,QAAQ,GAAG,IAAA,oCAAmB,EAAC,GAAG,CAAC,CAAC;QAC1C,MAAM,QAAQ,GAAG,CAAC,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,QAAQ,CAAe,CAAC;QACpE,IAAI,CAAC,CAAC,QAAQ,IAAI,qBAAS,CAAC,EAAE,CAAC;YAC7B,YAAG,CAAC,KAAK,CAAC,qBAAqB,QAAQ,aAAa,MAAM,CAAC,IAAI,CAAC,qBAAS,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACzF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,QAAQ,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAC7B,QAAQ,CAAC,aAAa,GAAG,IAAI,CAAC;QAC9B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,EAAE,eAAe,CAAC,CAAC;QACzD,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACtD,EAAE,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,MAAM,CAAC,CAAC;QACzE,IAAA,4BAAa,EAAC,GAAG,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;QACxC,YAAG,CAAC,OAAO,CAAC,eAAe,QAAQ,YAAY,SAAS,iBAAiB,CAAC,CAAC;IAC7E,CAAC,CAAC,CAAC;AACP,CAAC"}
|
|
@@ -0,0 +1,64 @@
|
|
|
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.sessionsCommand = sessionsCommand;
|
|
37
|
+
const path = __importStar(require("path"));
|
|
38
|
+
const logger_1 = require("../logger");
|
|
39
|
+
const sessions_1 = require("../sessions");
|
|
40
|
+
function sessionsCommand(program) {
|
|
41
|
+
program
|
|
42
|
+
.command('sessions [path]')
|
|
43
|
+
.description('List existing AI sessions for a workspace (id, name, last updated)')
|
|
44
|
+
.option('--json', 'Output JSON')
|
|
45
|
+
.action((workspacePath, opts) => {
|
|
46
|
+
const cwd = workspacePath ? path.resolve(workspacePath) : process.cwd();
|
|
47
|
+
const sessions = (0, sessions_1.collectSessions)(cwd);
|
|
48
|
+
if (opts.json) {
|
|
49
|
+
process.stdout.write(JSON.stringify(sessions, null, 2) + '\n');
|
|
50
|
+
return;
|
|
51
|
+
}
|
|
52
|
+
logger_1.log.section('🗂 Sessions');
|
|
53
|
+
logger_1.log.info(`Workspace : ${cwd}`);
|
|
54
|
+
if (sessions.length === 0) {
|
|
55
|
+
logger_1.log.gray(' (no inspectable sessions found)');
|
|
56
|
+
return;
|
|
57
|
+
}
|
|
58
|
+
for (const s of sessions) {
|
|
59
|
+
const when = s.updated ? new Date(s.updated).toISOString().slice(0, 16).replace('T', ' ') : '—';
|
|
60
|
+
logger_1.log.plain(` [${s.provider}] ${s.name} · ${s.id} · ${when}`);
|
|
61
|
+
}
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
//# sourceMappingURL=sessions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sessions.js","sourceRoot":"","sources":["../../src/commands/sessions.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,0CAiBC;AAtBD,2CAA6B;AAE7B,sCAAgC;AAChC,0CAA8C;AAE9C,SAAgB,eAAe,CAAC,OAAgB;IAC9C,OAAO;SACJ,OAAO,CAAC,iBAAiB,CAAC;SAC1B,WAAW,CAAC,oEAAoE,CAAC;SACjF,MAAM,CAAC,QAAQ,EAAE,aAAa,CAAC;SAC/B,MAAM,CAAC,CAAC,aAAiC,EAAE,IAAwB,EAAE,EAAE;QACtE,MAAM,GAAG,GAAG,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;QACxE,MAAM,QAAQ,GAAG,IAAA,0BAAe,EAAC,GAAG,CAAC,CAAC;QACtC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;YAAC,OAAO;QAAC,CAAC;QAC1F,YAAG,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QAC5B,YAAG,CAAC,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC,CAAC;QAC/B,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAAC,YAAG,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC;YAAC,OAAO;QAAC,CAAC;QACrF,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;YACzB,MAAM,IAAI,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;YAChG,YAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,EAAE,QAAQ,IAAI,EAAE,CAAC,CAAC;QACnE,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC"}
|
package/out/commands/start.js
CHANGED
|
@@ -37,18 +37,38 @@ exports.startCommand = startCommand;
|
|
|
37
37
|
const fs = __importStar(require("fs"));
|
|
38
38
|
const path = __importStar(require("path"));
|
|
39
39
|
const logger_1 = require("../logger");
|
|
40
|
-
const sdk_1 = require("
|
|
41
|
-
const PROVIDERS = ['claude-cli', 'copilot-cli', 'opencode-cli'];
|
|
40
|
+
const sdk_1 = require("../sdk");
|
|
41
|
+
const PROVIDERS = ['claude-cli', 'claude-tui', 'copilot-cli', 'copilot-sdk', 'opencode-cli', 'opencode-sdk', 'grok-tui'];
|
|
42
42
|
function startCommand(program) {
|
|
43
43
|
program
|
|
44
44
|
.command('start [path]')
|
|
45
45
|
.description('Start the autonomous task loop in a workspace directory')
|
|
46
|
-
.option('-p, --provider <provider>', `AI provider: ${PROVIDERS.join(' | ')}
|
|
46
|
+
.option('-p, --provider <provider>', `AI provider: ${PROVIDERS.join(' | ')} (default: .autodev/settings.json, else claude-cli)`)
|
|
47
47
|
.option('--todo <file>', 'Path to TODO.md (relative to workspace)', 'TODO.md')
|
|
48
|
+
.option('--once', 'Run until the TODO drains, then exit (default: poll forever)')
|
|
49
|
+
.option('--session-name <name>', 'Display name for this session (opencode --title, copilot --name, shown in pixel-office)')
|
|
48
50
|
.action(async (workspacePath, opts) => {
|
|
49
51
|
const cwd = workspacePath ? path.resolve(workspacePath) : process.cwd();
|
|
50
52
|
const todoFile = path.resolve(cwd, opts.todo);
|
|
51
|
-
|
|
53
|
+
// Persist the session display name to .autodev/settings.json so the
|
|
54
|
+
// dispatcher + providers pick it up (opencode --title / copilot --name)
|
|
55
|
+
// and the loop injects it as _session_name for pixel-office.
|
|
56
|
+
if (opts.sessionName) {
|
|
57
|
+
try {
|
|
58
|
+
const sp = path.join(cwd, '.autodev', 'settings.json');
|
|
59
|
+
const cur = fs.existsSync(sp) ? JSON.parse(fs.readFileSync(sp, 'utf8')) : {};
|
|
60
|
+
cur.sessionName = opts.sessionName;
|
|
61
|
+
fs.mkdirSync(path.dirname(sp), { recursive: true });
|
|
62
|
+
fs.writeFileSync(sp, JSON.stringify(cur, null, 2) + '\n', 'utf8');
|
|
63
|
+
logger_1.log.info(`Session name: ${opts.sessionName}`);
|
|
64
|
+
}
|
|
65
|
+
catch (e) {
|
|
66
|
+
logger_1.log.warn(`Could not persist session name: ${e.message}`);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
// Only validate when explicitly provided; otherwise the SDK resolves the
|
|
70
|
+
// provider from .autodev/settings.json (parity with the VS Code shell).
|
|
71
|
+
if (opts.provider && !PROVIDERS.includes(opts.provider)) {
|
|
52
72
|
logger_1.log.error(`Unknown provider "${opts.provider}". Valid: ${PROVIDERS.join(', ')}`);
|
|
53
73
|
process.exit(1);
|
|
54
74
|
}
|
|
@@ -59,23 +79,36 @@ function startCommand(program) {
|
|
|
59
79
|
}
|
|
60
80
|
logger_1.log.section('🤖 AutoAIDev — Autonomous Task Loop');
|
|
61
81
|
logger_1.log.info(`Workspace : ${cwd}`);
|
|
62
|
-
logger_1.log.info(`Provider : ${opts.provider}`);
|
|
82
|
+
logger_1.log.info(`Provider : ${opts.provider ?? '(from .autodev/settings.json)'}`);
|
|
63
83
|
logger_1.log.info(`TODO.md : ${todoFile}`);
|
|
64
84
|
logger_1.log.plain('');
|
|
65
85
|
logger_1.log.gray('Press Ctrl+C to stop the loop gracefully.\n');
|
|
66
|
-
// Graceful shutdown on Ctrl+C
|
|
86
|
+
// Graceful shutdown on Ctrl+C. stop() closes the persistent SDK servers,
|
|
87
|
+
// but give cleanup a brief grace window to flush (webhook offline, file
|
|
88
|
+
// handles) then force-exit — otherwise a lingering timer/handle can keep
|
|
89
|
+
// the process alive. A second Ctrl+C exits immediately.
|
|
90
|
+
let stopping = false;
|
|
67
91
|
process.on('SIGINT', () => {
|
|
92
|
+
if (stopping) {
|
|
93
|
+
process.exit(130);
|
|
94
|
+
}
|
|
95
|
+
stopping = true;
|
|
68
96
|
logger_1.log.warn('\n⏹ Stopping task loop…');
|
|
69
97
|
sdk_1.AutoDev.loop.stop();
|
|
98
|
+
setTimeout(() => process.exit(0), 1500).unref();
|
|
70
99
|
});
|
|
71
100
|
try {
|
|
72
101
|
const options = {
|
|
73
102
|
cwd,
|
|
74
|
-
provider: opts.provider,
|
|
103
|
+
...(opts.provider ? { provider: opts.provider } : {}),
|
|
104
|
+
...(opts.once ? { once: true } : {}),
|
|
75
105
|
log: logger_1.log.auto,
|
|
76
106
|
};
|
|
77
107
|
await sdk_1.AutoDev.loop.start(options);
|
|
78
108
|
logger_1.log.success('\n✅ Task loop finished.');
|
|
109
|
+
if (opts.once) {
|
|
110
|
+
process.exit(0);
|
|
111
|
+
}
|
|
79
112
|
}
|
|
80
113
|
catch (err) {
|
|
81
114
|
logger_1.log.error(`Loop error: ${err.message}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"start.js","sourceRoot":"","sources":["../../src/commands/start.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAQA,
|
|
1
|
+
{"version":3,"file":"start.js","sourceRoot":"","sources":["../../src/commands/start.ts"],"names":[],"mappings":"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"}
|
package/out/commands/status.js
CHANGED
|
@@ -37,8 +37,8 @@ exports.statusCommand = statusCommand;
|
|
|
37
37
|
const fs = __importStar(require("fs"));
|
|
38
38
|
const path = __importStar(require("path"));
|
|
39
39
|
const logger_1 = require("../logger");
|
|
40
|
-
const todo_1 = require("
|
|
41
|
-
const
|
|
40
|
+
const todo_1 = require("../todo");
|
|
41
|
+
const settingsLoader_1 = require("../core/settingsLoader");
|
|
42
42
|
function statusCommand(program) {
|
|
43
43
|
program
|
|
44
44
|
.command('status [path]')
|
|
@@ -46,7 +46,7 @@ function statusCommand(program) {
|
|
|
46
46
|
.option('--all', 'Also list completed tasks')
|
|
47
47
|
.action((workspacePath, opts) => {
|
|
48
48
|
const cwd = workspacePath ? path.resolve(workspacePath) : process.cwd();
|
|
49
|
-
const settings = (0,
|
|
49
|
+
const settings = (0, settingsLoader_1.loadSettingsForRoot)(cwd);
|
|
50
50
|
const todoFile = settings.todoPath
|
|
51
51
|
? path.resolve(cwd, settings.todoPath)
|
|
52
52
|
: path.join(cwd, 'TODO.md');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,sCA8DC;AArED,uCAAyB;AACzB,2CAA6B;AAE7B,sCAAgC;AAChC,
|
|
1
|
+
{"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Command } from 'commander';
|
|
2
|
+
/**
|
|
3
|
+
* Print the most recent CLI output for an agent in the workspace.
|
|
4
|
+
*
|
|
5
|
+
* Each task dispatched by the loop tees Claude/Copilot/OpenCode's stdout into
|
|
6
|
+
* <root>/.autodev/output/<provider>/<messageId>.txt
|
|
7
|
+
* The pointer file <provider>.latest holds the current messageId. Reading
|
|
8
|
+
* that file gives us the final message Claude wrote when it finished the
|
|
9
|
+
* task — useful for surfacing the agent's own summary instead of just the
|
|
10
|
+
* loop's "Task done" log line.
|
|
11
|
+
*/
|
|
12
|
+
export declare function tailOutputCommand(program: Command): void;
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
export declare class ConfigManager {
|
|
2
|
+
/**
|
|
3
|
+
* Write bypassPermissions to ~/.claude/settings.json and, if a workspace
|
|
4
|
+
* root is provided, allow:* to <root>/.claude/settings.json.
|
|
5
|
+
*/
|
|
6
|
+
static applyClaudePermissions(root?: string, log?: (m: string) => void): void;
|
|
7
|
+
/**
|
|
8
|
+
* Write permission:{"*":"allow"} to the OpenCode user config and optionally
|
|
9
|
+
* to <root>/opencode.json (project-level).
|
|
10
|
+
*/
|
|
11
|
+
static applyOpenCodePermissions(root?: string, log?: (m: string) => void): void;
|
|
12
|
+
/**
|
|
13
|
+
* Enable or disable `setCacheKey: true` for all provider sections in the
|
|
14
|
+
* project-level `opencode.json`. When `enabled` is true, every existing
|
|
15
|
+
* provider entry gets `options.setCacheKey = true` added. When false, the
|
|
16
|
+
* key is deleted (options object is pruned if it becomes empty).
|
|
17
|
+
*/
|
|
18
|
+
static applyOpenCodeCacheSettings(root: string, enabled: boolean, log?: (m: string) => void): void;
|
|
19
|
+
/**
|
|
20
|
+
* Apply `timeout` and `chunkTimeout` to every provider section in the
|
|
21
|
+
* project-level `opencode.json`. Values of 0 mean "remove the key" so the
|
|
22
|
+
* OpenCode default applies.
|
|
23
|
+
*/
|
|
24
|
+
static applyOpenCodeTimeoutSettings(root: string, timeoutMs: number, chunkTimeoutMs: number, log?: (m: string) => void): void;
|
|
25
|
+
/**
|
|
26
|
+
* Write MCP server definitions to project-local config files only.
|
|
27
|
+
* Covers: .claude/settings.local.json, .vscode/mcp.json, opencode.json, .mcp.json
|
|
28
|
+
* The memory server uses <root>/.autodev/memories/.mcp-graph.json as its storage file.
|
|
29
|
+
*
|
|
30
|
+
* The full server set is `DEFAULT_MCP_SERVERS` ∪ user-defined entries from
|
|
31
|
+
* `.autodev/settings.json:mcpServers`. User entries with the same name as
|
|
32
|
+
* a default override the default — that lets users tune env vars / args of
|
|
33
|
+
* the built-in servers (e.g. point `memory` at a different file).
|
|
34
|
+
*/
|
|
35
|
+
static syncProjectMcpServers(root: string, log?: (m: string) => void): void;
|
|
36
|
+
/**
|
|
37
|
+
* @deprecated Use syncProjectMcpServers(root) instead.
|
|
38
|
+
* Kept for backwards compat — no longer called from applyAll.
|
|
39
|
+
*/
|
|
40
|
+
static syncDefaultMcpServers(log?: (m: string) => void): void;
|
|
41
|
+
static applyAll(root?: string, log?: (m: string) => void): void;
|
|
42
|
+
}
|