@nanonets/graft 0.22.1 → 0.23.0

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.
Files changed (80) hide show
  1. package/README.md +4 -4
  2. package/dist/ask/ask.d.ts +0 -3
  3. package/dist/ask/ask.d.ts.map +1 -1
  4. package/dist/ask/ask.js +1 -3
  5. package/dist/ask/ask.js.map +1 -1
  6. package/dist/brand.d.ts.map +1 -1
  7. package/dist/brand.js +4 -1
  8. package/dist/brand.js.map +1 -1
  9. package/dist/claude/format.d.ts +1 -9
  10. package/dist/claude/format.d.ts.map +1 -1
  11. package/dist/claude/format.js +2 -17
  12. package/dist/claude/format.js.map +1 -1
  13. package/dist/claude/hook-layers.d.ts.map +1 -1
  14. package/dist/claude/hook-layers.js +5 -3
  15. package/dist/claude/hook-layers.js.map +1 -1
  16. package/dist/claude/hooks.d.ts +6 -0
  17. package/dist/claude/hooks.d.ts.map +1 -1
  18. package/dist/claude/hooks.js +101 -14
  19. package/dist/claude/hooks.js.map +1 -1
  20. package/dist/claude/init.d.ts +38 -7
  21. package/dist/claude/init.d.ts.map +1 -1
  22. package/dist/claude/init.js +172 -33
  23. package/dist/claude/init.js.map +1 -1
  24. package/dist/claude/settings-merge.d.ts +23 -0
  25. package/dist/claude/settings-merge.d.ts.map +1 -1
  26. package/dist/claude/settings-merge.js +103 -7
  27. package/dist/claude/settings-merge.js.map +1 -1
  28. package/dist/claude/skill-template.d.ts +4 -3
  29. package/dist/claude/skill-template.d.ts.map +1 -1
  30. package/dist/claude/skill-template.js +7 -3
  31. package/dist/claude/skill-template.js.map +1 -1
  32. package/dist/claude/state.d.ts +1 -1
  33. package/dist/claude/state.d.ts.map +1 -1
  34. package/dist/cli.js +43 -35
  35. package/dist/cli.js.map +1 -1
  36. package/dist/context/map-dir.d.ts +13 -0
  37. package/dist/context/map-dir.d.ts.map +1 -0
  38. package/dist/context/map-dir.js +67 -0
  39. package/dist/context/map-dir.js.map +1 -0
  40. package/dist/context/node-file.d.ts +4 -3
  41. package/dist/context/node-file.d.ts.map +1 -1
  42. package/dist/context/node-file.js +18 -4
  43. package/dist/context/node-file.js.map +1 -1
  44. package/dist/hosts/claude-global.d.ts.map +1 -1
  45. package/dist/hosts/claude-global.js +31 -11
  46. package/dist/hosts/claude-global.js.map +1 -1
  47. package/dist/hosts/config-write.js +1 -1
  48. package/dist/hosts/config-write.js.map +1 -1
  49. package/dist/hosts/retract.d.ts.map +1 -1
  50. package/dist/hosts/retract.js +15 -6
  51. package/dist/hosts/retract.js.map +1 -1
  52. package/dist/notes/branches.d.ts +18 -1
  53. package/dist/notes/branches.d.ts.map +1 -1
  54. package/dist/notes/branches.js +73 -7
  55. package/dist/notes/branches.js.map +1 -1
  56. package/dist/notes/edit-overlap.d.ts +62 -0
  57. package/dist/notes/edit-overlap.d.ts.map +1 -0
  58. package/dist/notes/edit-overlap.js +202 -0
  59. package/dist/notes/edit-overlap.js.map +1 -0
  60. package/dist/notes/notes.d.ts +6 -0
  61. package/dist/notes/notes.d.ts.map +1 -1
  62. package/dist/notes/notes.js +12 -0
  63. package/dist/notes/notes.js.map +1 -1
  64. package/dist/notes/repo-trail.d.ts +3 -1
  65. package/dist/notes/repo-trail.d.ts.map +1 -1
  66. package/dist/notes/repo-trail.js +40 -3
  67. package/dist/notes/repo-trail.js.map +1 -1
  68. package/dist/notes/session-cost.d.ts +16 -4
  69. package/dist/notes/session-cost.d.ts.map +1 -1
  70. package/dist/notes/session-cost.js +120 -11
  71. package/dist/notes/session-cost.js.map +1 -1
  72. package/dist/upkeep-run.d.ts.map +1 -1
  73. package/dist/upkeep-run.js +4 -2
  74. package/dist/upkeep-run.js.map +1 -1
  75. package/dist/upkeep.js +2 -2
  76. package/dist/upkeep.js.map +1 -1
  77. package/dist/util/state.d.ts.map +1 -1
  78. package/dist/util/state.js +2 -1
  79. package/dist/util/state.js.map +1 -1
  80. package/package.json +1 -1
