@tinyrack/dotweave 0.42.21 → 0.44.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 (103) hide show
  1. package/README.md +21 -6
  2. package/dist/application.d.ts +2 -0
  3. package/dist/application.d.ts.map +1 -1
  4. package/dist/application.js +20 -2
  5. package/dist/application.js.map +1 -1
  6. package/dist/assets/dotweave-skill.d.ts +2 -0
  7. package/dist/assets/dotweave-skill.d.ts.map +1 -0
  8. package/dist/assets/dotweave-skill.js +34 -0
  9. package/dist/assets/dotweave-skill.js.map +1 -0
  10. package/dist/cli/init.d.ts.map +1 -1
  11. package/dist/cli/init.js +3 -3
  12. package/dist/cli/init.js.map +1 -1
  13. package/dist/cli/pull.d.ts.map +1 -1
  14. package/dist/cli/pull.js +23 -4
  15. package/dist/cli/pull.js.map +1 -1
  16. package/dist/cli/push.d.ts.map +1 -1
  17. package/dist/cli/push.js +11 -4
  18. package/dist/cli/push.js.map +1 -1
  19. package/dist/cli/root-commands.d.ts +1 -0
  20. package/dist/cli/root-commands.d.ts.map +1 -1
  21. package/dist/cli/root-commands.js +2 -0
  22. package/dist/cli/root-commands.js.map +1 -1
  23. package/dist/cli/skill/index.d.ts +3 -0
  24. package/dist/cli/skill/index.d.ts.map +1 -0
  25. package/dist/cli/skill/index.js +13 -0
  26. package/dist/cli/skill/index.js.map +1 -0
  27. package/dist/cli/skill/install.d.ts +4 -0
  28. package/dist/cli/skill/install.d.ts.map +1 -0
  29. package/dist/cli/skill/install.js +63 -0
  30. package/dist/cli/skill/install.js.map +1 -0
  31. package/dist/cli/status.d.ts.map +1 -1
  32. package/dist/cli/status.js +12 -4
  33. package/dist/cli/status.js.map +1 -1
  34. package/dist/config/constants.d.ts +1 -1
  35. package/dist/config/constants.js +1 -1
  36. package/dist/config/constants.js.map +1 -1
  37. package/dist/config/identity-file.d.ts +1 -1
  38. package/dist/config/identity-file.d.ts.map +1 -1
  39. package/dist/config/identity-file.js +3 -3
  40. package/dist/config/identity-file.js.map +1 -1
  41. package/dist/config/runtime-env.d.ts +1 -0
  42. package/dist/config/runtime-env.d.ts.map +1 -1
  43. package/dist/config/runtime-env.js +16 -6
  44. package/dist/config/runtime-env.js.map +1 -1
  45. package/dist/config/sync-queries.d.ts.map +1 -1
  46. package/dist/config/sync-queries.js +4 -0
  47. package/dist/config/sync-queries.js.map +1 -1
  48. package/dist/config/sync-schema.d.ts.map +1 -1
  49. package/dist/config/sync-schema.js +7 -0
  50. package/dist/config/sync-schema.js.map +1 -1
  51. package/dist/config/xdg.d.ts +13 -0
  52. package/dist/config/xdg.d.ts.map +1 -1
  53. package/dist/config/xdg.js +22 -0
  54. package/dist/config/xdg.js.map +1 -1
  55. package/dist/lib/env.d.ts +4 -0
  56. package/dist/lib/env.d.ts.map +1 -1
  57. package/dist/lib/env.js +25 -0
  58. package/dist/lib/env.js.map +1 -1
  59. package/dist/lib/error.d.ts.map +1 -1
  60. package/dist/lib/error.js +5 -1
  61. package/dist/lib/error.js.map +1 -1
  62. package/dist/lib/filesystem.d.ts.map +1 -1
  63. package/dist/lib/filesystem.js +3 -0
  64. package/dist/lib/filesystem.js.map +1 -1
  65. package/dist/lib/git.d.ts +52 -0
  66. package/dist/lib/git.d.ts.map +1 -1
  67. package/dist/lib/git.js +14 -4
  68. package/dist/lib/git.js.map +1 -1
  69. package/dist/lib/path.d.ts +12 -0
  70. package/dist/lib/path.d.ts.map +1 -1
  71. package/dist/lib/path.js +21 -10
  72. package/dist/lib/path.js.map +1 -1
  73. package/dist/services/init.d.ts.map +1 -1
  74. package/dist/services/init.js +5 -5
  75. package/dist/services/init.js.map +1 -1
  76. package/dist/services/profile.d.ts.map +1 -1
  77. package/dist/services/profile.js +4 -4
  78. package/dist/services/profile.js.map +1 -1
  79. package/dist/services/push.d.ts +4 -1
  80. package/dist/services/push.d.ts.map +1 -1
  81. package/dist/services/push.js +82 -23
  82. package/dist/services/push.js.map +1 -1
  83. package/dist/services/repo-artifacts.d.ts +8 -3
  84. package/dist/services/repo-artifacts.d.ts.map +1 -1
  85. package/dist/services/repo-artifacts.js +228 -18
  86. package/dist/services/repo-artifacts.js.map +1 -1
  87. package/dist/services/repo-snapshot.d.ts.map +1 -1
  88. package/dist/services/repo-snapshot.js +15 -5
  89. package/dist/services/repo-snapshot.js.map +1 -1
  90. package/dist/services/skill-install.d.ts +13 -0
  91. package/dist/services/skill-install.d.ts.map +1 -0
  92. package/dist/services/skill-install.js +39 -0
  93. package/dist/services/skill-install.js.map +1 -0
  94. package/dist/services/status.d.ts.map +1 -1
  95. package/dist/services/status.js +5 -12
  96. package/dist/services/status.js.map +1 -1
  97. package/dist/services/sync-context.d.ts.map +1 -1
  98. package/dist/services/sync-context.js +2 -2
  99. package/dist/services/sync-context.js.map +1 -1
  100. package/dist/services/track.d.ts.map +1 -1
  101. package/dist/services/track.js +2 -2
  102. package/dist/services/track.js.map +1 -1
  103. package/package.json +3 -1
