@ycniuqton/devlens 0.1.16 → 0.1.22
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 +29 -9
- package/dist/init.js +241 -17
- package/dist/init.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -183,6 +183,31 @@ When you have a "no commit without approval" rule active:
|
|
|
183
183
|
4. Devlens writes `.devlens/commit-approved.md`
|
|
184
184
|
5. Claude proceeds with the commit
|
|
185
185
|
|
|
186
|
+
## Authentication
|
|
187
|
+
|
|
188
|
+
Devlens requires a password to access the dashboard. A login page is shown on first visit.
|
|
189
|
+
|
|
190
|
+
**Default credentials:**
|
|
191
|
+
|
|
192
|
+
| Username | Password |
|
|
193
|
+
|----------|----------|
|
|
194
|
+
| `admin` | `devlens` |
|
|
195
|
+
|
|
196
|
+
> Change your password immediately after first login via the user icon in the bottom-left of the sidebar.
|
|
197
|
+
|
|
198
|
+
### Change Password
|
|
199
|
+
|
|
200
|
+
1. Open the dashboard and sign in
|
|
201
|
+
2. Click the **user icon** (bottom-left sidebar) → **Change Password**
|
|
202
|
+
3. Enter your current password and a new password (min 4 characters)
|
|
203
|
+
4. Click **Update Password**
|
|
204
|
+
|
|
205
|
+
Credentials are stored as a bcrypt hash in `.devlens/auth.json` (never committed — add to `.gitignore` if needed).
|
|
206
|
+
|
|
207
|
+
### Session
|
|
208
|
+
|
|
209
|
+
Sessions last 7 days. Closing the browser does not log you out. Click the **sign out** button (→ icon, bottom-left) to end the session.
|
|
210
|
+
|
|
186
211
|
## Configuration
|
|
187
212
|
|
|
188
213
|
### Environment Variables
|
|
@@ -207,17 +232,12 @@ In the **Integrations** tab, configure:
|
|
|
207
232
|
|
|
208
233
|
### Tunnel (remote access)
|
|
209
234
|
|
|
210
|
-
From the Integrations tab, click **
|
|
235
|
+
From the Integrations tab, click **Cloudflare Tunnel** or **ngrok**.
|
|
211
236
|
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
brew install cloudflared # macOS
|
|
215
|
-
# https://developers.cloudflare.com/cloudflare-one/connections/connect-networks/downloads/
|
|
237
|
+
- **Cloudflare** — works out of the box, no account needed. The `cloudflared` binary is bundled with Devlens.
|
|
238
|
+
- **ngrok** — requires a free account. Click the ngrok button and paste your auth token when prompted. Get your token at [dashboard.ngrok.com](https://dashboard.ngrok.com/get-started/your-authtoken).
|
|
216
239
|
|
|
217
|
-
|
|
218
|
-
brew install ngrok # macOS
|
|
219
|
-
# https://ngrok.com/download
|
|
220
|
-
```
|
|
240
|
+
**Direct IP Access toggle** — disable to restrict access to the tunnel URL only (re-enabled automatically on server restart so you're never locked out).
|
|
221
241
|
|
|
222
242
|
## API Reference
|
|
223
243
|
|
package/dist/init.js
CHANGED
|
@@ -144,6 +144,213 @@ done
|
|
|
144
144
|
emit_context "starting-in-background"
|
|
145
145
|
exit 0
|
|
146
146
|
`;
|
|
147
|
+
const SHORT_SKILLS = [
|
|
148
|
+
{ name: 'ss', lines: 50 },
|
|
149
|
+
{ name: 'ss20', lines: 20 },
|
|
150
|
+
{ name: 'ss30', lines: 30 },
|
|
151
|
+
];
|
|
152
|
+
function shortSkillContent(name, lines) {
|
|
153
|
+
return `---
|
|
154
|
+
name: ${name}
|
|
155
|
+
description: Short response mode — answer/explain only, no code, output ≤ ${lines} lines
|
|
156
|
+
---
|
|
157
|
+
|
|
158
|
+
This prompt uses /${name} short-response mode. Follow these constraints for your entire reply:
|
|
159
|
+
- Answer or explain only — do not write, generate, or suggest any code
|
|
160
|
+
- Output must be ≤ ${lines} lines total
|
|
161
|
+
- Be concise and direct; omit preamble and trailing summaries
|
|
162
|
+
`;
|
|
163
|
+
}
|
|
164
|
+
function writeShortResponseSkills(claudeDir) {
|
|
165
|
+
for (const skill of SHORT_SKILLS) {
|
|
166
|
+
const dir = path_1.default.join(claudeDir, 'skills', skill.name);
|
|
167
|
+
if (!fs_1.default.existsSync(dir)) {
|
|
168
|
+
fs_1.default.mkdirSync(dir, { recursive: true });
|
|
169
|
+
}
|
|
170
|
+
fs_1.default.writeFileSync(path_1.default.join(dir, 'SKILL.md'), shortSkillContent(skill.name, skill.lines));
|
|
171
|
+
console.log(` Created skill: .claude/skills/${skill.name} (use /${skill.name} in Claude)`);
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
const DOC_SKILLS = {
|
|
175
|
+
sumu: `---
|
|
176
|
+
name: sumu
|
|
177
|
+
description: Merge all version docs of a feature or system into one consolidated version, then delete old sub-versions
|
|
178
|
+
---
|
|
179
|
+
|
|
180
|
+
The user wants to consolidate a feature or system's documentation history into a single up-to-date version.
|
|
181
|
+
|
|
182
|
+
## Steps
|
|
183
|
+
|
|
184
|
+
1. **Identify the domain and feature.**
|
|
185
|
+
- Scan \`/docs/features/\` and \`/docs/systems/\` and list what exists.
|
|
186
|
+
- Cross-reference with the current conversation context to infer which feature is being discussed.
|
|
187
|
+
- Only ask the user if 2 or more candidates are equally likely.
|
|
188
|
+
- If domain is still unclear, ask: \`/docs/features/\` or \`/docs/systems/\`?
|
|
189
|
+
|
|
190
|
+
2. **Read all version folders** under the chosen path, sorted numerically ascending. Read every file inside each version.
|
|
191
|
+
|
|
192
|
+
3. **Synthesize one consolidated doc set** from all versions:
|
|
193
|
+
- \`01-requirements.md\` — final, current requirements only. No history duplication. Max 100 lines.
|
|
194
|
+
- \`02-design.md\` — complete current design, absorbing all changes across versions. No line limit.
|
|
195
|
+
- \`03-plan.md\` — current execution state only (pending/in-progress steps). Max 100 lines.
|
|
196
|
+
|
|
197
|
+
4. **Determine the new version folder name:**
|
|
198
|
+
- Find the highest numeric version folder name
|
|
199
|
+
- New version = highest + 1 (zero-padded to 5 digits, e.g. \`00004\` → \`00005\`)
|
|
200
|
+
- Always use a plain numeric name — no reset naming, no special suffix, no cycle tracking
|
|
201
|
+
|
|
202
|
+
5. **Print the list of folders that will be deleted**, e.g.:
|
|
203
|
+
\`\`\`
|
|
204
|
+
Deleting: 00000-init, 00001, 00002, 00003, 00004
|
|
205
|
+
Creating: 00005
|
|
206
|
+
\`\`\`
|
|
207
|
+
|
|
208
|
+
6. **Write the new version folder** with the 3 consolidated files.
|
|
209
|
+
|
|
210
|
+
7. **Delete all old version folders** — no confirmation needed, just proceed.
|
|
211
|
+
|
|
212
|
+
8. **Report** the new active version and confirm old versions were removed.
|
|
213
|
+
|
|
214
|
+
## Constraints
|
|
215
|
+
- Follow all Feature & System Documentation rules from \`.devlens/rules.md\`
|
|
216
|
+
- Never create more than 3 files per version folder
|
|
217
|
+
- Requirements and plan must stay ≤ 100 lines after consolidation — summarize if needed
|
|
218
|
+
- Do not keep any CURRENT/active marker files
|
|
219
|
+
- After sumu, version count resets to 1 — the new folder is the only version remaining
|
|
220
|
+
`,
|
|
221
|
+
newv: `---
|
|
222
|
+
name: newv
|
|
223
|
+
description: Create a new version for an existing feature or system under /docs/features/ or /docs/systems/, following versioning and line-limit rules
|
|
224
|
+
---
|
|
225
|
+
|
|
226
|
+
The user wants to add a new version to an existing feature or system's documentation.
|
|
227
|
+
|
|
228
|
+
## Steps
|
|
229
|
+
|
|
230
|
+
1. **Identify the domain and feature.**
|
|
231
|
+
- Scan \`/docs/features/\` and \`/docs/systems/\` and list what exists.
|
|
232
|
+
- Cross-reference with the current conversation context to infer which feature is being discussed.
|
|
233
|
+
- Only ask the user if 2 or more candidates are equally likely.
|
|
234
|
+
|
|
235
|
+
2. **Run the pre-write checklist** (from \`.devlens/rules.md\`):
|
|
236
|
+
- Confirm the folder exists under the correct domain
|
|
237
|
+
- List all version folders, find the highest numeric one — that is the active version
|
|
238
|
+
- Count total versions
|
|
239
|
+
- If any check fails → stop and ask the user before proceeding
|
|
240
|
+
|
|
241
|
+
3. **Determine the new version folder name:**
|
|
242
|
+
- If total versions < 5: next increment (e.g. active is \`00002\` → new is \`00003\`)
|
|
243
|
+
- If total versions == 5: the next change MUST be a reset. Create \`10000-reset\` as a fully self-contained new baseline. Inform the user this is a reset version.
|
|
244
|
+
|
|
245
|
+
4. **Ask the user** what changed in this version (if not already described in the prompt).
|
|
246
|
+
|
|
247
|
+
5. **Write the new version folder** with only the changed content:
|
|
248
|
+
- \`01-requirements.md\` — only what changed + explicit statement of what remains unchanged. Max 100 lines.
|
|
249
|
+
- \`02-design.md\` — only design changes. No line limit.
|
|
250
|
+
- \`03-plan.md\` — updated execution steps for this version. Max 100 lines.
|
|
251
|
+
- For a reset version, all 3 files must be fully self-contained.
|
|
252
|
+
|
|
253
|
+
6. **Report** the new version folder name and confirm the active version.
|
|
254
|
+
|
|
255
|
+
## Constraints
|
|
256
|
+
- Follow all Feature & System Documentation rules from \`.devlens/rules.md\`
|
|
257
|
+
- Never create more than 3 files per version folder
|
|
258
|
+
- Never skip version numbers unless user explicitly instructs
|
|
259
|
+
- If any pre-write check fails, stop and ask the user
|
|
260
|
+
`,
|
|
261
|
+
newf: `---
|
|
262
|
+
name: newf
|
|
263
|
+
description: Create a new feature or system documentation folder under /docs/features/ or /docs/systems/ with the initial version
|
|
264
|
+
---
|
|
265
|
+
|
|
266
|
+
The user wants to start documentation for a new feature or system.
|
|
267
|
+
|
|
268
|
+
## Steps
|
|
269
|
+
|
|
270
|
+
1. **Identify the domain.**
|
|
271
|
+
- If not specified in the prompt, ask: is this a feature (\`/docs/features/\`) or a system (\`/docs/systems/\`)?
|
|
272
|
+
|
|
273
|
+
2. **Generate the feature name from the user's description** — do not wait for the user to provide a name.
|
|
274
|
+
- Name must be broad and generic — a top-level domain concept, not an implementation detail.
|
|
275
|
+
- Think: "what is the big topic this belongs to?" not "what is this specific thing?"
|
|
276
|
+
- Good: \`user-auth\`, \`payments\`, \`notifications\`, \`task-management\`
|
|
277
|
+
- Bad: \`password-reset-flow\`, \`stripe-webhook-handler\`, \`email-notification-template\`
|
|
278
|
+
- Use kebab-case.
|
|
279
|
+
|
|
280
|
+
3. **Before creating, scan existing features** under both \`/docs/features/\` and \`/docs/systems/\`.
|
|
281
|
+
- If the description fits naturally under an existing feature, stop and suggest \`/newv\` on that feature instead.
|
|
282
|
+
- Only create a new folder if the domain is genuinely new.
|
|
283
|
+
|
|
284
|
+
4. **Create the initial version folder:** \`<domain>/<feature-name>/00000-init/\`
|
|
285
|
+
|
|
286
|
+
5. **Write the 3 required files** based on the description from the prompt:
|
|
287
|
+
- \`01-requirements.md\` — business intent, functional requirements, constraints. Max 100 lines.
|
|
288
|
+
- \`02-design.md\` — initial design, architecture, flows. No line limit.
|
|
289
|
+
- \`03-plan.md\` — initial execution steps / checklist. Max 100 lines.
|
|
290
|
+
- If detail is thin, write minimal stubs and note what needs to be filled in.
|
|
291
|
+
|
|
292
|
+
6. **Report** the generated name, the created path, and confirm the active version is \`00000-init\`.
|
|
293
|
+
|
|
294
|
+
## Constraints
|
|
295
|
+
- Follow all Feature & System Documentation rules from \`.devlens/rules.md\`
|
|
296
|
+
- Never wait for the user to name the feature — always derive it from context
|
|
297
|
+
- Names must be broad/generic — avoid narrow sub-feature folders
|
|
298
|
+
- Never create more than 3 files in the version folder
|
|
299
|
+
- Requirements and plan must stay ≤ 100 lines
|
|
300
|
+
- If any check fails → stop and ask the user before proceeding
|
|
301
|
+
`,
|
|
302
|
+
};
|
|
303
|
+
function writeDocManagementSkills(claudeDir) {
|
|
304
|
+
for (const [name, content] of Object.entries(DOC_SKILLS)) {
|
|
305
|
+
const dir = path_1.default.join(claudeDir, 'skills', name);
|
|
306
|
+
if (!fs_1.default.existsSync(dir)) {
|
|
307
|
+
fs_1.default.mkdirSync(dir, { recursive: true });
|
|
308
|
+
}
|
|
309
|
+
fs_1.default.writeFileSync(path_1.default.join(dir, 'SKILL.md'), content);
|
|
310
|
+
console.log(` Created skill: .claude/skills/${name} (use /${name} in Claude)`);
|
|
311
|
+
}
|
|
312
|
+
}
|
|
313
|
+
const DEFAULT_RULES = `# Devlens Rules
|
|
314
|
+
|
|
315
|
+
## Commit Guard (protected)
|
|
316
|
+
- Do not run git commit or git push under any circumstances. Only proceed after receiving an explicit user instruction, and clearly indicate before performing the commit.
|
|
317
|
+
|
|
318
|
+
## Coding Rules
|
|
319
|
+
- Rule 1: Functions ≤ 50 lines, decompose into business steps
|
|
320
|
+
- Rule 2: Max 3 levels of if/else/switch nesting per function
|
|
321
|
+
- Rule 3: Max 3 levels of loop nesting; no helper functions — extract into domain-based classes only
|
|
322
|
+
- Rule 4: Body of any if/else/loop ≤ 15 lines
|
|
323
|
+
- Rule 5: Divide logic by business/processing steps; one step = one domain method
|
|
324
|
+
- Rule 6: Business logic reachable within 3 trace steps (no long forwarding chains)
|
|
325
|
+
- Rule 7: Max 3 levels of class inheritance
|
|
326
|
+
- Rule 8: Comments only at function/class/module top — never inside function bodies
|
|
327
|
+
- Rule 9: Function docs max 3 lines, describe intent not implementation
|
|
328
|
+
- Rule 10: Fix structure instead of adding inline comments
|
|
329
|
+
- Rule 11: Design classes for future features, not just current requirements
|
|
330
|
+
- Rule 12: Concrete implementations must not be entry points; business logic never depends on concrete classes
|
|
331
|
+
- Rule 13: Every extensible domain needs a base class; all implementations inherit from it
|
|
332
|
+
- Rule 14: Each extensible domain needs a Manager service; business logic talks only to Manager
|
|
333
|
+
- Rule 15: Implementation selection must be configurable — no if/switch on concrete types
|
|
334
|
+
- Rule 16: Prefer class-based handlers over functions
|
|
335
|
+
- Rule 17: No magic strings or numbers — all values belong to a domain
|
|
336
|
+
- Rule 18: Use enums or domain constant classes — no standalone constants
|
|
337
|
+
- Rule 19: Always ask "what business concept does this belong to?"
|
|
338
|
+
- Rule 20: Follow modern language conventions; these rules extend/override them
|
|
339
|
+
- Rule 0 (override): Business requirements have absolute priority — ask user if any rule conflicts
|
|
340
|
+
|
|
341
|
+
## Feature & System Documentation
|
|
342
|
+
- Docs live under /docs/features/<name>/<version>/ or /docs/systems/<name>/<version>/
|
|
343
|
+
- Active version = highest numeric folder (no CURRENT/active marker files)
|
|
344
|
+
- First version named 00000-init; increments 00001, 00002 … max 5 versions total
|
|
345
|
+
- At 6th version create 10000-reset (fully self-contained new baseline); then continue 10001, 10002 …
|
|
346
|
+
- Each version folder contains ONLY: 01-requirements.md (≤100 lines), 02-design.md (no limit), 03-plan.md (≤100 lines)
|
|
347
|
+
- Incremental versions write only what changed; state what is unchanged; do not copy full previous content
|
|
348
|
+
- If active version cannot be understood alone, reset is required
|
|
349
|
+
- Feature names must be broad and generic (top-level domain concepts): user-auth, payments, notifications — not narrow sub-feature names like password-reset-flow
|
|
350
|
+
- Before creating a new feature, check if an existing feature could absorb it — prefer /newv over /newf when in doubt
|
|
351
|
+
- When no feature name is given, infer from conversation context + existing folder list — only ask if genuinely ambiguous
|
|
352
|
+
- Before writing docs run checklist: correct domain, correct name, active = max folder, versions ≤ 5, files ≤ 3, line limits respected — if any check fails → stop and ask the user before proceeding
|
|
353
|
+
`;
|
|
147
354
|
// Find and kill any existing devlens server process for this project dir
|
|
148
355
|
function killExistingDevlens(projectDir) {
|
|
149
356
|
try {
|
|
@@ -301,19 +508,33 @@ function initDevlens(projectDir, port) {
|
|
|
301
508
|
}
|
|
302
509
|
const skillContent = `---
|
|
303
510
|
name: devlens
|
|
304
|
-
description: Show the Devlens dashboard URL and status for the current project
|
|
511
|
+
description: Show the Devlens dashboard URL and status for the current project, auto-starting if not running
|
|
305
512
|
---
|
|
306
513
|
|
|
307
514
|
Show the Devlens dashboard URLs for the current project by inspecting running processes (no AI reasoning needed — just print whatever the script returns):
|
|
308
515
|
|
|
309
516
|
\`\`\`!
|
|
310
517
|
DIR="\${CLAUDE_PROJECT_DIR:-$PWD}"
|
|
311
|
-
# Match any node process running devlens (binary, dist/index.js, or symlink) for this dir
|
|
312
518
|
PROC=$(ps -eo pid,args 2>/dev/null | grep -E "node.*(devlens|dist/index\\.js).*start.*--dir[= ]?\${DIR}([ /]|$)" | grep -v grep | head -1)
|
|
313
519
|
|
|
314
520
|
if [ -z "$PROC" ]; then
|
|
315
|
-
|
|
316
|
-
|
|
521
|
+
PORT=$(grep -oE '"port"[[:space:]]*:[[:space:]]*[0-9]+' "\${DIR}/.devlens/runtime.json" 2>/dev/null | grep -oE "[0-9]+" | head -1)
|
|
522
|
+
BIN=""
|
|
523
|
+
command -v devlens &>/dev/null && BIN="devlens"
|
|
524
|
+
[ -z "$BIN" ] && [ -f "\${DIR}/dist/index.js" ] && BIN="node \${DIR}/dist/index.js"
|
|
525
|
+
[ -z "$BIN" ] && [ -f "\${DIR}/node_modules/.bin/devlens" ] && BIN="\${DIR}/node_modules/.bin/devlens"
|
|
526
|
+
if [ -n "$BIN" ] && [ -n "$PORT" ]; then
|
|
527
|
+
echo "DEVLENS_NOT_RUNNING — starting..."
|
|
528
|
+
nohup \$BIN start --dir "\$DIR" --port \$PORT --no-open > /tmp/devlens-\$PORT.log 2>&1 &
|
|
529
|
+
for i in 1 2 3 4 5; do
|
|
530
|
+
sleep 1
|
|
531
|
+
PROC=$(ps -eo pid,args 2>/dev/null | grep -E "node.*(devlens|dist/index\\.js).*start.*--dir[= ]?\${DIR}([ /]|$)" | grep -v grep | head -1)
|
|
532
|
+
[ -n "$PROC" ] && break
|
|
533
|
+
done
|
|
534
|
+
else
|
|
535
|
+
echo "DEVLENS_NOT_RUNNING for \${DIR}"
|
|
536
|
+
exit 0
|
|
537
|
+
fi
|
|
317
538
|
fi
|
|
318
539
|
|
|
319
540
|
PID=$(echo "$PROC" | awk '{print $1}')
|
|
@@ -329,18 +550,22 @@ echo "DEVLENS_RUNNING"
|
|
|
329
550
|
echo " PID: $PID"
|
|
330
551
|
echo " Project: \${DIR}"
|
|
331
552
|
echo " Local: http://localhost:\${PORT}"
|
|
332
|
-
for ip in
|
|
333
|
-
case "
|
|
553
|
+
for ip in \$(hostname -I 2>/dev/null || true); do
|
|
554
|
+
case "\$ip" in
|
|
334
555
|
127.*|::1|fe80*|*:*) continue ;;
|
|
335
556
|
*) echo " Network: http://\${ip}:\${PORT}" ;;
|
|
336
557
|
esac
|
|
337
558
|
done
|
|
338
559
|
\`\`\`
|
|
339
560
|
|
|
340
|
-
|
|
561
|
+
Print the script output verbatim. If it shows \`DEVLENS_NOT_RUNNING — starting...\` followed by a running status, tell the user it was just started. If it ends with \`DEVLENS_NOT_RUNNING for ...\` (no binary found), tell the user Devlens could not be started and suggest running \`devlens init\` first.
|
|
341
562
|
`;
|
|
342
563
|
fs_1.default.writeFileSync(path_1.default.join(skillDir, 'SKILL.md'), skillContent);
|
|
343
564
|
console.log(` Created skill: .claude/skills/devlens (use /devlens in Claude)`);
|
|
565
|
+
// Create /ss, /ss20, /ss30 short-response skills
|
|
566
|
+
writeShortResponseSkills(claudeDir);
|
|
567
|
+
// Create /sumu, /newv, /newf doc management skills
|
|
568
|
+
writeDocManagementSkills(claudeDir);
|
|
344
569
|
// 6. Append the Devlens block to CLAUDE.md (idempotent)
|
|
345
570
|
const claudeMdPath = path_1.default.join(resolvedDir, 'CLAUDE.md');
|
|
346
571
|
const devlensBlock = '## Devlens\nRead and follow all rules in `.devlens/rules.md` before every action.\n';
|
|
@@ -353,17 +578,14 @@ Just print the script output verbatim. If it starts with \`DEVLENS_NOT_RUNNING\`
|
|
|
353
578
|
fs_1.default.writeFileSync(claudeMdPath, existing + sep + devlensBlock);
|
|
354
579
|
console.log(` Updated CLAUDE.md with Devlens rules reference`);
|
|
355
580
|
}
|
|
356
|
-
// 7. Create .devlens/rules.md with default
|
|
581
|
+
// 7. Create .devlens/rules.md with default rules
|
|
357
582
|
const devlensProjectDir = path_1.default.join(resolvedDir, '.devlens');
|
|
358
583
|
if (!fs_1.default.existsSync(devlensProjectDir)) {
|
|
359
584
|
fs_1.default.mkdirSync(devlensProjectDir, { recursive: true });
|
|
360
585
|
}
|
|
361
586
|
const rulesPath = path_1.default.join(devlensProjectDir, 'rules.md');
|
|
362
587
|
if (!fs_1.default.existsSync(rulesPath)) {
|
|
363
|
-
|
|
364
|
-
- Do not run git commit or git push under any circumstances. Only proceed after receiving an explicit user instruction, and clearly indicate before performing the commit.
|
|
365
|
-
`;
|
|
366
|
-
fs_1.default.writeFileSync(rulesPath, defaultRules);
|
|
588
|
+
fs_1.default.writeFileSync(rulesPath, DEFAULT_RULES);
|
|
367
589
|
console.log(` Created .devlens/rules.md with default rules`);
|
|
368
590
|
}
|
|
369
591
|
// Get network IPs for display
|
|
@@ -389,11 +611,13 @@ function uninstallDevlens(projectDir) {
|
|
|
389
611
|
const claudeDir = path_1.default.join(projectDir, '.claude');
|
|
390
612
|
const hooksDir = path_1.default.join(claudeDir, 'hooks');
|
|
391
613
|
const settingsFile = path_1.default.join(claudeDir, 'settings.json');
|
|
392
|
-
// Remove
|
|
393
|
-
const
|
|
394
|
-
|
|
395
|
-
fs_1.default.
|
|
396
|
-
|
|
614
|
+
// Remove skills
|
|
615
|
+
for (const skillName of ['devlens', ...SHORT_SKILLS.map((s) => s.name), ...Object.keys(DOC_SKILLS)]) {
|
|
616
|
+
const skillDir = path_1.default.join(claudeDir, 'skills', skillName);
|
|
617
|
+
if (fs_1.default.existsSync(skillDir)) {
|
|
618
|
+
fs_1.default.rmSync(skillDir, { recursive: true });
|
|
619
|
+
console.log(` Removed: .claude/skills/${skillName}`);
|
|
620
|
+
}
|
|
397
621
|
}
|
|
398
622
|
for (const script of ['devlens-sync.sh', 'devlens-startup.sh', 'devlens-shutdown.sh']) {
|
|
399
623
|
const scriptPath = path_1.default.join(hooksDir, script);
|
package/dist/init.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":";;;;;AAKA,kCAGC;AAyZD,kCAqOC;AAED,4CAqDC;AA7rBD,4CAAoB;AACpB,gDAAwB;AACxB,oDAA4B;AAE5B,yEAAyE;AACzE,SAAgB,WAAW,CAAC,GAAW;IACrC,MAAM,IAAI,GAAG,gBAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,cAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IACzE,OAAO,IAAI,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;AAC9C,CAAC;AAED,MAAM,gBAAgB,GAAG;;;;;;;;;;;;;;;CAexB,CAAC;AAEF,MAAM,oBAAoB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2D5B,CAAC;AAEF,MAAM,mBAAmB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqD3B,CAAC;AAwBF,MAAM,YAAY,GAAoB;IACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE;IACzB,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE;IAC3B,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE;CAC5B,CAAC;AAEF,SAAS,iBAAiB,CAAC,IAAY,EAAE,KAAa;IACpD,OAAO;QACD,IAAI;4EACgE,KAAK;;;oBAG7D,IAAI;;qBAEH,KAAK;;CAEzB,CAAC;AACF,CAAC;AAED,SAAS,wBAAwB,CAAC,SAAiB;IACjD,KAAK,MAAM,KAAK,IAAI,YAAY,EAAE,CAAC;QACjC,MAAM,GAAG,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QACvD,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACxB,YAAE,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACzC,CAAC;QACD,YAAE,CAAC,aAAa,CAAC,cAAI,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,EAAE,iBAAiB,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;QACzF,OAAO,CAAC,GAAG,CAAC,mCAAmC,KAAK,CAAC,IAAI,UAAU,KAAK,CAAC,IAAI,aAAa,CAAC,CAAC;IAC9F,CAAC;AACH,CAAC;AAED,MAAM,UAAU,GAA2B;IACzC,IAAI,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6CP;IACC,IAAI,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuCP;IACC,IAAI,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwCP;CACA,CAAC;AAEF,SAAS,wBAAwB,CAAC,SAAiB;IACjD,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;QACzD,MAAM,GAAG,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;QACjD,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACxB,YAAE,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACzC,CAAC;QACD,YAAE,CAAC,aAAa,CAAC,cAAI,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,EAAE,OAAO,CAAC,CAAC;QACtD,OAAO,CAAC,GAAG,CAAC,mCAAmC,IAAI,UAAU,IAAI,aAAa,CAAC,CAAC;IAClF,CAAC;AACH,CAAC;AAED,MAAM,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwCrB,CAAC;AAEF,yEAAyE;AACzE,SAAS,mBAAmB,CAAC,UAAkB;IAC7C,IAAI,CAAC;QACH,MAAM,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC,QAAQ,CAAC,iBAAiB,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;QACvF,gGAAgG;QAChG,MAAM,EAAE,GAAG,IAAI,MAAM,CAAC,0DAA0D,UAAU,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;QAC7I,MAAM,KAAK,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,MAAM,GAAG,KAAK,CAAC;QACnB,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC;QAC5B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAAE,SAAS;YACpC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;gBAAE,SAAS;YAC7B,MAAM,GAAG,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACtD,IAAI,CAAC,GAAG;gBAAE,SAAS;YACnB,IAAI,GAAG,KAAK,OAAO;gBAAE,SAAS;YAC9B,IAAI,CAAC;gBACH,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;gBAC7B,MAAM,GAAG,IAAI,CAAC;gBACd,OAAO,CAAC,GAAG,CAAC,2CAA2C,GAAG,GAAG,CAAC,CAAC;gBAC/D,mCAAmC;gBACnC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;gBACzB,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,GAAG,IAAI,EAAE,CAAC;oBACjC,IAAI,CAAC;wBAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;oBAAC,CAAC;oBAAC,MAAM,CAAC;wBAAC,MAAM;oBAAC,CAAC;oBAC9C,OAAO,CAAC,eAAe,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;gBACjD,CAAC;gBACD,IAAI,CAAC;oBAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;oBAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;gBAAC,CAAC;gBAAC,MAAM,CAAC,CAAA,CAAC;YACtE,CAAC;YAAC,MAAM,CAAC,CAAA,CAAC;QACZ,CAAC;QACD,8BAA8B;QAC9B,MAAM,WAAW,GAAG,cAAI,CAAC,IAAI,CAAC,UAAU,EAAE,UAAU,EAAE,cAAc,CAAC,CAAC;QACtE,IAAI,YAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;YAC/B,IAAI,CAAC;gBAAC,YAAE,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAA,CAAC;QAC9C,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,SAAgB,WAAW,CAAC,UAAkB,EAAE,IAAa;IAC3D,MAAM,WAAW,GAAG,cAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAC7C,MAAM,WAAW,GAAG,IAAI,IAAI,WAAW,CAAC,WAAW,CAAC,CAAC;IAErD,kFAAkF;IAClF,mBAAmB,CAAC,WAAW,CAAC,CAAC;IAEjC,MAAM,SAAS,GAAG,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;IACpD,MAAM,QAAQ,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAC/C,MAAM,YAAY,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;IAC3D,MAAM,cAAc,GAAG,cAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC;IAC9D,MAAM,iBAAiB,GAAG,cAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAC;IACpE,MAAM,kBAAkB,GAAG,cAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,qBAAqB,CAAC,CAAC;IAEtE,qCAAqC;IACrC,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7B,YAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9C,CAAC;IAED,uDAAuD;IACvD,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC;IAEpC,YAAE,CAAC,aAAa,CAAC,cAAc,EAAE,gBAAgB,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IACjG,OAAO,CAAC,GAAG,CAAC,2DAA2D,CAAC,CAAC;IAEzE,YAAE,CAAC,aAAa,CAAC,iBAAiB,EAAE,mBAAmB,CAAC,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IACxG,OAAO,CAAC,GAAG,CAAC,+DAA+D,CAAC,CAAC;IAE7E,YAAE,CAAC,aAAa,CAAC,kBAAkB,EAAE,oBAAoB,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAC5E,OAAO,CAAC,GAAG,CAAC,+DAA+D,CAAC,CAAC;IAE7E,kCAAkC;IAClC,IAAI,QAAQ,GAAiB,EAAE,CAAC;IAChC,IAAI,YAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QAChC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,YAAE,CAAC,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC;IAChE,CAAC;IAED,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;QACpB,QAAQ,CAAC,KAAK,GAAG,EAAE,CAAC;IACtB,CAAC;IAED,4BAA4B;IAC5B,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;QACjC,QAAQ,CAAC,KAAK,CAAC,YAAY,GAAG,EAAE,CAAC;IACnC,CAAC;IACD,QAAQ,CAAC,KAAK,CAAC,YAAY,GAAG,QAAQ,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,CAC9D,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC,CACjH,CAAC;IACF,QAAQ,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC;QAC/B,OAAO,EAAE,EAAE;QACX,KAAK,EAAE;YACL;gBACE,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,wDAAwD;aAClE;SACF;KACF,CAAC,CAAC;IAEH,0BAA0B;IAC1B,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC;QAC/B,QAAQ,CAAC,KAAK,CAAC,UAAU,GAAG,EAAE,CAAC;IACjC,CAAC;IACD,QAAQ,CAAC,KAAK,CAAC,UAAU,GAAG,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAC1D,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC,CACnH,CAAC;IACF,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC;QAC7B,OAAO,EAAE,EAAE;QACX,KAAK,EAAE;YACL;gBACE,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,yDAAyD;aACnE;SACF;KACF,CAAC,CAAC;IAEH,mFAAmF;IACnF,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC;QAC/B,QAAQ,CAAC,KAAK,CAAC,UAAU,GAAG,EAAE,CAAC;IACjC,CAAC;IACD,MAAM,gBAAgB,GAAG,yTAAyT,CAAC;IACnV,QAAQ,CAAC,KAAK,CAAC,UAAU,GAAG,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAC1D,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAC,CACzG,CAAC;IACF,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC;QAC7B,OAAO,EAAE,MAAM;QACf,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,gBAAgB,EAAE,CAAC;KACxD,CAAC,CAAC;IAEH,2BAA2B;IAC3B,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;QAChC,QAAQ,CAAC,KAAK,CAAC,WAAW,GAAG,EAAE,CAAC;IAClC,CAAC;IACD,QAAQ,CAAC,KAAK,CAAC,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAC5D,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CACnE,CAAC;IACF,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC;QAC9B,OAAO,EAAE,uBAAuB;QAChC,KAAK,EAAE;YACL;gBACE,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,qDAAqD;aAC/D;SACF;KACF,CAAC,CAAC;IAEH,YAAE,CAAC,aAAa,CAAC,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAClE,OAAO,CAAC,GAAG,CAAC,kFAAkF,CAAC,CAAC;IAEhG,2DAA2D;IAC3D,MAAM,aAAa,GAAG,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;IAC3D,IAAI,YAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;QACjC,MAAM,SAAS,GAAG,YAAE,CAAC,YAAY,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;QAC1D,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC;YAC1C,YAAE,CAAC,cAAc,CAAC,aAAa,EAAE,oBAAoB,CAAC,CAAC;YACvD,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;QACtC,CAAC;IACH,CAAC;IAED,yCAAyC;IACzC,MAAM,QAAQ,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;IAC3D,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7B,YAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9C,CAAC;IACD,MAAM,YAAY,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqDtB,CAAC;IACA,YAAE,CAAC,aAAa,CAAC,cAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,EAAE,YAAY,CAAC,CAAC;IAChE,OAAO,CAAC,GAAG,CAAC,kEAAkE,CAAC,CAAC;IAEhF,iDAAiD;IACjD,wBAAwB,CAAC,SAAS,CAAC,CAAC;IAEpC,mDAAmD;IACnD,wBAAwB,CAAC,SAAS,CAAC,CAAC;IAEpC,wDAAwD;IACxD,MAAM,YAAY,GAAG,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IACzD,MAAM,YAAY,GAAG,qFAAqF,CAAC;IAC3G,IAAI,QAAQ,GAAG,EAAE,CAAC;IAClB,IAAI,YAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QAChC,QAAQ,GAAG,YAAE,CAAC,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;IACpD,CAAC;IACD,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;QACrC,MAAM,GAAG,GAAG,QAAQ,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACnF,YAAE,CAAC,aAAa,CAAC,YAAY,EAAE,QAAQ,GAAG,GAAG,GAAG,YAAY,CAAC,CAAC;QAC9D,OAAO,CAAC,GAAG,CAAC,kDAAkD,CAAC,CAAC;IAClE,CAAC;IAED,iDAAiD;IACjD,MAAM,iBAAiB,GAAG,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;IAC7D,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC;QACtC,YAAE,CAAC,SAAS,CAAC,iBAAiB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACvD,CAAC;IACD,MAAM,SAAS,GAAG,cAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,UAAU,CAAC,CAAC;IAC3D,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC9B,YAAE,CAAC,aAAa,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;QAC3C,OAAO,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAC;IAChE,CAAC;IAED,8BAA8B;IAC9B,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACzB,MAAM,UAAU,GAAG,EAAE,CAAC,iBAAiB,EAAE,CAAC;IAC1C,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;QAC3C,KAAK,MAAM,KAAK,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;YAC3C,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;gBAC/C,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAC1B,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAC;IAC9D,OAAO,CAAC,GAAG,CAAC,4DAA4D,WAAW,SAAS,CAAC,CAAC;IAC9F,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;QACrB,OAAO,CAAC,GAAG,CAAC,kDAAkD,EAAE,IAAI,WAAW,SAAS,CAAC,CAAC;IAC5F,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,6DAA6D,CAAC,CAAC;IAC3E,OAAO,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAC;AACnE,CAAC;AAED,SAAgB,gBAAgB,CAAC,UAAkB;IACjD,MAAM,SAAS,GAAG,cAAI,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IACnD,MAAM,QAAQ,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAC/C,MAAM,YAAY,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;IAE3D,gBAAgB;IAChB,KAAK,MAAM,SAAS,IAAI,CAAC,SAAS,EAAE,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC;QACpG,MAAM,QAAQ,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;QAC3D,IAAI,YAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5B,YAAE,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACzC,OAAO,CAAC,GAAG,CAAC,6BAA6B,SAAS,EAAE,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;IAED,KAAK,MAAM,MAAM,IAAI,CAAC,iBAAiB,EAAE,oBAAoB,EAAE,qBAAqB,CAAC,EAAE,CAAC;QACtF,MAAM,UAAU,GAAG,cAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAC/C,IAAI,YAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC9B,YAAE,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;YAC1B,OAAO,CAAC,GAAG,CAAC,4BAA4B,MAAM,EAAE,CAAC,CAAC;QACpD,CAAC;IACH,CAAC;IAED,IAAI,YAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QAChC,MAAM,QAAQ,GAAiB,IAAI,CAAC,KAAK,CAAC,YAAE,CAAC,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC;QAElF,IAAI,QAAQ,CAAC,KAAK,EAAE,YAAY,EAAE,CAAC;YACjC,QAAQ,CAAC,KAAK,CAAC,YAAY,GAAG,QAAQ,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,CAC9D,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC,CACjH,CAAC;YACF,IAAI,QAAQ,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,QAAQ,CAAC,KAAK,CAAC,YAAY,CAAC;QACnF,CAAC;QAED,IAAI,QAAQ,CAAC,KAAK,EAAE,UAAU,EAAE,CAAC;YAC/B,QAAQ,CAAC,KAAK,CAAC,UAAU,GAAG,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAC1D,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC,CACnH,CAAC;YACF,IAAI,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC;QAC/E,CAAC;QAED,IAAI,QAAQ,CAAC,KAAK,EAAE,WAAW,EAAE,CAAC;YAChC,QAAQ,CAAC,KAAK,CAAC,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAC5D,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CACnE,CAAC;YACF,IAAI,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC;QACjF,CAAC;QAED,IAAI,QAAQ,CAAC,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,QAAQ,CAAC,KAAK,CAAC;QAEtF,YAAE,CAAC,aAAa,CAAC,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAClE,OAAO,CAAC,GAAG,CAAC,6CAA6C,CAAC,CAAC;IAC7D,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;AAClD,CAAC"}
|