@@ -1,11 +1,11 @@
1
1
  import { readFileSync, existsSync } from 'node:fs';
2
2
  import { execFileSync, spawn } from 'node:child_process';
3
- import { join, basename, isAbsolute, resolve } from 'node:path';
3
+ import { join, basename, isAbsolute, relative, resolve } from 'node:path';
4
4
  import { homedir } from 'node:os';
5
5
  import { readWiring } from './stats.js';
6
- import { formatBlastRadius, relevantRetrieval, formatOrientation, notesForPrompt, overlapsForPrompt, standingDirective } from './format.js';
7
- import { commitLines, standingLearnings } from '../notes/notes.js';
8
- import { teammatesOn } from '../notes/git-facts.js';
6
+ import { formatBlastRadius, relevantRetrieval, formatOrientation, notesForPrompt, standingDirective } from './format.js';
7
+ import { commitLines, setupCommitLine, standingLearnings } from '../notes/notes.js';
8
+ import { noteAuthor, teammatesOn } from '../notes/git-facts.js';
9
9
  import { indexFreshness, staleBanner } from '../context/check.js';
10
10
  import { patchStats, readStats, acquireLock, readSession, writeSession, resolveContextDir } from './state.js';
11
11
  import { graftCliPath, claudeScriptPath } from './paths.js';
@@ -13,6 +13,7 @@ import { runUpkeep } from '../upkeep-run.js';
13
13
  import { runningVersion, wiredHostIds } from '../upkeep.js';
14
14
  import { hostsWiredForTrail } from '../hosts/registry.js';
15
15
  import { flushClosedSessions, summarizeSession } from '../telemetry/sessions.js';
16
+ import { maybeFlushInBackground } from '../telemetry/flush.js';
16
17
  import { hasSavingsTally, lastAssistantTurn, lastTurnBilling } from './tally.js';
17
18
  import { scopeOf, scopesOfGraph } from '../graph/scopes.js';
18
19
  import { classifyToolUse, isMcpToolName, isGraftMcpTool, parseSavings, recordToolUse } from './session-metrics.js';
@@ -21,7 +22,7 @@ import { fitTrailServerToMachine } from '../hosts/claude-global.js';
21
22
  import { globalCopyCovers } from './hook-layers.js';
22
23
  import { NOTE_CALL } from '../notes/session-cost.js';
23
24
  import { keepsNotes, noteCount, repoPlace } from '../notes/home.js';
24
- import { branchesStale, refreshBranches, SESSION_REFRESH_MS } from '../notes/branches.js';
25
+ import { branchesStale, overlapMark, readBranchCache, refreshBranches, SESSION_REFRESH_MS } from '../notes/branches.js';
25
26
  import { learningFiles } from '../notes/repo-trail.js';
26
27
  import { inWorkspace, maybeSyncInBackground } from '../cloud/workspace-sync.js';
27
28
  import { cacheDir, readJson, writeJsonAtomic } from '../util/state.js';
@@ -53,7 +54,8 @@ function projectDir(input) {
53
54
  }
54
55
  export function underGraft(dir, file) {
55
56
  const rel = file.startsWith(dir) ? file.slice(dir.length) : file;
56
- return rel.replace(/^[/\\]+/, '').replace(/\\/g, '/').startsWith('graft/');
57
+ const posix = rel.replace(/^[/\\]+/, '').replace(/\\/g, '/');
58
+ return posix.startsWith('graft/') || posix.startsWith('.trail/cache/');
57
59
  }
58
60
  /** Default budget for a graft child process invoked from a hook, matching the 8s
59
61
  * the installed hook entries carry. */
