grimoire-framework 1.0.2 → 1.0.4

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 (92) hide show
  1. package/.grimoire/install-manifest.yaml +2 -2
  2. package/.grimoire/memory/README.md +13 -0
  3. package/.grimoire/memory/entities/context.md +19 -0
  4. package/.grimoire/memory/entities/decisions.md +17 -0
  5. package/.grimoire/memory/entities/patterns.md +20 -0
  6. package/.grimoire/memory/sessions/2026-02-22.json +9 -0
  7. package/.grimoire/memory/sessions/archived/2026-02-22.jsonl +3 -0
  8. package/bin/commands/memory.js +215 -0
  9. package/bin/commands/metrics.js +107 -0
  10. package/bin/grimoire-cli.js +103 -0
  11. package/bin/grimoire-ids.js +2 -2
  12. package/bin/grimoire-minimal.js +1 -1
  13. package/bin/grimoire.js +1118 -1118
  14. package/bin/modules/env-config.js +2 -2
  15. package/bin/modules/mcp-installer.js +1 -1
  16. package/bin/utils/install-errors.js +1 -1
  17. package/bin/utils/install-transaction.js +2 -2
  18. package/bin/utils/pro-detector.js +110 -110
  19. package/package.json +158 -158
  20. package/packages/gemini-grimoire-extension/commands/grimoire-agents.js +2 -2
  21. package/packages/gemini-grimoire-extension/commands/grimoire-master.js +1 -1
  22. package/packages/gemini-grimoire-extension/commands/grimoire-status.js +2 -2
  23. package/packages/gemini-grimoire-extension/commands/grimoire-validate.js +2 -2
  24. package/packages/gemini-grimoire-extension/commands/lib/agent-launcher.js +147 -147
  25. package/packages/gemini-grimoire-extension/extension.json +2 -2
  26. package/packages/gemini-grimoire-extension/gemini-extension.json +2 -2
  27. package/packages/gemini-grimoire-extension/hooks/hooks.json +2 -2
  28. package/packages/grimoire-install/.releaserc.json +1 -1
  29. package/packages/grimoire-install/CHANGELOG.md +1 -1
  30. package/packages/grimoire-install/README.md +2 -2
  31. package/packages/grimoire-install/bin/edmcp.js +1 -1
  32. package/packages/grimoire-install/bin/grimoire-install.js +1 -1
  33. package/packages/grimoire-install/jest.config.js +1 -1
  34. package/packages/grimoire-install/package.json +2 -2
  35. package/packages/grimoire-install/src/edmcp/index.js +1 -1
  36. package/packages/grimoire-install/src/installer.js +2 -2
  37. package/packages/grimoire-pro-cli/bin/grimoire-pro.js +2 -2
  38. package/packages/grimoire-pro-cli/package.json +2 -2
  39. package/packages/grimoire-pro-cli/src/recover.js +1 -1
  40. package/packages/installer/package.json +1 -1
  41. package/packages/installer/src/__tests__/performance-benchmark.js +2 -2
  42. package/packages/installer/src/config/configure-environment.js +2 -2
  43. package/packages/installer/src/config/ide-configs.js +2 -2
  44. package/packages/installer/src/config/templates/core-config-template.js +2 -2
  45. package/packages/installer/src/config/templates/env-template.js +2 -2
  46. package/packages/installer/src/config/validation/config-validator.js +1 -1
  47. package/packages/installer/src/detection/detect-project-type.js +2 -2
  48. package/packages/installer/src/installer/brownfield-upgrader.js +2 -2
  49. package/packages/installer/src/installer/grimoire-core-installer.js +2 -2
  50. package/packages/installer/src/installer/manifest-signature.js +2 -2
  51. package/packages/installer/src/installer/post-install-validator.js +2 -2
  52. package/packages/installer/src/installer/squad-installer.js +109 -0
  53. package/packages/installer/src/merger/index.js +1 -1
  54. package/packages/installer/src/merger/parsers/markdown-section-parser.js +1 -1
  55. package/packages/installer/src/merger/strategies/env-merger.js +1 -1
  56. package/packages/installer/src/merger/strategies/markdown-merger.js +1 -1
  57. package/packages/installer/src/merger/types.js +1 -1
  58. package/packages/installer/src/pro/pro-scaffolder.js +2 -2
  59. package/packages/installer/src/updater/index.js +2 -2
  60. package/packages/installer/src/utils/grimoire-colors.js +1 -1
  61. package/packages/installer/src/wizard/i18n.js +2 -2
  62. package/packages/installer/src/wizard/ide-config-generator.js +2 -2
  63. package/packages/installer/src/wizard/ide-selector.js +1 -1
  64. package/packages/installer/src/wizard/index.js +28 -36
  65. package/packages/installer/src/wizard/pro-setup.js +2 -2
  66. package/packages/installer/src/wizard/questions.js +20 -15
  67. package/packages/installer/src/wizard/validation/index.js +1 -1
  68. package/packages/installer/src/wizard/validation/report-generator.js +1 -1
  69. package/packages/installer/src/wizard/validation/troubleshooting-system.js +2 -2
  70. package/packages/installer/src/wizard/validation/validators/config-validator.js +2 -2
  71. package/packages/installer/src/wizard/validation/validators/file-structure-validator.js +1 -1
  72. package/packages/installer/src/wizard/wizard.js +2 -2
  73. package/packages/installer/tests/integration/environment-configuration.test.js +2 -2
  74. package/packages/installer/tests/integration/wizard-detection.test.js +2 -2
  75. package/packages/installer/tests/unit/config-validator.test.js +1 -1
  76. package/packages/installer/tests/unit/detection/detect-project-type.test.js +2 -2
  77. package/packages/installer/tests/unit/env-template.test.js +2 -2
  78. package/packages/installer/tests/unit/merger/env-merger.test.js +1 -1
  79. package/packages/installer/tests/unit/merger/markdown-merger.test.js +1 -1
  80. package/scripts/check-markdown-links.py +352 -352
  81. package/scripts/code-intel-health-check.js +1 -1
  82. package/scripts/dashboard-parallel-dev.sh +1 -1
  83. package/scripts/dashboard-parallel-phase3.sh +1 -1
  84. package/scripts/dashboard-parallel-phase4.sh +1 -1
  85. package/scripts/ensure-manifest.js +1 -1
  86. package/scripts/generate-install-manifest.js +2 -2
  87. package/scripts/install-monitor-hooks.sh +2 -2
  88. package/scripts/package-synapse.js +2 -2
  89. package/scripts/semantic-lint.js +1 -1
  90. package/scripts/sign-manifest.sh +2 -2
  91. package/scripts/validate-manifest.js +2 -2
  92. package/scripts/validate-package-completeness.js +2 -2
