@axiomatic-labs/claudeflow 2.12.66 → 2.12.68
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/lib/install.js +19 -3
- package/package.json +1 -1
package/lib/install.js
CHANGED
|
@@ -12,6 +12,7 @@ const ui = require('./ui.js');
|
|
|
12
12
|
const TEMPLATE_AGENTS = new Set(['claudeflow-explorer', 'claudeflow-planner', 'example-agent']);
|
|
13
13
|
const TEMPLATE_MANAGED_MANIFEST = path.join('.claudeflow', 'config', 'template-managed-manifest.json');
|
|
14
14
|
const CLAUDE_BACKUP_ROOT = '.claudeflow-backups';
|
|
15
|
+
const REQUIRED_TEMPLATE_RULES = ['claudeflow-implementation.md'];
|
|
15
16
|
|
|
16
17
|
async function run() {
|
|
17
18
|
const current = readLocalVersion();
|
|
@@ -159,9 +160,11 @@ async function run() {
|
|
|
159
160
|
// Copy rules
|
|
160
161
|
const srcRules = path.join(srcClaude, 'rules');
|
|
161
162
|
const dstRules = path.join(cwd, '.claude', 'rules');
|
|
162
|
-
if (fs.existsSync(srcRules)) {
|
|
163
|
-
|
|
163
|
+
if (!fs.existsSync(srcRules)) {
|
|
164
|
+
throw new Error('Release asset is missing required .claude/rules directory. Rebuild the release before installing.');
|
|
164
165
|
}
|
|
166
|
+
assertRequiredTemplateRules(srcRules);
|
|
167
|
+
copyDirSync(srcRules, dstRules);
|
|
165
168
|
|
|
166
169
|
// Copy commands
|
|
167
170
|
const srcCommands = path.join(srcClaude, 'commands');
|
|
@@ -724,6 +727,17 @@ function pruneEmptyAncestors(startDir, stopDir) {
|
|
|
724
727
|
}
|
|
725
728
|
}
|
|
726
729
|
|
|
730
|
+
function assertRequiredTemplateRules(rulesDir) {
|
|
731
|
+
for (const filename of REQUIRED_TEMPLATE_RULES) {
|
|
732
|
+
const rulePath = path.join(rulesDir, filename);
|
|
733
|
+
if (!fs.existsSync(rulePath)) {
|
|
734
|
+
throw new Error(
|
|
735
|
+
`Release asset is missing required template rule .claude/rules/${filename}. Rebuild the release before installing.`,
|
|
736
|
+
);
|
|
737
|
+
}
|
|
738
|
+
}
|
|
739
|
+
}
|
|
740
|
+
|
|
727
741
|
// Recursively copy a directory, creating parents as needed
|
|
728
742
|
function copyDirSync(src, dst, skipNames) {
|
|
729
743
|
fs.mkdirSync(dst, { recursive: true });
|
|
@@ -740,4 +754,6 @@ function copyDirSync(src, dst, skipNames) {
|
|
|
740
754
|
}
|
|
741
755
|
}
|
|
742
756
|
|
|
743
|
-
module.exports = run
|
|
757
|
+
module.exports = Object.assign(run, {
|
|
758
|
+
assertRequiredTemplateRules,
|
|
759
|
+
});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@axiomatic-labs/claudeflow",
|
|
3
|
-
"version": "2.12.
|
|
3
|
+
"version": "2.12.68",
|
|
4
4
|
"description": "Claudeflow — AI-powered development toolkit for Claude Code. Skills, agents, hooks, and quality gates that ship production apps.",
|
|
5
5
|
"bin": {
|
|
6
6
|
"claudeflow": "./bin/cli.js"
|