@@ -210,11 +212,52 @@ async function handlePostEdit(input, dir) {
210
212
  if (!file || underGraft(dir, file))
211
213
  return;
212
214
  patchStats(dir, { dirty: true, staleCount: checkStaleCount(dir), lastFile: basename(file) });
215
+ const out = [];
213
216
  const w = readWiring(dir);
214
217
  if (w) {
215
218
  const br = formatBlastRadius(w, file);
216
219
  if (br)
217
- emit('PostToolUse', br);
220
+ out.push(br);
221
+ }
222
+ const overlap = await editOverlap(input, dir, file);
223
+ if (overlap)
224
+ out.push(overlap);
225
+ // One hook, one answer: two JSON objects on stdout would be read as neither.
226
+ if (out.length)
227
+ emit('PostToolUse', out.join('\n\n'));
228
+ }
229
+ /** Branch-and-function pairs remembered per session, so each is said once. */
230
+ const INJECTED_OVERLAPS_CAP = 40;
231
+ /**
232
+ * Under trail, a teammate's open branch that changes the function this edit
233
+ * just changed, for the agent to read and tell the person about, each branch
234
+ * and function once a session. Parsing loads grammars, so it's imported only
235
+ * when the edited file is one some branch changes. Never throws.
236
+ */
237
+ async function editOverlap(input, dir, file) {
238
+ if (brand() !== 'trail' || !keepsNotes(dir))
239
+ return null;
240
+ try {
241
+ const top = repoPlace(dir);
242
+ if (!top.git)
243
+ return null;
244
+ const { functionOverlaps, editOverlapDirective } = await import('../notes/edit-overlap.js');
245
+ const found = await functionOverlaps(top.checkout, resolve(dir, file), input?.tool_input, noteAuthor(top.checkout));
246
+ if (!found.length)
247
+ return null;
248
+ const id = input?.session_id || 'default';
249
+ const s = readSession(dir, id);
250
+ const seen = new Set(s.injectedOverlaps ?? []);
251
+ const fresh = found.filter((o) => o.symbols.some((x) => !seen.has(`${o.ref} ${x.id}`)));
252
+ if (!fresh.length)
253
+ return null;
254
+ s.injectedOverlaps = [...seen, ...fresh.flatMap((o) => o.symbols.map((x) => `${o.ref} ${x.id}`))].slice(-INJECTED_OVERLAPS_CAP);
255
+ writeSession(dir, id, s);
256
+ const base = readBranchCache(top.checkout)?.base ?? 'origin/main';
257
+ return fresh.slice(0, 2).map((o) => editOverlapDirective(o, base, tag(), overlapMark())).join('\n\n');
258
+ }
259
+ catch {
260
+ return null;
218
261
  }
219
262
  }
220
263
  /**
@@ -546,12 +589,17 @@ export function uncommittedDirective(dir, now = Date.now()) {
546
589
  cwd: place.checkout, encoding: 'utf8', stdio: ['ignore', 'pipe', 'ignore'], timeout: 3000,
547
590
  });
548
591
  const n = status.split('\n').filter((l) => l.trimEnd().endsWith('.md')).length;
549
- if (!n)
592
+ const setup = setupUncommitted(place.checkout);
593
+ if (!n && !setup)
550
594
  return '';
551
595
  const mark = join(cacheDir(place.checkout), 'trail-uncommitted-said.json');
552
596
  if (now - (readJson(mark)?.at ?? 0) < DAY_MS)
553
597
  return '';
554
598
  writeJsonAtomic(mark, { at: now }, true);
599
+ if (setup) {
600
+ const line = setupCommitLine(teammatesOn(place.checkout));
601
+ return `${tag()} trail's shared setup here (.trail/ and .claude/settings.json) isn't committed yet, so teammates' Claude can't read the learnings. Say so once, at the end of your first reply, with this line, word for word: ${line}\n`;
602
+ }
555
603
  const line = commitLines({}, teammatesOn(place.checkout), 'repo').uncommitted;
556
604
  const them = n === 1 ? "learning in .trail/learnings/ isn't committed yet, so no teammate's agent has it" : `learnings in .trail/learnings/ aren't committed yet, so no teammate's agent has them`;
557
605
  return `${tag()} ${n} team ${them}. Say so once, at the end of your first reply, with this line, word for word: ${line}\n`;
@@ -560,6 +608,28 @@ export function uncommittedDirective(dir, now = Date.now()) {
560
608
  return '';
561
609
  }
562
610
  }
611
+ /**
612
+ * trail's shared setup isn't in the last commit: `.trail/hook.cjs` isn't
613
+ * tracked, or HEAD's `.claude/settings.json` doesn't run it. Only checked
614
+ * where the hook is on disk, so a repo still set up the old way says nothing.
615
+ */
616
+ export function setupUncommitted(checkout) {
617
+ if (!existsSync(join(checkout, '.trail', 'hook.cjs')))
618
+ return false;
619
+ const git = (args) => execFileSync('git', args, { cwd: checkout, encoding: 'utf8', stdio: ['ignore', 'pipe', 'ignore'], timeout: 3000 });
620
+ try {
621
+ git(['ls-files', '--error-unmatch', '--', '.trail/hook.cjs']);
622
+ }
623
+ catch {
624
+ return true;
625
+ }
626
+ try {
627
+ return !git(['show', 'HEAD:.claude/settings.json']).includes('/.trail/hook.cjs');
628
+ }
629
+ catch {
630
+ return true;
631
+ }
632
+ }
563
633
  /** The most the session-start hook waits on `git fetch` for teammates' branches. */
