insta 0.0.41 → 0.0.43
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/commands/setup.js +16 -16
- package/package.json +1 -1
package/dist/commands/setup.js
CHANGED
|
@@ -74,13 +74,13 @@ export function parseInstalledAgents(output) {
|
|
|
74
74
|
export function summarizeInstall(output) {
|
|
75
75
|
const { count, names } = parseInstalledAgents(output);
|
|
76
76
|
if (count === 0)
|
|
77
|
-
return '✓
|
|
77
|
+
return '✓ Agents set up';
|
|
78
78
|
const shown = names.slice(0, 6);
|
|
79
79
|
const more = count - shown.length;
|
|
80
80
|
const list = shown.length
|
|
81
81
|
? shown.join(', ') + (more > 0 ? `, +${more} more` : '')
|
|
82
82
|
: `${count} agent${count === 1 ? '' : 's'}`;
|
|
83
|
-
return `✓
|
|
83
|
+
return `✓ Agents — ${list}`;
|
|
84
84
|
}
|
|
85
85
|
// ---- CLI self-install (makes `npx -y insta setup agent` a complete one-liner) ----
|
|
86
86
|
// Under npx the CLI runs from the npm cache and vanishes when the process exits — but the skill
|
|
@@ -392,8 +392,8 @@ export async function setupAgent(opts, run = defaultRunner, mint, installConfigs
|
|
|
392
392
|
const { env, skills } = await resolveEnv();
|
|
393
393
|
const args = setupArgs(skills);
|
|
394
394
|
info(env && env !== DEFAULT_ENV
|
|
395
|
-
? `setting up coding
|
|
396
|
-
: 'setting up coding
|
|
395
|
+
? `setting up your coding agents (${env}) …`
|
|
396
|
+
: 'setting up your coding agents …');
|
|
397
397
|
const res = await run('npx', args);
|
|
398
398
|
if (!res.ok) {
|
|
399
399
|
info(' skill install failed — install manually with:');
|
|
@@ -409,9 +409,9 @@ export async function setupAgent(opts, run = defaultRunner, mint, installConfigs
|
|
|
409
409
|
process.exitCode = 1;
|
|
410
410
|
return;
|
|
411
411
|
}
|
|
412
|
-
|
|
413
|
-
//
|
|
414
|
-
//
|
|
412
|
+
// Register everything first, then summarize ONCE below: the skill files, Claude Code's
|
|
413
|
+
// `claude mcp add`, and the config-file MCP entries are three mechanisms with one outcome —
|
|
414
|
+
// "your agents are ready" — so they get one line, not three inventories of agent names.
|
|
415
415
|
let claude = await registerMcp(run, mint, !!opts.mcpToken, false);
|
|
416
416
|
const others = await installConfigs();
|
|
417
417
|
// Default into login on an interactive terminal (see shouldOfferLogin) BEFORE the MCP summary:
|
|
@@ -434,18 +434,18 @@ export async function setupAgent(opts, run = defaultRunner, mint, installConfigs
|
|
|
434
434
|
}
|
|
435
435
|
}
|
|
436
436
|
}
|
|
437
|
-
//
|
|
438
|
-
// at startup;
|
|
439
|
-
const
|
|
440
|
-
|
|
441
|
-
info(`✓ MCP — ${mcpTargets.join(', ')}${others.length ? ' (already-running tools load it on restart)' : ''}`);
|
|
442
|
-
}
|
|
437
|
+
// THE summary line. The restart note exists because config-file agents only read their MCP
|
|
438
|
+
// config at startup; the skill files need no restart.
|
|
439
|
+
const mcpOk = claude === 'new' || claude === 'existing' || others.length > 0;
|
|
440
|
+
info(`${summarizeInstall(res.output ?? '')} — ready to use InstaCloud${mcpOk ? ' (skill + MCP; restart any open tools)' : ''}`);
|
|
443
441
|
if (claude === 'new' && !opts.mcpToken) {
|
|
444
442
|
info(' Claude Code first use: run `/mcp` and authorize in the browser (headless machines: `insta setup agent --mcp-token`)');
|
|
445
443
|
}
|
|
446
|
-
// The
|
|
444
|
+
// The user's next move: one concrete action, not a concept. The agents drive `insta` themselves
|
|
445
|
+
// (project create/link, deploys, login via the device flow), so the human just asks for the
|
|
446
|
+
// thing they actually want.
|
|
447
447
|
info(loggedIn
|
|
448
|
-
? 'next:
|
|
449
|
-
: 'next:
|
|
448
|
+
? 'next: open your coding agent inside your app and ask it to "deploy this app on InstaCloud"'
|
|
449
|
+
: 'next: open your coding agent inside your app and ask it to "deploy this app on InstaCloud" — it will walk you through `insta login`');
|
|
450
450
|
}
|
|
451
451
|
//# sourceMappingURL=setup.js.map
|