package/README.md CHANGED
@@ -27,12 +27,31 @@ Most dotfiles tools start from the repository and ask you to shape your local sy
27
27
  - **Platform-specific paths** across Windows, macOS, Linux, and WSL
28
28
  - **Dry-run previews** for both push and pull directions
29
29
 
30
- ## Quick Start
30
+ ## Installation
31
+
32
+ ### Windows
33
+
34
+ ```powershell
35
+ winget install tinyrack.dotweave
36
+ ```
37
+
38
+ ### macOS / Linux
39
+
40
+ ```bash
41
+ brew install tinyrack-net/tap/dotweave
42
+ ```
43
+
44
+ ### npm
45
+
46
+ Use npm on any platform, or as a cross-platform fallback.
31
47
 
32
48
  ```bash
33
- # Install with npm on macOS, Linux, WSL, or as a cross-platform fallback
34
49
  npm install -g @tinyrack/dotweave
50
+ ```
35
51
 
52
+ ## Quick Start
53
+
54
+ ```bash
36
55
  # Initialize
37
56
  dotweave init
38
57
 
@@ -45,10 +64,6 @@ dotweave track ~/.ssh/config --mode secret
45
64
  dotweave push
46
65
  ```
47
66
 
48
- On Windows, install dotweave from the Microsoft Store once the listing is live.
49
- Portable Windows `.exe` files remain attached to GitHub Releases for manual
50
- use.
51
-
52
67
  ## Documentation
53
68
 
54
69
  For detailed guides, command reference, and troubleshooting, visit the **[Dotweave documentation site](https://dotweave.tinyrack.net/en/)**.
@@ -1,2 +1,4 @@
1
+ export declare const formatApplicationError: (error: unknown) => string;
2
+ export declare const resolveExitCode: (error: unknown) => number;
1
3
  export declare const runCli: (inputs: readonly string[]) => Promise<void>;
2
4
  //# sourceMappingURL=application.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"application.d.ts","sourceRoot":"","sources":["../src/application.ts"],"names":[],"mappings":"AA6FA,eAAO,MAAM,MAAM,GAAU,QAAQ,SAAS,MAAM,EAAE,kBAgBrD,CAAC"}
1
+ {"version":3,"file":"application.d.ts","sourceRoot":"","sources":["../src/application.ts"],"names":[],"mappings":"AAwCA,eAAO,MAAM,sBAAsB,GAAI,OAAO,OAAO,WAIpD,CAAC;AAiCF,eAAO,MAAM,eAAe,GAAI,OAAO,OAAO,WAW7C,CAAC;AA2BF,eAAO,MAAM,MAAM,GAAU,QAAQ,SAAS,MAAM,EAAE,kBAgBrD,CAAC"}
@@ -9,8 +9,26 @@ const errorLogger = createCliLogger({
9
9
  stderr: process.stderr,
10
10
  stdout: process.stderr,
11
11
  });
12
+ const stringifyThrownValue = (error) => {
13
+ if (typeof error === "string") {
14
+ return error;
15
+ }
16
+ try {
17
+ const serialized = JSON.stringify(error);
18
+ if (typeof serialized === "string") {
19
+ return serialized;
20
+ }
21
+ }
22
+ catch {
23
+ // Fall back to String() for circular or otherwise non-serializable values.
24
+ }
25
+ return String(error);
26
+ };
27
+ export const formatApplicationError = (error) => {
28
+ return formatDotweaveError(error instanceof Error ? error : new Error(stringifyThrownValue(error)));
29
+ };
12
30
  const formatErrorForConsola = (error) => {
13
- const message = formatDotweaveError(error instanceof Error ? error : new Error(String(error)));
31
+ const message = formatApplicationError(error);
14
32
  errorLogger.error(message);
15
33
  return "";
16
34
  };
@@ -36,7 +54,7 @@ const dotweaveText = {
36
54
  return "";
37
55
  },
38
56
  };