564
634
  export const BRANCH_FETCH_CAP_MS = 3000;
565
635
  /**
@@ -586,6 +656,15 @@ function trailAtStart(dir) {
586
656
  trackRepoSeen(dir);
587
657
  trackLearningsCommitted(dir);
588
658
  }
659
+ /** The repo's committed `.mcp.json` still registers trail's server (set up before 0.23). */
660
+ function repoNamesTrailServer(dir) {
661
+ try {
662
+ return Boolean(JSON.parse(readFileSync(join(dir, '.mcp.json'), 'utf8'))?.mcpServers?.trail);
663
+ }
664
+ catch {
665
+ return false;
666
+ }
667
+ }
589
668
  export async function main(event) {
590
669
  // trail's own headless Claude calls (the first-run read of past sessions) run with this set.
591
670
  if (process.env.TRAIL_NO_HOOKS === '1')
@@ -607,13 +686,16 @@ export async function main(event) {
607
686
  const handover = wiredHostIds(dir).includes('claude') ? trailHandoverLine() : null;
608
687
  if (handover)
609
688
  upkeep.push(handover);
610
- // Roll up any session that ended since we were last here. Queue-only — the
611
- // hook still sends nothing; the CLI or the MCP server sends it later.
689
+ // Roll up any session that ended since we were last here, then send the
690
+ // queue from a detached child: what session end didn't get to (a killed
691
+ // terminal never fires it) goes now. Once a day at most, never waited on.
612
692
  flushClosedSessions(dir);
693
+ maybeFlushInBackground();
613
694
  trailAtStart(dir);
614
695
  // A repo on trail, opened on a machine that has graft but not the trail command.
696
+ // Only while its .mcp.json still names a trail server: once it doesn't, trail: true takes back the stand-in.
615
697
  if (repoWiredForTrail(dir))
616
- fitTrailServerToMachine(homedir(), resolve(dir), { trail: trailOnPath(), graft: commandOnPath('graft') });
698
+ fitTrailServerToMachine(homedir(), resolve(dir), { trail: trailOnPath() || !repoNamesTrailServer(dir), graft: commandOnPath('graft') });
617
699
  try {
618
700
  const idx = readFileSync(join(resolveContextDir(dir), 'INDEX.md'), 'utf8');
619
701
  const banner = staleBanner(indexFreshness(dir)) ?? undefined;
@@ -621,7 +703,8 @@ export async function main(event) {
621
703
  const skills = kept ? skillsDirective(dir, cmd('graft skills show')) : '';
622
704
  const underTrail = kept && brand() === 'trail';
623
705
  const standing = underTrail ? standingDirective(standingLearnings(dir)) + uncommittedDirective(dir) : '';
624
- const orientation = formatOrientation(idx, undefined, banner, noteCount(dir), kept, skills + standing);
706
+ const mapDir = relative(dir, resolveContextDir(dir)).split('\\').join('/') || 'graft';
707
+ const orientation = formatOrientation(idx, undefined, banner, noteCount(dir), kept, skills + standing, mapDir);
625
708
  emit('SessionStart', upkeep.length ? `${upkeep.join('\n')}\n\n${orientation}` : orientation);
626
709
  }
627
710
  catch {
@@ -631,6 +714,11 @@ export async function main(event) {
631
714
  }
632
715
  return;
633
716
  }
717
+ // Claude closing: send the queue from a detached child, so quitting isn't slowed.
718
+ if (event === 'session-end') {
719
+ maybeFlushInBackground();
720
+ return;
721
+ }
634
722
  if (event === 'post-edit') {
635
723
  await handlePostEdit(input, dir);
636
724
  return;
@@ -692,8 +780,7 @@ export async function main(event) {
692
780
  s.perAgentQuery[agent] = prompt;
693
781
  // Learnings first: what an earlier session worked out matters more than where code is.
694
782
  const notes = brand() === 'trail' ? notesForPrompt(ask, s) : null;
695
- const overlaps = brand() === 'trail' ? overlapsForPrompt(ask, s) : null;
696
- const txt = [notes, overlaps, relevantRetrieval(ask, s)].filter(Boolean).join('\n\n');
783
+ const txt = [notes, relevantRetrieval(ask, s)].filter(Boolean).join('\n\n');
697
784
  if (txt)
698
785
  emit('UserPromptSubmit', txt);
699
786
  writeSession(dir, id, s);
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../src/claude/hooks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../src/claude/hooks.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,20 @@
1
1
  import { type GlobalWrite } from '../hosts/claude-global.js';
2
2
  import { type McpWrite } from '../hosts/mcp-config.js';
3
+ import { ignoreInTrailDir } from '../notes/repo-trail.js';
4
+ export { ignoreInTrailDir };
3
5
  import type { PlannedWrite } from '../hosts/plan.js';
4
6
  import { type Brand } from '../brand.js';
7
+ /** trail's committed hook, inside `.trail/` where a `.claude/*` ignore rule can't drop it. */
8
+ export declare const TRAIL_HOOK: string;
9
+ /** The status line's shim. Also in `.trail/`, but ignored there: only people with trail draw it. */
10
+ export declare const TRAIL_STATUSLINE: string;
11
+ /** Where trail's skill goes: the user's own `~/.claude`, never the repo. */
12
+ export declare function trailSkillPath(home?: string): string;
5
13
  /**
6
14
  * The files `runInit` writes — pure, no writes, so `--dry-run` and the picker
7
- * can report them up front. All repo-local: the Claude Code layer never writes
8
- * outside the project.
15
+ * can report them up front.
9
16
  */
10
- export declare function claudeTargets(dir: string, initBrand?: Brand): PlannedWrite[];
17
+ export declare function claudeTargets(dir: string, initBrand?: Brand, home?: string): PlannedWrite[];
11
18
  /**
12
19
  * The name the Claude Code wiring goes by in `dir`: trail's where `trail init`
13
20
  * is wiring it now (`initBrand`) or already did, graft's everywhere else.
@@ -15,8 +22,25 @@ export declare function claudeTargets(dir: string, initBrand?: Brand): PlannedWr
15
22
  * refreshing the wiring writes the same files and never flips them back.
16
23
  */
17
24
  export declare function wiringName(dir: string, initBrand?: Brand): Brand;
18
- /** `claudeTargets` under one name. Uninstall walks both, so either set comes out. */
19
- export declare function claudeTargetsFor(dir: string, name: Brand): PlannedWrite[];
25
+ /**
26
+ * `claudeTargets` under one name.
27
+ *
28
+ * trail splits what it writes in two. Shared, committed once by whoever sets
29
+ * the repo up: `.trail/hook.cjs` and one SessionStart entry in
30
+ * `.claude/settings.json`, which is all a teammate without trail needs to be
31
+ * shown the learnings and offered trail. Personal, where git never looks: the
32
+ * status line and allowlist in `.claude/settings.local.json`, the skill in
33
+ * `~/.claude/skills/`, and the other hooks in `~/.claude` (hosts/claude-global.ts).
34
+ * No MCP server: the hooks and the `trail` command do what it did.
35
+ */
36
+ export declare function claudeTargetsFor(dir: string, name: Brand, home?: string): PlannedWrite[];
37
+ /**
38
+ * The layout every graft repo has, and trail repos had before 0.23: shims in
39
+ * `.claude/helpers/`, the skill in `.claude/skills/`, the server in `.mcp.json`,
40
+ * in that order. `runInit` writes it for graft; for trail it's what a refresh
41
+ * clears away, and what uninstall removes under both names.
42
+ */
43
+ export declare function legacyClaudeTargets(dir: string, name: Brand): PlannedWrite[];
20
44
  /**
21
45
  * Build the graph if it isn't there yet. Not Claude-specific: the wiring for any
22
46
  * host points at `graft/`, so `graft init` builds whichever hosts were selected —
@@ -30,9 +54,10 @@ export declare function buildGraphIfMissing(dir: string, opts: {
30
54
  export interface InitResult {
31
55
  settingsPath: string;
32
56
  shims: string[];
57
+ /** Where the skill went; '' when nothing was written (trail under `--no-global`). */
33
58
  skill: string;
34
- /** the `.mcp.json` write registering the graft MCP server for Claude Code. */
35
- mcp: McpWrite;
59
+ /** the `.mcp.json` write registering the graft MCP server for Claude Code; trail writes none. */
60
+ mcp: McpWrite | null;
36
61
  /** the user-level writes under `~/.claude`, empty when `global: false`. */
37
62
  global: GlobalWrite[];
38
63
  warnings: string[];
@@ -46,4 +71,10 @@ export declare function runInit(dir: string, opts?: {
46
71
  home?: string;
47
72
  brand?: Brand;
48
73
  }): InitResult;
74
+ /**
75
+ * Keep a personal file out of git without touching the repo's `.gitignore`:
76
+ * if nothing ignores it already, it goes in `.git/info/exclude`, which is
77
+ * never committed. A folder that isn't a git checkout is left alone.
78
+ */
79
+ export declare function keepOutOfGit(dir: string, rel: string): void;
49
80
  //# sourceMappingURL=init.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/claude/init.ts"],"names":[],"mappings":"AAIA,OAAO,EAA6C,KAAK,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAIxG,OAAO,EAA6B,KAAK,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAElF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAqB,KAAK,KAAK,EAAE,MAAM,aAAa,CAAC;AAE5D;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,KAAK,GAAG,YAAY,EAAE,CAE5E;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,KAAK,GAAG,KAAK,CAEhE;AAED,qFAAqF;AACrF,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,GAAG,YAAY,EAAE,CAWzE;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAarG;AAED,MAAM,WAAW,UAAU;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,8EAA8E;IAC9E,GAAG,EAAE,QAAQ,CAAC;IACd,2EAA2E;IAC3E,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,KAAK,EAAE,OAAO,CAAC;CAChB;AAED,wBAAgB,OAAO,CACrB,GAAG,EAAE,MAAM,EACX,IAAI,GAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,KAAK,CAAA;CAAO,GACrH,UAAU,CAqDZ"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/claude/init.ts"],"names":[],"mappings":"AAIA,OAAO,EAA6C,KAAK,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAIxG,OAAO,EAA6B,KAAK,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAElF,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,CAAC;AAE5B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAqB,KAAK,KAAK,EAAE,MAAM,aAAa,CAAC;AAE5D,8FAA8F;AAC9F,eAAO,MAAM,UAAU,QAA6B,CAAC;AACrD,oGAAoG;AACpG,eAAO,MAAM,gBAAgB,QAAmC,CAAC;AACjE,4EAA4E;AAC5E,wBAAgB,cAAc,CAAC,IAAI,GAAE,MAAkB,GAAG,MAAM,CAE/D;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,YAAY,EAAE,CAE3F;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,KAAK,GAAG,KAAK,CAEhE;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,GAAE,MAAkB,GAAG,YAAY,EAAE,CAUnG;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,GAAG,YAAY,EAAE,CAW5E;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAarG;AAED,MAAM,WAAW,UAAU;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,qFAAqF;IACrF,KAAK,EAAE,MAAM,CAAC;IACd,iGAAiG;IACjG,GAAG,EAAE,QAAQ,GAAG,IAAI,CAAC;IACrB,2EAA2E;IAC3E,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,KAAK,EAAE,OAAO,CAAC;CAChB;AAED,wBAAgB,OAAO,CACrB,GAAG,EAAE,MAAM,EACX,IAAI,GAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,KAAK,CAAA;CAAO,GACrH,UAAU,CAwCZ;AAwFD;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CAgB3D"}