@ritualai/cli 0.7.6 → 0.7.7
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/init.js +48 -25
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/logout.js +1 -1
- package/dist/commands/logout.js.map +1 -1
- package/dist/lib/api-client.js +18 -0
- package/dist/lib/api-client.js.map +1 -1
- package/dist/lib/gitignore-update.js +121 -0
- package/dist/lib/gitignore-update.js.map +1 -0
- package/dist/lib/oidc.js +58 -16
- package/dist/lib/oidc.js.map +1 -1
- package/dist/lib/pat-store.js +146 -14
- package/dist/lib/pat-store.js.map +1 -1
- package/package.json +1 -1
package/dist/commands/init.js
CHANGED
|
@@ -5,10 +5,12 @@ exports.initCommand = initCommand;
|
|
|
5
5
|
const config_1 = require("../lib/config");
|
|
6
6
|
const api_client_1 = require("../lib/api-client");
|
|
7
7
|
const pat_store_1 = require("../lib/pat-store");
|
|
8
|
+
const oidc_1 = require("../lib/oidc");
|
|
8
9
|
const detector_1 = require("../lib/agents/detector");
|
|
9
10
|
const providers_1 = require("../lib/agents/providers");
|
|
10
11
|
const configure_mcp_1 = require("../lib/agents/configure-mcp");
|
|
11
12
|
const skill_copy_1 = require("../lib/skill-copy");
|
|
13
|
+
const gitignore_update_1 = require("../lib/gitignore-update");
|
|
12
14
|
const auth_flow_1 = require("../lib/auth-flow");
|
|
13
15
|
const prompt_1 = require("../lib/prompt");
|
|
14
16
|
const workspace_flow_1 = require("../lib/workspace-flow");
|
|
@@ -365,7 +367,7 @@ async function initCommand(opts = {}) {
|
|
|
365
367
|
const mcpUrl = (0, api_client_1.mcpUrlFromIssuer)(issuer);
|
|
366
368
|
let pat;
|
|
367
369
|
try {
|
|
368
|
-
pat = await (0, pat_store_1.mintAgentPat)({ api });
|
|
370
|
+
pat = await (0, pat_store_1.mintAgentPat)({ api, webAppUrl: (0, oidc_1.webAppUrlFromIssuer)(issuer) });
|
|
369
371
|
}
|
|
370
372
|
catch (err) {
|
|
371
373
|
console.error(` ✗ Could not mint access token: ${err.message}`);
|
|
@@ -373,7 +375,7 @@ async function initCommand(opts = {}) {
|
|
|
373
375
|
process.exitCode = 1;
|
|
374
376
|
return;
|
|
375
377
|
}
|
|
376
|
-
printKeyCreatedBlock(pat, webAppUrlFromIssuer(issuer), targets);
|
|
378
|
+
printKeyCreatedBlock(pat, (0, oidc_1.webAppUrlFromIssuer)(issuer), targets);
|
|
377
379
|
console.log('');
|
|
378
380
|
// --- 3.5 Bind a project workspace --------------------------------
|
|
379
381
|
// Project-scoped state — see ./../lib/workspace-flow.ts for the
|
|
@@ -400,6 +402,34 @@ async function initCommand(opts = {}) {
|
|
|
400
402
|
copyResults.push((0, skill_copy_1.copySkillsForProvider)(t.provider, projectDir));
|
|
401
403
|
registrationResults.push((0, configure_mcp_1.configureMcpForAgent)(t.provider, { url: mcpUrl, token: pat.plaintextToken }));
|
|
402
404
|
}
|
|
405
|
+
// --- 4b. Keep scaffolded skill dirs out of git -------------------
|
|
406
|
+
//
|
|
407
|
+
// Without this step, every `ritual init` leaves the user with
|
|
408
|
+
// ~85 untracked files staged in their source-control UI (one per
|
|
409
|
+
// reference file per agent × 7 detected agents). The skill bundle
|
|
410
|
+
// is overwritten on every init from the npm package, so tracking
|
|
411
|
+
// it adds zero value and obscures real working-tree changes.
|
|
412
|
+
//
|
|
413
|
+
// Only the providers we actually scaffolded into get an entry —
|
|
414
|
+
// keeps the .gitignore block aligned with what's on disk. The
|
|
415
|
+
// helper is idempotent: re-runs replace the marker-bracketed block
|
|
416
|
+
// in place rather than appending duplicates.
|
|
417
|
+
const scaffoldedProviders = targets
|
|
418
|
+
.filter((_, i) => copyResults[i]?.copied)
|
|
419
|
+
.map((t) => t.provider);
|
|
420
|
+
// Fail-soft: a .gitignore write failure (filesystem permissions,
|
|
421
|
+
// read-only volume, exotic project layout) must NOT abort init —
|
|
422
|
+
// the user's auth + scaffold succeeded; gitignore management is a
|
|
423
|
+
// UX nicety. Warn instead.
|
|
424
|
+
let gitignoreResult = null;
|
|
425
|
+
try {
|
|
426
|
+
gitignoreResult = (0, gitignore_update_1.updateProjectGitignore)(projectDir, scaffoldedProviders);
|
|
427
|
+
}
|
|
428
|
+
catch (err) {
|
|
429
|
+
const msg = err.message;
|
|
430
|
+
console.warn(` ⚠ Could not update .gitignore (${msg}). Skill files will appear as untracked — ` +
|
|
431
|
+
'add the relevant <agent>/<subdir>/ritual/ paths to your .gitignore manually if needed.');
|
|
432
|
+
}
|
|
403
433
|
// --- 5. Summary --------------------------------------------------
|
|
404
434
|
//
|
|
405
435
|
// Two pieces of feedback the user gets here:
|
|
@@ -416,6 +446,17 @@ async function initCommand(opts = {}) {
|
|
|
416
446
|
// new MCP server until restart. This was the single biggest
|
|
417
447
|
// footgun the legacy CLI surfaced and we want feature parity.
|
|
418
448
|
printDetectedAgentsBlock(targets, copyResults, registrationResults);
|
|
449
|
+
// One-liner about the .gitignore touch, only when we actually
|
|
450
|
+
// wrote something. Silent on no-op (already up to date or no
|
|
451
|
+
// scaffolded agents) so the summary doesn't get noisy.
|
|
452
|
+
if (gitignoreResult?.changed) {
|
|
453
|
+
const verb = gitignoreResult.preExisting ? 'Updated' : 'Created';
|
|
454
|
+
const count = gitignoreResult.entries.length;
|
|
455
|
+
const preview = count <= 2
|
|
456
|
+
? gitignoreResult.entries.join(', ')
|
|
457
|
+
: `${gitignoreResult.entries.slice(0, 1).join(', ')} + ${count - 1} more`;
|
|
458
|
+
console.log(` ✓ ${verb} .gitignore (added ${preview})`);
|
|
459
|
+
}
|
|
419
460
|
printNextStepsBlock({
|
|
420
461
|
targets,
|
|
421
462
|
registrationResults,
|
|
@@ -426,28 +467,10 @@ async function initCommand(opts = {}) {
|
|
|
426
467
|
function capitalize(s) {
|
|
427
468
|
return s.length === 0 ? s : s[0].toUpperCase() + s.slice(1);
|
|
428
469
|
}
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
* dev: https://dev.ritualapp.cloud
|
|
434
|
-
* prod: https://app.ritualapp.cloud (matches the legacy domain)
|
|
435
|
-
*/
|
|
436
|
-
function webAppUrlFromIssuer(issuer) {
|
|
437
|
-
try {
|
|
438
|
-
const u = new URL(issuer);
|
|
439
|
-
const host = u.host;
|
|
440
|
-
if (host.startsWith('auth.dev.'))
|
|
441
|
-
return 'https://dev.ritualapp.cloud';
|
|
442
|
-
if (host === 'auth.ritualapp.cloud')
|
|
443
|
-
return 'https://app.ritualapp.cloud';
|
|
444
|
-
// Self-hosted / enterprise — replace auth. with app.
|
|
445
|
-
return `https://${host.replace(/^auth\./, 'app.')}`;
|
|
446
|
-
}
|
|
447
|
-
catch {
|
|
448
|
-
return 'https://app.ritualapp.cloud';
|
|
449
|
-
}
|
|
450
|
-
}
|
|
470
|
+
// webAppUrlFromIssuer is exported from lib/oidc.ts — single source of
|
|
471
|
+
// truth so the dev/prod/self-hosted mapping stays consistent across
|
|
472
|
+
// the loopback success page, the init "manage tokens at <url>" hint,
|
|
473
|
+
// and the PAT-cap manual-cleanup error message in pat-store.ts.
|
|
451
474
|
// =============================================================================
|
|
452
475
|
// Output helpers — feature-parity with legacy CLI's polished init summary.
|
|
453
476
|
// =============================================================================
|
|
@@ -489,7 +512,7 @@ function printKeyCreatedBlock(pat, webAppUrl, targets) {
|
|
|
489
512
|
console.log(` • ${t.name.padEnd(20)} ${cfg}`);
|
|
490
513
|
}
|
|
491
514
|
}
|
|
492
|
-
console.log(` Manage: ${webAppUrl}/
|
|
515
|
+
console.log(` Manage: ${webAppUrl}/u/tokens`);
|
|
493
516
|
console.log(` (Token not displayed for security. Use the manage URL to copy or revoke.)`);
|
|
494
517
|
}
|
|
495
518
|
/**
|
|
@@ -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/logout.js
CHANGED
|
@@ -63,7 +63,7 @@ async function logoutCommand(options = {}) {
|
|
|
63
63
|
console.log(' ✓ Browser SSO logout requested.');
|
|
64
64
|
console.log('');
|
|
65
65
|
console.log(' Note: this does NOT revoke any of the following — manage them separately:');
|
|
66
|
-
console.log(' • Personal Access Tokens minted by `ritual init` (revoke via /
|
|
66
|
+
console.log(' • Personal Access Tokens minted by `ritual init` (revoke via /u/tokens)');
|
|
67
67
|
console.log(' • MCP server entries in your AI coding agents (edit each agent\'s mcp.json)');
|
|
68
68
|
console.log(' • Server-side refresh tokens (handled by Keycloak realm policy)');
|
|
69
69
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logout.js","sourceRoot":"","sources":["../../src/commands/logout.ts"],"names":[],"mappings":";;;;;AA6BA,sCAwDC;AArFD,gDAAwB;AACxB,0CAAsF;AACtF,sCAA6C;AAkB7C;;;;;;;;GAQG;AACI,KAAK,UAAU,aAAa,CAAC,UAAyB,EAAE;IAC9D,MAAM,GAAG,GAAG,IAAA,wBAAe,GAAE,CAAC;IAC9B,MAAM,OAAO,GAAG,GAAG,EAAE,IAAI,EAAE,KAAK,IAAI,GAAG,EAAE,IAAI,EAAE,GAAG,IAAI,SAAS,CAAC;IAEhE,IAAA,yBAAgB,GAAE,CAAC;IAEnB,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,IAAI,GAAG,EAAE,CAAC;QACT,OAAO,CAAC,GAAG,CAAC,kCAAkC,OAAO,IAAI,CAAC,CAAC;IAC5D,CAAC;SAAM,CAAC;QACP,OAAO,CAAC,GAAG,CAAC,iDAAiD,CAAC,CAAC;IAChE,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,uBAAuB,IAAA,2BAAkB,GAAE,EAAE,CAAC,CAAC;IAE3D,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;QACjB,IAAI,CAAC,GAAG,EAAE,CAAC;YACV,qDAAqD;YACrD,6CAA6C;YAC7C,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChB,OAAO,CAAC,GAAG,CAAC,gEAAgE,CAAC,CAAC;YAC9E,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChB,OAAO;QACR,CAAC;QAED,6DAA6D;QAC7D,8DAA8D;QAC9D,0DAA0D;QAC1D,6DAA6D;QAC7D,4DAA4D;QAC5D,2DAA2D;QAC3D,4DAA4D;QAC5D,MAAM,GAAG,GAAG,IAAA,qBAAc,EAAC;YAC1B,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,QAAQ,EAAE,GAAG,CAAC,QAAQ;YACtB,OAAO,EAAE,GAAG,CAAC,QAAQ,CAAC,QAAQ;SAC9B,CAAC,CAAC;QAEH,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAC;QAC9D,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;QACtD,OAAO,CAAC,GAAG,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;QAC1B,IAAI,CAAC;YACJ,MAAM,IAAA,cAAI,EAAC,GAAG,CAAC,CAAC;QACjB,CAAC;QAAC,MAAM,CAAC;YACR,0DAA0D;QAC3D,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;QACjD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,6EAA6E,CAAC,CAAC;QAC3F,OAAO,CAAC,GAAG,CAAC,
|
|
1
|
+
{"version":3,"file":"logout.js","sourceRoot":"","sources":["../../src/commands/logout.ts"],"names":[],"mappings":";;;;;AA6BA,sCAwDC;AArFD,gDAAwB;AACxB,0CAAsF;AACtF,sCAA6C;AAkB7C;;;;;;;;GAQG;AACI,KAAK,UAAU,aAAa,CAAC,UAAyB,EAAE;IAC9D,MAAM,GAAG,GAAG,IAAA,wBAAe,GAAE,CAAC;IAC9B,MAAM,OAAO,GAAG,GAAG,EAAE,IAAI,EAAE,KAAK,IAAI,GAAG,EAAE,IAAI,EAAE,GAAG,IAAI,SAAS,CAAC;IAEhE,IAAA,yBAAgB,GAAE,CAAC;IAEnB,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,IAAI,GAAG,EAAE,CAAC;QACT,OAAO,CAAC,GAAG,CAAC,kCAAkC,OAAO,IAAI,CAAC,CAAC;IAC5D,CAAC;SAAM,CAAC;QACP,OAAO,CAAC,GAAG,CAAC,iDAAiD,CAAC,CAAC;IAChE,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,uBAAuB,IAAA,2BAAkB,GAAE,EAAE,CAAC,CAAC;IAE3D,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;QACjB,IAAI,CAAC,GAAG,EAAE,CAAC;YACV,qDAAqD;YACrD,6CAA6C;YAC7C,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChB,OAAO,CAAC,GAAG,CAAC,gEAAgE,CAAC,CAAC;YAC9E,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChB,OAAO;QACR,CAAC;QAED,6DAA6D;QAC7D,8DAA8D;QAC9D,0DAA0D;QAC1D,6DAA6D;QAC7D,4DAA4D;QAC5D,2DAA2D;QAC3D,4DAA4D;QAC5D,MAAM,GAAG,GAAG,IAAA,qBAAc,EAAC;YAC1B,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,QAAQ,EAAE,GAAG,CAAC,QAAQ;YACtB,OAAO,EAAE,GAAG,CAAC,QAAQ,CAAC,QAAQ;SAC9B,CAAC,CAAC;QAEH,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAC;QAC9D,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;QACtD,OAAO,CAAC,GAAG,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;QAC1B,IAAI,CAAC;YACJ,MAAM,IAAA,cAAI,EAAC,GAAG,CAAC,CAAC;QACjB,CAAC;QAAC,MAAM,CAAC;YACR,0DAA0D;QAC3D,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;QACjD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,6EAA6E,CAAC,CAAC;QAC3F,OAAO,CAAC,GAAG,CAAC,6EAA6E,CAAC,CAAC;QAC3F,OAAO,CAAC,GAAG,CAAC,iFAAiF,CAAC,CAAC;QAC/F,OAAO,CAAC,GAAG,CAAC,qEAAqE,CAAC,CAAC;IACpF,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AACjB,CAAC"}
|
package/dist/lib/api-client.js
CHANGED
|
@@ -95,6 +95,24 @@ class ApiClient {
|
|
|
95
95
|
}
|
|
96
96
|
return (await res.json());
|
|
97
97
|
}
|
|
98
|
+
/**
|
|
99
|
+
* DELETE — used by pat-store's PAT-cap auto-rotate flow when
|
|
100
|
+
* `POST /auth/tokens` returns 409. Returns the parsed JSON body
|
|
101
|
+
* when the server sends one (PAT revoke returns the revoked
|
|
102
|
+
* token), or `null` when the response is 204 No Content / empty.
|
|
103
|
+
*/
|
|
104
|
+
async delete(path) {
|
|
105
|
+
const res = await fetch(`${this.baseUrl}${path}`, {
|
|
106
|
+
method: 'DELETE',
|
|
107
|
+
headers: { Authorization: `Bearer ${this.accessToken}` },
|
|
108
|
+
});
|
|
109
|
+
if (!res.ok) {
|
|
110
|
+
throw new ApiError(res.status, await res.text());
|
|
111
|
+
}
|
|
112
|
+
// Some servers return 204; others 200 with a body. Treat both.
|
|
113
|
+
const text = await res.text();
|
|
114
|
+
return text.length > 0 ? JSON.parse(text) : null;
|
|
115
|
+
}
|
|
98
116
|
}
|
|
99
117
|
exports.ApiClient = ApiClient;
|
|
100
118
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-client.js","sourceRoot":"","sources":["../../src/lib/api-client.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;GAmBG;;;AA6BH,8CAiBC;
|
|
1
|
+
{"version":3,"file":"api-client.js","sourceRoot":"","sources":["../../src/lib/api-client.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;GAmBG;;;AA6BH,8CAiBC;AAqED,4CASC;AAjHD,MAAa,QAAS,SAAQ,KAAK;IAEjB;IACA;IAFjB,YACiB,MAAc,EACd,IAAY;QAE5B,KAAK,CAAC,aAAa,MAAM,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;QAHpC,WAAM,GAAN,MAAM,CAAQ;QACd,SAAI,GAAJ,IAAI,CAAQ;QAG5B,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC;IACxB,CAAC;CACD;AARD,4BAQC;AAED;;;;;;;GAOG;AACH,SAAgB,iBAAiB,CAAC,MAAc;IAC/C,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC;QAChC,OAAO,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IACtD,CAAC;IACD,IAAI,CAAC;QACJ,MAAM,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;QAC1B,kDAAkD;QAClD,0DAA0D;QAC1D,iCAAiC;QACjC,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAC/C,OAAO,WAAW,IAAI,EAAE,CAAC;IAC1B,CAAC;IAAC,MAAM,CAAC;QACR,8DAA8D;QAC9D,8DAA8D;QAC9D,WAAW;QACX,OAAO,6BAA6B,CAAC;IACtC,CAAC;AACF,CAAC;AAED,MAAa,SAAS;IACJ,OAAO,CAAS;IAChB,WAAW,CAAS;IAErC,YAAY,GAAoB;QAC/B,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC,cAAc,IAAI,iBAAiB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACnE,IAAI,CAAC,WAAW,GAAG,GAAG,CAAC,WAAW,CAAC;IACpC,CAAC;IAED,sEAAsE;IACtE,UAAU;QACT,OAAO,IAAI,CAAC,OAAO,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,IAAI,CAAI,IAAY,EAAE,IAAa;QACxC,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,GAAG,IAAI,EAAE,EAAE;YACjD,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACR,aAAa,EAAE,UAAU,IAAI,CAAC,WAAW,EAAE;gBAC3C,cAAc,EAAE,kBAAkB;aAClC;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;SAC1B,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACb,MAAM,IAAI,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;QAClD,CAAC;QACD,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAM,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,GAAG,CAAI,IAAY;QACxB,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,GAAG,IAAI,EAAE,EAAE;YACjD,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,IAAI,CAAC,WAAW,EAAE,EAAE;SACxD,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACb,MAAM,IAAI,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;QAClD,CAAC;QACD,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAM,CAAC;IAChC,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,MAAM,CAAc,IAAY;QACrC,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,GAAG,IAAI,EAAE,EAAE;YACjD,MAAM,EAAE,QAAQ;YAChB,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,IAAI,CAAC,WAAW,EAAE,EAAE;SACxD,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACb,MAAM,IAAI,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;QAClD,CAAC;QACD,+DAA+D;QAC/D,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;QAC9B,OAAO,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAO,CAAC,CAAC,CAAC,IAAI,CAAC;IACzD,CAAC;CACD;AAzDD,8BAyDC;AAED;;;;;;;GAOG;AACH,SAAgB,gBAAgB,CAAC,MAAc;IAC9C,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc;QAAE,OAAO,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;IAClE,IAAI,CAAC;QACJ,MAAM,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;QAC1B,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAC/C,OAAO,WAAW,IAAI,MAAM,CAAC;IAC9B,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,iCAAiC,CAAC;IAC1C,CAAC;AACF,CAAC"}
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.updateProjectGitignore = updateProjectGitignore;
|
|
4
|
+
const node_fs_1 = require("node:fs");
|
|
5
|
+
const node_path_1 = require("node:path");
|
|
6
|
+
/**
|
|
7
|
+
* Auto-manage the project's `.gitignore` so the skill files
|
|
8
|
+
* `ritual init` just scaffolded into each detected agent's directory
|
|
9
|
+
* stay out of git.
|
|
10
|
+
*
|
|
11
|
+
* Caught on 2026-05-13: a user ran `ritual init` and watched 85+
|
|
12
|
+
* files stage in VS Code's source-control panel — the scaffolded
|
|
13
|
+
* skill content × every detected agent (7 agents × ~12 files each).
|
|
14
|
+
* Each invocation of `ritual init` overwrites those files anyway
|
|
15
|
+
* (rebuilt from the npm bundle at `<pkg-root>/skills/<agent>/`), so
|
|
16
|
+
* tracking them in git is pure noise.
|
|
17
|
+
*
|
|
18
|
+
* Important nuance: each agent's directory often contains content
|
|
19
|
+
* the user DOES want to commit — `.cursor/rules/my-project-rules.md`,
|
|
20
|
+
* `.claude/settings.json` for shared team settings, etc. So the
|
|
21
|
+
* `.gitignore` entries are NARROW: just `<agent-dir>/<skill-subdir>/ritual/`,
|
|
22
|
+
* never the whole agent directory. We add one line per scaffolded
|
|
23
|
+
* agent based on its `projectSkillDir`.
|
|
24
|
+
*
|
|
25
|
+
* Idempotency: a marker-bracketed block is used so re-runs replace
|
|
26
|
+
* the block in place rather than appending duplicates. The marker
|
|
27
|
+
* comments are intentionally human-readable so a user inspecting
|
|
28
|
+
* their `.gitignore` understands what owns those lines.
|
|
29
|
+
*
|
|
30
|
+
* Returns the list of entries actually written (the caller logs
|
|
31
|
+
* them in the init summary). An empty return means nothing changed
|
|
32
|
+
* — either no agents were scaffolded, or the existing block already
|
|
33
|
+
* matched what we'd write.
|
|
34
|
+
*/
|
|
35
|
+
/**
|
|
36
|
+
* Marker comments that delimit the block we own. These exact
|
|
37
|
+
* strings are matched by string.indexOf, so do NOT change them
|
|
38
|
+
* casually — older blocks in the wild use this exact text.
|
|
39
|
+
*/
|
|
40
|
+
const BEGIN_MARKER = '# Begin: ritual init — scaffolded skill dirs (regenerated on every init)';
|
|
41
|
+
const END_MARKER = '# End: ritual init';
|
|
42
|
+
/**
|
|
43
|
+
* Returns the gitignore entry for a single provider — the project
|
|
44
|
+
* skill dir with a trailing slash so git treats it as a directory
|
|
45
|
+
* match.
|
|
46
|
+
*/
|
|
47
|
+
function entryForProvider(provider) {
|
|
48
|
+
// projectSkillDir is e.g. `.claude/skills` or `.cursor/rules`.
|
|
49
|
+
// We ignore only the `ritual/` SKILL package under it — the
|
|
50
|
+
// user's own custom rules/skills siblings stay tracked.
|
|
51
|
+
return `${provider.projectSkillDir}/ritual/`;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Build the block (markers + entries) that should appear in the
|
|
55
|
+
* `.gitignore`. The block always sorts entries the same way for
|
|
56
|
+
* idempotent diffs across re-runs.
|
|
57
|
+
*/
|
|
58
|
+
function buildBlock(scaffoldedProviders) {
|
|
59
|
+
const entries = scaffoldedProviders
|
|
60
|
+
.map(entryForProvider)
|
|
61
|
+
// Sort so the block's contents are deterministic regardless of
|
|
62
|
+
// detect()-order changes between releases. Makes diffs in
|
|
63
|
+
// people's `.gitignore` files signal-not-noise.
|
|
64
|
+
.sort()
|
|
65
|
+
.join('\n');
|
|
66
|
+
return `${BEGIN_MARKER}\n${entries}\n${END_MARKER}`;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Replace the marker-bracketed block in `body` with `newBlock`. If
|
|
70
|
+
* no block is found, append `newBlock` (preceded by a blank line for
|
|
71
|
+
* readability). Returns the new file body.
|
|
72
|
+
*
|
|
73
|
+
* Implementation note: we do byte-level string ops rather than
|
|
74
|
+
* line-based parsing because `.gitignore` is plain text with no
|
|
75
|
+
* canonical line-ending convention — we preserve whatever the user
|
|
76
|
+
* had (LF / CRLF) by avoiding split/join.
|
|
77
|
+
*/
|
|
78
|
+
function replaceOrAppendBlock(body, newBlock) {
|
|
79
|
+
const beginIdx = body.indexOf(BEGIN_MARKER);
|
|
80
|
+
const endIdx = body.indexOf(END_MARKER);
|
|
81
|
+
if (beginIdx >= 0 && endIdx > beginIdx) {
|
|
82
|
+
// Existing block present — replace it in place. endIdx points at
|
|
83
|
+
// the start of END_MARKER; advance past it to capture the full
|
|
84
|
+
// marker line.
|
|
85
|
+
const endLineEnd = endIdx + END_MARKER.length;
|
|
86
|
+
return body.slice(0, beginIdx) + newBlock + body.slice(endLineEnd);
|
|
87
|
+
}
|
|
88
|
+
// No existing block. Append with one blank line separator if the
|
|
89
|
+
// file has any content; otherwise the block IS the content.
|
|
90
|
+
const trimmed = body.replace(/\s+$/, '');
|
|
91
|
+
if (trimmed.length === 0)
|
|
92
|
+
return `${newBlock}\n`;
|
|
93
|
+
return `${trimmed}\n\n${newBlock}\n`;
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* Ensure the project `.gitignore` ignores the scaffolded skill dirs
|
|
97
|
+
* for the agents that just got written. Creates the file if it
|
|
98
|
+
* doesn't exist.
|
|
99
|
+
*
|
|
100
|
+
* Skipped silently when `scaffoldedProviders` is empty (e.g. user
|
|
101
|
+
* ran `ritual init --skip-skills`).
|
|
102
|
+
*/
|
|
103
|
+
function updateProjectGitignore(projectRoot, scaffoldedProviders) {
|
|
104
|
+
const gitignorePath = (0, node_path_1.join)(projectRoot, '.gitignore');
|
|
105
|
+
const preExisting = (0, node_fs_1.existsSync)(gitignorePath);
|
|
106
|
+
const entries = scaffoldedProviders.map(entryForProvider).sort();
|
|
107
|
+
// No-op fast path: nothing to ignore.
|
|
108
|
+
if (scaffoldedProviders.length === 0) {
|
|
109
|
+
return { gitignorePath, preExisting, entries, changed: false };
|
|
110
|
+
}
|
|
111
|
+
const currentBody = preExisting ? (0, node_fs_1.readFileSync)(gitignorePath, 'utf8') : '';
|
|
112
|
+
const newBlock = buildBlock(scaffoldedProviders);
|
|
113
|
+
const nextBody = replaceOrAppendBlock(currentBody, newBlock);
|
|
114
|
+
if (nextBody === currentBody) {
|
|
115
|
+
// Block already up to date — no write, no log noise.
|
|
116
|
+
return { gitignorePath, preExisting, entries, changed: false };
|
|
117
|
+
}
|
|
118
|
+
(0, node_fs_1.writeFileSync)(gitignorePath, nextBody, 'utf8');
|
|
119
|
+
return { gitignorePath, preExisting, entries, changed: true };
|
|
120
|
+
}
|
|
121
|
+
//# sourceMappingURL=gitignore-update.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gitignore-update.js","sourceRoot":"","sources":["../../src/lib/gitignore-update.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/oidc.js
CHANGED
|
@@ -4,6 +4,7 @@ exports.RefreshTokenError = void 0;
|
|
|
4
4
|
exports.performLoginFlow = performLoginFlow;
|
|
5
5
|
exports.refreshTokens = refreshTokens;
|
|
6
6
|
exports.decodeJwtPayloadUnsafe = decodeJwtPayloadUnsafe;
|
|
7
|
+
exports.webAppUrlFromIssuer = webAppUrlFromIssuer;
|
|
7
8
|
exports.buildLogoutUrl = buildLogoutUrl;
|
|
8
9
|
const node_crypto_1 = require("node:crypto");
|
|
9
10
|
const node_http_1 = require("node:http");
|
|
@@ -70,7 +71,29 @@ function awaitAuthorizationRedirect(issuer, timeoutMs = 5 * 60 * 1000) {
|
|
|
70
71
|
res.writeHead(400).end('Missing code or state');
|
|
71
72
|
return;
|
|
72
73
|
}
|
|
73
|
-
|
|
74
|
+
// On success, swap the browser off the raw loopback URL onto
|
|
75
|
+
// our branded /auth/cli-success page so the user gets a
|
|
76
|
+
// friendly "back to your terminal" experience instead of a
|
|
77
|
+
// blank window with localhost:NNNNN/callback?code=…&state=…
|
|
78
|
+
// stuck in the address bar. The web route already exists
|
|
79
|
+
// (apps/web/src/routes/(public)/auth/cli-success/+page.svelte)
|
|
80
|
+
// and handles the brand-new-account "verify email then come
|
|
81
|
+
// back here" case explicitly.
|
|
82
|
+
//
|
|
83
|
+
// Web host is derived from the OIDC issuer (dev vs prod vs
|
|
84
|
+
// self-hosted) so this works across all our environments
|
|
85
|
+
// without an env-var injection.
|
|
86
|
+
//
|
|
87
|
+
// Meta-refresh (not JS redirect or 302 Location) so it
|
|
88
|
+
// works without JS and without us having to escape
|
|
89
|
+
// untrusted values into headers — the URL is a derived
|
|
90
|
+
// constant. Falls back to a static "close this tab"
|
|
91
|
+
// message for the rare corporate-proxy case where refresh
|
|
92
|
+
// headers get stripped.
|
|
93
|
+
const landingUrl = cliSuccessLandingUrl(issuer);
|
|
94
|
+
res.writeHead(200, { 'Content-Type': 'text/html' }).end(htmlPage('Sign-in complete', `<meta http-equiv="refresh" content="0;url=${escapeHtml(landingUrl)}">
|
|
95
|
+
<p>Redirecting to <a href="${escapeHtml(landingUrl)}">${escapeHtml(new node_url_1.URL(landingUrl).host)}</a>…</p>
|
|
96
|
+
<p style="color:#888">If you're not redirected, you can close this tab and return to your terminal.</p>`));
|
|
74
97
|
clearTimeout(timer);
|
|
75
98
|
serverRef.close();
|
|
76
99
|
resolve({ code, state });
|
|
@@ -241,29 +264,48 @@ function decodeJwtPayloadUnsafe(token) {
|
|
|
241
264
|
* apps/web/src/routes/(public)/auth/cli-success/+page.svelte for the
|
|
242
265
|
* full UX.
|
|
243
266
|
*/
|
|
244
|
-
|
|
267
|
+
/**
|
|
268
|
+
* Map an OIDC issuer to its companion web-app base URL.
|
|
269
|
+
*
|
|
270
|
+
* auth.dev.ritualapp.cloud → https://dev.ritualapp.cloud
|
|
271
|
+
* auth.ritualapp.cloud → https://app.ritualapp.cloud
|
|
272
|
+
* self-hosted auth.<host> → https://app.<host> (best-effort)
|
|
273
|
+
*
|
|
274
|
+
* Kept here (and intentionally NOT imported from commands/init.ts)
|
|
275
|
+
* to keep the lib/ → commands/ dependency edge clean.
|
|
276
|
+
*/
|
|
277
|
+
function webAppUrlFromIssuer(issuer) {
|
|
245
278
|
try {
|
|
246
279
|
const u = new node_url_1.URL(issuer);
|
|
247
280
|
const host = u.host;
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
appHost = 'app.ritualapp.cloud';
|
|
254
|
-
}
|
|
255
|
-
else {
|
|
256
|
-
appHost = host.replace(/^auth\./, 'app.');
|
|
257
|
-
}
|
|
258
|
-
return `https://${appHost}/auth/signin?source=cli`;
|
|
281
|
+
if (host.startsWith('auth.dev.'))
|
|
282
|
+
return 'https://dev.ritualapp.cloud';
|
|
283
|
+
if (host === 'auth.ritualapp.cloud')
|
|
284
|
+
return 'https://app.ritualapp.cloud';
|
|
285
|
+
return `https://${host.replace(/^auth\./, 'app.')}`;
|
|
259
286
|
}
|
|
260
287
|
catch {
|
|
261
288
|
// Issuer URL malformed — fall back to the prod app domain.
|
|
262
|
-
|
|
263
|
-
// install's domain.
|
|
264
|
-
return 'https://app.ritualapp.cloud/auth/signin?source=cli';
|
|
289
|
+
return 'https://app.ritualapp.cloud';
|
|
265
290
|
}
|
|
266
291
|
}
|
|
292
|
+
function cliSuccessFallbackUrl(issuer) {
|
|
293
|
+
// Used in the timeout-error message: routes the user through the
|
|
294
|
+
// web sign-in page with ?source=cli so the post-auth landing hits
|
|
295
|
+
// /auth/cli-success. The `signin` step is necessary in this path
|
|
296
|
+
// because the CLI never received the OAuth callback — the user
|
|
297
|
+
// has to authenticate on the web side from scratch.
|
|
298
|
+
return `${webAppUrlFromIssuer(issuer)}/auth/signin?source=cli`;
|
|
299
|
+
}
|
|
300
|
+
/**
|
|
301
|
+
* URL the loopback /callback handler redirects the browser to on
|
|
302
|
+
* success. Skips the signin page — the user already authenticated;
|
|
303
|
+
* we just want them on a friendly "back to your terminal" surface
|
|
304
|
+
* instead of stuck on http://127.0.0.1:NNNNN/callback?code=… .
|
|
305
|
+
*/
|
|
306
|
+
function cliSuccessLandingUrl(issuer) {
|
|
307
|
+
return `${webAppUrlFromIssuer(issuer)}/auth/cli-success`;
|
|
308
|
+
}
|
|
267
309
|
/**
|
|
268
310
|
* Build a Keycloak RP-initiated logout URL per OIDC Session
|
|
269
311
|
* Management spec (OpenID Connect RP-Initiated Logout 1.0).
|
package/dist/lib/oidc.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oidc.js","sourceRoot":"","sources":["../../src/lib/oidc.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"oidc.js","sourceRoot":"","sources":["../../src/lib/oidc.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/pat-store.js
CHANGED
|
@@ -4,32 +4,164 @@ exports.mintAgentPat = mintAgentPat;
|
|
|
4
4
|
exports.defaultAgentTokenName = defaultAgentTokenName;
|
|
5
5
|
const node_os_1 = require("node:os");
|
|
6
6
|
const api_client_1 = require("./api-client");
|
|
7
|
+
const prompt_1 = require("./prompt");
|
|
8
|
+
const DEFAULT_WEB_APP_URL = 'https://app.ritualapp.cloud';
|
|
7
9
|
async function mintAgentPat(opts) {
|
|
8
10
|
const name = opts.nameOverride ?? defaultAgentTokenName();
|
|
9
|
-
|
|
11
|
+
const webAppUrl = opts.webAppUrl ?? DEFAULT_WEB_APP_URL;
|
|
12
|
+
return mintWithCapRecovery(opts, name, webAppUrl);
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Attempt to mint a PAT. On 409 (active-token cap reached — currently
|
|
16
|
+
* 10 per user, enforced in apps/api/src/modules/auth/tokens/pat.service.ts),
|
|
17
|
+
* try to recover automatically:
|
|
18
|
+
*
|
|
19
|
+
* 1. GET /auth/tokens to see what's outstanding.
|
|
20
|
+
* 2. Find existing tokens named for THIS hostname (very likely
|
|
21
|
+
* stale entries from prior `ritual init` runs on this machine).
|
|
22
|
+
* 3. If we find at least one, ask the user once whether we can
|
|
23
|
+
* revoke the oldest such token to free a slot.
|
|
24
|
+
* 4. On Y: revoke, then retry the mint exactly once.
|
|
25
|
+
* 5. On N (or no same-hostname tokens to revoke, or we already
|
|
26
|
+
* retried): re-raise with the corrected /u/tokens URL so the
|
|
27
|
+
* user can clean up manually.
|
|
28
|
+
*
|
|
29
|
+
* Why "same hostname only" rather than the absolute oldest:
|
|
30
|
+
* Tokens for OTHER devices (`Ritual CLI — work-laptop`) should
|
|
31
|
+
* never get auto-revoked by `ritual init` running on a different
|
|
32
|
+
* machine — that would break the user's other agents silently. We
|
|
33
|
+
* only ever rotate THIS machine's own historical tokens.
|
|
34
|
+
*
|
|
35
|
+
* The `retrying` flag prevents an infinite loop if revoke succeeds
|
|
36
|
+
* but a different concurrent caller mints another token before our
|
|
37
|
+
* retry. Single retry is enough; if it fails again, fall back to
|
|
38
|
+
* the manual-cleanup error.
|
|
39
|
+
*/
|
|
40
|
+
async function mintWithCapRecovery(opts, name, webAppUrl, retrying = false) {
|
|
10
41
|
try {
|
|
11
|
-
response = await opts.api.post('/auth/tokens', {
|
|
42
|
+
const response = await opts.api.post('/auth/tokens', {
|
|
12
43
|
name,
|
|
13
44
|
scopes: opts.scopes ?? ['admin'],
|
|
14
45
|
// undefined → service-layer default; null → no expiry.
|
|
15
46
|
expiresInDays: opts.expiresInDays ?? 365,
|
|
16
47
|
});
|
|
48
|
+
return {
|
|
49
|
+
plaintextToken: response.plaintextToken,
|
|
50
|
+
id: response.id,
|
|
51
|
+
name: response.name,
|
|
52
|
+
expiresAt: response.expiresAt,
|
|
53
|
+
};
|
|
17
54
|
}
|
|
18
55
|
catch (err) {
|
|
19
|
-
if (err instanceof api_client_1.ApiError
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
56
|
+
if (!(err instanceof api_client_1.ApiError) || err.status !== 409)
|
|
57
|
+
throw err;
|
|
58
|
+
if (retrying) {
|
|
59
|
+
// Second-time hit on the cap means a concurrent caller is
|
|
60
|
+
// also minting; fall back to manual cleanup rather than
|
|
61
|
+
// looping. Rare; safe.
|
|
62
|
+
throw manualCleanupError(webAppUrl);
|
|
63
|
+
}
|
|
64
|
+
// Try to revoke an old token from THIS machine. Quiet about
|
|
65
|
+
// what we'd do unless we can actually do it (no false promises).
|
|
66
|
+
const candidate = await findOldestRevocableForThisHost(opts.api, name);
|
|
67
|
+
if (!candidate) {
|
|
68
|
+
// All 10 slots are taken by tokens NOT named for this
|
|
69
|
+
// machine — we won't touch them. User has to choose.
|
|
70
|
+
throw manualCleanupError(webAppUrl);
|
|
71
|
+
}
|
|
72
|
+
const accepted = await askToRevoke(candidate);
|
|
73
|
+
if (!accepted)
|
|
74
|
+
throw manualCleanupError(webAppUrl);
|
|
75
|
+
// Defensive: if DELETE fails (network blip, token already
|
|
76
|
+
// revoked by another caller, 5xx), fall back to the manual-
|
|
77
|
+
// cleanup error rather than surfacing a less-helpful ApiError.
|
|
78
|
+
// Behavior is identical to pre-0.7.7 (which couldn't auto-
|
|
79
|
+
// rotate at all) — we just don't make things worse on this
|
|
80
|
+
// edge.
|
|
81
|
+
try {
|
|
82
|
+
await opts.api.delete(`/auth/tokens/${candidate.id}`);
|
|
24
83
|
}
|
|
25
|
-
|
|
84
|
+
catch {
|
|
85
|
+
throw manualCleanupError(webAppUrl);
|
|
86
|
+
}
|
|
87
|
+
console.error(` ✓ Revoked old token "${candidate.name}" (last used ${formatRelative(candidate.lastUsedAt)})`);
|
|
88
|
+
return mintWithCapRecovery(opts, name, webAppUrl, /* retrying */ true);
|
|
26
89
|
}
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Fetch the user's active tokens, filter to ones named for the
|
|
93
|
+
* current host's `defaultAgentTokenName()` shape, and return the
|
|
94
|
+
* oldest. Returns `undefined` when there's nothing safely revocable
|
|
95
|
+
* (any of: GET fails, the response is empty, or no token matches
|
|
96
|
+
* this machine's name).
|
|
97
|
+
*/
|
|
98
|
+
async function findOldestRevocableForThisHost(api, currentName) {
|
|
99
|
+
let list;
|
|
100
|
+
try {
|
|
101
|
+
list = await api.get('/auth/tokens');
|
|
102
|
+
}
|
|
103
|
+
catch {
|
|
104
|
+
// If we can't list, don't try to be clever — let the caller
|
|
105
|
+
// fall back to the manual-cleanup error.
|
|
106
|
+
return undefined;
|
|
107
|
+
}
|
|
108
|
+
const candidates = list.tokens.filter((t) => !t.revokedAt && t.name === currentName);
|
|
109
|
+
if (candidates.length === 0)
|
|
110
|
+
return undefined;
|
|
111
|
+
// Oldest first (createdAt ascending). The server returns
|
|
112
|
+
// createdAt descending; we just re-sort to be explicit.
|
|
113
|
+
candidates.sort((a, b) => a.createdAt.localeCompare(b.createdAt));
|
|
114
|
+
return candidates[0];
|
|
115
|
+
}
|
|
116
|
+
async function askToRevoke(candidate) {
|
|
117
|
+
// CI / piped stdin / non-TTY → don't try to prompt. User has to
|
|
118
|
+
// clean up manually; we surface the same actionable error.
|
|
119
|
+
if (!process.stdin.isTTY)
|
|
120
|
+
return false;
|
|
121
|
+
const created = formatRelative(candidate.createdAt);
|
|
122
|
+
const lastUsed = candidate.lastUsedAt
|
|
123
|
+
? formatRelative(candidate.lastUsedAt)
|
|
124
|
+
: 'never used';
|
|
125
|
+
const answer = (await (0, prompt_1.prompt)(`\n Access-token cap reached (10 active tokens). An older token from this machine\n` +
|
|
126
|
+
` is available to rotate:\n` +
|
|
127
|
+
` "${candidate.name}" · created ${created} · ${lastUsed}\n` +
|
|
128
|
+
` Revoke it and continue? [Y/n]: `))
|
|
129
|
+
.trim()
|
|
130
|
+
.toLowerCase();
|
|
131
|
+
// Default-yes (empty input or 'y' / 'yes'). Anything else = no.
|
|
132
|
+
return answer === '' || answer === 'y' || answer === 'yes';
|
|
133
|
+
}
|
|
134
|
+
function manualCleanupError(webAppUrl) {
|
|
135
|
+
return new Error(`Personal access token limit reached. Revoke an old token at ${webAppUrl}/u/tokens ` +
|
|
136
|
+
'and re-run `ritual init`.');
|
|
137
|
+
}
|
|
138
|
+
/**
|
|
139
|
+
* Format an ISO 8601 timestamp as "N days ago" / "N hours ago" /
|
|
140
|
+
* "just now". Kept tiny — no dep on date-fns / dayjs.
|
|
141
|
+
*/
|
|
142
|
+
function formatRelative(iso) {
|
|
143
|
+
if (!iso)
|
|
144
|
+
return 'unknown';
|
|
145
|
+
const then = Date.parse(iso);
|
|
146
|
+
if (Number.isNaN(then))
|
|
147
|
+
return iso;
|
|
148
|
+
const diffMs = Date.now() - then;
|
|
149
|
+
const minutes = Math.floor(diffMs / 60_000);
|
|
150
|
+
if (minutes < 1)
|
|
151
|
+
return 'just now';
|
|
152
|
+
if (minutes < 60)
|
|
153
|
+
return `${minutes}m ago`;
|
|
154
|
+
const hours = Math.floor(minutes / 60);
|
|
155
|
+
if (hours < 24)
|
|
156
|
+
return `${hours}h ago`;
|
|
157
|
+
const days = Math.floor(hours / 24);
|
|
158
|
+
if (days < 30)
|
|
159
|
+
return `${days}d ago`;
|
|
160
|
+
const months = Math.floor(days / 30);
|
|
161
|
+
if (months < 12)
|
|
162
|
+
return `${months}mo ago`;
|
|
163
|
+
const years = Math.floor(days / 365);
|
|
164
|
+
return `${years}y ago`;
|
|
33
165
|
}
|
|
34
166
|
/**
|
|
35
167
|
* `Ritual CLI — <hostname>`, truncated to fit the API's 80-char limit
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pat-store.js","sourceRoot":"","sources":["../../src/lib/pat-store.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"pat-store.js","sourceRoot":"","sources":["../../src/lib/pat-store.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ritualai/cli",
|
|
3
|
-
"version": "0.7.
|
|
3
|
+
"version": "0.7.7",
|
|
4
4
|
"description": "Ritual CLI — scaffold AI coding agent skills + register MCP servers. Connects Claude Code, Cursor, Windsurf, Kiro, Gemini CLI, VS Code/Copilot, and Codex to Ritual Cloud.",
|
|
5
5
|
"private": false,
|
|
6
6
|
"license": "Apache-2.0",
|