39
- const resolveExitCode = (error) => {
57
+ export const resolveExitCode = (error) => {
40
58
  if (typeof error === "object" &&
41
59
  error !== null &&
42
60
  "exitCode" in error &&
@@ -1 +1 @@
1
- {"version":3,"file":"application.js","sourceRoot":"","sources":["../src/application.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"application.js","sourceRoot":"","sources":["../src/application.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare const dotweaveSkillContent = "---\nname: dotweave\ndescription: Use when operating or developing the Dotweave CLI for git-backed dotfile synchronization.\n---\n\n# Dotweave\n\nDotweave is a git-backed configuration synchronization tool for dotfiles. It treats `HOME` as the source of truth and uses a git repository as the synchronization artifact.\n\n## Safe CLI Use\n\n- Run `dotweave status` before any sync so you understand pending local, repository, and conflict changes.\n- Remember the direction: `dotweave push` copies tracked changes from `HOME` into the sync repository; `dotweave pull` applies repository state back into `HOME`.\n- Use `dotweave track <path>` only for files or directories that should be managed by Dotweave, and `dotweave untrack <path>` when a path should stop syncing.\n- Check the active profile before changing configuration. Profiles let different machines or environments sync different path sets.\n- Be careful with secrets. Age-encrypted entries should stay encrypted in the repository, identity files are sensitive, and plaintext secret material should not be committed accidentally.\n- For tests or automation, isolate `HOME` and `XDG_CONFIG_HOME` so Dotweave never touches the operator's real dotfiles.\n\n## Development Commands\n\n- Use `pnpm --filter @tinyrack/dotweave build` to build the CLI package.\n- Use `pnpm --filter @tinyrack/dotweave test` to run CLI tests.\n- Use `pnpm --filter @tinyrack/dotweave check` for package typecheck, lint, and tests.\n- Use `node packages/cli/bin/index.js` or `pnpm --filter @tinyrack/dotweave start` to run a local CLI build.\n\n## Development Guidance\n\n- Add failing tests before implementing behavioral changes.\n- Keep CLI command modules thin and put filesystem or sync behavior in `src/services`.\n- Preserve the existing `@stricli/core` command style.\n- Use `DotweaveError` for user-facing failures.\n- Run formatting and validation before reporting completion.\n";
2
+ //# sourceMappingURL=dotweave-skill.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dotweave-skill.d.ts","sourceRoot":"","sources":["../../src/assets/dotweave-skill.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,oBAAoB,24DAgChC,CAAC"}
@@ -0,0 +1,34 @@
1
+ export const dotweaveSkillContent = `---
2
+ name: dotweave
3
+ description: Use when operating or developing the Dotweave CLI for git-backed dotfile synchronization.
4
+ ---
5
+
6
+ # Dotweave
7
+
8
+ Dotweave is a git-backed configuration synchronization tool for dotfiles. It treats \`HOME\` as the source of truth and uses a git repository as the synchronization artifact.
9
+
10
+ ## Safe CLI Use
11
+
12
+ - Run \`dotweave status\` before any sync so you understand pending local, repository, and conflict changes.
13
+ - Remember the direction: \`dotweave push\` copies tracked changes from \`HOME\` into the sync repository; \`dotweave pull\` applies repository state back into \`HOME\`.
14
+ - Use \`dotweave track <path>\` only for files or directories that should be managed by Dotweave, and \`dotweave untrack <path>\` when a path should stop syncing.
15
+ - Check the active profile before changing configuration. Profiles let different machines or environments sync different path sets.
16
+ - Be careful with secrets. Age-encrypted entries should stay encrypted in the repository, identity files are sensitive, and plaintext secret material should not be committed accidentally.
17
+ - For tests or automation, isolate \`HOME\` and \`XDG_CONFIG_HOME\` so Dotweave never touches the operator's real dotfiles.
18
+
19
+ ## Development Commands
20
+
21
+ - Use \`pnpm --filter @tinyrack/dotweave build\` to build the CLI package.
22
+ - Use \`pnpm --filter @tinyrack/dotweave test\` to run CLI tests.
23
+ - Use \`pnpm --filter @tinyrack/dotweave check\` for package typecheck, lint, and tests.
24
+ - Use \`node packages/cli/bin/index.js\` or \`pnpm --filter @tinyrack/dotweave start\` to run a local CLI build.
25
+
26
+ ## Development Guidance
27
+
28
+ - Add failing tests before implementing behavioral changes.
29
+ - Keep CLI command modules thin and put filesystem or sync behavior in \`src/services\`.
30
+ - Preserve the existing \`@stricli/core\` command style.
31
+ - Use \`DotweaveError\` for user-facing failures.
32
+ - Run formatting and validation before reporting completion.
33
+ `;
34
+ //# sourceMappingURL=dotweave-skill.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dotweave-skill.js","sourceRoot":"","sources":["../../src/assets/dotweave-skill.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,oBAAoB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgCnC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/cli/init.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAmCxD,QAAA,MAAM,WAAW,qDAmGf,CAAC;AAEH,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/cli/init.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAmCxD,QAAA,MAAM,WAAW,qDAkGf,CAAC;AAEH,eAAe,WAAW,CAAC"}
package/dist/cli/init.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { buildCommand } from "@stricli/core";
2
2
  import { resolveDefaultIdentityFile } from "#app/config/identity-file.ts";
3
- import { readEnvValue } from "#app/config/runtime-env.ts";
3
+ import { resolveDotweaveHomeDirectoryFromEnv } from "#app/config/runtime-env.ts";
4
4
  import { pathExists } from "#app/lib/filesystem.ts";
5
5
  import { ask } from "#app/lib/prompt.ts";
6
6
  import { createMissingRepositoryAgeKeyError, initializeSyncDirectory, } from "#app/services/init.ts";
@@ -23,12 +23,12 @@ const formatAgeSummary = (result) => {
23
23
  const initCommand = buildCommand({
24
24
  docs: {
25
25
  brief: "Initialize the git-backed sync directory",
26
- fullDescription: "Create or connect the local dotweave repository under your XDG config directory, then store the sync settings used by later pull and push operations. If you omit the repository argument, dotweave initializes a local git repository in the sync directory.",
26
+ fullDescription: "Create or connect the local dotweave repository under your dotweave app-data directory, then store the sync settings used by later pull and push operations. If you omit the repository argument, dotweave initializes a local git repository in the sync directory.",
27
27
  },
28
28
  async func(flags, repository) {
29
29
  const logger = createCliLogger();
30
30
  const requestedKey = flags.key?.trim();
31
- const identityFile = resolveDefaultIdentityFile(readEnvValue("HOME"), readEnvValue("XDG_CONFIG_HOME"));
31
+ const identityFile = resolveDefaultIdentityFile(resolveDotweaveHomeDirectoryFromEnv());
32
32
  const identityFileExists = await pathExists(identityFile);
33
33
  const importingRepository = repository !== undefined && repository.trim() !== "";
34
34
  const shouldPrompt = requestedKey === undefined &&
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/cli/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/cli/init.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"pull.d.ts","sourceRoot":"","sources":["../../src/cli/pull.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AA8BxD,QAAA,MAAM,WAAW,qDAqFf,CAAC;AAEH,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"pull.d.ts","sourceRoot":"","sources":["../../src/cli/pull.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AA8BxD,QAAA,MAAM,WAAW,qDAuGf,CAAC;AAEH,eAAe,WAAW,CAAC"}
package/dist/cli/pull.js CHANGED
@@ -23,7 +23,14 @@ const pullCommand = buildCommand({
23
23
  const dryRun = flags.dryRun ?? false;
24
24
  const logger = createCliLogger();
25
25
  const spin = logger.spinner("Preparing pull...");
26
- const prepared = await preparePull({ dryRun, profile: flags.profile });
26
+ let prepared;
27
+ try {
28
+ prepared = await preparePull({ dryRun, profile: flags.profile });
29
+ }
30
+ catch (error) {
31
+ spin.stop();
32
+ throw error;
33
+ }
27
34
  const { config, plan } = prepared;
28
35
  spin.stop();
29
36
  if (plan.updatedLocalPaths.length === 0 &&
@@ -38,7 +45,13 @@ const pullCommand = buildCommand({
38
45
  }
39
46
  else if (flags.yes ?? false) {
40
47
  const applySpin = logger.spinner("Applying pull...");
41
- await applyPullPlan(config, plan);
48
+ try {
49
+ await applyPullPlan(config, plan);
50
+ }
51
+ catch (error) {
52
+ applySpin.stop();
53
+ throw error;
54
+ }
42
55
  applySpin.succeed("Pull complete");
43
56
  }
44
57
  else {
@@ -48,12 +61,18 @@ const pullCommand = buildCommand({
48
61
  });
49
62
  }
50
63
  const answer = await ask("Apply these changes? [y/N] ");
51
- if (answer.trim() !== "y") {
64
+ if (answer.trim().toLowerCase() !== "y") {
52
65
  logger.info("Skipped pull changes");
53
66
  return;
54
67
  }
55
68
  const applySpin = logger.spinner("Applying pull...");
56
- await applyPullPlan(config, plan);
69
+ try {
70
+ await applyPullPlan(config, plan);
71
+ }
72
+ catch (error) {
73
+ applySpin.stop();
74
+ throw error;
75
+ }
57
76
  applySpin.succeed("Pull complete");
58
77
  }
59
78
  const updateAction = dryRun ? "would be updated" : "updated";
@@ -1 +1 @@
1
- {"version":3,"file":"pull.js","sourceRoot":"","sources":["../../src/cli/pull.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pull.js","sourceRoot":"","sources":["../../src/cli/pull.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"push.d.ts","sourceRoot":"","sources":["../../src/cli/push.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAWxD,QAAA,MAAM,WAAW,qDA2Cf,CAAC;AAEH,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"push.d.ts","sourceRoot":"","sources":["../../src/cli/push.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAWxD,QAAA,MAAM,WAAW,qDAkDf,CAAC;AAEH,eAAe,WAAW,CAAC"}
package/dist/cli/push.js CHANGED
@@ -10,10 +10,17 @@ const pushCommand = buildCommand({
10
10
  async func(flags) {
11
11
  const logger = createCliLogger();
12
12
  const spin = logger.spinner("Pushing changes...");
13
- const result = await pushChanges({
14
- dryRun: flags.dryRun ?? false,
15
- profile: flags.profile,
16
- });
13
+ let result;
14
+ try {
15
+ result = await pushChanges({
16
+ dryRun: flags.dryRun ?? false,
17
+ profile: flags.profile,
18
+ });
19
+ }
20
+ catch (error) {
21
+ spin.stop();
22
+ throw error;
23
+ }
17
24
  if (result.dryRun) {
18
25
  spin.stop();
19
26
  logger.info("Push preview (dry run)");
@@ -1 +1 @@
1
- {"version":3,"file":"push.js","sourceRoot":"","sources":["../../src/cli/push.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAOhD,MAAM,WAAW,GAAG,YAAY,CAAoC;IAClE,IAAI,EAAE;QACJ,KAAK,EAAE,wDAAwD;QAC/D,eAAe,EACb,gMAAgM;KACnM;IACD,KAAK,CAAC,IAAI,CAAC,KAAK;QACd,MAAM,MAAM,GAAG,eAAe,EAAE,CAAC;QAEjC,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;QAElD,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC;YAC/B,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,KAAK;YAC7B,OAAO,EAAE,KAAK,CAAC,OAAO;SACvB,CAAC,CAAC;QAEH,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAClB,IAAI,CAAC,IAAI,EAAE,CAAC;YACZ,MAAM,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;QACxC,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;QAChC,CAAC;QAED,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC;QAClD,MAAM,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,CAAC;QAC1D,MAAM,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;QACnD,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC;QAEjD,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,SAAS,CAAC;QACrE,MAAM,CAAC,GAAG,CACR,KAAK,MAAM,CAAC,oBAAoB,oBAAoB,aAAa,EAAE,CACpE,CAAC;IACJ,CAAC;IACD,UAAU,EAAE;QACV,KAAK,EAAE;YACL,MAAM,EAAE;gBACN,KAAK,EAAE,iCAAiC;gBACxC,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,IAAI;aACf;YACD,OAAO,EAAE,WAAW;SACrB;KACF;CACF,CAAC,CAAC;AAEH,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"push.js","sourceRoot":"","sources":["../../src/cli/push.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAOhD,MAAM,WAAW,GAAG,YAAY,CAAoC;IAClE,IAAI,EAAE;QACJ,KAAK,EAAE,wDAAwD;QAC/D,eAAe,EACb,gMAAgM;KACnM;IACD,KAAK,CAAC,IAAI,CAAC,KAAK;QACd,MAAM,MAAM,GAAG,eAAe,EAAE,CAAC;QAEjC,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;QAElD,IAAI,MAA+C,CAAC;QAEpD,IAAI,CAAC;YACH,MAAM,GAAG,MAAM,WAAW,CAAC;gBACzB,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,KAAK;gBAC7B,OAAO,EAAE,KAAK,CAAC,OAAO;aACvB,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,IAAI,EAAE,CAAC;YACZ,MAAM,KAAK,CAAC;QACd,CAAC;QAED,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAClB,IAAI,CAAC,IAAI,EAAE,CAAC;YACZ,MAAM,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;QACxC,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;QAChC,CAAC;QAED,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC;QAClD,MAAM,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,CAAC;QAC1D,MAAM,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;QACnD,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC;QAEjD,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,SAAS,CAAC;QACrE,MAAM,CAAC,GAAG,CACR,KAAK,MAAM,CAAC,oBAAoB,oBAAoB,aAAa,EAAE,CACpE,CAAC;IACJ,CAAC;IACD,UAAU,EAAE;QACV,KAAK,EAAE;YACL,MAAM,EAAE;gBACN,KAAK,EAAE,iCAAiC;gBACxC,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,IAAI;aACf;YACD,OAAO,EAAE,WAAW;SACrB;KACF;CACF,CAAC,CAAC;AAEH,eAAe,WAAW,CAAC"}
@@ -5,6 +5,7 @@ export declare const rootCommandRoutes: {
5
5
  profile: import("@stricli/core").RouteMap<import("@stricli/core").ApplicationContext>;
6
6
  pull: import("@stricli/core").Command<import("@stricli/core").ApplicationContext>;
7
7
  push: import("@stricli/core").Command<import("@stricli/core").ApplicationContext>;
8
+ skill: import("@stricli/core").RouteMap<import("@stricli/core").ApplicationContext>;
8
9
  status: import("@stricli/core").Command<import("@stricli/core").ApplicationContext>;
9
10
  track: import("@stricli/core").Command<import("@stricli/core").ApplicationContext>;
10
11
  untrack: import("@stricli/core").Command<import("@stricli/core").ApplicationContext>;
@@ -1 +1 @@
1
- {"version":3,"file":"root-commands.d.ts","sourceRoot":"","sources":["../../src/cli/root-commands.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,iBAAiB;;;;;;;;;;CAU7B,CAAC"}
1
+ {"version":3,"file":"root-commands.d.ts","sourceRoot":"","sources":["../../src/cli/root-commands.ts"],"names":[],"mappings":"AAWA,eAAO,MAAM,iBAAiB;;;;;;;;;;;CAW7B,CAAC"}
@@ -4,6 +4,7 @@ import initCommand from "#app/cli/init.ts";
4
4
  import profileRoute from "#app/cli/profile/index.ts";
5
5
  import pullCommand from "#app/cli/pull.ts";
6
6
  import pushCommand from "#app/cli/push.ts";
7
+ import skillRoute from "#app/cli/skill/index.ts";
7
8
  import statusCommand from "#app/cli/status.ts";
8
9
  import trackCommand from "#app/cli/track.ts";
9
10
  import untrackCommand from "#app/cli/untrack.ts";
@@ -14,6 +15,7 @@ export const rootCommandRoutes = {
14
15
  profile: profileRoute,
15
16
  pull: pullCommand,
16
17
  push: pushCommand,
18
+ skill: skillRoute,
17
19
  status: statusCommand,
18
20
  track: trackCommand,
19
21
  untrack: untrackCommand,
@@ -1 +1 @@
1
- {"version":3,"file":"root-commands.js","sourceRoot":"","sources":["../../src/cli/root-commands.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,gBAAgB,CAAC;AACvC,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAC/C,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAC3C,OAAO,YAAY,MAAM,2BAA2B,CAAC;AACrD,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAC3C,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAC3C,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAC/C,OAAO,YAAY,MAAM,mBAAmB,CAAC;AAC7C,OAAO,cAAc,MAAM,qBAAqB,CAAC;AAEjD,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,EAAE,EAAE,SAAS;IACb,MAAM,EAAE,aAAa;IACrB,IAAI,EAAE,WAAW;IACjB,OAAO,EAAE,YAAY;IACrB,IAAI,EAAE,WAAW;IACjB,IAAI,EAAE,WAAW;IACjB,MAAM,EAAE,aAAa;IACrB,KAAK,EAAE,YAAY;IACnB,OAAO,EAAE,cAAc;CACxB,CAAC"}
1
+ {"version":3,"file":"root-commands.js","sourceRoot":"","sources":["../../src/cli/root-commands.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,gBAAgB,CAAC;AACvC,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAC/C,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAC3C,OAAO,YAAY,MAAM,2BAA2B,CAAC;AACrD,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAC3C,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAC3C,OAAO,UAAU,MAAM,yBAAyB,CAAC;AACjD,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAC/C,OAAO,YAAY,MAAM,mBAAmB,CAAC;AAC7C,OAAO,cAAc,MAAM,qBAAqB,CAAC;AAEjD,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,EAAE,EAAE,SAAS;IACb,MAAM,EAAE,aAAa;IACrB,IAAI,EAAE,WAAW;IACjB,OAAO,EAAE,YAAY;IACrB,IAAI,EAAE,WAAW;IACjB,IAAI,EAAE,WAAW;IACjB,KAAK,EAAE,UAAU;IACjB,MAAM,EAAE,aAAa;IACrB,KAAK,EAAE,YAAY;IACnB,OAAO,EAAE,cAAc;CACxB,CAAC"}
@@ -0,0 +1,3 @@
1
+ declare const skillRoute: import("@stricli/core").RouteMap<import("@stricli/core").ApplicationContext>;
2
+ export default skillRoute;
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cli/skill/index.ts"],"names":[],"mappings":"AAGA,QAAA,MAAM,UAAU,8EAQd,CAAC;AAEH,eAAe,UAAU,CAAC"}
@@ -0,0 +1,13 @@
1
+ import { buildRouteMap } from "@stricli/core";
2
+ import skillInstallCommand from "#app/cli/skill/install.ts";
3
+ const skillRoute = buildRouteMap({
4
+ docs: {
5
+ brief: "Manage portable agent skills",
6
+ fullDescription: "Install Dotweave's bundled portable agent skill.",
7
+ },
8
+ routes: {
9
+ install: skillInstallCommand,
10
+ },
11
+ });
12
+ export default skillRoute;
13
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/skill/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,mBAAmB,MAAM,2BAA2B,CAAC;AAE5D,MAAM,UAAU,GAAG,aAAa,CAAC;IAC/B,IAAI,EAAE;QACJ,KAAK,EAAE,8BAA8B;QACrC,eAAe,EAAE,kDAAkD;KACpE;IACD,MAAM,EAAE;QACN,OAAO,EAAE,mBAAmB;KAC7B;CACF,CAAC,CAAC;AAEH,eAAe,UAAU,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { ApplicationContext } from "@stricli/core";
2
+ declare const skillInstallCommand: import("@stricli/core").Command<ApplicationContext>;
3
+ export default skillInstallCommand;
4
+ //# sourceMappingURL=install.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../../src/cli/skill/install.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAuBxD,QAAA,MAAM,mBAAmB,qDAmDvB,CAAC;AAEH,eAAe,mBAAmB,CAAC"}
@@ -0,0 +1,63 @@
1
+ import { buildCommand } from "@stricli/core";
2
+ import { installDotweaveSkill } from "#app/services/skill-install.ts";
3
+ import { createCliLogger } from "#app/services/terminal/logger.ts";
4
+ const formatInstallMessage = (action) => {
5
+ switch (action) {
6
+ case "would-install":
7
+ return "Would install dotweave skill";
8
+ case "would-overwrite":
9
+ return "Would overwrite dotweave skill";
10
+ case "overwritten":
11
+ return "Overwrote dotweave skill";
12
+ default:
13
+ return "Installed dotweave skill";
14
+ }
15
+ };
16
+ const skillInstallCommand = buildCommand({
17
+ docs: {
18
+ brief: "Install the bundled dotweave agent skill",
19
+ fullDescription: "Install Dotweave's bundled portable agent skill into the specified skills directory.",
20
+ },
21
+ async func(flags, directory) {
22
+ const logger = createCliLogger();
23
+ const result = await installDotweaveSkill({
24
+ directory,
25
+ dryRun: flags.dryRun === true,
26
+ force: flags.force === true,
27
+ });
28
+ const message = formatInstallMessage(result.action);
29
+ if (result.dryRun) {
30
+ logger.info(message);
31
+ }
32
+ else {
33
+ logger.success(message);
34
+ }
35
+ logger.kv("target", result.targetPath);
36
+ },
37
+ parameters: {
38
+ flags: {
39
+ dryRun: {
40
+ brief: "Report the install target without writing files",
41
+ kind: "boolean",
42
+ optional: true,
43
+ },
44
+ force: {
45
+ brief: "Overwrite an existing dotweave skill",
46
+ kind: "boolean",
47
+ optional: true,
48
+ },
49
+ },
50
+ positional: {
51
+ kind: "tuple",
52
+ parameters: [
53
+ {
54
+ brief: "Skills root directory",
55
+ parse: String,
56
+ placeholder: "directory",
57
+ },
58
+ ],
59
+ },
60
+ },
61
+ });
62
+ export default skillInstallCommand;
63
+ //# sourceMappingURL=install.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"install.js","sourceRoot":"","sources":["../../../src/cli/skill/install.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAOnE,MAAM,oBAAoB,GAAG,CAAC,MAAc,EAAE,EAAE;IAC9C,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,eAAe;YAClB,OAAO,8BAA8B,CAAC;QACxC,KAAK,iBAAiB;YACpB,OAAO,gCAAgC,CAAC;QAC1C,KAAK,aAAa;YAChB,OAAO,0BAA0B,CAAC;QACpC;YACE,OAAO,0BAA0B,CAAC;IACtC,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,mBAAmB,GAAG,YAAY,CAItC;IACA,IAAI,EAAE;QACJ,KAAK,EAAE,0CAA0C;QACjD,eAAe,EACb,sFAAsF;KACzF;IACD,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,SAAS;QACzB,MAAM,MAAM,GAAG,eAAe,EAAE,CAAC;QACjC,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAC;YACxC,SAAS;YACT,MAAM,EAAE,KAAK,CAAC,MAAM,KAAK,IAAI;YAC7B,KAAK,EAAE,KAAK,CAAC,KAAK,KAAK,IAAI;SAC5B,CAAC,CAAC;QACH,MAAM,OAAO,GAAG,oBAAoB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAEpD,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAClB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACvB,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC1B,CAAC;QAED,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;IACzC,CAAC;IACD,UAAU,EAAE;QACV,KAAK,EAAE;YACL,MAAM,EAAE;gBACN,KAAK,EAAE,iDAAiD;gBACxD,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,IAAI;aACf;YACD,KAAK,EAAE;gBACL,KAAK,EAAE,sCAAsC;gBAC7C,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,IAAI;aACf;SACF;QACD,UAAU,EAAE;YACV,IAAI,EAAE,OAAO;YACb,UAAU,EAAE;gBACV;oBACE,KAAK,EAAE,uBAAuB;oBAC9B,KAAK,EAAE,MAAM;oBACb,WAAW,EAAE,WAAW;iBACzB;aACF;SACF;KACF;CACF,CAAC,CAAC;AAEH,eAAe,mBAAmB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/cli/status.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAwHxD,QAAA,MAAM,aAAa,qDA8BjB,CAAC;AAEH,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/cli/status.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAyHxD,QAAA,MAAM,aAAa,qDAsCjB,CAAC;AAEH,eAAe,aAAa,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import { buildCommand } from "@stricli/core";
2
+ import { AppConstants } from "#app/config/constants.ts";
2
3
  import { getStatus, } from "#app/services/status.ts";
3
4
  import { createCliLogger } from "#app/services/terminal/logger.ts";
4
5
  import { color, SYMBOLS } from "#app/services/terminal/theme.ts";
@@ -83,11 +84,18 @@ const statusCommand = buildCommand({
83
84
  async func(flags) {
84
85
  const logger = createCliLogger();
85
86
  const spin = logger.spinner("Checking sync status...");
86
- const result = await getStatus({
87
- profile: flags.profile,
88
- });
87
+ let result;
88
+ try {
89
+ result = await getStatus({
90
+ profile: flags.profile,
91
+ });
92
+ }
93
+ catch (error) {
94
+ spin.stop();
95
+ throw error;
96
+ }
89
97
  spin.stop();
90
- logger.info(`Sync status — ${result.entryCount} entries, ${result.recipientCount} recipients, profile: ${result.activeProfile ?? "none"}`);
98
+ logger.info(`Sync status — ${result.entryCount} entries, ${result.recipientCount} recipients, profile: ${result.activeProfile ?? AppConstants.SYNC.DEFAULT_PROFILE}`);
91
99
  logger.section("Push changes (repository)");
92
100
  logPushChanges(logger, result.push.changes);
93
101
  logger.section("Pull changes (local)");
@@ -1 +1 @@
1
- {"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/cli/status.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/cli/status.ts"],"names":[],"mappings":"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"}
@@ -12,7 +12,7 @@ export declare const AppConstants: {
12
12
  readonly FILE_NAME: "settings.jsonc";
13
13
  };
14
14
  readonly INIT: {
15
- readonly DEFAULT_IDENTITY_FILE: "~/.config/dotweave/keys.txt";
15
+ readonly DEFAULT_IDENTITY_FILE_NAME: "keys.txt";
16
16
  readonly LEGACY_IDENTITY_FILE: "~/.config/dotweave/age/keys.txt";
17
17
  };
18
18
  readonly SYNC: {
@@ -14,7 +14,7 @@ export const AppConstants = {
14
14
  FILE_NAME: "settings.jsonc",
15
15
  },
16
16
  INIT: {
17
- DEFAULT_IDENTITY_FILE: `~/.config/${APP_NAME}/keys.txt`,
17
+ DEFAULT_IDENTITY_FILE_NAME: "keys.txt",
18
18
  LEGACY_IDENTITY_FILE: `~/.config/${APP_NAME}/age/keys.txt`,
19
19
  },
20
20
  SYNC: {
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/config/constants.ts"],"names":[],"mappings":"AAAA,MAAM,QAAQ,GAAG,UAAU,CAAC;AAC5B,MAAM,gCAAgC,GAAG,YAAY,CAAC;AAEtD,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,GAAG,EAAE;QACH,IAAI,EAAE,QAAQ;KACf;IACD,YAAY,EAAE;QACZ,gBAAgB,EAAE,QAAQ;QAC1B,OAAO,EAAE,GAAG,QAAQ,IAAI,gCAAgC,EAAE;QAC1D,mBAAmB,EAAE,gCAAgC;KACtD;IACD,aAAa,EAAE;QACb,eAAe,EAAE,CAAC;QAClB,SAAS,EAAE,gBAAgB;KAC5B;IACD,IAAI,EAAE;QACJ,qBAAqB,EAAE,aAAa,QAAQ,WAAW;QACvD,oBAAoB,EAAE,aAAa,QAAQ,eAAe;KAC3D;IACD,IAAI,EAAE;QACJ,gBAAgB,EAAE,gBAAgB;QAClC,cAAc,EAAE,CAAC;QACjB,mBAAmB,EAAE,EAAE;QACvB,eAAe,EAAE,SAAS;QAC1B,KAAK,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC;QACrC,sBAAsB,EAAE,kBAAkB;KAC3C;IACD,GAAG,EAAE;QACH,kBAAkB,EAAE,QAAQ;QAC5B,mBAAmB,EAAE,YAAY;KAClC;CACO,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/config/constants.ts"],"names":[],"mappings":"AAAA,MAAM,QAAQ,GAAG,UAAU,CAAC;AAC5B,MAAM,gCAAgC,GAAG,YAAY,CAAC;AAEtD,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,GAAG,EAAE;QACH,IAAI,EAAE,QAAQ;KACf;IACD,YAAY,EAAE;QACZ,gBAAgB,EAAE,QAAQ;QAC1B,OAAO,EAAE,GAAG,QAAQ,IAAI,gCAAgC,EAAE;QAC1D,mBAAmB,EAAE,gCAAgC;KACtD;IACD,aAAa,EAAE;QACb,eAAe,EAAE,CAAC;QAClB,SAAS,EAAE,gBAAgB;KAC5B;IACD,IAAI,EAAE;QACJ,0BAA0B,EAAE,UAAU;QACtC,oBAAoB,EAAE,aAAa,QAAQ,eAAe;KAC3D;IACD,IAAI,EAAE;QACJ,gBAAgB,EAAE,gBAAgB;QAClC,cAAc,EAAE,CAAC;QACjB,mBAAmB,EAAE,EAAE;QACvB,eAAe,EAAE,SAAS;QAC1B,KAAK,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC;QACrC,sBAAsB,EAAE,kBAAkB;KAC3C;IACD,GAAG,EAAE;QACH,kBAAkB,EAAE,QAAQ;QAC5B,mBAAmB,EAAE,YAAY;KAClC;CACO,CAAC"}
@@ -1,2 +1,2 @@
1
- export declare const resolveDefaultIdentityFile: (home: string | undefined, xdgConfigHome: string | undefined) => string;
1
+ export declare const resolveDefaultIdentityFile: (dotweaveHomeDirectory: string) => string;
2
2
  //# sourceMappingURL=identity-file.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"identity-file.d.ts","sourceRoot":"","sources":["../../src/config/identity-file.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,0BAA0B,GACrC,MAAM,MAAM,GAAG,SAAS,EACxB,eAAe,MAAM,GAAG,SAAS,WAOlC,CAAC"}
1
+ {"version":3,"file":"identity-file.d.ts","sourceRoot":"","sources":["../../src/config/identity-file.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,0BAA0B,GAAI,uBAAuB,MAAM,WAKvE,CAAC"}
@@ -1,6 +1,6 @@
1
+ import { resolve } from "node:path";
1
2
  import { AppConstants } from "#app/config/constants.ts";
2
- import { resolveConfiguredAbsolutePath } from "#app/config/xdg.ts";
3
- export const resolveDefaultIdentityFile = (home, xdgConfigHome) => {
4
- return resolveConfiguredAbsolutePath(AppConstants.INIT.DEFAULT_IDENTITY_FILE, home, xdgConfigHome);
3
+ export const resolveDefaultIdentityFile = (dotweaveHomeDirectory) => {
4
+ return resolve(dotweaveHomeDirectory, AppConstants.INIT.DEFAULT_IDENTITY_FILE_NAME);
5
5
  };
6
6
  //# sourceMappingURL=identity-file.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"identity-file.js","sourceRoot":"","sources":["../../src/config/identity-file.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,6BAA6B,EAAE,MAAM,oBAAoB,CAAC;AAEnE,MAAM,CAAC,MAAM,0BAA0B,GAAG,CACxC,IAAwB,EACxB,aAAiC,EACjC,EAAE;IACF,OAAO,6BAA6B,CAClC,YAAY,CAAC,IAAI,CAAC,qBAAqB,EACvC,IAAI,EACJ,aAAa,CACd,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"identity-file.js","sourceRoot":"","sources":["../../src/config/identity-file.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAExD,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,qBAA6B,EAAE,EAAE;IAC1E,OAAO,OAAO,CACZ,qBAAqB,EACrB,YAAY,CAAC,IAAI,CAAC,0BAA0B,CAC7C,CAAC;AACJ,CAAC,CAAC"}
@@ -1,6 +1,7 @@
1
1
  export declare const readEnvValue: (name: string) => string | undefined;
2
2
  export declare const resolveHomeDirectoryFromEnv: () => string;
3
3
  export declare const resolveXdgConfigHomeFromEnv: () => string;
4
+ export declare const resolveDotweaveHomeDirectoryFromEnv: () => string;
4
5
  export declare const resolveDotweaveGlobalConfigFilePathFromEnv: () => string;
5
6
  export declare const resolveDotweaveSyncDirectoryFromEnv: () => string;
6
7
  export declare const resolveCurrentPlatformKey: () => import("#app/config/platform.ts").PlatformKey;
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-env.d.ts","sourceRoot":"","sources":["../../src/config/runtime-env.ts"],"names":[],"mappings":"AAaA,eAAO,MAAM,YAAY,GAAI,MAAM,MAAM,uBAExC,CAAC;AAEF,eAAO,MAAM,2BAA2B,cAEvC,CAAC;AAEF,eAAO,MAAM,2BAA2B,cAKvC,CAAC;AAEF,eAAO,MAAM,0CAA0C,cAKtD,CAAC;AAEF,eAAO,MAAM,mCAAmC,cAK/C,CAAC;AAEF,eAAO,MAAM,yBAAyB,qDAOrC,CAAC"}
1
+ {"version":3,"file":"runtime-env.d.ts","sourceRoot":"","sources":["../../src/config/runtime-env.ts"],"names":[],"mappings":"AAaA,eAAO,MAAM,YAAY,GAAI,MAAM,MAAM,uBAExC,CAAC;AAEF,eAAO,MAAM,2BAA2B,cAEvC,CAAC;AAEF,eAAO,MAAM,2BAA2B,cAKvC,CAAC;AAEF,eAAO,MAAM,mCAAmC,cAW/C,CAAC;AAEF,eAAO,MAAM,0CAA0C,cAItD,CAAC;AAEF,eAAO,MAAM,mCAAmC,cAE/C,CAAC;AAEF,eAAO,MAAM,yBAAyB,qDAOrC,CAAC"}