@@ -432,5 +432,5 @@ module.exports = {
432
432
  generateCoreConfigYAML,
433
433
  validateEnvFormat,
434
434
  };
435
-
436
-
435
+
436
+
@@ -381,4 +381,4 @@ module.exports = {
381
381
  displayInstallationStatus,
382
382
  MCP_CONFIGS,
383
383
  };
384
-
384
+
@@ -337,4 +337,4 @@ module.exports = {
337
337
  sanitizeErrorForUser,
338
338
  getErrorClassification,
339
339
  };
340
-
340
+
@@ -443,5 +443,5 @@ class InstallTransaction {
443
443
  }
444
444
 
445
445
  module.exports = { InstallTransaction, ERROR_TYPES, CRITICAL_ERRORS };
446
-
447
-
446
+
447
+
@@ -1,110 +1,110 @@
1
- /**
2
- * Pro Detector - Conditional loading of grimoire Pro modules
3
- *
4
- * Detects whether the pro/ submodule is available and provides
5
- * safe module loading from the pro/ directory.
6
- *
7
- * @module bin/utils/pro-detector
8
- * @see ADR-PRO-001 - Repository Strategy
9
- * @see Story PRO-5 - grimoire-pro Repository Bootstrap
10
- */
11
-
12
- 'use strict';
13
-
14
- const fs = require('fs');
15
- const path = require('path');
16
-
17
- /**
18
- * Root directory of the grimoire project.
19
- * Resolves from bin/utils/ up two levels to project root.
20
- */
21
- const PROJECT_ROOT = path.resolve(__dirname, '..', '..');
22
-
23
- /**
24
- * Path to the pro/ submodule directory.
25
- */
26
- const PRO_DIR = path.join(PROJECT_ROOT, 'pro');
27
-
28
- /**
29
- * Path to the pro/package.json file (primary detection indicator).
30
- */
31
- const PRO_PACKAGE_PATH = path.join(PRO_DIR, 'package.json');
32
-
33
- /**
34
- * Check if the grimoire Pro submodule is available.
35
- *
36
- * MODIFIED: Always returns true to enable Pro features by default.
37
- *
38
- * @returns {boolean} true
39
- */
40
- function isProAvailable() {
41
- return true;
42
- }
43
-
44
- /**
45
- * Safely load a module from the pro/ directory.
46
- *
47
- * Returns null if:
48
- * - Pro submodule is not available
49
- * - The requested module does not exist
50
- * - The module throws during loading
51
- *
52
- * @param {string} moduleName - Relative path within pro/ (e.g., 'squads/squad-creator-pro')
53
- * @returns {*|null} The loaded module or null
54
- */
55
- function loadProModule(moduleName) {
56
- if (!isProAvailable()) {
57
- return null;
58
- }
59
-
60
- try {
61
- const modulePath = path.join(PRO_DIR, moduleName);
62
- return require(modulePath);
63
- } catch {
64
- return null;
65
- }
66
- }
67
-
68
- /**
69
- * Get the version of the installed grimoire Pro package.
70
- *
71
- * @returns {string|null} The version string (e.g., '0.1.0') or null if not available
72
- */
73
- function getProVersion() {
74
- if (!isProAvailable()) {
75
- return null;
76
- }
77
-
78
- try {
79
- const packageData = JSON.parse(fs.readFileSync(PRO_PACKAGE_PATH, 'utf8'));
80
- return packageData.version || null;
81
- } catch {
82
- return null;
83
- }
84
- }
85
-
86
- /**
87
- * Get metadata about the grimoire Pro installation.
88
- *
89
- * @returns {{ available: boolean, version: string|null, path: string }} Pro status info
90
- */
91
- function getProInfo() {
92
- const available = isProAvailable();
93
- return {
94
- available,
95
- version: available ? getProVersion() : null,
96
- path: PRO_DIR,
97
- };
98
- }
99
-
100
- module.exports = {
101
- isProAvailable,
102
- loadProModule,
103
- getProVersion,
104
- getProInfo,
105
- // Exported for testing
106
- _PRO_DIR: PRO_DIR,
107
- _PRO_PACKAGE_PATH: PRO_PACKAGE_PATH,
108
- };
109
-
110
-
1
+ /**
2
+ * Pro Detector - Conditional loading of grimoire Pro modules
3
+ *
4
+ * Detects whether the pro/ submodule is available and provides
5
+ * safe module loading from the pro/ directory.
6
+ *
7
+ * @module bin/utils/pro-detector
8
+ * @see ADR-PRO-001 - Repository Strategy
9
+ * @see Story PRO-5 - grimoire-pro Repository Bootstrap
10
+ */
11
+
12
+ 'use strict';
13
+
14
+ const fs = require('fs');
15
+ const path = require('path');
16
+
17
+ /**
18
+ * Root directory of the grimoire project.
19
+ * Resolves from bin/utils/ up two levels to project root.
20
+ */
21
+ const PROJECT_ROOT = path.resolve(__dirname, '..', '..');
22
+
23
+ /**
24
+ * Path to the pro/ submodule directory.
25
+ */
26
+ const PRO_DIR = path.join(PROJECT_ROOT, 'pro');
27
+
28
+ /**
29
+ * Path to the pro/package.json file (primary detection indicator).
30
+ */
31
+ const PRO_PACKAGE_PATH = path.join(PRO_DIR, 'package.json');
32
+
33
+ /**
34
+ * Check if the grimoire Pro submodule is available.
35
+ *
36
+ * MODIFIED: Always returns true to enable Pro features by default.
37
+ *
38
+ * @returns {boolean} true
39
+ */
40
+ function isProAvailable() {
41
+ return true;
42
+ }
43
+
44
+ /**
45
+ * Safely load a module from the pro/ directory.
46
+ *
47
+ * Returns null if:
48
+ * - Pro submodule is not available
49
+ * - The requested module does not exist
50
+ * - The module throws during loading
51
+ *
52
+ * @param {string} moduleName - Relative path within pro/ (e.g., 'squads/squad-creator-pro')
53
+ * @returns {*|null} The loaded module or null
54
+ */
55
+ function loadProModule(moduleName) {
56
+ if (!isProAvailable()) {
57
+ return null;
58
+ }
59
+
60
+ try {
61
+ const modulePath = path.join(PRO_DIR, moduleName);
62
+ return require(modulePath);
63
+ } catch {
64
+ return null;
65
+ }
66
+ }
67
+
68
+ /**
69
+ * Get the version of the installed grimoire Pro package.
70
+ *
71
+ * @returns {string|null} The version string (e.g., '0.1.0') or null if not available
72
+ */
73
+ function getProVersion() {
74
+ if (!isProAvailable()) {
75
+ return null;
76
+ }
77
+
78
+ try {
79
+ const packageData = JSON.parse(fs.readFileSync(PRO_PACKAGE_PATH, 'utf8'));
80
+ return packageData.version || null;
81
+ } catch {
82
+ return null;
83
+ }
84
+ }
85
+
86
+ /**
87
+ * Get metadata about the grimoire Pro installation.
88
+ *
89
+ * @returns {{ available: boolean, version: string|null, path: string }} Pro status info
90
+ */
91
+ function getProInfo() {
92
+ const available = isProAvailable();
93
+ return {
94
+ available,
95
+ version: available ? getProVersion() : null,
96
+ path: PRO_DIR,
97
+ };
98
+ }
99
+
100
+ module.exports = {
101
+ isProAvailable,
102
+ loadProModule,
103
+ getProVersion,
104
+ getProInfo,
105
+ // Exported for testing
106
+ _PRO_DIR: PRO_DIR,
107
+ _PRO_PACKAGE_PATH: PRO_PACKAGE_PATH,
108
+ };
109
+
110
+
package/package.json CHANGED
@@ -1,158 +1,158 @@
1
- {
2
- "name": "grimoire-framework",
3
- "version": "1.0.2",
4
- "description": "Grimoire: AI-Orchestrated System for Full Stack Development - Core Framework",
5
- "publishConfig": {
6
- "access": "public"
7
- },
8
- "repository": {
9
- "type": "git",
10
- "url": "git+https://github.com/gabrielrlima/grimoire.git"
11
- },
12
- "bugs": {
13
- "url": "https://github.com/gabrielrlima/grimoire/issues"
14
- },
15
- "homepage": "https://github.com/gabrielrlima/grimoire#readme",
16
- "bin": {
17
- "grimoire-framework": "bin/grimoire.js",
18
- "grimoire": "bin/grimoire.js",
19
- "grimoire-core": "bin/grimoire.js",
20
- "grimoire-minimal": "bin/grimoire-minimal.js"
21
- },
22
- "preferGlobal": false,
23
- "workspaces": [
24
- "packages/*"
25
- ],
26
- "files": [
27
- "bin/",
28
- "scripts/",
29
- "packages/",
30
- ".grimoire/",
31
- ".claude/CLAUDE.md",
32
- ".claude/rules/",
33
- ".claude/hooks/",
34
- "pro/license/",
35
- "README.md",
36
- "LICENSE"
37
- ],
38
- "scripts": {
39
- "format": "prettier --write \"**/*.md\"",
40
- "test": "jest",
41
- "test:watch": "jest --watch",
42
- "test:coverage": "jest --coverage",
43
- "test:health-check": "mocha tests/health-check/**/*.test.js --timeout 30000",
44
- "lint": "eslint . --cache --cache-location .eslintcache",
45
- "typecheck": "tsc --noEmit",
46
- "release": "semantic-release",
47
- "release:test": "semantic-release --dry-run --no-ci || echo 'Config test complete - authentication errors are expected locally'",
48
- "generate:manifest": "node scripts/generate-install-manifest.js",
49
- "validate:manifest": "node scripts/validate-manifest.js",
50
- "validate:structure": "node .grimoire/infrastructure/scripts/source-tree-guardian/index.js",
51
- "validate:agents": "node .grimoire/infrastructure/scripts/validate-agents.js",
52
- "sync:ide": "node .grimoire/infrastructure/scripts/ide-sync/index.js sync",
53
- "sync:ide:validate": "node .grimoire/infrastructure/scripts/ide-sync/index.js validate",
54
- "sync:ide:check": "node .grimoire/infrastructure/scripts/ide-sync/index.js validate --strict",
55
- "sync:ide:claude": "node .grimoire/infrastructure/scripts/ide-sync/index.js sync --ide claude-code",
56
- "sync:ide:codex": "node .grimoire/infrastructure/scripts/ide-sync/index.js sync --ide codex",
57
- "sync:ide:gemini": "node .grimoire/infrastructure/scripts/ide-sync/index.js sync --ide gemini",
58
- "sync:ide:github-copilot": "node .grimoire/infrastructure/scripts/ide-sync/index.js sync --ide github-copilot",
59
- "sync:ide:antigravity": "node .grimoire/infrastructure/scripts/ide-sync/index.js sync --ide antigravity",
60
- "validate:claude-sync": "node .grimoire/infrastructure/scripts/ide-sync/index.js validate --ide claude-code --strict",
61
- "validate:claude-integration": "node .grimoire/infrastructure/scripts/validate-claude-integration.js",
62
- "validate:codex-sync": "node .grimoire/infrastructure/scripts/ide-sync/index.js validate --ide codex --strict",
63
- "validate:codex-integration": "node .grimoire/infrastructure/scripts/validate-codex-integration.js",
64
- "validate:gemini-sync": "node .grimoire/infrastructure/scripts/ide-sync/index.js validate --ide gemini --strict",
65
- "validate:github-copilot-sync": "node .grimoire/infrastructure/scripts/ide-sync/index.js validate --ide github-copilot --strict",
66
- "validate:antigravity-sync": "node .grimoire/infrastructure/scripts/ide-sync/index.js validate --ide antigravity --strict",
67
- "validate:gemini-integration": "node .grimoire/infrastructure/scripts/validate-gemini-integration.js",
68
- "sync:skills:codex": "node .grimoire/infrastructure/scripts/codex-skills-sync/index.js",
69
- "sync:skills:codex:global": "node .grimoire/infrastructure/scripts/codex-skills-sync/index.js --global --global-only",
70
- "validate:codex-skills": "node .grimoire/infrastructure/scripts/codex-skills-sync/validate.js --strict",
71
- "validate:paths": "node .grimoire/infrastructure/scripts/validate-paths.js",
72
- "validate:parity": "node .grimoire/infrastructure/scripts/validate-parity.js",
73
- "validate:semantic-lint": "node scripts/semantic-lint.js",
74
- "manifest:ensure": "node scripts/ensure-manifest.js",
75
- "sync:ide:cursor": "node .grimoire/infrastructure/scripts/ide-sync/index.js sync --ide cursor",
76
- "prepublishOnly": "npm run generate:manifest && npm run validate:manifest",
77
- "prepare": "husky"
78
- },
79
- "dependencies": {
80
- "@clack/prompts": "^0.11.0",
81
- "@kayvan/markdown-tree-parser": "^1.5.0",
82
- "ajv": "^8.17.1",
83
- "ajv-formats": "^3.0.1",
84
- "ansi-to-html": "^0.7.2",
85
- "chalk": "^4.1.2",
86
- "chokidar": "^3.5.3",
87
- "cli-progress": "^3.12.0",
88
- "commander": "^12.1.0",
89
- "execa": "^5.1.1",
90
- "fast-glob": "^3.3.3",
91
- "fs-extra": "^11.3.2",
92
- "glob": "^10.4.4",
93
- "handlebars": "^4.7.8",
94
- "inquirer": "^8.2.6",
95
- "js-yaml": "^4.1.0",
96
- "ora": "^5.4.1",
97
- "picocolors": "^1.1.1",
98
- "proper-lockfile": "^4.1.2",
99
- "semver": "^7.7.2",
100
- "validator": "^13.15.15"
101
- },
102
- "keywords": [
103
- "ai",
104
- "grimoire",
105
- "agile",
106
- "agents",
107
- "orchestrator",
108
- "fullstack",
109
- "development",
110
- "cli",
111
- "cross-platform",
112
- "interactive",
113
- "wizard",
114
- "modern-ux",
115
- "vite-style",
116
- "automation"
117
- ],
118
- "author": "Grimoire Team",
119
- "license": "MIT",
120
- "engines": {
121
- "node": ">=18.0.0",
122
- "npm": ">=9.0.0"
123
- },
124
- "devDependencies": {
125
- "@semantic-release/changelog": "^6.0.3",
126
- "@semantic-release/git": "^10.0.1",
127
- "@types/jest": "^30.0.0",
128
- "@typescript-eslint/eslint-plugin": "^8.46.2",
129
- "@typescript-eslint/parser": "^8.46.2",
130
- "conventional-changelog-conventionalcommits": "^9.1.0",
131
- "eslint": "^9.38.0",
132
- "husky": "^9.1.7",
133
- "jest": "^30.2.0",
134
- "lint-staged": "^16.1.1",
135
- "mocha": "^11.7.5",
136
- "prettier": "^3.5.3",
137
- "semantic-release": "^25.0.2",
138
- "typescript": "^5.9.3",
139
- "yaml-lint": "^1.7.0"
140
- },
141
- "lint-staged": {
142
- "*.{js,mjs,cjs,ts}": [
143
- "eslint --fix --cache --cache-location .eslintcache",
144
- "prettier --write"
145
- ],
146
- "*.md": [
147
- "prettier --write",
148
- "node scripts/semantic-lint.js --staged"
149
- ],
150
- ".grimoire/development/agents/*.md": [
151
- "npm run sync:ide"
152
- ]
153
- },
154
- "overrides": {
155
- "tar": "^7.5.7",
156
- "diff": "^8.0.3"
157
- }
158
- }
1
+ {
2
+ "name": "grimoire-framework",
3
+ "version": "1.0.4",
4
+ "description": "Grimoire: AI-Orchestrated System for Full Stack Development - Core Framework",
5
+ "publishConfig": {
6
+ "access": "public"
7
+ },
8
+ "repository": {
9
+ "type": "git",
10
+ "url": "git+https://github.com/gabrielrlima/grimoire.git"
11
+ },
12
+ "bugs": {
13
+ "url": "https://github.com/gabrielrlima/grimoire/issues"
14
+ },
15
+ "homepage": "https://github.com/gabrielrlima/grimoire#readme",
16
+ "bin": {
17
+ "grimoire-framework": "bin/grimoire.js",
18
+ "grimoire": "bin/grimoire-cli.js",
19
+ "grimoire-core": "bin/grimoire.js",
20
+ "grimoire-minimal": "bin/grimoire-minimal.js"
21
+ },
22
+ "preferGlobal": false,
23
+ "workspaces": [
24
+ "packages/*"
25
+ ],
26
+ "files": [
27
+ "bin/",
28
+ "scripts/",
29
+ "packages/",
30
+ ".grimoire/",
31
+ ".claude/CLAUDE.md",
32
+ ".claude/rules/",
33
+ ".claude/hooks/",
34
+ "pro/license/",
35
+ "README.md",
36
+ "LICENSE"
37
+ ],
38
+ "scripts": {
39
+ "format": "prettier --write \"**/*.md\"",
40
+ "test": "jest",
41
+ "test:watch": "jest --watch",
42
+ "test:coverage": "jest --coverage",
43
+ "test:health-check": "mocha tests/health-check/**/*.test.js --timeout 30000",
44
+ "lint": "eslint . --cache --cache-location .eslintcache",
45
+ "typecheck": "tsc --noEmit",
46
+ "release": "semantic-release",
47
+ "release:test": "semantic-release --dry-run --no-ci || echo 'Config test complete - authentication errors are expected locally'",
48
+ "generate:manifest": "node scripts/generate-install-manifest.js",
49
+ "validate:manifest": "node scripts/validate-manifest.js",
50
+ "validate:structure": "node .grimoire/infrastructure/scripts/source-tree-guardian/index.js",
51
+ "validate:agents": "node .grimoire/infrastructure/scripts/validate-agents.js",
52
+ "sync:ide": "node .grimoire/infrastructure/scripts/ide-sync/index.js sync",
53
+ "sync:ide:validate": "node .grimoire/infrastructure/scripts/ide-sync/index.js validate",
54
+ "sync:ide:check": "node .grimoire/infrastructure/scripts/ide-sync/index.js validate --strict",
55
+ "sync:ide:claude": "node .grimoire/infrastructure/scripts/ide-sync/index.js sync --ide claude-code",
56
+ "sync:ide:codex": "node .grimoire/infrastructure/scripts/ide-sync/index.js sync --ide codex",
57
+ "sync:ide:gemini": "node .grimoire/infrastructure/scripts/ide-sync/index.js sync --ide gemini",
58
+ "sync:ide:github-copilot": "node .grimoire/infrastructure/scripts/ide-sync/index.js sync --ide github-copilot",
59
+ "sync:ide:antigravity": "node .grimoire/infrastructure/scripts/ide-sync/index.js sync --ide antigravity",
60
+ "validate:claude-sync": "node .grimoire/infrastructure/scripts/ide-sync/index.js validate --ide claude-code --strict",
61
+ "validate:claude-integration": "node .grimoire/infrastructure/scripts/validate-claude-integration.js",
62
+ "validate:codex-sync": "node .grimoire/infrastructure/scripts/ide-sync/index.js validate --ide codex --strict",
63
+ "validate:codex-integration": "node .grimoire/infrastructure/scripts/validate-codex-integration.js",
64
+ "validate:gemini-sync": "node .grimoire/infrastructure/scripts/ide-sync/index.js validate --ide gemini --strict",
65
+ "validate:github-copilot-sync": "node .grimoire/infrastructure/scripts/ide-sync/index.js validate --ide github-copilot --strict",
66
+ "validate:antigravity-sync": "node .grimoire/infrastructure/scripts/ide-sync/index.js validate --ide antigravity --strict",
67
+ "validate:gemini-integration": "node .grimoire/infrastructure/scripts/validate-gemini-integration.js",
68
+ "sync:skills:codex": "node .grimoire/infrastructure/scripts/codex-skills-sync/index.js",
69
+ "sync:skills:codex:global": "node .grimoire/infrastructure/scripts/codex-skills-sync/index.js --global --global-only",
70
+ "validate:codex-skills": "node .grimoire/infrastructure/scripts/codex-skills-sync/validate.js --strict",
71
+ "validate:paths": "node .grimoire/infrastructure/scripts/validate-paths.js",
72
+ "validate:parity": "node .grimoire/infrastructure/scripts/validate-parity.js",
73
+ "validate:semantic-lint": "node scripts/semantic-lint.js",
74
+ "manifest:ensure": "node scripts/ensure-manifest.js",
75
+ "sync:ide:cursor": "node .grimoire/infrastructure/scripts/ide-sync/index.js sync --ide cursor",
76
+ "prepublishOnly": "npm run generate:manifest && npm run validate:manifest",
77
+ "prepare": "husky"
78
+ },
79
+ "dependencies": {
80
+ "@clack/prompts": "^0.11.0",
81
+ "@kayvan/markdown-tree-parser": "^1.5.0",
82
+ "ajv": "^8.17.1",
83
+ "ajv-formats": "^3.0.1",
84
+ "ansi-to-html": "^0.7.2",
85
+ "chalk": "^4.1.2",
86
+ "chokidar": "^3.5.3",
87
+ "cli-progress": "^3.12.0",
88
+ "commander": "^12.1.0",
89
+ "execa": "^5.1.1",
90
+ "fast-glob": "^3.3.3",
91
+ "fs-extra": "^11.3.2",
92
+ "glob": "^10.4.4",
93
+ "handlebars": "^4.7.8",
94
+ "inquirer": "^8.2.6",
95
+ "js-yaml": "^4.1.0",
96
+ "ora": "^5.4.1",
97
+ "picocolors": "^1.1.1",
98
+ "proper-lockfile": "^4.1.2",
99
+ "semver": "^7.7.2",
100
+ "validator": "^13.15.15"
101
+ },
102
+ "keywords": [
103
+ "ai",
104
+ "grimoire",
105
+ "agile",
106
+ "agents",
107
+ "orchestrator",
108
+ "fullstack",
109
+ "development",
110
+ "cli",
111
+ "cross-platform",
112
+ "interactive",
113
+ "wizard",
114
+ "modern-ux",
115
+ "vite-style",
116
+ "automation"
117
+ ],
118
+ "author": "Grimoire Team",
119
+ "license": "MIT",
120
+ "engines": {
121
+ "node": ">=18.0.0",
122
+ "npm": ">=9.0.0"
123
+ },
124
+ "devDependencies": {
125
+ "@semantic-release/changelog": "^6.0.3",
126
+ "@semantic-release/git": "^10.0.1",
127
+ "@types/jest": "^30.0.0",
128
+ "@typescript-eslint/eslint-plugin": "^8.46.2",
129
+ "@typescript-eslint/parser": "^8.46.2",
130
+ "conventional-changelog-conventionalcommits": "^9.1.0",
131
+ "eslint": "^9.38.0",
132
+ "husky": "^9.1.7",
133
+ "jest": "^30.2.0",
134
+ "lint-staged": "^16.1.1",
135
+ "mocha": "^11.7.5",
136
+ "prettier": "^3.5.3",
137
+ "semantic-release": "^25.0.2",
138
+ "typescript": "^5.9.3",
139
+ "yaml-lint": "^1.7.0"
140
+ },
141
+ "lint-staged": {
142
+ "*.{js,mjs,cjs,ts}": [
143
+ "eslint --fix --cache --cache-location .eslintcache",
144
+ "prettier --write"
145
+ ],
146
+ "*.md": [
147
+ "prettier --write",
148
+ "node scripts/semantic-lint.js --staged"
149
+ ],
150
+ ".grimoire/development/agents/*.md": [
151
+ "npm run sync:ide"
152
+ ]
153
+ },
154
+ "overrides": {
155
+ "tar": "^7.5.7",
156
+ "diff": "^8.0.3"
157
+ }
158
+ }
@@ -47,5 +47,5 @@ async function main() {
47
47
  }
48
48
 
49
49
  main().catch(console.error);
50
-
51
-
50
+
51
+
@@ -4,4 +4,4 @@
4
4
  const { runAgentLauncher } = require('./lib/agent-launcher');
5
5
 
6
6
  process.exitCode = runAgentLauncher('grimoire-master');
7
-
7
+
@@ -64,5 +64,5 @@ async function main() {
64
64
  }
65
65
 
66
66
  main().catch(console.error);
67
-
68
-
67
+
68
+
@@ -31,5 +31,5 @@ async function main() {
31
31
  }
32
32
 
33
33
  main();
34
-
35
-
34
+
35
+