create-sessions-dir 0.3.8 → 0.3.10

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 CHANGED
@@ -1,5 +1,14 @@
1
1
  # create-sessions-dir
2
2
 
3
+ > **This package is archived.** Use the [Sessions plugin](https://github.com/vieko/sessions) instead:
4
+ > ```bash
5
+ > claude plugin marketplace add vieko/sessions
6
+ > claude plugin install sessions@vieko
7
+ > ```
8
+ > The plugin offers the same workflow with subagents, specs, reviews, and native Claude Code integration.
9
+
10
+ ---
11
+
3
12
  Scaffold a Sessions Directory for working with AI coding agents.
4
13
 
5
14
  ## What is this?
@@ -51,6 +60,9 @@ Then start your first session:
51
60
  archive-session.md # /archive-session command
52
61
  scripts/
53
62
  untrack-sessions.sh # Git strategy helper
63
+ skills/
64
+ session-context/ # Auto-reads context when relevant
65
+ archive-session/ # Suggests archiving after PR merges
54
66
  ```
55
67
 
56
68
  ## Usage
@@ -85,7 +97,7 @@ Claude launches an exploration agent to understand the topic, then creates docum
85
97
  ```
86
98
  Claude moves finished work to the archive to keep your context file clean.
87
99
 
88
- **Automatic Prompts**: After merging to main, a git hook automatically prompts whether to archive completed sessions - archiving happens at the right moment without manual tracking.
100
+ **Automatic Suggestions**: After merging PRs or when you mention completion ("shipped", "done with X"), the archive-session skill prompts whether to archive - no manual tracking needed.
89
101
 
90
102
  ### Change Git Strategy
91
103
  ```
@@ -93,6 +105,29 @@ Claude moves finished work to the archive to keep your context file clean.
93
105
  ```
94
106
  Change how .sessions/ is handled in git (hybrid, commit all, or ignore all). Useful if you want to share more/less with your team.
95
107
 
108
+ ## Skills (Passive Context)
109
+
110
+ In addition to slash commands (user-invoked), this package installs **skills** that Claude uses automatically when relevant.
111
+
112
+ ### Session Context Skill
113
+
114
+ Claude automatically reads `.sessions/index.md` when you ask about:
115
+ - "What's the project status?"
116
+ - "What were we working on?"
117
+ - "What decisions have we made?"
118
+ - "What's blocking us?"
119
+
120
+ No need to run `/start-session` for quick context questions - Claude just knows.
121
+
122
+ ### Archive Session Skill
123
+
124
+ Claude suggests archiving when:
125
+ - You ask to merge a PR: "merge it", "merge the PR", "ship it"
126
+ - After successfully running `gh pr merge`
127
+ - You mention completion: "PR merged", "shipped", "done with X"
128
+
129
+ Claude suggests but doesn't archive automatically - you stay in control.
130
+
96
131
  ## Requirements
97
132
 
98
133
  - Any project (works with any language/framework)
package/dist/index.js CHANGED
@@ -21,20 +21,110 @@ function log(message, color = colors.reset) {
21
21
  function checkExistingSessions() {
22
22
  return existsSync('.sessions');
23
23
  }
24
+ // Version tracking
25
+ function getPackageVersion() {
26
+ const pkgPath = join(__dirname, '..', 'package.json');
27
+ const pkg = JSON.parse(readFileSync(pkgPath, 'utf-8'));
28
+ return pkg.version;
29
+ }
30
+ function getInstalledVersion() {
31
+ const versionFile = '.sessions/.version';
32
+ if (existsSync(versionFile)) {
33
+ return readFileSync(versionFile, 'utf-8').trim();
34
+ }
35
+ return null;
36
+ }
37
+ function writeInstalledVersion(version) {
38
+ writeFileSync('.sessions/.version', version + '\n');
39
+ }
40
+ function parseVersion(version) {
41
+ const [major, minor, patch] = version.replace(/^v/, '').split('.').map(Number);
42
+ return { major: major || 0, minor: minor || 0, patch: patch || 0 };
43
+ }
44
+ function compareVersions(a, b) {
45
+ const vA = parseVersion(a);
46
+ const vB = parseVersion(b);
47
+ if (vA.major !== vB.major)
48
+ return vA.major - vB.major;
49
+ if (vA.minor !== vB.minor)
50
+ return vA.minor - vB.minor;
51
+ return vA.patch - vB.patch;
52
+ }
53
+ function isVersionLessThan(installed, target) {
54
+ return compareVersions(installed, target) < 0;
55
+ }
56
+ const CHANGELOG = [
57
+ {
58
+ version: '0.3.10',
59
+ changes: [
60
+ 'Archive-session skill (Claude suggests archiving after PR merges)',
61
+ 'Removed git hook (skills are more elegant)',
62
+ ]
63
+ },
64
+ {
65
+ version: '0.3.9',
66
+ changes: [
67
+ 'Session context skill (Claude auto-reads .sessions/index.md)',
68
+ 'Robust version tracking with .sessions/.version',
69
+ ]
70
+ },
71
+ {
72
+ version: '0.3.8',
73
+ changes: [
74
+ 'Linear MCP integration (replaced linearis CLI)',
75
+ ]
76
+ },
77
+ {
78
+ version: '0.3.5',
79
+ changes: [
80
+ 'Ask mode for script permissions (better UX)',
81
+ 'Permission system overhaul',
82
+ ]
83
+ },
84
+ {
85
+ version: '0.3.0',
86
+ changes: [
87
+ 'GitHub integration via gh CLI (/start-session)',
88
+ 'Implementation planning (/plan)',
89
+ 'Enhanced documentation with sub-agents (/document)',
90
+ 'Monorepo support (auto-detected)',
91
+ 'Interactive git strategy selection',
92
+ 'New directories: plans/, prep/',
93
+ ]
94
+ },
95
+ ];
96
+ function getChangesFromVersion(installedVersion) {
97
+ if (!installedVersion) {
98
+ // Legacy install without version file - show all changes from 0.3.0+
99
+ return CHANGELOG.flatMap(entry => entry.changes);
100
+ }
101
+ const changes = [];
102
+ for (const entry of CHANGELOG) {
103
+ if (isVersionLessThan(installedVersion, entry.version)) {
104
+ changes.push(...entry.changes);
105
+ }
106
+ }
107
+ return changes;
108
+ }
24
109
  function detectVersion() {
25
- // Try to detect version from existing setup
26
110
  if (!existsSync('.sessions'))
27
111
  return null;
28
- // Check for v0.3-specific files (not just directories users might create)
112
+ // Check for explicit version file first
113
+ const installedVersion = getInstalledVersion();
114
+ if (installedVersion) {
115
+ return installedVersion;
116
+ }
117
+ // Legacy detection for pre-0.3.9 installs (no version file)
29
118
  const hasPlanCommand = existsSync('.claude/commands/plan.md');
30
119
  const hasHybridGitignore = existsSync('.sessions/.gitignore') &&
31
120
  readFileSync('.sessions/.gitignore', 'utf-8').includes('!docs/');
32
- const hasGitHook = existsSync('.git/hooks/post-merge');
33
- // If any v0.3-specific feature exists, consider it v0.3+
34
- if (hasPlanCommand || hasHybridGitignore || hasGitHook) {
35
- return 'v0.3+';
36
- }
37
- return 'v0.1-0.2'; // Old version
121
+ const hasSessionContextSkill = existsSync('.claude/skills/session-context/SKILL.md');
122
+ // Estimate version based on features present
123
+ if (hasSessionContextSkill)
124
+ return '0.3.9'; // Skills added in 0.3.9
125
+ if (hasPlanCommand || hasHybridGitignore)
126
+ return '0.3.0';
127
+ return '0.1.0'; // Very old version
38
128
  }
39
129
  async function promptGitStrategy() {
40
130
  const response = await prompts({
@@ -169,7 +259,7 @@ function createGitignore(strategy) {
169
259
  log(`✓ Created .sessions/.gitignore (${strategyLabels[strategy]})`, colors.green);
170
260
  }
171
261
  function updateExistingSetup() {
172
- log('\n📦 Updating existing Sessions Directory...', colors.cyan);
262
+ log('\n[*] Updating existing Sessions Directory...', colors.cyan);
173
263
  const version = detectVersion();
174
264
  // Always update commands (they're templates, safe to overwrite)
175
265
  // Only skip directory creation if already on v0.3+
@@ -188,6 +278,10 @@ function updateExistingSetup() {
188
278
  mkdirSync('.claude/scripts', { recursive: true });
189
279
  log('✓ Created .claude/scripts/', colors.green);
190
280
  }
281
+ if (!existsSync('.claude/skills')) {
282
+ mkdirSync('.claude/skills/session-context', { recursive: true });
283
+ log('✓ Created .claude/skills/', colors.green);
284
+ }
191
285
  }
192
286
  // Update .gitignore to ignore if it only has basic content
193
287
  if (!skipDirectoryCreation) {
@@ -220,6 +314,19 @@ function updateExistingSetup() {
220
314
  log(`✓ Created .claude/commands/${cmd}.md`, colors.green);
221
315
  }
222
316
  }
317
+ // Create or update skills
318
+ if (!existsSync('.claude/skills/session-context')) {
319
+ mkdirSync('.claude/skills/session-context', { recursive: true });
320
+ }
321
+ const sessionContextSkill = getTemplateContent('claude/skills/session-context/SKILL.md');
322
+ writeFileSync('.claude/skills/session-context/SKILL.md', sessionContextSkill);
323
+ log('✓ Updated .claude/skills/session-context/SKILL.md', colors.green);
324
+ if (!existsSync('.claude/skills/archive-session')) {
325
+ mkdirSync('.claude/skills/archive-session', { recursive: true });
326
+ }
327
+ const archiveSessionSkill = getTemplateContent('claude/skills/archive-session/SKILL.md');
328
+ writeFileSync('.claude/skills/archive-session/SKILL.md', archiveSessionSkill);
329
+ log('✓ Updated .claude/skills/archive-session/SKILL.md', colors.green);
223
330
  // Always create or update settings.json for permissions
224
331
  if (!existsSync('.claude/settings.json')) {
225
332
  const settingsContent = getTemplateContent('claude/settings.json');
@@ -260,7 +367,7 @@ function updateExistingSetup() {
260
367
  }
261
368
  // Warn about settings.local.json
262
369
  if (existsSync('.claude/settings.local.json')) {
263
- log(' Note: .claude/settings.local.json detected', colors.yellow);
370
+ log('[!] Note: .claude/settings.local.json detected', colors.yellow);
264
371
  log(' You may need to manually update it to use relative paths:', colors.yellow);
265
372
  log(' Change: Bash(/full/path/.claude/scripts/*:*)', colors.cyan);
266
373
  log(' To: Bash(.claude/scripts/*:*)', colors.cyan);
@@ -284,23 +391,25 @@ function updateExistingSetup() {
284
391
  log('✓ Created .sessions/WORKSPACE.md', colors.green);
285
392
  }
286
393
  }
287
- // Remove deprecated should-archive.sh script (replaced by git hook in v0.3.5)
394
+ // Remove deprecated should-archive.sh script (replaced by archive-session skill)
288
395
  if (existsSync('.claude/scripts/should-archive.sh')) {
289
396
  unlinkSync('.claude/scripts/should-archive.sh');
290
397
  log('✓ Removed deprecated should-archive.sh script', colors.yellow);
291
398
  }
292
- // Set up git post-merge hook for archive reminders (always check, even for v0.3+ users)
293
- if (existsSync('.git/hooks') && !existsSync('.git/hooks/post-merge')) {
294
- const hookPath = '.git/hooks/post-merge';
295
- const hookContent = getTemplateContent('git/hooks/post-merge');
296
- writeFileSync(hookPath, hookContent);
297
- chmodSync(hookPath, 0o755);
298
- log('✓ Created git post-merge hook for archive reminders', colors.green);
399
+ // Remove deprecated post-merge hook (replaced by archive-session skill in v0.3.10)
400
+ if (existsSync('.git/hooks/post-merge')) {
401
+ const hookContent = readFileSync('.git/hooks/post-merge', 'utf-8');
402
+ // Only remove if it's our hook (check for sessions pattern markers)
403
+ if (hookContent.includes('.sessions') || hookContent.includes('archive')) {
404
+ unlinkSync('.git/hooks/post-merge');
405
+ log('✓ Removed deprecated post-merge hook (replaced by archive-session skill)', colors.yellow);
406
+ }
299
407
  }
408
+ // Write version file for future update tracking
409
+ const packageVersion = getPackageVersion();
410
+ writeInstalledVersion(packageVersion);
411
+ log(`✓ Updated .sessions/.version (${packageVersion})`, colors.green);
300
412
  log('\n✓ Update complete! Your existing work is preserved.', colors.green + colors.bright);
301
- if (skipDirectoryCreation) {
302
- log(' Commands updated to latest templates.', colors.cyan);
303
- }
304
413
  }
305
414
  function checkClaudeCLI() {
306
415
  try {
@@ -416,12 +525,15 @@ function createSessionsDirectory() {
416
525
  mkdirSync('.claude', { recursive: true });
417
526
  mkdirSync('.claude/commands', { recursive: true });
418
527
  mkdirSync('.claude/scripts', { recursive: true });
528
+ mkdirSync('.claude/skills/session-context', { recursive: true });
529
+ mkdirSync('.claude/skills/archive-session', { recursive: true });
419
530
  log('\n✓ Created .sessions/ directory', colors.green);
420
531
  log('✓ Created .sessions/archive/ directory', colors.green);
421
532
  log('✓ Created .sessions/plans/ directory', colors.green);
422
533
  log('✓ Created .sessions/prep/ directory', colors.green);
423
534
  log('✓ Created .claude/commands/ directory', colors.green);
424
535
  log('✓ Created .claude/scripts/ directory', colors.green);
536
+ log('✓ Created .claude/skills/ directory', colors.green);
425
537
  // Handle monorepo setup
426
538
  if (monorepo.isMonorepo) {
427
539
  mkdirSync('.sessions/packages', { recursive: true });
@@ -461,6 +573,13 @@ function createSessionsDirectory() {
461
573
  const changeGitStrategyContent = getTemplateContent('claude/commands/change-git-strategy.md');
462
574
  writeFileSync('.claude/commands/change-git-strategy.md', changeGitStrategyContent);
463
575
  log('✓ Created .claude/commands/change-git-strategy.md', colors.green);
576
+ // Create skills
577
+ const sessionContextSkill = getTemplateContent('claude/skills/session-context/SKILL.md');
578
+ writeFileSync('.claude/skills/session-context/SKILL.md', sessionContextSkill);
579
+ log('✓ Created .claude/skills/session-context/SKILL.md', colors.green);
580
+ const archiveSessionSkill = getTemplateContent('claude/skills/archive-session/SKILL.md');
581
+ writeFileSync('.claude/skills/archive-session/SKILL.md', archiveSessionSkill);
582
+ log('✓ Created .claude/skills/archive-session/SKILL.md', colors.green);
464
583
  // Create scripts
465
584
  const untrackScript = getTemplateContent('claude/scripts/untrack-sessions.sh');
466
585
  writeFileSync('.claude/scripts/untrack-sessions.sh', untrackScript);
@@ -470,50 +589,48 @@ function createSessionsDirectory() {
470
589
  const settingsContent = getTemplateContent('claude/settings.json');
471
590
  writeFileSync('.claude/settings.json', settingsContent);
472
591
  log('✓ Created .claude/settings.json', colors.green);
473
- // Set up git post-merge hook for archive reminders
474
- if (existsSync('.git/hooks')) {
475
- const hookPath = '.git/hooks/post-merge';
476
- const hookContent = getTemplateContent('git/hooks/post-merge');
477
- writeFileSync(hookPath, hookContent);
478
- chmodSync(hookPath, 0o755);
479
- log('✓ Created git post-merge hook for archive reminders', colors.green);
480
- }
592
+ // Write version file for future update tracking
593
+ const packageVersion = getPackageVersion();
594
+ writeInstalledVersion(packageVersion);
595
+ log(`✓ Created .sessions/.version (${packageVersion})`, colors.green);
481
596
  }
482
597
  async function main() {
483
- log('\n create-sessions-dir', colors.cyan + colors.bright);
598
+ log('\n[*] create-sessions-dir', colors.cyan + colors.bright);
484
599
  log(' Setting up Sessions Directory Pattern\n', colors.cyan);
485
600
  // Check for existing .sessions directory
486
601
  if (checkExistingSessions()) {
487
- const version = detectVersion();
488
- const isOlderVersion = version !== 'v0.3+';
489
- if (isOlderVersion) {
490
- log('📦 Existing Sessions Directory detected (older version)', colors.cyan);
491
- log(' Updating to v0.3.0 with new features...\n', colors.cyan);
602
+ const installedVersion = detectVersion();
603
+ const packageVersion = getPackageVersion();
604
+ const changes = getChangesFromVersion(installedVersion);
605
+ const hasChanges = changes.length > 0;
606
+ if (installedVersion) {
607
+ log(`[i] Existing Sessions Directory detected (v${installedVersion})`, colors.cyan);
492
608
  }
493
609
  else {
494
- log('📦 Existing Sessions Directory detected (v0.3+)', colors.cyan);
495
- log(' Updating commands to latest templates...\n', colors.cyan);
610
+ log('[i] Existing Sessions Directory detected (legacy)', colors.cyan);
611
+ }
612
+ if (hasChanges) {
613
+ log(` Updating to v${packageVersion}...\n`, colors.cyan);
614
+ }
615
+ else {
616
+ log(` Already at v${packageVersion}, refreshing templates...\n`, colors.cyan);
496
617
  }
497
618
  updateExistingSetup();
498
619
  // Check for Claude CLI
499
620
  const hasClaudeCLI = checkClaudeCLI();
500
621
  log('\n' + '─'.repeat(50), colors.blue);
501
- log('\n🎉 Update complete!\n', colors.green + colors.bright);
502
- if (isOlderVersion) {
503
- log('What\'s new in v0.3.8:', colors.bright);
504
- log(' • Git hook for archive reminders (post-merge)');
505
- log(' Ask mode for script permissions (better UX)');
506
- log(' • GitHub integration via gh CLI (/start-session)');
507
- log(' • Linear integration via MCP (/start-session)');
508
- log(' • Implementation planning (/plan)');
509
- log(' • Enhanced documentation with sub-agents (/document)');
510
- log(' • Monorepo support (auto-detected)');
511
- log(' • New directories: plans/, prep/\n');
622
+ log('\n[OK] Update complete!\n', colors.green + colors.bright);
623
+ if (hasChanges) {
624
+ log(`What's new since v${installedVersion || 'legacy'}:`, colors.bright);
625
+ for (const change of changes) {
626
+ log(` - ${change}`);
627
+ }
628
+ log('');
512
629
  }
513
630
  if (!hasClaudeCLI) {
514
- log('⚠️ Claude CLI not detected', colors.yellow);
515
- log(' Install it to use slash commands:', colors.yellow);
516
- log(' npm install -g @anthropic-ai/claude-code\n', colors.cyan);
631
+ log('[!] Claude CLI not detected', colors.yellow);
632
+ log(' Install it to use slash commands:', colors.yellow);
633
+ log(' npm install -g @anthropic-ai/claude-code\n', colors.cyan);
517
634
  }
518
635
  log('Next steps:', colors.bright);
519
636
  log(' 1. Check updated commands in .claude/commands/');
@@ -537,11 +654,11 @@ async function main() {
537
654
  // Check for Claude CLI
538
655
  const hasClaudeCLI = checkClaudeCLI();
539
656
  log('\n' + '─'.repeat(50), colors.blue);
540
- log('\n🎉 Sessions Directory created successfully!\n', colors.green + colors.bright);
657
+ log('\n[OK] Sessions Directory created successfully!\n', colors.green + colors.bright);
541
658
  if (!hasClaudeCLI) {
542
- log('⚠️ Claude CLI not detected', colors.yellow);
543
- log(' Install it to use slash commands:', colors.yellow);
544
- log(' npm install -g @anthropic-ai/claude-code\n', colors.cyan);
659
+ log('[!] Claude CLI not detected', colors.yellow);
660
+ log(' Install it to use slash commands:', colors.yellow);
661
+ log(' npm install -g @anthropic-ai/claude-code\n', colors.cyan);
545
662
  }
546
663
  log('Next steps:', colors.bright);
547
664
  log(' 1. Read the guide: .sessions/README.md');
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAC/F,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,OAAO,MAAM,SAAS,CAAC;AAE9B,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AAEtC,6BAA6B;AAC7B,MAAM,MAAM,GAAG;IACb,KAAK,EAAE,SAAS;IAChB,MAAM,EAAE,SAAS;IACjB,KAAK,EAAE,UAAU;IACjB,MAAM,EAAE,UAAU;IAClB,IAAI,EAAE,UAAU;IAChB,IAAI,EAAE,UAAU;CACjB,CAAC;AAEF,SAAS,GAAG,CAAC,OAAe,EAAE,QAAgB,MAAM,CAAC,KAAK;IACxD,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,GAAG,OAAO,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;AACnD,CAAC;AAED,SAAS,qBAAqB;IAC5B,OAAO,UAAU,CAAC,WAAW,CAAC,CAAC;AACjC,CAAC;AAED,mBAAmB;AACnB,SAAS,iBAAiB;IACxB,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;IACtD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;IACvD,OAAO,GAAG,CAAC,OAAO,CAAC;AACrB,CAAC;AAED,SAAS,mBAAmB;IAC1B,MAAM,WAAW,GAAG,oBAAoB,CAAC;IACzC,IAAI,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAC5B,OAAO,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;IACnD,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,qBAAqB,CAAC,OAAe;IAC5C,aAAa,CAAC,oBAAoB,EAAE,OAAO,GAAG,IAAI,CAAC,CAAC;AACtD,CAAC;AAED,SAAS,YAAY,CAAC,OAAe;IACnC,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC/E,OAAO,EAAE,KAAK,EAAE,KAAK,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;AACrE,CAAC;AAED,SAAS,eAAe,CAAC,CAAS,EAAE,CAAS;IAC3C,MAAM,EAAE,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;IAC3B,MAAM,EAAE,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;IAE3B,IAAI,EAAE,CAAC,KAAK,KAAK,EAAE,CAAC,KAAK;QAAE,OAAO,EAAE,CAAC,KAAK,GAAG,EAAE,CAAC,KAAK,CAAC;IACtD,IAAI,EAAE,CAAC,KAAK,KAAK,EAAE,CAAC,KAAK;QAAE,OAAO,EAAE,CAAC,KAAK,GAAG,EAAE,CAAC,KAAK,CAAC;IACtD,OAAO,EAAE,CAAC,KAAK,GAAG,EAAE,CAAC,KAAK,CAAC;AAC7B,CAAC;AAED,SAAS,iBAAiB,CAAC,SAAiB,EAAE,MAAc;IAC1D,OAAO,eAAe,CAAC,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;AAChD,CAAC;AAQD,MAAM,SAAS,GAAqB;IAClC;QACE,OAAO,EAAE,QAAQ;QACjB,OAAO,EAAE;YACP,mEAAmE;YACnE,4CAA4C;SAC7C;KACF;IACD;QACE,OAAO,EAAE,OAAO;QAChB,OAAO,EAAE;YACP,8DAA8D;YAC9D,iDAAiD;SAClD;KACF;IACD;QACE,OAAO,EAAE,OAAO;QAChB,OAAO,EAAE;YACP,gDAAgD;SACjD;KACF;IACD;QACE,OAAO,EAAE,OAAO;QAChB,OAAO,EAAE;YACP,6CAA6C;YAC7C,4BAA4B;SAC7B;KACF;IACD;QACE,OAAO,EAAE,OAAO;QAChB,OAAO,EAAE;YACP,gDAAgD;YAChD,iCAAiC;YACjC,oDAAoD;YACpD,kCAAkC;YAClC,oCAAoC;YACpC,gCAAgC;SACjC;KACF;CACF,CAAC;AAEF,SAAS,qBAAqB,CAAC,gBAA+B;IAC5D,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACtB,qEAAqE;QACrE,OAAO,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACnD,CAAC;IAED,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,KAAK,MAAM,KAAK,IAAI,SAAS,EAAE,CAAC;QAC9B,IAAI,iBAAiB,CAAC,gBAAgB,EAAE,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;YACvD,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,aAAa;IACpB,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC;QAAE,OAAO,IAAI,CAAC;IAE1C,wCAAwC;IACxC,MAAM,gBAAgB,GAAG,mBAAmB,EAAE,CAAC;IAC/C,IAAI,gBAAgB,EAAE,CAAC;QACrB,OAAO,gBAAgB,CAAC;IAC1B,CAAC;IAED,4DAA4D;IAC5D,MAAM,cAAc,GAAG,UAAU,CAAC,0BAA0B,CAAC,CAAC;IAC9D,MAAM,kBAAkB,GAAG,UAAU,CAAC,sBAAsB,CAAC;QAC3D,YAAY,CAAC,sBAAsB,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACnE,MAAM,sBAAsB,GAAG,UAAU,CAAC,yCAAyC,CAAC,CAAC;IAErF,6CAA6C;IAC7C,IAAI,sBAAsB;QAAE,OAAO,OAAO,CAAC,CAAC,wBAAwB;IACpE,IAAI,cAAc,IAAI,kBAAkB;QAAE,OAAO,OAAO,CAAC;IAEzD,OAAO,OAAO,CAAC,CAAC,mBAAmB;AACrC,CAAC;AAED,KAAK,UAAU,iBAAiB;IAC9B,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC;QAC7B,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,0CAA0C;QACnD,OAAO,EAAE;YACP;gBACE,KAAK,EAAE,0BAA0B;gBACjC,KAAK,EAAE,QAAQ;gBACf,WAAW,EAAE,oEAAoE;aAClF;YACD;gBACE,KAAK,EAAE,QAAQ;gBACf,KAAK,EAAE,QAAQ;gBACf,WAAW,EAAE,+CAA+C;aAC7D;YACD;gBACE,KAAK,EAAE,YAAY;gBACnB,KAAK,EAAE,QAAQ;gBACf,WAAW,EAAE,iDAAiD;aAC/D;SACF;QACD,OAAO,EAAE,CAAC;KACX,CAAC,CAAC;IAEH,OAAO,QAAQ,CAAC,QAAQ,IAAI,QAAQ,CAAC;AACvC,CAAC;AAED,KAAK,UAAU,oBAAoB;IACjC,4BAA4B;IAC5B,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAC7B,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC;YAC7B,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,8DAA8D;YACvE,OAAO,EAAE,IAAI;SACd,CAAC,CAAC;QACH,OAAO,QAAQ,CAAC,MAAM,IAAI,KAAK,CAAC;IAClC,CAAC;IAED,kEAAkE;IAClE,MAAM,QAAQ,GAAG,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IACpD,IAAI,QAAQ,CAAC,QAAQ,CAAC,kBAAkB,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;QAC7E,GAAG,CAAC,+CAA+C,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QACnE,OAAO,KAAK,CAAC;IACf,CAAC;IAED,gBAAgB;IAChB,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC;QAC7B,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,2DAA2D;QACpE,OAAO,EAAE,IAAI;KACd,CAAC,CAAC;IAEH,OAAO,QAAQ,CAAC,MAAM,IAAI,KAAK,CAAC;AAClC,CAAC;AAED,SAAS,sBAAsB,CAAC,KAAc;IAC5C,MAAM,eAAe,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;CAyBzB,CAAC;IAEA,MAAM,eAAe,GAAG;;;;;;;;;;;;;;;;;;;;;;;EAuBxB,eAAe,EAAE,CAAC;IAElB,IAAI,KAAK,EAAE,CAAC;QACV,qCAAqC;QACrC,aAAa,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;QAC5C,GAAG,CAAC,gDAAgD,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IACtE,CAAC;SAAM,CAAC;QACN,+BAA+B;QAC/B,MAAM,QAAQ,GAAG,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QACpD,MAAM,OAAO,GAAG,QAAQ,GAAG,IAAI,GAAG,eAAe,CAAC;QAClD,aAAa,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QACpC,GAAG,CAAC,+CAA+C,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IACrE,CAAC;AACH,CAAC;AAED,SAAS,eAAe,CAAC,QAAgB;IACvC,MAAM,WAAW,GAA2B;QAC1C,MAAM,EAAE,4BAA4B;QACpC,MAAM,EAAE,4BAA4B;QACpC,MAAM,EAAE,4BAA4B;KACrC,CAAC;IAEF,MAAM,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,IAAI,WAAW,CAAC,MAAM,CAAC;IAC7D,MAAM,gBAAgB,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IACtD,aAAa,CAAC,sBAAsB,EAAE,gBAAgB,CAAC,CAAC;IAExD,MAAM,cAAc,GAA2B;QAC7C,MAAM,EAAE,+BAA+B;QACvC,MAAM,EAAE,4BAA4B;QACpC,MAAM,EAAE,iDAAiD;KAC1D,CAAC;IAEF,GAAG,CAAC,mCAAmC,cAAc,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;AACpF,CAAC;AAED,SAAS,mBAAmB;IAC1B,GAAG,CAAC,+CAA+C,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;IAElE,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;IAEhC,gEAAgE;IAChE,mDAAmD;IACnD,MAAM,qBAAqB,GAAG,OAAO,KAAK,OAAO,CAAC;IAElD,kDAAkD;IAClD,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC3B,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC;YACnC,SAAS,CAAC,iBAAiB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAClD,GAAG,CAAC,4BAA4B,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QAClD,CAAC;QAED,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;YAClC,SAAS,CAAC,gBAAgB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACjD,GAAG,CAAC,2BAA2B,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QACjD,CAAC;QAED,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC;YACnC,SAAS,CAAC,iBAAiB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAClD,GAAG,CAAC,4BAA4B,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QAClD,CAAC;QAED,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;YAClC,SAAS,CAAC,gCAAgC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACjE,GAAG,CAAC,2BAA2B,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QACjD,CAAC;IACH,CAAC;IAED,2DAA2D;IAC3D,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC3B,IAAI,UAAU,CAAC,sBAAsB,CAAC,EAAE,CAAC;YACvC,MAAM,QAAQ,GAAG,YAAY,CAAC,sBAAsB,EAAE,OAAO,CAAC,CAAC;YAC/D,uEAAuE;YACvE,IAAI,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;gBACpG,eAAe,CAAC,QAAQ,CAAC,CAAC;gBAC1B,GAAG,CAAC,mDAAmD,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;YACxE,CAAC;QACH,CAAC;aAAM,CAAC;YACN,wFAAwF;YACxF,eAAe,CAAC,QAAQ,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;IAED,4BAA4B;IAC5B,MAAM,QAAQ,GAAG,CAAC,eAAe,EAAE,aAAa,EAAE,UAAU,EAAE,iBAAiB,CAAC,CAAC;IACjF,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC3B,MAAM,OAAO,GAAG,kBAAkB,CAAC,mBAAmB,GAAG,KAAK,CAAC,CAAC;QAChE,aAAa,CAAC,oBAAoB,GAAG,KAAK,EAAE,OAAO,CAAC,CAAC;QACrD,GAAG,CAAC,8BAA8B,GAAG,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IAC5D,CAAC;IAED,2BAA2B;IAC3B,MAAM,WAAW,GAAG,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;IACpD,KAAK,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;QAC9B,IAAI,CAAC,UAAU,CAAC,oBAAoB,GAAG,KAAK,CAAC,EAAE,CAAC;YAC9C,MAAM,OAAO,GAAG,kBAAkB,CAAC,mBAAmB,GAAG,KAAK,CAAC,CAAC;YAChE,aAAa,CAAC,oBAAoB,GAAG,KAAK,EAAE,OAAO,CAAC,CAAC;YACrD,GAAG,CAAC,8BAA8B,GAAG,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;IAED,0BAA0B;IAC1B,IAAI,CAAC,UAAU,CAAC,gCAAgC,CAAC,EAAE,CAAC;QAClD,SAAS,CAAC,gCAAgC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACnE,CAAC;IACD,MAAM,mBAAmB,GAAG,kBAAkB,CAAC,wCAAwC,CAAC,CAAC;IACzF,aAAa,CAAC,yCAAyC,EAAE,mBAAmB,CAAC,CAAC;IAC9E,GAAG,CAAC,mDAAmD,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IAEvE,IAAI,CAAC,UAAU,CAAC,gCAAgC,CAAC,EAAE,CAAC;QAClD,SAAS,CAAC,gCAAgC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACnE,CAAC;IACD,MAAM,mBAAmB,GAAG,kBAAkB,CAAC,wCAAwC,CAAC,CAAC;IACzF,aAAa,CAAC,yCAAyC,EAAE,mBAAmB,CAAC,CAAC;IAC9E,GAAG,CAAC,mDAAmD,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IAEvE,wDAAwD;IACxD,IAAI,CAAC,UAAU,CAAC,uBAAuB,CAAC,EAAE,CAAC;QACzC,MAAM,eAAe,GAAG,kBAAkB,CAAC,sBAAsB,CAAC,CAAC;QACnE,aAAa,CAAC,uBAAuB,EAAE,eAAe,CAAC,CAAC;QACxD,GAAG,CAAC,iCAAiC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IACvD,CAAC;SAAM,CAAC;QACN,+CAA+C;QAC/C,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,uBAAuB,EAAE,OAAO,CAAC,CAAC,CAAC;YAC5E,IAAI,OAAO,GAAG,KAAK,CAAC;YAEpB,IAAI,QAAQ,CAAC,WAAW,EAAE,KAAK,EAAE,CAAC;gBAChC,QAAQ,CAAC,WAAW,CAAC,KAAK,GAAG,QAAQ,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAY,EAAE,EAAE;oBAC3E,qDAAqD;oBACrD,IAAI,IAAI,CAAC,KAAK,CAAC,uCAAuC,CAAC,EAAE,CAAC;wBACxD,OAAO,GAAG,IAAI,CAAC;wBACf,yCAAyC;wBACzC,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;4BACzB,OAAO,2BAA2B,CAAC;wBACrC,CAAC;wBACD,4DAA4D;wBAC5D,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;wBACtD,IAAI,UAAU,EAAE,CAAC;4BACf,OAAO,wBAAwB,UAAU,KAAK,CAAC;wBACjD,CAAC;oBACH,CAAC;oBACD,OAAO,IAAI,CAAC;gBACd,CAAC,CAAC,CAAC;gBAEH,IAAI,OAAO,EAAE,CAAC;oBACZ,aAAa,CAAC,uBAAuB,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;oBACjF,GAAG,CAAC,uDAAuD,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;gBAC7E,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,qDAAqD;QACvD,CAAC;IACH,CAAC;IAED,iCAAiC;IACjC,IAAI,UAAU,CAAC,6BAA6B,CAAC,EAAE,CAAC;QAC9C,GAAG,CAAC,gDAAgD,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;QACrE,GAAG,CAAC,6DAA6D,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;QAClF,GAAG,CAAC,gDAAgD,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;QACnE,GAAG,CAAC,qCAAqC,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;IAC1D,CAAC;IAED,iBAAiB;IACjB,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC3B,IAAI,CAAC,UAAU,CAAC,qCAAqC,CAAC,EAAE,CAAC;YACvD,MAAM,aAAa,GAAG,kBAAkB,CAAC,oCAAoC,CAAC,CAAC;YAC/E,aAAa,CAAC,qCAAqC,EAAE,aAAa,CAAC,CAAC;YACpE,SAAS,CAAC,qCAAqC,EAAE,KAAK,CAAC,CAAC;YACxD,GAAG,CAAC,+CAA+C,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QACrE,CAAC;QAED,yDAAyD;QACzD,MAAM,QAAQ,GAAG,cAAc,EAAE,CAAC;QAClC,IAAI,QAAQ,CAAC,UAAU,IAAI,CAAC,UAAU,CAAC,wBAAwB,CAAC,EAAE,CAAC;YACjE,SAAS,CAAC,oBAAoB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACrD,GAAG,CAAC,mDAAmD,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;YAEtE,MAAM,gBAAgB,GAAG,kBAAkB,CAAC,uBAAuB,CAAC;iBACjE,OAAO,CAAC,cAAc,EAAE,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YAC5E,aAAa,CAAC,wBAAwB,EAAE,gBAAgB,CAAC,CAAC;YAC1D,GAAG,CAAC,kCAAkC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;IAED,iFAAiF;IACjF,IAAI,UAAU,CAAC,mCAAmC,CAAC,EAAE,CAAC;QACpD,UAAU,CAAC,mCAAmC,CAAC,CAAC;QAChD,GAAG,CAAC,+CAA+C,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;IACtE,CAAC;IAED,mFAAmF;IACnF,IAAI,UAAU,CAAC,uBAAuB,CAAC,EAAE,CAAC;QACxC,MAAM,WAAW,GAAG,YAAY,CAAC,uBAAuB,EAAE,OAAO,CAAC,CAAC;QACnE,oEAAoE;QACpE,IAAI,WAAW,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,WAAW,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YACzE,UAAU,CAAC,uBAAuB,CAAC,CAAC;YACpC,GAAG,CAAC,0EAA0E,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;QACjG,CAAC;IACH,CAAC;IAED,gDAAgD;IAChD,MAAM,cAAc,GAAG,iBAAiB,EAAE,CAAC;IAC3C,qBAAqB,CAAC,cAAc,CAAC,CAAC;IACtC,GAAG,CAAC,iCAAiC,cAAc,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IAEtE,GAAG,CAAC,uDAAuD,EAAE,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;AAC7F,CAAC;AAED,SAAS,cAAc;IACrB,IAAI,CAAC;QACH,QAAQ,CAAC,cAAc,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC9C,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,SAAS,cAAc;IACrB,+BAA+B;IAC/B,IAAI,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;QAC/B,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC,CAAC;YAC9D,IAAI,GAAG,CAAC,IAAI;gBAAE,OAAO,GAAG,CAAC,IAAI,CAAC;QAChC,CAAC;QAAC,MAAM,CAAC;YACP,eAAe;QACjB,CAAC;IACH,CAAC;IAED,sBAAsB;IACtB,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,QAAQ,CAAC,2BAA2B,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QACtF,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;QACxD,IAAI,KAAK;YAAE,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC;IAC7B,CAAC;IAAC,MAAM,CAAC;QACP,eAAe;IACjB,CAAC;IAED,qBAAqB;IACrB,OAAO,OAAO,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,YAAY,CAAC;AACxD,CAAC;AAED,SAAS,cAAc;IACrB,MAAM,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;IACxB,MAAM,OAAO,GAA+B;QAC1C,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,MAAM;QACb,GAAG,EAAE,SAAS;KACf,CAAC;IACF,OAAO,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;AACnD,CAAC;AAED,SAAS,kBAAkB,CAAC,QAAgB;IAC1C,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;IACxD,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IAC9C,OAAO,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;AACzC,CAAC;AAQD,SAAS,cAAc;IACrB,2BAA2B;IAC3B,IAAI,UAAU,CAAC,qBAAqB,CAAC,EAAE,CAAC;QACtC,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,YAAY,CAAC,qBAAqB,EAAE,OAAO,CAAC,CAAC;YAC1D,yCAAyC;YACzC,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;YACtE,IAAI,aAAa,EAAE,CAAC;gBAClB,MAAM,QAAQ,GAAG,aAAa,CAAC,CAAC,CAAC;qBAC9B,KAAK,CAAC,IAAI,CAAC;qBACX,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;qBAC3C,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;gBAChD,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,QAAQ,EAAE,CAAC;YAC7D,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,eAAe;QACjB,CAAC;IACH,CAAC;IAED,6DAA6D;IAC7D,IAAI,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;QAC/B,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC,CAAC;YAC9D,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC;gBACnB,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC;oBAC5C,CAAC,CAAC,GAAG,CAAC,UAAU;oBAChB,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,QAAQ,IAAI,EAAE,CAAC;gBAClC,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,QAAQ,EAAE,CAAC;YAC7D,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,eAAe;QACjB,CAAC;IACH,CAAC;IAED,kBAAkB;IAClB,IAAI,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QAC7B,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC;YAC9D,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,IAAI,CAAC,YAAY,CAAC,CAAC;YAClD,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,QAAQ,EAAE,CAAC;QAC7D,CAAC;QAAC,MAAM,CAAC;YACP,eAAe;QACjB,CAAC;IACH,CAAC;IAED,kEAAkE;IAClE,iFAAiF;IACjF,IAAI,UAAU,CAAC,YAAY,CAAC,IAAI,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;QAC1D,uFAAuF;QACvF,6BAA6B;QAC7B,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,YAAY,CAAC,EAAE,CAAC;IACvF,CAAC;IAED,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;AAClE,CAAC;AAED,SAAS,uBAAuB;IAC9B,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IACrC,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IACrC,MAAM,QAAQ,GAAG,cAAc,EAAE,CAAC;IAElC,0BAA0B;IAC1B,SAAS,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC5C,SAAS,CAAC,mBAAmB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACpD,SAAS,CAAC,iBAAiB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAClD,SAAS,CAAC,gBAAgB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACjD,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC1C,SAAS,CAAC,kBAAkB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACnD,SAAS,CAAC,iBAAiB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAClD,SAAS,CAAC,gCAAgC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACjE,SAAS,CAAC,gCAAgC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAEjE,GAAG,CAAC,kCAAkC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IACtD,GAAG,CAAC,wCAAwC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IAC5D,GAAG,CAAC,sCAAsC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IAC1D,GAAG,CAAC,qCAAqC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IACzD,GAAG,CAAC,uCAAuC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IAC3D,GAAG,CAAC,sCAAsC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IAC1D,GAAG,CAAC,qCAAqC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IAEzD,wBAAwB;IACxB,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC;QACxB,SAAS,CAAC,oBAAoB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACrD,GAAG,CAAC,mDAAmD,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;QAEtE,MAAM,gBAAgB,GAAG,kBAAkB,CAAC,uBAAuB,CAAC;aACjE,OAAO,CAAC,cAAc,EAAE,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC5E,aAAa,CAAC,wBAAwB,EAAE,gBAAgB,CAAC,CAAC;QAC1D,GAAG,CAAC,kCAAkC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IACxD,CAAC;IAED,kBAAkB;IAClB,MAAM,YAAY,GAAG,kBAAkB,CAAC,mBAAmB,CAAC;SACzD,OAAO,CAAC,kBAAkB,EAAE,WAAW,CAAC;SACxC,OAAO,CAAC,8BAA8B,EAAE,WAAW,CAAC,CAAC;IACxD,aAAa,CAAC,oBAAoB,EAAE,YAAY,CAAC,CAAC;IAClD,GAAG,CAAC,8BAA8B,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IAElD,mBAAmB;IACnB,MAAM,aAAa,GAAG,kBAAkB,CAAC,oBAAoB,CAAC,CAAC;IAC/D,aAAa,CAAC,qBAAqB,EAAE,aAAa,CAAC,CAAC;IACpD,GAAG,CAAC,+BAA+B,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IAEnD,uDAAuD;IAEvD,wBAAwB;IACxB,MAAM,mBAAmB,GAAG,kBAAkB,CAAC,kCAAkC,CAAC,CAAC;IACnF,aAAa,CAAC,mCAAmC,EAAE,mBAAmB,CAAC,CAAC;IACxE,GAAG,CAAC,6CAA6C,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IAEjE,MAAM,iBAAiB,GAAG,kBAAkB,CAAC,gCAAgC,CAAC,CAAC;IAC/E,aAAa,CAAC,iCAAiC,EAAE,iBAAiB,CAAC,CAAC;IACpE,GAAG,CAAC,2CAA2C,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IAE/D,MAAM,qBAAqB,GAAG,kBAAkB,CAAC,oCAAoC,CAAC,CAAC;IACvF,aAAa,CAAC,qCAAqC,EAAE,qBAAqB,CAAC,CAAC;IAC5E,GAAG,CAAC,+CAA+C,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IAEnE,MAAM,eAAe,GAAG,kBAAkB,CAAC,6BAA6B,CAAC,CAAC;IAC1E,aAAa,CAAC,8BAA8B,EAAE,eAAe,CAAC,CAAC;IAC/D,GAAG,CAAC,wCAAwC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IAE5D,MAAM,WAAW,GAAG,kBAAkB,CAAC,yBAAyB,CAAC,CAAC;IAClE,aAAa,CAAC,0BAA0B,EAAE,WAAW,CAAC,CAAC;IACvD,GAAG,CAAC,oCAAoC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IAExD,MAAM,wBAAwB,GAAG,kBAAkB,CAAC,wCAAwC,CAAC,CAAC;IAC9F,aAAa,CAAC,yCAAyC,EAAE,wBAAwB,CAAC,CAAC;IACnF,GAAG,CAAC,mDAAmD,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IAEvE,gBAAgB;IAChB,MAAM,mBAAmB,GAAG,kBAAkB,CAAC,wCAAwC,CAAC,CAAC;IACzF,aAAa,CAAC,yCAAyC,EAAE,mBAAmB,CAAC,CAAC;IAC9E,GAAG,CAAC,mDAAmD,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IAEvE,MAAM,mBAAmB,GAAG,kBAAkB,CAAC,wCAAwC,CAAC,CAAC;IACzF,aAAa,CAAC,yCAAyC,EAAE,mBAAmB,CAAC,CAAC;IAC9E,GAAG,CAAC,mDAAmD,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IAEvE,iBAAiB;IACjB,MAAM,aAAa,GAAG,kBAAkB,CAAC,oCAAoC,CAAC,CAAC;IAC/E,aAAa,CAAC,qCAAqC,EAAE,aAAa,CAAC,CAAC;IACpE,SAAS,CAAC,qCAAqC,EAAE,KAAK,CAAC,CAAC;IACxD,GAAG,CAAC,+CAA+C,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IAEnE,4CAA4C;IAC5C,MAAM,eAAe,GAAG,kBAAkB,CAAC,sBAAsB,CAAC,CAAC;IACnE,aAAa,CAAC,uBAAuB,EAAE,eAAe,CAAC,CAAC;IACxD,GAAG,CAAC,iCAAiC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IAErD,gDAAgD;IAChD,MAAM,cAAc,GAAG,iBAAiB,EAAE,CAAC;IAC3C,qBAAqB,CAAC,cAAc,CAAC,CAAC;IACtC,GAAG,CAAC,iCAAiC,cAAc,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;AACxE,CAAC;AAED,KAAK,UAAU,IAAI;IACjB,GAAG,CAAC,2BAA2B,EAAE,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;IAC9D,GAAG,CAAC,4CAA4C,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;IAE/D,yCAAyC;IACzC,IAAI,qBAAqB,EAAE,EAAE,CAAC;QAC5B,MAAM,gBAAgB,GAAG,aAAa,EAAE,CAAC;QACzC,MAAM,cAAc,GAAG,iBAAiB,EAAE,CAAC;QAC3C,MAAM,OAAO,GAAG,qBAAqB,CAAC,gBAAgB,CAAC,CAAC;QACxD,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;QAEtC,IAAI,gBAAgB,EAAE,CAAC;YACrB,GAAG,CAAC,8CAA8C,gBAAgB,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;QACtF,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,mDAAmD,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;QACxE,CAAC;QAED,IAAI,UAAU,EAAE,CAAC;YACf,GAAG,CAAC,mBAAmB,cAAc,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;QAC7D,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,kBAAkB,cAAc,6BAA6B,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;QAClF,CAAC;QAED,mBAAmB,EAAE,CAAC;QAEtB,uBAAuB;QACvB,MAAM,YAAY,GAAG,cAAc,EAAE,CAAC;QAEtC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;QACxC,GAAG,CAAC,2BAA2B,EAAE,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;QAE/D,IAAI,UAAU,EAAE,CAAC;YACf,GAAG,CAAC,qBAAqB,gBAAgB,IAAI,QAAQ,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;YACzE,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;gBAC7B,GAAG,CAAC,OAAO,MAAM,EAAE,CAAC,CAAC;YACvB,CAAC;YACD,GAAG,CAAC,EAAE,CAAC,CAAC;QACV,CAAC;QAED,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,GAAG,CAAC,6BAA6B,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;YAClD,GAAG,CAAC,uCAAuC,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;YAC5D,GAAG,CAAC,gDAAgD,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;QACrE,CAAC;QAED,GAAG,CAAC,aAAa,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;QAClC,GAAG,CAAC,kDAAkD,CAAC,CAAC;QACxD,GAAG,CAAC,iDAAiD,CAAC,CAAC;QACvD,GAAG,CAAC,+CAA+C,CAAC,CAAC;QACrD,OAAO;IACT,CAAC;IAED,uCAAuC;IACvC,uBAAuB,EAAE,CAAC;IAE1B,0BAA0B;IAC1B,GAAG,CAAC,EAAE,CAAC,CAAC;IACR,MAAM,WAAW,GAAG,MAAM,iBAAiB,EAAE,CAAC;IAC9C,eAAe,CAAC,WAAW,CAAC,CAAC;IAE7B,qCAAqC;IACrC,GAAG,CAAC,EAAE,CAAC,CAAC;IACR,MAAM,oBAAoB,GAAG,MAAM,oBAAoB,EAAE,CAAC;IAC1D,IAAI,oBAAoB,EAAE,CAAC;QACzB,MAAM,KAAK,GAAG,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QACvC,sBAAsB,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC;IAED,uBAAuB;IACvB,MAAM,YAAY,GAAG,cAAc,EAAE,CAAC;IAEtC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;IACxC,GAAG,CAAC,mDAAmD,EAAE,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;IAEvF,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,GAAG,CAAC,6BAA6B,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;QAClD,GAAG,CAAC,uCAAuC,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;QAC5D,GAAG,CAAC,gDAAgD,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;IACrE,CAAC;IAED,GAAG,CAAC,aAAa,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;IAClC,GAAG,CAAC,0CAA0C,CAAC,CAAC;IAChD,GAAG,CAAC,oDAAoD,CAAC,CAAC;IAC1D,GAAG,CAAC,+CAA+C,CAAC,CAAC;AACvD,CAAC;AAED,IAAI,EAAE,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "create-sessions-dir",
3
- "version": "0.3.8",
3
+ "version": "0.3.10",
4
4
  "description": "Scaffold a Sessions Directory for working with AI coding agents",
5
5
  "type": "module",
6
6
  "bin": {
@@ -0,0 +1,51 @@
1
+ ---
2
+ name: archive-session
3
+ description: Suggest archiving completed work when PRs are merged or work is completed. Triggers when user asks to merge a PR ("merge it", "merge the PR"), after successful gh pr merge, or mentions completion ("shipped", "done with X", "merged to main"). Does NOT archive automatically - suggests running /archive-session.
4
+ allowed-tools: Read, Glob, Bash(gh:*)
5
+ ---
6
+
7
+ # Archive Session Awareness
8
+
9
+ This skill detects when session work may be ready for archiving and suggests the appropriate action.
10
+
11
+ ## When to Use This Skill
12
+
13
+ Trigger when:
14
+ - User asks to merge: "merge it", "merge the PR", "go ahead and merge", "ship it"
15
+ - After you successfully run `gh pr merge`
16
+ - User mentions completion: "PR merged", "shipped", "done with X", "finished"
17
+ - User references merged state: "merged to main", "closed the issue"
18
+
19
+ ## Instructions
20
+
21
+ 1. If user asks to merge a PR:
22
+ - Perform the merge as requested
23
+ - On success, continue to step 2
24
+ - On failure, help resolve the issue (don't suggest archiving)
25
+
26
+ 2. After a successful merge, read `.sessions/index.md` to assess work state
27
+
28
+ 3. If user provided a PR URL/number (or you just merged one), verify:
29
+ ```
30
+ gh pr view [URL/number] --json state,mergedAt,title
31
+ ```
32
+
33
+ 4. Assess if work appears complete:
34
+ - PR merged?
35
+ - Related tasks marked done in session notes?
36
+ - No obvious follow-up work mentioned?
37
+
38
+ 5. If work appears complete, suggest archiving:
39
+ > "PR merged successfully. This session's work looks complete - want me to archive it?
40
+ > Run `/archive-session` to move completed work to the archive."
41
+
42
+ 6. If there's more work in the session:
43
+ > "PR merged. I see there's still [X, Y] in the session notes - want to continue
44
+ > with those or archive what's done so far?"
45
+
46
+ ## Important
47
+
48
+ - This skill **suggests** archiving, it does NOT archive automatically
49
+ - User must explicitly run `/archive-session` to perform the archive
50
+ - Trigger AFTER merge succeeds, not before
51
+ - Multiple PRs may be part of one logical session - check context
@@ -0,0 +1,50 @@
1
+ ---
2
+ name: session-context
3
+ description: Read project session context from .sessions/index.md to understand ongoing work, previous decisions, blockers, and history. Use when the user asks about project context, previous sessions, what was worked on before, architectural decisions, blockers, or when they reference "last time", "previously", "the session", or "what we decided".
4
+ allowed-tools: Read, Glob
5
+ ---
6
+
7
+ # Session Context
8
+
9
+ This project uses the Sessions Directory Pattern to maintain continuity across AI coding sessions. Context is stored in `.sessions/index.md` rather than relying on conversation memory.
10
+
11
+ ## When to Use This Skill
12
+
13
+ Read session context when the user:
14
+ - Asks about previous work or decisions
15
+ - References "last time", "previously", "before"
16
+ - Wants to know about blockers or pending issues
17
+ - Asks what the project status is
18
+ - Starts a significant task that might have prior context
19
+
20
+ ## Instructions
21
+
22
+ 1. Read `.sessions/index.md` to understand:
23
+ - Current project status and recent work
24
+ - Active decisions and their rationale
25
+ - Known blockers or pending issues
26
+ - Links to relevant plans or documentation
27
+
28
+ 2. Check `.sessions/plans/` if the user asks about implementation plans
29
+
30
+ 3. Check `.sessions/docs/` if the user asks about documented topics
31
+
32
+ 4. For monorepos, check `.sessions/packages/` for package-specific context
33
+
34
+ ## File Structure
35
+
36
+ ```
37
+ .sessions/
38
+ ├── index.md # Main session context (read this first)
39
+ ├── archive/ # Completed work history
40
+ ├── docs/ # Topic documentation
41
+ ├── plans/ # Implementation plans
42
+ ├── prep/ # Pre-session context
43
+ └── packages/ # Monorepo package notes (if applicable)
44
+ ```
45
+
46
+ ## Important
47
+
48
+ - This skill is for **reading** context, not updating it
49
+ - Session updates happen via `/end-session` slash command
50
+ - Don't modify `.sessions/index.md` unless explicitly asked
@@ -1,32 +0,0 @@
1
- #!/bin/bash
2
-
3
- # post-merge hook
4
- # Prompts to archive sessions after merging to main
5
-
6
- # Only run on main branch
7
- current_branch=$(git branch --show-current)
8
- if [ "$current_branch" != "main" ] && [ "$current_branch" != "master" ]; then
9
- exit 0
10
- fi
11
-
12
- # Check if .sessions directory exists
13
- if [ ! -d ".sessions" ]; then
14
- exit 0
15
- fi
16
-
17
- # Prompt user for archival
18
- echo ""
19
- echo "📦 Sessions Directory: Merged to main!"
20
- echo ""
21
- read -p "Archive completed session work? [y/N] " -n 1 -r
22
- echo ""
23
-
24
- if [[ $REPLY =~ ^[Yy]$ ]]; then
25
- echo "💡 Please run: /archive-session"
26
- echo " (in your next Claude Code session)"
27
- else
28
- echo "Skipped. Run '/archive-session' when ready."
29
- fi
30
- echo ""
31
-
32
- exit 0