codeloop 0.1.4 → 0.1.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/auth.d.ts +12 -0
- package/dist/commands/auth.d.ts.map +1 -0
- package/dist/commands/auth.js +164 -0
- package/dist/commands/auth.js.map +1 -0
- package/dist/commands/init.d.ts +2 -0
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +104 -106
- package/dist/commands/init.js.map +1 -1
- package/dist/index.js +9 -0
- package/dist/index.js.map +1 -1
- package/dist/templates/claude-agents.d.ts +3 -3
- package/dist/templates/claude-agents.d.ts.map +1 -1
- package/dist/templates/claude-agents.js +58 -56
- package/dist/templates/claude-agents.js.map +1 -1
- package/dist/templates/claude-prompts.d.ts +1 -1
- package/dist/templates/claude-prompts.js +1 -1
- package/dist/templates/cursor-rules.d.ts +3 -3
- package/dist/templates/cursor-rules.d.ts.map +1 -1
- package/dist/templates/cursor-rules.js +98 -141
- package/dist/templates/cursor-rules.js.map +1 -1
- package/dist/templates/cursor-skills.d.ts +1 -1
- package/dist/templates/cursor-skills.js +1 -1
- package/dist/templates/mcp-config.d.ts +8 -0
- package/dist/templates/mcp-config.d.ts.map +1 -1
- package/dist/templates/mcp-config.js +18 -0
- package/dist/templates/mcp-config.js.map +1 -1
- package/dist/utils/global-setup.d.ts +2 -0
- package/dist/utils/global-setup.d.ts.map +1 -0
- package/dist/utils/global-setup.js +16 -0
- package/dist/utils/global-setup.js.map +1 -0
- package/package.json +4 -3
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
interface AuthOptions {
|
|
2
|
+
browser?: boolean;
|
|
3
|
+
global?: boolean;
|
|
4
|
+
}
|
|
5
|
+
export declare function authCommand(options?: AuthOptions): Promise<void>;
|
|
6
|
+
/**
|
|
7
|
+
* Browser-based auth flow usable from other commands (e.g. init).
|
|
8
|
+
* Returns the API key or null on failure/timeout.
|
|
9
|
+
*/
|
|
10
|
+
export declare function browserAuth(): Promise<string | null>;
|
|
11
|
+
export {};
|
|
12
|
+
//# sourceMappingURL=auth.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/commands/auth.ts"],"names":[],"mappings":"AAYA,UAAU,WAAW;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,wBAAsB,WAAW,CAAC,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CA+B1E;AA+ED;;;GAGG;AACH,wBAAsB,WAAW,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAW1D"}
|
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
import { createServer } from "http";
|
|
2
|
+
import { randomBytes } from "crypto";
|
|
3
|
+
import ora from "ora";
|
|
4
|
+
import chalk from "chalk";
|
|
5
|
+
import open from "open";
|
|
6
|
+
import { saveToShellProfile, saveToConfig } from "../utils/key-storage.js";
|
|
7
|
+
import { printBox, printSuccess, printError, printApiKey, printInfo, printWarning } from "../utils/ui.js";
|
|
8
|
+
import { loginCommand } from "./login.js";
|
|
9
|
+
const AUTH_URL = "https://codeloop.tech/cli-auth";
|
|
10
|
+
const TIMEOUT_MS = 5 * 60 * 1000;
|
|
11
|
+
export async function authCommand(options = {}) {
|
|
12
|
+
if (options.browser === false) {
|
|
13
|
+
return loginCommand();
|
|
14
|
+
}
|
|
15
|
+
printBox("CodeLoop — Authenticate");
|
|
16
|
+
printInfo("Opening browser to sign in or create an account...\n");
|
|
17
|
+
const state = randomBytes(16).toString("hex");
|
|
18
|
+
const apiKey = await startAuthFlow(state);
|
|
19
|
+
if (!apiKey) {
|
|
20
|
+
printWarning("Browser authentication didn't complete.\n");
|
|
21
|
+
printInfo("Falling back to email/password login...\n");
|
|
22
|
+
return loginCommand();
|
|
23
|
+
}
|
|
24
|
+
printApiKey(apiKey);
|
|
25
|
+
saveToShellProfile(apiKey);
|
|
26
|
+
await saveToConfig(apiKey);
|
|
27
|
+
printSuccess("API key saved to shell profile and .codeloop/config.json");
|
|
28
|
+
if (options.global) {
|
|
29
|
+
const { applyGlobalMcpConfig } = await import("../utils/global-setup.js");
|
|
30
|
+
await applyGlobalMcpConfig(apiKey);
|
|
31
|
+
}
|
|
32
|
+
console.log("\n Next steps:");
|
|
33
|
+
printInfo("Run npx codeloop init to set up your project");
|
|
34
|
+
printInfo("Or npx codeloop status to check your plan\n");
|
|
35
|
+
}
|
|
36
|
+
function startAuthFlow(state) {
|
|
37
|
+
return new Promise((resolve) => {
|
|
38
|
+
const server = createServer((req, res) => {
|
|
39
|
+
const url = new URL(req.url || "/", `http://localhost`);
|
|
40
|
+
if (url.pathname === "/callback") {
|
|
41
|
+
const key = url.searchParams.get("key");
|
|
42
|
+
const returnedState = url.searchParams.get("state");
|
|
43
|
+
if (returnedState !== state) {
|
|
44
|
+
res.writeHead(400, { "Content-Type": "text/html" });
|
|
45
|
+
res.end(errorPage("State mismatch — possible CSRF attack. Please try again."));
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
48
|
+
if (!key || !key.startsWith("cl_")) {
|
|
49
|
+
res.writeHead(400, { "Content-Type": "text/html" });
|
|
50
|
+
res.end(errorPage("Invalid API key received. Please try again."));
|
|
51
|
+
return;
|
|
52
|
+
}
|
|
53
|
+
res.writeHead(200, { "Content-Type": "text/html" });
|
|
54
|
+
res.end(successPage());
|
|
55
|
+
cleanup();
|
|
56
|
+
resolve(key);
|
|
57
|
+
return;
|
|
58
|
+
}
|
|
59
|
+
res.writeHead(404, { "Content-Type": "text/plain" });
|
|
60
|
+
res.end("Not found");
|
|
61
|
+
});
|
|
62
|
+
let timer;
|
|
63
|
+
function cleanup() {
|
|
64
|
+
clearTimeout(timer);
|
|
65
|
+
server.close();
|
|
66
|
+
}
|
|
67
|
+
server.listen(0, "127.0.0.1", async () => {
|
|
68
|
+
const addr = server.address();
|
|
69
|
+
if (!addr || typeof addr === "string") {
|
|
70
|
+
printError("Failed to start local server");
|
|
71
|
+
resolve(null);
|
|
72
|
+
return;
|
|
73
|
+
}
|
|
74
|
+
const port = addr.port;
|
|
75
|
+
const authUrl = `${AUTH_URL}?port=${port}&state=${state}`;
|
|
76
|
+
const spinner = ora("Waiting for browser authentication...").start();
|
|
77
|
+
spinner.text = `Opening browser to sign in...\n\n ${chalk.cyan(authUrl)}\n`;
|
|
78
|
+
try {
|
|
79
|
+
await open(authUrl);
|
|
80
|
+
spinner.text = `Waiting for authentication in browser...\n\n If the browser didn't open, visit:\n ${chalk.cyan(authUrl)}\n`;
|
|
81
|
+
}
|
|
82
|
+
catch {
|
|
83
|
+
spinner.text = `Could not open browser automatically.\n\n Open this URL manually:\n ${chalk.cyan(authUrl)}\n`;
|
|
84
|
+
}
|
|
85
|
+
timer = setTimeout(() => {
|
|
86
|
+
spinner.fail("Authentication timed out (5 minutes)");
|
|
87
|
+
printError("Try again with: npx codeloop auth");
|
|
88
|
+
printInfo("Or use email/password: npx codeloop auth --no-browser\n");
|
|
89
|
+
cleanup();
|
|
90
|
+
resolve(null);
|
|
91
|
+
}, TIMEOUT_MS);
|
|
92
|
+
});
|
|
93
|
+
server.on("error", (err) => {
|
|
94
|
+
printError(`Server error: ${err.message}`);
|
|
95
|
+
resolve(null);
|
|
96
|
+
});
|
|
97
|
+
});
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Browser-based auth flow usable from other commands (e.g. init).
|
|
101
|
+
* Returns the API key or null on failure/timeout.
|
|
102
|
+
*/
|
|
103
|
+
export async function browserAuth() {
|
|
104
|
+
const state = randomBytes(16).toString("hex");
|
|
105
|
+
const apiKey = await startAuthFlow(state);
|
|
106
|
+
if (apiKey) {
|
|
107
|
+
saveToShellProfile(apiKey);
|
|
108
|
+
await saveToConfig(apiKey);
|
|
109
|
+
printSuccess("API key saved to shell profile and .codeloop/config.json");
|
|
110
|
+
}
|
|
111
|
+
return apiKey;
|
|
112
|
+
}
|
|
113
|
+
function successPage() {
|
|
114
|
+
return `<!DOCTYPE html>
|
|
115
|
+
<html>
|
|
116
|
+
<head>
|
|
117
|
+
<meta charset="utf-8">
|
|
118
|
+
<title>CodeLoop — Authenticated</title>
|
|
119
|
+
<style>
|
|
120
|
+
* { margin: 0; padding: 0; box-sizing: border-box; }
|
|
121
|
+
body { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; background: #0a0a0a; color: #fafafa; display: flex; align-items: center; justify-content: center; min-height: 100vh; }
|
|
122
|
+
.card { text-align: center; max-width: 420px; padding: 48px 32px; }
|
|
123
|
+
.icon { font-size: 48px; margin-bottom: 16px; }
|
|
124
|
+
h1 { font-size: 24px; margin-bottom: 8px; }
|
|
125
|
+
p { color: #a1a1aa; font-size: 14px; line-height: 1.6; }
|
|
126
|
+
.close { margin-top: 24px; color: #71717a; font-size: 13px; }
|
|
127
|
+
</style>
|
|
128
|
+
</head>
|
|
129
|
+
<body>
|
|
130
|
+
<div class="card">
|
|
131
|
+
<div class="icon">✓</div>
|
|
132
|
+
<h1>Authentication Successful</h1>
|
|
133
|
+
<p>Your API key has been sent to the CLI.<br>You can close this tab and return to your terminal.</p>
|
|
134
|
+
<p class="close">This window will close automatically in 3 seconds.</p>
|
|
135
|
+
</div>
|
|
136
|
+
<script>setTimeout(() => window.close(), 3000);</script>
|
|
137
|
+
</body>
|
|
138
|
+
</html>`;
|
|
139
|
+
}
|
|
140
|
+
function errorPage(message) {
|
|
141
|
+
return `<!DOCTYPE html>
|
|
142
|
+
<html>
|
|
143
|
+
<head>
|
|
144
|
+
<meta charset="utf-8">
|
|
145
|
+
<title>CodeLoop — Error</title>
|
|
146
|
+
<style>
|
|
147
|
+
* { margin: 0; padding: 0; box-sizing: border-box; }
|
|
148
|
+
body { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; background: #0a0a0a; color: #fafafa; display: flex; align-items: center; justify-content: center; min-height: 100vh; }
|
|
149
|
+
.card { text-align: center; max-width: 420px; padding: 48px 32px; }
|
|
150
|
+
.icon { font-size: 48px; margin-bottom: 16px; color: #ef4444; }
|
|
151
|
+
h1 { font-size: 24px; margin-bottom: 8px; }
|
|
152
|
+
p { color: #a1a1aa; font-size: 14px; line-height: 1.6; }
|
|
153
|
+
</style>
|
|
154
|
+
</head>
|
|
155
|
+
<body>
|
|
156
|
+
<div class="card">
|
|
157
|
+
<div class="icon">✗</div>
|
|
158
|
+
<h1>Authentication Failed</h1>
|
|
159
|
+
<p>${message}</p>
|
|
160
|
+
</div>
|
|
161
|
+
</body>
|
|
162
|
+
</html>`;
|
|
163
|
+
}
|
|
164
|
+
//# sourceMappingURL=auth.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/commands/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAA6C,MAAM,MAAM,CAAC;AAC/E,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AACrC,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAC3E,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC1G,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1C,MAAM,QAAQ,GAAG,gCAAgC,CAAC;AAClD,MAAM,UAAU,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;AAOjC,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,UAAuB,EAAE;IACzD,IAAI,OAAO,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;QAC9B,OAAO,YAAY,EAAE,CAAC;IACxB,CAAC;IAED,QAAQ,CAAC,yBAAyB,CAAC,CAAC;IACpC,SAAS,CAAC,sDAAsD,CAAC,CAAC;IAElE,MAAM,KAAK,GAAG,WAAW,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC9C,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,KAAK,CAAC,CAAC;IAE1C,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,YAAY,CAAC,2CAA2C,CAAC,CAAC;QAC1D,SAAS,CAAC,2CAA2C,CAAC,CAAC;QACvD,OAAO,YAAY,EAAE,CAAC;IACxB,CAAC;IAED,WAAW,CAAC,MAAM,CAAC,CAAC;IAEpB,kBAAkB,CAAC,MAAM,CAAC,CAAC;IAC3B,MAAM,YAAY,CAAC,MAAM,CAAC,CAAC;IAC3B,YAAY,CAAC,0DAA0D,CAAC,CAAC;IAEzE,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnB,MAAM,EAAE,oBAAoB,EAAE,GAAG,MAAM,MAAM,CAAC,0BAA0B,CAAC,CAAC;QAC1E,MAAM,oBAAoB,CAAC,MAAM,CAAC,CAAC;IACrC,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;IAC/B,SAAS,CAAC,gDAAgD,CAAC,CAAC;IAC5D,SAAS,CAAC,gDAAgD,CAAC,CAAC;AAC9D,CAAC;AAED,SAAS,aAAa,CAAC,KAAa;IAClC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,MAAM,MAAM,GAAG,YAAY,CAAC,CAAC,GAAoB,EAAE,GAAmB,EAAE,EAAE;YACxE,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,EAAE,kBAAkB,CAAC,CAAC;YAExD,IAAI,GAAG,CAAC,QAAQ,KAAK,WAAW,EAAE,CAAC;gBACjC,MAAM,GAAG,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBACxC,MAAM,aAAa,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBAEpD,IAAI,aAAa,KAAK,KAAK,EAAE,CAAC;oBAC5B,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,WAAW,EAAE,CAAC,CAAC;oBACpD,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,0DAA0D,CAAC,CAAC,CAAC;oBAC/E,OAAO;gBACT,CAAC;gBAED,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;oBACnC,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,WAAW,EAAE,CAAC,CAAC;oBACpD,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,6CAA6C,CAAC,CAAC,CAAC;oBAClE,OAAO;gBACT,CAAC;gBAED,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,WAAW,EAAE,CAAC,CAAC;gBACpD,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC;gBAEvB,OAAO,EAAE,CAAC;gBACV,OAAO,CAAC,GAAG,CAAC,CAAC;gBACb,OAAO;YACT,CAAC;YAED,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,YAAY,EAAE,CAAC,CAAC;YACrD,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QACvB,CAAC,CAAC,CAAC;QAEH,IAAI,KAAoC,CAAC;QAEzC,SAAS,OAAO;YACd,YAAY,CAAC,KAAK,CAAC,CAAC;YACpB,MAAM,CAAC,KAAK,EAAE,CAAC;QACjB,CAAC;QAED,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,IAAI,EAAE;YACvC,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;YAC9B,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACtC,UAAU,CAAC,8BAA8B,CAAC,CAAC;gBAC3C,OAAO,CAAC,IAAI,CAAC,CAAC;gBACd,OAAO;YACT,CAAC;YAED,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;YACvB,MAAM,OAAO,GAAG,GAAG,QAAQ,SAAS,IAAI,UAAU,KAAK,EAAE,CAAC;YAE1D,MAAM,OAAO,GAAG,GAAG,CAAC,uCAAuC,CAAC,CAAC,KAAK,EAAE,CAAC;YACrE,OAAO,CAAC,IAAI,GAAG,sCAAsC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;YAE7E,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,OAAO,CAAC,CAAC;gBACpB,OAAO,CAAC,IAAI,GAAG,uFAAuF,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;YAChI,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,CAAC,IAAI,GAAG,yEAAyE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;YAClH,CAAC;YAED,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;gBACtB,OAAO,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC;gBACrD,UAAU,CAAC,mCAAmC,CAAC,CAAC;gBAChD,SAAS,CAAC,yDAAyD,CAAC,CAAC;gBACrE,OAAO,EAAE,CAAC;gBACV,OAAO,CAAC,IAAI,CAAC,CAAC;YAChB,CAAC,EAAE,UAAU,CAAC,CAAC;QACjB,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;YACzB,UAAU,CAAC,iBAAiB,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;YAC3C,OAAO,CAAC,IAAI,CAAC,CAAC;QAChB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW;IAC/B,MAAM,KAAK,GAAG,WAAW,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC9C,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,KAAK,CAAC,CAAC;IAE1C,IAAI,MAAM,EAAE,CAAC;QACX,kBAAkB,CAAC,MAAM,CAAC,CAAC;QAC3B,MAAM,YAAY,CAAC,MAAM,CAAC,CAAC;QAC3B,YAAY,CAAC,0DAA0D,CAAC,CAAC;IAC3E,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,WAAW;IAClB,OAAO;;;;;;;;;;;;;;;;;;;;;;;;QAwBD,CAAC;AACT,CAAC;AAED,SAAS,SAAS,CAAC,OAAe;IAChC,OAAO;;;;;;;;;;;;;;;;;;SAkBA,OAAO;;;QAGR,CAAC;AACT,CAAC"}
|
package/dist/commands/init.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAoBA,wBAAsB,WAAW,CAAC,OAAO,CAAC,EAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAoBA,wBAAsB,WAAW,CAAC,OAAO,CAAC,EAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAuI5G"}
|
package/dist/commands/init.js
CHANGED
|
@@ -10,46 +10,57 @@ import { signup, login, createKey, ApiError } from "../utils/api-client.js";
|
|
|
10
10
|
import { printBox, printSuccess, printWarning, printInfo, printApiKey, printError } from "../utils/ui.js";
|
|
11
11
|
import { CORE_MDC, LOOP_MDC, RECOMMENDATIONS_MDC, PERMISSIONS_MDC, FLUTTER_MDC, WEB_MDC, MOBILE_MDC } from "../templates/cursor-rules.js";
|
|
12
12
|
import { CODELOOP_LOOP_MD, CODELOOP_QA_MD, CODELOOP_ADVISOR_MD, CLAUDE_MD } from "../templates/claude-agents.js";
|
|
13
|
-
import {
|
|
14
|
-
import { confirm } from "@inquirer/prompts";
|
|
13
|
+
import { CLAUDE_PERMISSIONS_ALLOW, getMcpConfig } from "../templates/mcp-config.js";
|
|
15
14
|
import { SKILL_LOOP, SKILL_VERIFY, SKILL_VISUAL_REVIEW, SKILL_RECOMMEND } from "../templates/cursor-skills.js";
|
|
16
15
|
import { createDefaultConfig } from "../templates/config.js";
|
|
17
16
|
import { SPEC_TEMPLATE, ACCEPTANCE_TEMPLATE, UX_CHECKLIST_TEMPLATE } from "../templates/specs.js";
|
|
18
17
|
import { PROMPT_LOOP, PROMPT_VERIFY, PROMPT_REVIEW } from "../templates/claude-prompts.js";
|
|
19
18
|
import { password as passwordPrompt } from "@inquirer/prompts";
|
|
19
|
+
import { browserAuth } from "./auth.js";
|
|
20
20
|
export async function initCommand(options) {
|
|
21
21
|
if (options?.global) {
|
|
22
|
-
return initGlobal();
|
|
22
|
+
return initGlobal(options);
|
|
23
23
|
}
|
|
24
24
|
const cwd = process.cwd();
|
|
25
25
|
printBox("CodeLoop — Initialize Project");
|
|
26
|
-
// 1. Check for existing API key
|
|
27
|
-
let apiKey = findApiKey(cwd);
|
|
26
|
+
// 1. Check for existing API key (priority: --key flag > env var > config file)
|
|
27
|
+
let apiKey = options?.key || findApiKey(cwd);
|
|
28
28
|
if (!apiKey) {
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
message: "How would you like to get an API key?",
|
|
32
|
-
choices: [
|
|
33
|
-
{ name: "Sign up for a new account", value: "signup" },
|
|
34
|
-
{ name: "Log in to existing account", value: "login" },
|
|
35
|
-
{ name: "Enter API key manually", value: "manual" },
|
|
36
|
-
{ name: "Skip (configure later)", value: "skip" },
|
|
37
|
-
],
|
|
38
|
-
});
|
|
39
|
-
if (action === "signup") {
|
|
40
|
-
apiKey = await handleInlineSignup();
|
|
29
|
+
if (options?.yes) {
|
|
30
|
+
printWarning("No API key provided. Skipping authentication.\n");
|
|
41
31
|
}
|
|
42
|
-
else
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
32
|
+
else {
|
|
33
|
+
printInfo("No API key found — opening browser to sign in...\n");
|
|
34
|
+
apiKey = await browserAuth();
|
|
35
|
+
if (!apiKey) {
|
|
36
|
+
const fallback = await select({
|
|
37
|
+
message: "Browser auth didn't complete. What would you like to do?",
|
|
38
|
+
choices: [
|
|
39
|
+
{ name: "Try browser again", value: "browser" },
|
|
40
|
+
{ name: "Sign up with email/password", value: "signup" },
|
|
41
|
+
{ name: "Log in with email/password", value: "login" },
|
|
42
|
+
{ name: "Enter API key manually", value: "manual" },
|
|
43
|
+
{ name: "Skip (configure later)", value: "skip" },
|
|
44
|
+
],
|
|
45
|
+
});
|
|
46
|
+
if (fallback === "browser") {
|
|
47
|
+
apiKey = await browserAuth();
|
|
48
|
+
}
|
|
49
|
+
else if (fallback === "signup") {
|
|
50
|
+
apiKey = await handleInlineSignup();
|
|
51
|
+
}
|
|
52
|
+
else if (fallback === "login") {
|
|
53
|
+
apiKey = await handleInlineLogin();
|
|
54
|
+
}
|
|
55
|
+
else if (fallback === "manual") {
|
|
56
|
+
const key = await input({
|
|
57
|
+
message: "Paste your API key:",
|
|
58
|
+
validate: (v) => v.startsWith("cl_") ? true : 'API key should start with "cl_"',
|
|
59
|
+
});
|
|
60
|
+
apiKey = key.trim();
|
|
61
|
+
}
|
|
62
|
+
}
|
|
51
63
|
}
|
|
52
|
-
// skip leaves apiKey as null
|
|
53
64
|
}
|
|
54
65
|
else {
|
|
55
66
|
printSuccess(`Found API key: ${apiKey.slice(0, 12)}...`);
|
|
@@ -63,17 +74,8 @@ export async function initCommand(options) {
|
|
|
63
74
|
printInfo("Project type: could not auto-detect (using defaults)");
|
|
64
75
|
}
|
|
65
76
|
console.log("");
|
|
66
|
-
//
|
|
67
|
-
|
|
68
|
-
try {
|
|
69
|
-
autoAuthorize = await confirm({
|
|
70
|
-
message: "Enable automatic terminal authorization for dev commands? (flutter, npm, git, brew, etc.)",
|
|
71
|
-
default: true,
|
|
72
|
-
});
|
|
73
|
-
}
|
|
74
|
-
catch {
|
|
75
|
-
autoAuthorize = true;
|
|
76
|
-
}
|
|
77
|
+
// Auto-authorize is enabled by default (no prompt)
|
|
78
|
+
const autoAuthorize = true;
|
|
77
79
|
// 3. Create .codeloop/config.json
|
|
78
80
|
const config = createDefaultConfig(apiKey || "", project.type !== "unknown" ? [project.type] : ["auto"]);
|
|
79
81
|
const configPath = join(cwd, ".codeloop", "config.json");
|
|
@@ -106,104 +108,100 @@ export async function initCommand(options) {
|
|
|
106
108
|
console.log("\n" + chalk.bold(" CodeLoop initialized!\n"));
|
|
107
109
|
if (apiKey) {
|
|
108
110
|
printSuccess("API key configured");
|
|
111
|
+
printSuccess("MCP server registered in Cursor and Claude Code");
|
|
112
|
+
printSuccess("Auto-authorization enabled for Claude Code");
|
|
109
113
|
}
|
|
110
114
|
else {
|
|
111
|
-
printWarning("No API key set — run: npx codeloop
|
|
112
|
-
}
|
|
113
|
-
if (autoAuthorize) {
|
|
114
|
-
printSuccess("Auto-authorization configured for Claude Code");
|
|
115
|
-
console.log("");
|
|
116
|
-
console.log(chalk.yellow(" ╔═══════════════════════════════════════════════════════════╗"));
|
|
117
|
-
console.log(chalk.yellow(" ║") + chalk.bold(" IMPORTANT: Enable Cursor Auto-Run (one-time setup) ") + chalk.yellow(" ║"));
|
|
118
|
-
console.log(chalk.yellow(" ║ ║"));
|
|
119
|
-
console.log(chalk.yellow(" ║") + " To stop 'Skip / Run' prompts on every terminal command: " + chalk.yellow(" ║"));
|
|
120
|
-
console.log(chalk.yellow(" ║ ║"));
|
|
121
|
-
console.log(chalk.yellow(" ║") + " 1. Open Cursor Settings: " + chalk.cyan("Cmd+Shift+J") + " (or Cmd+,) " + chalk.yellow(" ║"));
|
|
122
|
-
console.log(chalk.yellow(" ║") + " 2. Go to: " + chalk.cyan("Features > Terminal") + " " + chalk.yellow(" ║"));
|
|
123
|
-
console.log(chalk.yellow(" ║") + " 3. Find: " + chalk.cyan('"Auto-Run Mode"') + " " + chalk.yellow(" ║"));
|
|
124
|
-
console.log(chalk.yellow(" ║") + ' 4. Set to: ' + chalk.green('"Yolo"') + " (runs everything) " + chalk.yellow(" ║"));
|
|
125
|
-
console.log(chalk.yellow(" ║") + ' or: ' + chalk.green('"Auto-Run with Allowlist"') + " (safer) " + chalk.yellow(" ║"));
|
|
126
|
-
console.log(chalk.yellow(" ║ ║"));
|
|
127
|
-
console.log(chalk.yellow(" ║") + " This is a " + chalk.bold("one-time") + " Cursor IDE setting. " + chalk.yellow(" ║"));
|
|
128
|
-
console.log(chalk.yellow(" ╚═══════════════════════════════════════════════════════════╝"));
|
|
129
|
-
console.log("");
|
|
115
|
+
printWarning("No API key set — run: npx codeloop auth to authenticate");
|
|
130
116
|
}
|
|
131
|
-
|
|
132
|
-
printInfo("
|
|
117
|
+
console.log("");
|
|
118
|
+
printInfo("CodeLoop MCP is now configured — your AI agent can use CodeLoop tools.");
|
|
119
|
+
printInfo("Reload your IDE window if MCP tools don't appear immediately.\n");
|
|
133
120
|
}
|
|
134
|
-
async function initGlobal() {
|
|
121
|
+
async function initGlobal(options) {
|
|
135
122
|
printBox("CodeLoop — Global Install");
|
|
136
123
|
printInfo("This installs the CodeLoop MCP server globally so it's available in every workspace.\n");
|
|
137
124
|
const home = homedir();
|
|
138
|
-
|
|
139
|
-
const claudeMcpConfig = JSON.parse(JSON.stringify(CLAUDE_MCP_CONFIG));
|
|
140
|
-
let apiKey = findApiKey(process.cwd());
|
|
125
|
+
let apiKey = options?.key || findApiKey(process.cwd());
|
|
141
126
|
if (!apiKey) {
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
message: "How would you like to get an API key?",
|
|
145
|
-
choices: [
|
|
146
|
-
{ name: "Sign up for a new account", value: "signup" },
|
|
147
|
-
{ name: "Log in to existing account", value: "login" },
|
|
148
|
-
{ name: "Enter API key manually", value: "manual" },
|
|
149
|
-
{ name: "Skip (configure later)", value: "skip" },
|
|
150
|
-
],
|
|
151
|
-
});
|
|
152
|
-
if (action === "signup") {
|
|
153
|
-
apiKey = await handleInlineSignup();
|
|
154
|
-
}
|
|
155
|
-
else if (action === "login") {
|
|
156
|
-
apiKey = await handleInlineLogin();
|
|
127
|
+
if (options?.yes) {
|
|
128
|
+
printWarning("No API key provided. Skipping authentication.\n");
|
|
157
129
|
}
|
|
158
|
-
else
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
130
|
+
else {
|
|
131
|
+
printInfo("No API key found — opening browser to sign in...\n");
|
|
132
|
+
apiKey = await browserAuth();
|
|
133
|
+
if (!apiKey) {
|
|
134
|
+
const fallback = await select({
|
|
135
|
+
message: "Browser auth didn't complete. What would you like to do?",
|
|
136
|
+
choices: [
|
|
137
|
+
{ name: "Try browser again", value: "browser" },
|
|
138
|
+
{ name: "Sign up with email/password", value: "signup" },
|
|
139
|
+
{ name: "Log in with email/password", value: "login" },
|
|
140
|
+
{ name: "Enter API key manually", value: "manual" },
|
|
141
|
+
{ name: "Skip (configure later)", value: "skip" },
|
|
142
|
+
],
|
|
143
|
+
});
|
|
144
|
+
if (fallback === "browser") {
|
|
145
|
+
apiKey = await browserAuth();
|
|
146
|
+
}
|
|
147
|
+
else if (fallback === "signup") {
|
|
148
|
+
apiKey = await handleInlineSignup();
|
|
149
|
+
}
|
|
150
|
+
else if (fallback === "login") {
|
|
151
|
+
apiKey = await handleInlineLogin();
|
|
152
|
+
}
|
|
153
|
+
else if (fallback === "manual") {
|
|
154
|
+
const key = await input({
|
|
155
|
+
message: "Paste your API key:",
|
|
156
|
+
validate: (v) => v.startsWith("cl_") ? true : 'API key should start with "cl_"',
|
|
157
|
+
});
|
|
158
|
+
apiKey = key.trim();
|
|
159
|
+
}
|
|
160
|
+
}
|
|
164
161
|
}
|
|
165
162
|
}
|
|
166
163
|
else {
|
|
167
164
|
printSuccess(`Found API key: ${apiKey.slice(0, 12)}...`);
|
|
168
165
|
}
|
|
169
166
|
if (apiKey) {
|
|
170
|
-
|
|
167
|
+
saveToShellProfile(apiKey);
|
|
168
|
+
}
|
|
169
|
+
// When --yes is set or AI agent is running, default to both IDEs
|
|
170
|
+
let ide = "both";
|
|
171
|
+
if (!options?.yes) {
|
|
172
|
+
ide = await select({
|
|
173
|
+
message: "Which IDEs do you use?",
|
|
174
|
+
choices: [
|
|
175
|
+
{ name: "Both Cursor and Claude Code", value: "both" },
|
|
176
|
+
{ name: "Cursor only", value: "cursor" },
|
|
177
|
+
{ name: "Claude Code only", value: "claude" },
|
|
178
|
+
],
|
|
179
|
+
});
|
|
171
180
|
}
|
|
172
|
-
const
|
|
173
|
-
message: "Which IDEs do you use?",
|
|
174
|
-
choices: [
|
|
175
|
-
{ name: "Both Cursor and Claude Code", value: "both" },
|
|
176
|
-
{ name: "Cursor only", value: "cursor" },
|
|
177
|
-
{ name: "Claude Code only", value: "claude" },
|
|
178
|
-
],
|
|
179
|
-
});
|
|
180
|
-
const installed = [];
|
|
181
|
+
const mcpConfig = getMcpConfig(apiKey);
|
|
181
182
|
if (ide === "cursor" || ide === "both") {
|
|
182
183
|
const cursorGlobalPath = join(home, ".cursor", "mcp.json");
|
|
183
|
-
mergeMcpConfig(cursorGlobalPath,
|
|
184
|
-
installed.push(cursorGlobalPath);
|
|
184
|
+
mergeMcpConfig(cursorGlobalPath, mcpConfig.mcpServers);
|
|
185
185
|
printSuccess(`~/.cursor/mcp.json (global — all Cursor workspaces)`);
|
|
186
186
|
}
|
|
187
187
|
if (ide === "claude" || ide === "both") {
|
|
188
188
|
const claudeGlobalPath = join(home, ".claude.json");
|
|
189
|
-
mergeMcpConfig(claudeGlobalPath,
|
|
190
|
-
installed.push(claudeGlobalPath);
|
|
189
|
+
mergeMcpConfig(claudeGlobalPath, mcpConfig.mcpServers);
|
|
191
190
|
printSuccess(`~/.claude.json (global — all Claude Code workspaces)`);
|
|
192
191
|
}
|
|
193
192
|
console.log("\n" + chalk.bold(" CodeLoop installed globally!\n"));
|
|
194
|
-
printInfo("CodeLoop MCP server is now available in every workspace.");
|
|
195
|
-
printInfo("Projects will be auto-initialized when the agent first runs.");
|
|
196
|
-
printInfo("For project-specific setup, run: npx codeloop init (without --global)\n");
|
|
197
193
|
if (apiKey) {
|
|
198
194
|
printSuccess("API key configured");
|
|
195
|
+
printSuccess("MCP server registered for all workspaces");
|
|
199
196
|
}
|
|
200
197
|
else {
|
|
201
|
-
printWarning("No API key set — run: npx codeloop
|
|
198
|
+
printWarning("No API key set — run: npx codeloop auth to authenticate");
|
|
202
199
|
}
|
|
200
|
+
printInfo("Reload your IDE window if MCP tools don't appear immediately.\n");
|
|
203
201
|
}
|
|
204
|
-
function setupCursorIntegration(cwd,
|
|
202
|
+
function setupCursorIntegration(cwd, apiKey, projectType, autoAuthorize) {
|
|
205
203
|
const mcpPath = join(cwd, ".cursor", "mcp.json");
|
|
206
|
-
const mcpConfig =
|
|
204
|
+
const mcpConfig = getMcpConfig(apiKey);
|
|
207
205
|
mergeMcpConfig(mcpPath, mcpConfig.mcpServers);
|
|
208
206
|
printSuccess(".cursor/mcp.json (merged)");
|
|
209
207
|
const rulesDir = join(cwd, ".cursor", "rules");
|
|
@@ -241,9 +239,9 @@ function setupCursorIntegration(cwd, _apiKey, projectType, autoAuthorize) {
|
|
|
241
239
|
writeFileSafe(join(skillsDir, "codeloop-recommend", "SKILL.md"), SKILL_RECOMMEND);
|
|
242
240
|
printSuccess(".cursor/skills/ (4 skill files)");
|
|
243
241
|
}
|
|
244
|
-
function setupClaudeIntegration(cwd,
|
|
242
|
+
function setupClaudeIntegration(cwd, apiKey, autoAuthorize) {
|
|
245
243
|
const settingsPath = join(cwd, ".claude", "settings.local.json");
|
|
246
|
-
const claudeConfig =
|
|
244
|
+
const claudeConfig = getMcpConfig(apiKey);
|
|
247
245
|
mergeMcpConfig(settingsPath, claudeConfig.mcpServers);
|
|
248
246
|
if (autoAuthorize) {
|
|
249
247
|
let existing = {};
|
|
@@ -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/index.js
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
import { Command } from "commander";
|
|
3
3
|
import { signupCommand } from "./commands/signup.js";
|
|
4
4
|
import { loginCommand } from "./commands/login.js";
|
|
5
|
+
import { authCommand } from "./commands/auth.js";
|
|
5
6
|
import { initCommand } from "./commands/init.js";
|
|
6
7
|
import { statusCommand } from "./commands/status.js";
|
|
7
8
|
import { configureCommand } from "./commands/configure.js";
|
|
@@ -18,10 +19,18 @@ program
|
|
|
18
19
|
.command("login")
|
|
19
20
|
.description("Log in to your CodeLoop account and generate an API key")
|
|
20
21
|
.action(loginCommand);
|
|
22
|
+
program
|
|
23
|
+
.command("auth")
|
|
24
|
+
.description("Authenticate via browser (supports GitHub, Google, Apple, email) — recommended")
|
|
25
|
+
.option("--no-browser", "Skip browser and use email/password prompts instead")
|
|
26
|
+
.option("-g, --global", "Also install CodeLoop MCP globally for all workspaces")
|
|
27
|
+
.action((options) => authCommand(options));
|
|
21
28
|
program
|
|
22
29
|
.command("init")
|
|
23
30
|
.description("Initialize CodeLoop in the current project (creates config, MCP registration, rules)")
|
|
24
31
|
.option("-g, --global", "Install CodeLoop MCP server globally for all workspaces (Cursor + Claude Code)")
|
|
32
|
+
.option("-k, --key <api-key>", "Provide API key directly (skips browser auth)")
|
|
33
|
+
.option("-y, --yes", "Accept all defaults, no interactive prompts (for AI agents)")
|
|
25
34
|
.action((options) => initCommand(options));
|
|
26
35
|
program
|
|
27
36
|
.command("status")
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAE9B,OAAO;KACJ,IAAI,CAAC,UAAU,CAAC;KAChB,WAAW,CAAC,wDAAwD,CAAC;KACrE,OAAO,CAAC,OAAO,CAAC,CAAC;AAEpB,OAAO;KACJ,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,kDAAkD,CAAC;KAC/D,MAAM,CAAC,aAAa,CAAC,CAAC;AAEzB,OAAO;KACJ,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,yDAAyD,CAAC;KACtE,MAAM,CAAC,YAAY,CAAC,CAAC;AAExB,OAAO;KACJ,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CACV,sFAAsF,CACvF;KACA,MAAM,CAAC,cAAc,EAAE,gFAAgF,CAAC;KACxG,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC;AAE7C,OAAO;KACJ,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CACV,4CAA4C,CAC7C;KACA,MAAM,CAAC,aAAa,CAAC,CAAC;AAEzB,OAAO;KACJ,OAAO,CAAC,WAAW,CAAC;KACpB,KAAK,CAAC,QAAQ,CAAC;KACf,WAAW,CAAC,4DAA4D,CAAC;KACzE,MAAM,CAAC,gBAAgB,CAAC,CAAC;AAE5B,OAAO,CAAC,KAAK,EAAE,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAE9B,OAAO;KACJ,IAAI,CAAC,UAAU,CAAC;KAChB,WAAW,CAAC,wDAAwD,CAAC;KACrE,OAAO,CAAC,OAAO,CAAC,CAAC;AAEpB,OAAO;KACJ,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,kDAAkD,CAAC;KAC/D,MAAM,CAAC,aAAa,CAAC,CAAC;AAEzB,OAAO;KACJ,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,yDAAyD,CAAC;KACtE,MAAM,CAAC,YAAY,CAAC,CAAC;AAExB,OAAO;KACJ,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,gFAAgF,CAAC;KAC7F,MAAM,CAAC,cAAc,EAAE,qDAAqD,CAAC;KAC7E,MAAM,CAAC,cAAc,EAAE,uDAAuD,CAAC;KAC/E,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC;AAE7C,OAAO;KACJ,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CACV,sFAAsF,CACvF;KACA,MAAM,CAAC,cAAc,EAAE,gFAAgF,CAAC;KACxG,MAAM,CAAC,qBAAqB,EAAE,+CAA+C,CAAC;KAC9E,MAAM,CAAC,WAAW,EAAE,6DAA6D,CAAC;KAClF,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC;AAE7C,OAAO;KACJ,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CACV,4CAA4C,CAC7C;KACA,MAAM,CAAC,aAAa,CAAC,CAAC;AAEzB,OAAO;KACJ,OAAO,CAAC,WAAW,CAAC;KACpB,KAAK,CAAC,QAAQ,CAAC;KACf,WAAW,CAAC,4DAA4D,CAAC;KACzE,MAAM,CAAC,gBAAgB,CAAC,CAAC;AAE5B,OAAO,CAAC,KAAK,EAAE,CAAC"}
|