orbitmap 0.4.0-next.0 → 0.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +148 -45
- package/dist/adapters/cloud.d.ts +36 -3
- package/dist/adapters/cloud.js +79 -17
- package/dist/adapters/cloud.js.map +1 -1
- package/dist/adapters/factory.d.ts +8 -4
- package/dist/adapters/factory.js +9 -5
- package/dist/adapters/factory.js.map +1 -1
- package/dist/adapters/local/context.d.ts +4 -3
- package/dist/adapters/local/context.js +4 -3
- package/dist/adapters/local/context.js.map +1 -1
- package/dist/commands/assign.js +9 -4
- package/dist/commands/assign.js.map +1 -1
- package/dist/commands/create.js +1 -6
- package/dist/commands/create.js.map +1 -1
- package/dist/commands/ideas.js +1 -6
- package/dist/commands/ideas.js.map +1 -1
- package/dist/commands/init.d.ts +28 -0
- package/dist/commands/init.js +248 -132
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/issues.js +1 -6
- package/dist/commands/issues.js.map +1 -1
- package/dist/commands/setup-agent.d.ts +16 -0
- package/dist/commands/setup-agent.js +38 -5
- package/dist/commands/setup-agent.js.map +1 -1
- package/dist/commands/setup-mcp.js +13 -42
- package/dist/commands/setup-mcp.js.map +1 -1
- package/dist/commands/task.js +3 -13
- package/dist/commands/task.js.map +1 -1
- package/dist/config.d.ts +69 -17
- package/dist/config.js +206 -32
- package/dist/config.js.map +1 -1
- package/dist/doc-cache.d.ts +21 -1
- package/dist/doc-cache.js +72 -12
- package/dist/doc-cache.js.map +1 -1
- package/dist/id-resolve.d.ts +61 -0
- package/dist/id-resolve.js +87 -0
- package/dist/id-resolve.js.map +1 -0
- package/dist/index.js +26 -12
- package/dist/index.js.map +1 -1
- package/dist/mcp-config.d.ts +36 -0
- package/dist/mcp-config.js +51 -0
- package/dist/mcp-config.js.map +1 -0
- package/dist/oauth.d.ts +8 -0
- package/dist/oauth.js +54 -15
- package/dist/oauth.js.map +1 -1
- package/dist/paths.d.ts +97 -0
- package/dist/paths.js +178 -0
- package/dist/paths.js.map +1 -0
- package/dist/project-config.d.ts +75 -0
- package/dist/project-config.js +55 -0
- package/dist/project-config.js.map +1 -0
- package/dist/workspace-resolve.d.ts +56 -24
- package/dist/workspace-resolve.js +106 -25
- package/dist/workspace-resolve.js.map +1 -1
- package/package.json +1 -1
package/dist/commands/init.js
CHANGED
|
@@ -2,12 +2,15 @@ import readline from 'node:readline';
|
|
|
2
2
|
import { mkdir, writeFile } from 'node:fs/promises';
|
|
3
3
|
import { basename, join, relative, resolve } from 'node:path';
|
|
4
4
|
import { OrbitMapClient } from '../api-client.js';
|
|
5
|
-
import {
|
|
6
|
-
import { ensureGitignore } from '../doc-cache.js';
|
|
7
|
-
import { loadCredentials,
|
|
5
|
+
import { saveGlobalConfig, saveProjectConfig, DEFAULT_API_HOST, DEFAULT_API_URL, } from '../config.js';
|
|
6
|
+
import { ensureGitignore, gitignoreShadowsProjectConfig } from '../doc-cache.js';
|
|
7
|
+
import { loadCredentials, saveAgentProfile, validateProfile } from '../oauth.js';
|
|
8
|
+
import { buildMcpUrl, buildOrbitmapBlock, maskBlockForPrint } from '../mcp-config.js';
|
|
9
|
+
import { CREDENTIALS_FILENAME, resolveOrbitMapHome } from '../paths.js';
|
|
8
10
|
import { LocalStore, slugify } from '../adapters/local/store.js';
|
|
9
11
|
import { LINK_FILE, ORBITMAP_DIR } from '../workspace-resolve.js';
|
|
10
|
-
import {
|
|
12
|
+
import { printError } from '../output.js';
|
|
13
|
+
import { AGENT_MENU_ORDER, agentConfigFile, agentLabel, agentTypeNames, detectAgent, installAgentSkills, parseAgentType, } from './setup-agent.js';
|
|
11
14
|
/**
|
|
12
15
|
* One readline interface for the whole `init` run.
|
|
13
16
|
*
|
|
@@ -106,10 +109,23 @@ async function promptSecret(question) {
|
|
|
106
109
|
}
|
|
107
110
|
});
|
|
108
111
|
}
|
|
112
|
+
/**
|
|
113
|
+
* `orbitmap init` — the documented command pattern (try/catch → `printError`).
|
|
114
|
+
*
|
|
115
|
+
* The catch is not decorative: this command writes three files (`credentials.json`, a
|
|
116
|
+
* config file, `.gitignore`), and any of those writes can fail for ordinary reasons — a
|
|
117
|
+
* read-only `$HOME`, a `credentials.json` owned by another user, a full disk. Without it
|
|
118
|
+
* the rejection escapes to Commander as an unhandled promise rejection and the user sees a
|
|
119
|
+
* stack trace instead of an error message.
|
|
120
|
+
*/
|
|
109
121
|
export async function initCommand(options = {}) {
|
|
110
122
|
try {
|
|
111
123
|
await runInit(options);
|
|
112
124
|
}
|
|
125
|
+
catch (error) {
|
|
126
|
+
printError(error, false);
|
|
127
|
+
process.exitCode = 1;
|
|
128
|
+
}
|
|
113
129
|
finally {
|
|
114
130
|
closePrompts();
|
|
115
131
|
}
|
|
@@ -164,7 +180,12 @@ async function askMode() {
|
|
|
164
180
|
}
|
|
165
181
|
return undefined;
|
|
166
182
|
}
|
|
167
|
-
// ── Path 1: cloud
|
|
183
|
+
// ── Path 1: cloud ─────────────────────────────────────────────────────────────
|
|
184
|
+
//
|
|
185
|
+
// ADR 0002: the config written here now goes to `<cwd>/.orbitmap/config.json` by default
|
|
186
|
+
// (`--global` opts into the old `~/.orbitmap/config.json` target), holds no secret, and
|
|
187
|
+
// names an `agent` profile instead of embedding the key. The key itself always goes to
|
|
188
|
+
// `~/.orbitmap/credentials.json`, regardless of `--global`.
|
|
168
189
|
async function cloudInit(options, apiKeyInput) {
|
|
169
190
|
const nonInteractive = !!apiKeyInput;
|
|
170
191
|
let profile = 'full';
|
|
@@ -178,104 +199,112 @@ async function cloudInit(options, apiKeyInput) {
|
|
|
178
199
|
return;
|
|
179
200
|
}
|
|
180
201
|
}
|
|
181
|
-
let fullApiUrl =
|
|
202
|
+
let fullApiUrl = DEFAULT_API_URL;
|
|
203
|
+
let apiKey;
|
|
204
|
+
let area;
|
|
182
205
|
if (nonInteractive) {
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
const area = options.area || '';
|
|
206
|
+
apiKey = apiKeyInput;
|
|
207
|
+
area = options.area || '';
|
|
186
208
|
console.log('Validating credentials...');
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
};
|
|
199
|
-
await saveConfig(config);
|
|
200
|
-
const agentName = response.data.agent.name;
|
|
201
|
-
const areaName = response.data.area?.name;
|
|
202
|
-
if (areaName) {
|
|
203
|
-
console.log(`✓ Connected as ${agentName} on area ${areaName}`);
|
|
204
|
-
}
|
|
205
|
-
else {
|
|
206
|
-
console.log(`✓ Connected as ${agentName}`);
|
|
209
|
+
}
|
|
210
|
+
else {
|
|
211
|
+
console.log('OrbitMap CLI Setup\n');
|
|
212
|
+
if (options.advanced) {
|
|
213
|
+
const apiUrl = await prompt('API URL', DEFAULT_API_HOST);
|
|
214
|
+
fullApiUrl = apiUrl.replace(/\/+$/, '') + '/api/agent';
|
|
215
|
+
if (fullApiUrl !== DEFAULT_API_URL) {
|
|
216
|
+
console.log(`Note: ${fullApiUrl} is used to validate the key right now and is then ` +
|
|
217
|
+
'discarded — config files no longer store a custom api_url (ADR 0002). Every ' +
|
|
218
|
+
'later command will talk to ' +
|
|
219
|
+
`${DEFAULT_API_URL} unless you set ORBITMAP_API_URL in your environment.`);
|
|
207
220
|
}
|
|
208
|
-
console.log('Configuration saved to ~/.orbitmap/config.json');
|
|
209
|
-
printMcpConfig(profile, apiKey, response.data.area?.id || area);
|
|
210
221
|
}
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
}
|
|
215
|
-
else {
|
|
216
|
-
console.error('Validation failed: could not connect to API.');
|
|
217
|
-
}
|
|
222
|
+
apiKey = await promptSecret('Agent API Key');
|
|
223
|
+
if (!apiKey) {
|
|
224
|
+
console.error('Error: Agent API Key is required.');
|
|
218
225
|
process.exitCode = 1;
|
|
219
226
|
return;
|
|
220
227
|
}
|
|
221
|
-
await
|
|
222
|
-
|
|
223
|
-
}
|
|
224
|
-
// Interactive mode
|
|
225
|
-
console.log('OrbitMap CLI Setup\n');
|
|
226
|
-
if (options.advanced) {
|
|
227
|
-
const apiUrl = await prompt('API URL', 'https://orbitmap-main-x5n6qz.laravel.cloud');
|
|
228
|
-
fullApiUrl = apiUrl.replace(/\/+$/, '') + '/api/agent';
|
|
229
|
-
}
|
|
230
|
-
const apiKey = await promptSecret('Agent API Key');
|
|
231
|
-
if (!apiKey) {
|
|
232
|
-
console.error('Error: Agent API Key is required.');
|
|
233
|
-
process.exitCode = 1;
|
|
234
|
-
return;
|
|
228
|
+
area = options.area || (await prompt('Default Area ID (optional, press Enter to skip)'));
|
|
229
|
+
console.log('\nValidating credentials...');
|
|
235
230
|
}
|
|
236
|
-
const area = options.area || await prompt('Default Area ID (optional, press Enter to skip)');
|
|
237
|
-
console.log('\nValidating credentials...');
|
|
238
231
|
const client = new OrbitMapClient(apiKey, area || undefined, fullApiUrl);
|
|
232
|
+
let response;
|
|
239
233
|
try {
|
|
240
|
-
|
|
241
|
-
// Extend, do not replace: unrelated keys (`mode`, `workspace_path`, the legacy
|
|
242
|
-
// `project_id`) belong to other projects and must survive a cloud `init`.
|
|
243
|
-
const existing = await loadConfig();
|
|
244
|
-
const config = {
|
|
245
|
-
...existing,
|
|
246
|
-
api_url: fullApiUrl,
|
|
247
|
-
api_key: apiKey,
|
|
248
|
-
...(area ? { area } : {}),
|
|
249
|
-
};
|
|
250
|
-
await saveConfig(config);
|
|
251
|
-
const agentName = response.data.agent.name;
|
|
252
|
-
const areaName = response.data.area?.name;
|
|
253
|
-
if (areaName) {
|
|
254
|
-
console.log(`\n✓ Connected as ${agentName} on area ${areaName}`);
|
|
255
|
-
}
|
|
256
|
-
else {
|
|
257
|
-
console.log(`\n✓ Connected as ${agentName}`);
|
|
258
|
-
}
|
|
259
|
-
console.log('Configuration saved to ~/.orbitmap/config.json');
|
|
260
|
-
printMcpConfig(profile, apiKey, response.data.area?.id || area);
|
|
234
|
+
response = (await client.getContext(area || undefined));
|
|
261
235
|
}
|
|
262
236
|
catch (error) {
|
|
237
|
+
const nl = nonInteractive ? '' : '\n';
|
|
263
238
|
if (error instanceof Error) {
|
|
264
|
-
console.error(
|
|
239
|
+
console.error(`${nl}Validation failed: ${error.message}`);
|
|
265
240
|
}
|
|
266
241
|
else {
|
|
267
|
-
console.error(
|
|
242
|
+
console.error(`${nl}Validation failed: could not connect to API.`);
|
|
268
243
|
}
|
|
269
244
|
process.exitCode = 1;
|
|
270
245
|
return;
|
|
271
246
|
}
|
|
247
|
+
const agentName = response.data.agent.name;
|
|
248
|
+
const agentSlug = slugify(agentName);
|
|
249
|
+
const resolvedArea = response.data.area?.id || area;
|
|
250
|
+
// Secret goes to credentials.json under the agent's own profile — never into a config
|
|
251
|
+
// file that might get committed.
|
|
252
|
+
await saveAgentProfile(agentSlug, { api_key: apiKey });
|
|
253
|
+
// Both save functions merge into whatever the file already holds — see `mergeIntoFile`
|
|
254
|
+
// in `config.ts`. That matters in both directions: a `--global` init must not drop
|
|
255
|
+
// another project's `workspace_path`, and a project init must not drop a `mode: "local"`
|
|
256
|
+
// (or any future field) the repository committed, which would then reach the whole team
|
|
257
|
+
// through git.
|
|
258
|
+
const configPatch = {
|
|
259
|
+
mode: 'cloud',
|
|
260
|
+
agent: agentSlug,
|
|
261
|
+
...(resolvedArea ? { area: resolvedArea } : {}),
|
|
262
|
+
};
|
|
263
|
+
let configLabel;
|
|
264
|
+
if (options.global) {
|
|
265
|
+
configLabel = await saveGlobalConfig(configPatch);
|
|
266
|
+
}
|
|
267
|
+
else {
|
|
268
|
+
const cwd = process.cwd();
|
|
269
|
+
const file = await saveProjectConfig(configPatch, cwd);
|
|
270
|
+
configLabel = relative(cwd, file) || file;
|
|
271
|
+
if (gitignoreShadowsProjectConfig(cwd)) {
|
|
272
|
+
console.log(`\nNote: .gitignore already ignores the whole ${ORBITMAP_DIR}/ directory, which also ` +
|
|
273
|
+
`hides ${configLabel}. Replace that blanket entry with the scoped ones ` +
|
|
274
|
+
`("${ORBITMAP_DIR}/docs/", "${ORBITMAP_DIR}/link.json") so this file can be committed.`);
|
|
275
|
+
}
|
|
276
|
+
}
|
|
277
|
+
const areaName = response.data.area?.name;
|
|
278
|
+
const nl = nonInteractive ? '' : '\n';
|
|
279
|
+
if (areaName) {
|
|
280
|
+
console.log(`${nl}✓ Connected as ${agentName} on area ${areaName}`);
|
|
281
|
+
}
|
|
282
|
+
else {
|
|
283
|
+
console.log(`${nl}✓ Connected as ${agentName}`);
|
|
284
|
+
}
|
|
285
|
+
console.log(`Configuration saved to ${configLabel}${options.global ? ' (--global)' : ''}`);
|
|
286
|
+
console.log(`API key saved to ${credentialsPath()} (profile "${agentSlug}")`);
|
|
287
|
+
await printMcpConfig(profile, apiKey, resolvedArea);
|
|
272
288
|
await installSkillsStep(options);
|
|
273
289
|
}
|
|
290
|
+
/** Where the API key was actually written — the real path, which
|
|
291
|
+
* `ORBITMAP_CONFIG_HOME`/`XDG_CONFIG_HOME` may have relocated. */
|
|
292
|
+
function credentialsPath() {
|
|
293
|
+
return join(resolveOrbitMapHome().dir, CREDENTIALS_FILENAME);
|
|
294
|
+
}
|
|
274
295
|
// ── Path 2: local files (spec §5) ────────────────────────────────────────────
|
|
275
296
|
const DEFAULT_WORKSPACE_DIR = `./${ORBITMAP_DIR}`;
|
|
276
297
|
async function localInit(options, { interactive }) {
|
|
277
298
|
const cwd = process.cwd();
|
|
278
299
|
const cwdName = basename(cwd) || 'orbitmap';
|
|
300
|
+
// `--global` only names a *target file* for the cloud path's `mode`/`agent`/`area`.
|
|
301
|
+
// Local mode writes no config file at all (see step 2 below), so there is nothing for the
|
|
302
|
+
// flag to redirect — say so rather than accepting it and doing nothing.
|
|
303
|
+
if (options.global) {
|
|
304
|
+
console.log('Note: --global has no effect in local mode — local setup deliberately writes no ' +
|
|
305
|
+
'config file, machine-wide or otherwise. This project is local because of its own ' +
|
|
306
|
+
`${join('.', ORBITMAP_DIR)} marker, and nothing here may change another project's mode.`);
|
|
307
|
+
}
|
|
279
308
|
let workspaceInput = options.workspace ?? '';
|
|
280
309
|
let workspaceName = options.workspaceName ?? '';
|
|
281
310
|
let areaName = options.area ?? '';
|
|
@@ -304,17 +333,13 @@ async function localInit(options, { interactive }) {
|
|
|
304
333
|
console.log('');
|
|
305
334
|
console.log(`Workspace "${workspace.name}" ready at ${workspaceDir}`);
|
|
306
335
|
console.log(`First area: ${area} (${areaSlug})`);
|
|
307
|
-
// 2. Global config
|
|
308
|
-
//
|
|
309
|
-
// `.orbitmap/` marker (step 1 or the
|
|
310
|
-
//
|
|
311
|
-
//
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
const config = { ...existing, area: areaSlug };
|
|
315
|
-
await saveConfig(config);
|
|
316
|
-
console.log(`Set the default area to "${areaSlug}" in ~/.orbitmap/config.json`);
|
|
317
|
-
}
|
|
336
|
+
// 2. Global config: untouched, on purpose (ADR 0002, supersedes spec §5 step 2's
|
|
337
|
+
// "first-run convenience"). Nothing here may change another project's mode or area —
|
|
338
|
+
// this project is local because of its own `.orbitmap/` marker (step 1 below, or the
|
|
339
|
+
// `link.json` of step 3), never because of a global field. A previous version of this
|
|
340
|
+
// command filled the global `area` on a first run when it was still empty; that is
|
|
341
|
+
// exactly the bug ADR 0002 fixes (a local `init` in one repo silently became the
|
|
342
|
+
// fallback area for every *other*, unrelated cloud project on the machine) — removed.
|
|
318
343
|
// 3. Project pointer / gitignore.
|
|
319
344
|
if (inProject) {
|
|
320
345
|
console.log('');
|
|
@@ -327,9 +352,11 @@ async function localInit(options, { interactive }) {
|
|
|
327
352
|
const linkFile = join(linkDir, LINK_FILE);
|
|
328
353
|
await mkdir(linkDir, { recursive: true });
|
|
329
354
|
await writeFile(linkFile, JSON.stringify({ workspace: workspaceDir, area: areaSlug }, null, 2) + '\n', 'utf-8');
|
|
330
|
-
ensureGitignore();
|
|
355
|
+
const ignored = ensureGitignore(undefined, cwd);
|
|
331
356
|
console.log(`Wrote ${relative(cwd, linkFile) || linkFile} pointing at the workspace.`);
|
|
332
|
-
|
|
357
|
+
if (ignored.length > 0) {
|
|
358
|
+
console.log(`Added ${ignored.join(' and ')} to .gitignore.`);
|
|
359
|
+
}
|
|
333
360
|
}
|
|
334
361
|
// 4. Skills, then the summary.
|
|
335
362
|
await installSkillsStep(options);
|
|
@@ -338,7 +365,7 @@ async function localInit(options, { interactive }) {
|
|
|
338
365
|
console.log(` Data lives in ${workspaceDir} (plain Markdown files)`);
|
|
339
366
|
console.log(` Active area ${areaSlug}`);
|
|
340
367
|
console.log(' Switch areas orbitmap areas → orbitmap <cmd> --area <slug>');
|
|
341
|
-
console.log(' (or set ORBITMAP_AREA
|
|
368
|
+
console.log(' (or set ORBITMAP_AREA, or `default_area` in workspace.yml)');
|
|
342
369
|
console.log(' See your tasks orbitmap tasks');
|
|
343
370
|
console.log(' Start working orbitmap start');
|
|
344
371
|
console.log('');
|
|
@@ -347,61 +374,150 @@ async function localInit(options, { interactive }) {
|
|
|
347
374
|
console.log('already use (cloud projects stay on their cloud configuration).');
|
|
348
375
|
}
|
|
349
376
|
// ── Step 3 (both modes): install the agent skills ────────────────────────────
|
|
377
|
+
/**
|
|
378
|
+
* Install the OrbitMap agent skills as part of `init` — not as an optional extra.
|
|
379
|
+
*
|
|
380
|
+
* The CLI on its own does not explain itself: the workflow (context resolution, the
|
|
381
|
+
* command set, the golden rules) lives in the skills, exactly as it lives in the MCP
|
|
382
|
+
* server's instructions. An `init` that finishes without them leaves the agent knowing
|
|
383
|
+
* that OrbitMap exists and nothing about how to use it.
|
|
384
|
+
*
|
|
385
|
+
* This step therefore does **not** require a pre-existing agent config. It used to call
|
|
386
|
+
* {@link detectAgent} and give up when nothing was found, which skipped the skills
|
|
387
|
+
* precisely where they were most needed — an empty directory, a fresh project, an
|
|
388
|
+
* umbrella root, CI — and made `orbitmap setup-agent` an undocumented second mandatory
|
|
389
|
+
* step. Detection is now only a way to *guess the default*; creating `CLAUDE.md` /
|
|
390
|
+
* `AGENTS.md` from nothing is a legitimate outcome (`writeBlock` has always had a
|
|
391
|
+
* "created" path).
|
|
392
|
+
*
|
|
393
|
+
* The agent type is resolved in this order:
|
|
394
|
+
* 1. `--agent <type>` — explicit, never overridden, works with no TTY and no files.
|
|
395
|
+
* 2. {@link detectAgent} — an existing `CLAUDE.md`/`.claude`/… in the current directory.
|
|
396
|
+
* 3. Interactive: ask, with "skip" as an offered answer.
|
|
397
|
+
* 4. Non-interactive with nothing to go on: skip, and say how to fix it.
|
|
398
|
+
*
|
|
399
|
+
* Rule 4 is deliberately a skip rather than a default. A scripted run has given the CLI
|
|
400
|
+
* no signal at all about which agent (if any) works in this directory, and the failure
|
|
401
|
+
* modes are asymmetric: a wrong guess writes an unwanted `CLAUDE.md` into a repository
|
|
402
|
+
* that a CI job may well commit, while a skip costs one documented flag. `--agent` makes
|
|
403
|
+
* the complete install available to scripts in the same single command, which is the
|
|
404
|
+
* point of the change; guessing is not needed for that.
|
|
405
|
+
*
|
|
406
|
+
* Nothing here prompts unless stdin is a TTY, so a scripted run can never block.
|
|
407
|
+
*/
|
|
350
408
|
async function installSkillsStep(options) {
|
|
351
409
|
if (options.skills === false)
|
|
352
410
|
return;
|
|
411
|
+
const agentType = await resolveSkillAgent(options);
|
|
412
|
+
if (!agentType)
|
|
413
|
+
return;
|
|
414
|
+
console.log('');
|
|
415
|
+
installAgentSkills(process.cwd(), agentType);
|
|
416
|
+
}
|
|
417
|
+
/** Decide which agent to install for, or `null` to install nothing. See {@link installSkillsStep}. */
|
|
418
|
+
async function resolveSkillAgent(options) {
|
|
419
|
+
// 1. Explicit flag wins outright — no detection, no question.
|
|
420
|
+
if (options.agent) {
|
|
421
|
+
const parsed = parseAgentType(options.agent);
|
|
422
|
+
if (!parsed) {
|
|
423
|
+
console.log('');
|
|
424
|
+
console.log(`Skills not installed: unknown agent type "${options.agent}". ` +
|
|
425
|
+
`Valid types: ${agentTypeNames()}.`);
|
|
426
|
+
// Setup itself succeeded — a bad value on an add-on flag must not undo the config
|
|
427
|
+
// and credentials already written, but it must not pass unnoticed either.
|
|
428
|
+
process.exitCode = 1;
|
|
429
|
+
return null;
|
|
430
|
+
}
|
|
431
|
+
return parsed;
|
|
432
|
+
}
|
|
433
|
+
const interactive = !!process.stdin.isTTY;
|
|
353
434
|
const detected = detectAgent();
|
|
354
|
-
|
|
435
|
+
// 2 + 3a. Something is already here — confirm it (or take it as given when scripted).
|
|
436
|
+
if (detected) {
|
|
437
|
+
if (!interactive)
|
|
438
|
+
return detected;
|
|
355
439
|
console.log('');
|
|
356
|
-
|
|
357
|
-
|
|
440
|
+
const answer = (await prompt(`Install OrbitMap skills for ${agentLabel(detected)}? [Y/n]`))
|
|
441
|
+
.trim()
|
|
442
|
+
.toLowerCase();
|
|
443
|
+
if (answer === 'n' || answer === 'no') {
|
|
444
|
+
console.log('Skipped. Install them later with `orbitmap setup-agent`.');
|
|
445
|
+
return null;
|
|
446
|
+
}
|
|
447
|
+
return detected;
|
|
358
448
|
}
|
|
449
|
+
// 3b. Empty directory, but a human is watching: ask instead of guessing or skipping.
|
|
450
|
+
if (interactive)
|
|
451
|
+
return askSkillAgent();
|
|
452
|
+
// 4. Scripted, nothing detected, no `--agent` — say so out loud, never silently.
|
|
359
453
|
console.log('');
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
454
|
+
console.log('Skills not installed: no coding agent config found here and no --agent given.');
|
|
455
|
+
console.log(`Re-run with \`--agent <${agentTypeNames()}>\`, or run \`orbitmap setup-agent\`.`);
|
|
456
|
+
return null;
|
|
457
|
+
}
|
|
458
|
+
/**
|
|
459
|
+
* Ask which coding agent the skills are for when the directory carries no marker.
|
|
460
|
+
*
|
|
461
|
+
* Uses `init`'s own shared readline interface rather than `setup-agent`'s `pickAgent`:
|
|
462
|
+
* a second interface opened mid-run swallows buffered lines when stdin is piped (the
|
|
463
|
+
* whole reason {@link promptInterface} exists), and this question sits in the middle of
|
|
464
|
+
* a sequence of others.
|
|
465
|
+
*/
|
|
466
|
+
async function askSkillAgent() {
|
|
467
|
+
console.log('');
|
|
468
|
+
console.log('No coding agent config found in this directory.');
|
|
469
|
+
console.log('OrbitMap can create one — the skills are what teach your agent the workflow.');
|
|
470
|
+
console.log('');
|
|
471
|
+
console.log('Install the OrbitMap skills for:');
|
|
472
|
+
AGENT_MENU_ORDER.forEach((agent, index) => {
|
|
473
|
+
console.log(` [${index + 1}] ${agentLabel(agent)} (${agentConfigFile(agent)})`);
|
|
474
|
+
});
|
|
475
|
+
console.log(' [0] Skip — install later with `orbitmap setup-agent`');
|
|
476
|
+
console.log('');
|
|
477
|
+
for (let attempt = 0; attempt < 3; attempt += 1) {
|
|
478
|
+
// No default passed to `prompt` — it would render as a second "[1]" next to the range.
|
|
479
|
+
// Enter means "the first entry", which the header line above states explicitly.
|
|
480
|
+
const answer = (await prompt(` Choice [0-${AGENT_MENU_ORDER.length}, Enter = 1]`)).trim();
|
|
481
|
+
if (answer === '')
|
|
482
|
+
return AGENT_MENU_ORDER[0];
|
|
483
|
+
if (answer === '0' || answer.toLowerCase() === 'n') {
|
|
484
|
+
console.log(' Skipped. Install them later with `orbitmap setup-agent`.');
|
|
485
|
+
return null;
|
|
486
|
+
}
|
|
487
|
+
const num = Number.parseInt(answer, 10);
|
|
488
|
+
if (num >= 1 && num <= AGENT_MENU_ORDER.length)
|
|
489
|
+
return AGENT_MENU_ORDER[num - 1];
|
|
490
|
+
console.log(` Please enter a number between 0 and ${AGENT_MENU_ORDER.length}.`);
|
|
364
491
|
}
|
|
365
|
-
|
|
492
|
+
// Three unusable answers: treat it as "not now" rather than writing files on a guess.
|
|
493
|
+
console.log(' Skipped. Install them later with `orbitmap setup-agent`.');
|
|
494
|
+
return null;
|
|
366
495
|
}
|
|
367
496
|
// ── MCP config generation ──
|
|
368
|
-
|
|
497
|
+
/**
|
|
498
|
+
* Print the MCP server block for the user to paste into their client config.
|
|
499
|
+
*
|
|
500
|
+
* The block is **masked** ({@link maskBlockForPrint}) exactly as `setup-mcp` masks the
|
|
501
|
+
* identical value. This used to print `Authorization: Bearer <the real key>` verbatim, so
|
|
502
|
+
* `orbitmap init --key … | tee build.log`, a CI job log, or a scrollback buffer captured
|
|
503
|
+
* the secret in plain text (CLAUDE.md "Secrets": never print or log it). The user does not
|
|
504
|
+
* need it echoed back — they just supplied it, and it is on disk in `credentials.json`.
|
|
505
|
+
*/
|
|
369
506
|
async function printMcpConfig(profile, apiKey, area) {
|
|
370
|
-
const
|
|
371
|
-
const mcpUrl = profilePath === '/' ? MCP_BASE_URL + '/' : MCP_BASE_URL + profilePath;
|
|
507
|
+
const mcpUrl = buildMcpUrl(profile);
|
|
372
508
|
const oauthCreds = await loadCredentials();
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
url: mcpUrl,
|
|
379
|
-
};
|
|
380
|
-
}
|
|
381
|
-
else if (apiKey) {
|
|
382
|
-
// Explicit API key — Bearer token config
|
|
383
|
-
config = {
|
|
384
|
-
type: 'http',
|
|
385
|
-
url: mcpUrl,
|
|
386
|
-
headers: {
|
|
387
|
-
Authorization: `Bearer ${apiKey}`,
|
|
388
|
-
...(area ? { 'X-Orbitmap-Area': area } : {}),
|
|
389
|
-
},
|
|
390
|
-
};
|
|
391
|
-
}
|
|
392
|
-
else if (oauthCreds) {
|
|
393
|
-
// OAuth credentials — clean config
|
|
394
|
-
config = {
|
|
395
|
-
type: 'http',
|
|
396
|
-
url: mcpUrl,
|
|
397
|
-
};
|
|
398
|
-
}
|
|
399
|
-
else {
|
|
400
|
-
return; // No credentials to generate config for
|
|
401
|
-
}
|
|
509
|
+
// Without an API key and without an OAuth session there is nothing to authenticate with,
|
|
510
|
+
// so there is no config worth printing.
|
|
511
|
+
if (!apiKey && !oauthCreds)
|
|
512
|
+
return;
|
|
513
|
+
const block = buildOrbitmapBlock({ profile, token: apiKey, areaSlug: area });
|
|
402
514
|
console.log('\n── MCP Server Config ──');
|
|
403
515
|
console.log(`Profile: ${profile} | URL: ${mcpUrl}`);
|
|
404
516
|
console.log('\nAdd this to your MCP client config (e.g. claude_desktop_config.json):\n');
|
|
405
|
-
console.log(`"orbitmap": ${JSON.stringify(
|
|
517
|
+
console.log(`"orbitmap": ${JSON.stringify(maskBlockForPrint(block), null, 2)}`);
|
|
518
|
+
if (block.headers?.['Authorization']) {
|
|
519
|
+
console.log('\nThe Authorization header is masked above — substitute your agent API key ' +
|
|
520
|
+
`(also stored in ${credentialsPath()}).`);
|
|
521
|
+
}
|
|
406
522
|
}
|
|
407
523
|
//# sourceMappingURL=init.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/issues.js
CHANGED
|
@@ -1,15 +1,10 @@
|
|
|
1
1
|
import { createAdapter } from '../adapters/factory.js';
|
|
2
|
+
import { isObjectNumber, stripPrefix } from '../id-resolve.js';
|
|
2
3
|
import { formatOutput, printError, printSuccess, formatTable } from '../output.js';
|
|
3
4
|
const VALID_SEVERITIES = ['critical', 'high', 'medium', 'low'];
|
|
4
5
|
const VALID_RESOLVE_STATUSES = ['resolved', 'wont_fix', 'duplicate'];
|
|
5
6
|
const VALID_ISSUE_STATUSES = ['open', 'investigating', 'backlog', 'resolved', 'wont_fix', 'duplicate'];
|
|
6
7
|
const RESOLVE_TYPE_STATUSES = ['resolved', 'wont_fix', 'duplicate'];
|
|
7
|
-
function isObjectNumber(id) {
|
|
8
|
-
return /^([A-Z]{2}-)?[a-z0-9]{6}$/.test(id);
|
|
9
|
-
}
|
|
10
|
-
function stripPrefix(id) {
|
|
11
|
-
return id.replace(/^[A-Z]{2}-/, '');
|
|
12
|
-
}
|
|
13
8
|
// ── Commands ──
|
|
14
9
|
export async function issueRegisterCommand(options) {
|
|
15
10
|
if (options.severity && !VALID_SEVERITIES.includes(options.severity)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"issues.js","sourceRoot":"","sources":["../../src/commands/issues.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAiEnF,MAAM,gBAAgB,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;AAC/D,MAAM,sBAAsB,GAAG,CAAC,UAAU,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;AACrE,MAAM,oBAAoB,GAAG,CAAC,MAAM,EAAE,eAAe,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;AACvG,MAAM,qBAAqB,GAAG,CAAC,UAAU,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;AAEpE,
|
|
1
|
+
{"version":3,"file":"issues.js","sourceRoot":"","sources":["../../src/commands/issues.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,23 @@
|
|
|
1
1
|
export type AgentType = 'claude' | 'gemini' | 'codex' | 'cursor' | 'windsurf' | 'generic';
|
|
2
|
+
/**
|
|
3
|
+
* Menu order for "which agent are you using?" — shared with `init`, which asks the same
|
|
4
|
+
* question through its own readline interface (see the note on {@link pickAgent}).
|
|
5
|
+
* The first entry is also the documented default when a caller needs one.
|
|
6
|
+
*/
|
|
7
|
+
export declare const AGENT_MENU_ORDER: readonly AgentType[];
|
|
2
8
|
export declare function detectAgent(cwdOverride?: string): AgentType | null;
|
|
3
9
|
/** Human label for an agent type (for prompts in other commands, e.g. `init`). */
|
|
4
10
|
export declare function agentLabel(agentType: AgentType): string;
|
|
11
|
+
/** The config file an agent type's instruction block is written to (e.g. `CLAUDE.md`). */
|
|
12
|
+
export declare function agentConfigFile(agentType: AgentType): string;
|
|
13
|
+
/** Every accepted `--agent` value, in menu order, for help text and error messages. */
|
|
14
|
+
export declare function agentTypeNames(): string;
|
|
15
|
+
/**
|
|
16
|
+
* Parse a user-supplied `--agent` value. Returns `null` for anything unknown so the
|
|
17
|
+
* caller can print its own error — `init` and `setup-agent` both accept the flag and
|
|
18
|
+
* must reject the same set of values the same way.
|
|
19
|
+
*/
|
|
20
|
+
export declare function parseAgentType(value: string): AgentType | null;
|
|
5
21
|
/**
|
|
6
22
|
* Install the OrbitMap skills for one agent, non-interactively and idempotently.
|
|
7
23
|
* Claude Code → `.claude/skills/<name>/SKILL.md` × 4 + the CLAUDE.md hook block;
|