@agentic15.com/agentic15-claude-zen 1.0.0 → 1.0.1
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/CHANGELOG.md +15 -0
- package/LICENSE +1 -1
- package/README.md +6 -4
- package/bin/create-agentic15-claude-zen.js +1 -1
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/src/core/DependencyInstaller.js +1 -1
- package/src/core/GitInitializer.js +1 -1
- package/src/core/HookInstaller.js +1 -1
- package/src/core/ProjectInitializer.js +1 -1
- package/src/core/TemplateManager.js +1 -1
- package/src/index.js +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,21 @@ All notable changes to this project will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
Copyright 2024-2025 agentic15.com
|
|
9
|
+
|
|
10
|
+
## [1.0.1] - 2025-12-24
|
|
11
|
+
|
|
12
|
+
### Changed
|
|
13
|
+
- Updated package name to @agentic15.com/agentic15-claude-zen
|
|
14
|
+
- Updated bin command to agentic15-claude-zen
|
|
15
|
+
- Removed obfuscation, now using standard minification with sourcemaps
|
|
16
|
+
- Updated all copyright references from "Agentic15" to "agentic15.com"
|
|
17
|
+
- Added complete package documentation (README.md, CHANGELOG.md, LICENSE)
|
|
18
|
+
- Added npm package link to README
|
|
19
|
+
|
|
20
|
+
### Fixed
|
|
21
|
+
- Package now includes README.md, LICENSE, and CHANGELOG.md files
|
|
22
|
+
|
|
8
23
|
## [1.0.0] - 2025-12-24
|
|
9
24
|
|
|
10
25
|
### Added
|
package/LICENSE
CHANGED
|
@@ -186,7 +186,7 @@
|
|
|
186
186
|
same "printed page" as the copyright notice for easier
|
|
187
187
|
identification within third-party archives.
|
|
188
188
|
|
|
189
|
-
Copyright 2024-2025
|
|
189
|
+
Copyright 2024-2025 agentic15.com
|
|
190
190
|
|
|
191
191
|
Licensed under the Apache License, Version 2.0 (the "License");
|
|
192
192
|
you may not use this file except in compliance with the License.
|
package/README.md
CHANGED
|
@@ -20,6 +20,8 @@ A comprehensive development framework that transforms Claude Code into a discipl
|
|
|
20
20
|
|
|
21
21
|
## 🚀 Quick Start
|
|
22
22
|
|
|
23
|
+
Install from [npm](https://www.npmjs.com/package/@agentic15.com/agentic15-claude-zen):
|
|
24
|
+
|
|
23
25
|
```bash
|
|
24
26
|
# Create a new project
|
|
25
27
|
npx @agentic15.com/agentic15-claude-zen my-project
|
|
@@ -173,7 +175,7 @@ See [SECURITY.md](https://github.com/agentic15/claude-zen/blob/main/SECURITY.md)
|
|
|
173
175
|
|
|
174
176
|
## 📄 License
|
|
175
177
|
|
|
176
|
-
Copyright 2024-2025
|
|
178
|
+
Copyright 2024-2025 agentic15.com
|
|
177
179
|
|
|
178
180
|
Licensed under the Apache License, Version 2.0 (the "License");
|
|
179
181
|
you may not use this file except in compliance with the License.
|
|
@@ -189,9 +191,9 @@ limitations under the License.
|
|
|
189
191
|
|
|
190
192
|
See [LICENSE](https://github.com/agentic15/claude-zen/blob/main/LICENSE) for full text.
|
|
191
193
|
|
|
192
|
-
## 🏢 About
|
|
194
|
+
## 🏢 About agentic15.com
|
|
193
195
|
|
|
194
|
-
**
|
|
196
|
+
**agentic15.com** is a software development company specializing in AI-assisted development tools and frameworks.
|
|
195
197
|
|
|
196
198
|
- **Website**: https://agentic15.com
|
|
197
199
|
- **Documentation**: https://docs.agentic15.com
|
|
@@ -201,4 +203,4 @@ See [LICENSE](https://github.com/agentic15/claude-zen/blob/main/LICENSE) for ful
|
|
|
201
203
|
|
|
202
204
|
---
|
|
203
205
|
|
|
204
|
-
**"Code with Intelligence, Ship with Confidence"** -
|
|
206
|
+
**"Code with Intelligence, Ship with Confidence"** - agentic15.com
|
package/dist/index.js.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/core/ProjectInitializer.js", "../src/core/TemplateManager.js", "../src/core/HookInstaller.js", "../src/core/DependencyInstaller.js", "../src/core/GitInitializer.js", "../src/index.js"],
|
|
4
|
-
"sourcesContent": ["/**\n * Copyright 2024-2025 Agentic15\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n/**\n * ProjectInitializer - Orchestrates project setup\n *\n * Single Responsibility: Coordinate the initialization process\n */\nexport class ProjectInitializer {\n /**\n * @param {TemplateManager} templateManager - Manages template copying\n * @param {HookInstaller} hookInstaller - Installs git hooks\n * @param {DependencyInstaller} dependencyInstaller - Installs npm dependencies\n * @param {GitInitializer} gitInitializer - Initializes git repository\n */\n constructor(templateManager, hookInstaller, dependencyInstaller, gitInitializer) {\n this.templateManager = templateManager;\n this.hookInstaller = hookInstaller;\n this.dependencyInstaller = dependencyInstaller;\n this.gitInitializer = gitInitializer;\n }\n\n /**\n * Initialize a new project with Agentic15 Claude Zen framework\n *\n * @param {string} projectName - Name of the project\n * @param {string} targetDir - Target directory path\n * @param {Object} options - Configuration options\n * @param {boolean} options.initGit - Initialize git repository\n * @param {boolean} options.installDeps - Install npm dependencies\n */\n async initialize(projectName, targetDir, options = {}) {\n const { initGit = true, installDeps = true } = options;\n\n console.log('\\n' + '\u2550'.repeat(70));\n console.log('\uD83D\uDE80 Agentic15 Claude Zen - Project Initialization');\n console.log(' \"Code with Intelligence, Ship with Confidence\"');\n console.log('\u2550'.repeat(70) + '\\n');\n\n // Step 1: Copy templates\n await this.templateManager.copyTemplates(projectName, targetDir);\n\n // Step 2: Extract bundled scripts and hooks\n await this.templateManager.extractBundledFiles(targetDir);\n\n // Step 3: Initialize git repository\n if (initGit) {\n await this.gitInitializer.initialize(targetDir);\n }\n\n // Step 4: Install dependencies\n if (installDeps) {\n await this.dependencyInstaller.install(targetDir);\n }\n\n // Step 5: Setup git hooks\n if (initGit) {\n await this.hookInstaller.install(targetDir);\n }\n\n // Step 6: Display onboarding instructions\n this.displayOnboarding();\n }\n\n /**\n * Display critical onboarding instructions\n */\n displayOnboarding() {\n console.log('\\n' + '\u2550'.repeat(70));\n console.log('\uD83C\uDFAF CRITICAL: NEXT STEP FOR CLAUDE CODE');\n console.log('\u2550'.repeat(70));\n console.log('\\n\uD83D\uDCD6 READ THIS FILE: .claude/POST-INSTALL.md');\n console.log('\\n This file contains the COMPLETE 6-step setup workflow.');\n console.log(' Single clear path - no confusion or multiple options.\\n');\n console.log('\uD83D\uDE80 QUICK START (6 steps):');\n console.log(' 1. npm run plan:generate \"description\"');\n console.log(' 2. Claude creates PROJECT-PLAN.json');\n console.log(' 3. echo \"plan-001-generated\" > .claude/ACTIVE-PLAN');\n console.log(' 4. npm run plan:init');\n console.log(' 5. npm run task:start TASK-001');\n console.log(' 6. Work on task (9-step workflow in POST-INSTALL.md)');\n console.log('\\n\uD83D\uDCC2 Your Workspace:');\n console.log(' ./Agent/ - Edit your source code here');\n console.log(' ./scripts/ - Edit your scripts here');\n console.log(' ./.claude/ - Framework files (DO NOT EDIT)');\n console.log('\\n\u26A0\uFE0F Work on main branch only - NO feature branches');\n console.log('\u26A0\uFE0F Hooks enforce rules - violations will be BLOCKED');\n console.log('\\n' + '\u2550'.repeat(70));\n console.log('\u2705 Setup complete! Read .claude/POST-INSTALL.md to continue.');\n console.log('\u2550'.repeat(70) + '\\n');\n }\n}\n", "/**\n * Copyright 2024-2025 Agentic15\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { mkdirSync, cpSync, readFileSync, writeFileSync, existsSync } from 'fs';\nimport { join, dirname } from 'path';\nimport { fileURLToPath } from 'url';\n\nconst __filename = fileURLToPath(import.meta.url);\nconst __dirname = dirname(__filename);\n\n/**\n * TemplateManager - Manages template copying and customization\n *\n * Single Responsibility: Copy and customize project templates\n */\nexport class TemplateManager {\n constructor() {\n this.templatesDir = join(__dirname, '..', 'templates');\n this.distDir = join(__dirname, '.');\n }\n\n /**\n * Copy all templates to target directory\n *\n * @param {string} projectName - Name of the project\n * @param {string} targetDir - Target directory path\n */\n async copyTemplates(projectName, targetDir) {\n console.log('\uD83D\uDCE6 Creating project directory...');\n mkdirSync(targetDir, { recursive: true });\n\n console.log('\uD83D\uDCCB Copying framework templates...');\n\n // Copy .claude directory structure\n this.copyDirectory('.claude', targetDir);\n\n // Copy and customize package.json\n this.copyAndCustomize('package.json', targetDir, projectName);\n\n // Copy and customize README.md\n this.copyAndCustomize('README.md', targetDir, projectName);\n\n // Copy .gitignore (npm may rename it)\n this.copyGitignore(targetDir);\n\n // Copy test-site\n this.copyDirectory('test-site', targetDir);\n\n // Copy Agent directory\n this.copyDirectory('Agent', targetDir);\n\n // Copy scripts directory\n this.copyDirectory('scripts', targetDir);\n\n // Copy Jest configuration files\n this.copySingleFile('jest.config.js', targetDir);\n this.copySingleFile('jest.setup.js', targetDir);\n this.copySingleFile('.babelrc', targetDir);\n\n // Copy __mocks__ directory\n this.copyDirectory('__mocks__', targetDir);\n\n console.log('\u2705 Framework structure created');\n console.log('\u2705 Templates copied');\n console.log('\u2705 Configuration files generated');\n }\n\n /**\n * Extract bundled scripts and hooks to node_modules\n *\n * @param {string} targetDir - Target directory path\n */\n async extractBundledFiles(targetDir) {\n const bundleDir = join(targetDir, 'node_modules', '.agentic15-claude-zen');\n console.log('\\n\uD83D\uDCE6 Setting up bundled scripts and hooks...');\n mkdirSync(bundleDir, { recursive: true });\n\n // Copy bundled scripts\n console.log(' \u251C\u2500 scripts/');\n const bundledScriptsDir = join(this.distDir, 'scripts');\n cpSync(bundledScriptsDir, join(bundleDir, 'scripts'), { recursive: true });\n\n // Copy bundled hooks\n console.log(' \u2514\u2500 hooks/');\n const bundledHooksDir = join(this.distDir, 'hooks');\n cpSync(bundledHooksDir, join(bundleDir, 'hooks'), { recursive: true });\n\n console.log('\u2705 Bundled files extracted');\n }\n\n /**\n * Copy a directory from templates to target\n *\n * @param {string} dirName - Directory name\n * @param {string} targetDir - Target directory path\n */\n copyDirectory(dirName, targetDir) {\n console.log(` \u251C\u2500 ${dirName}/`);\n cpSync(\n join(this.templatesDir, dirName),\n join(targetDir, dirName),\n { recursive: true }\n );\n }\n\n /**\n * Copy a single file from templates to target\n *\n * @param {string} fileName - File name\n * @param {string} targetDir - Target directory path\n */\n copySingleFile(fileName, targetDir) {\n console.log(` \u251C\u2500 ${fileName}`);\n cpSync(\n join(this.templatesDir, fileName),\n join(targetDir, fileName)\n );\n }\n\n /**\n * Copy and customize a file with project name replacement\n *\n * @param {string} fileName - File name\n * @param {string} targetDir - Target directory path\n * @param {string} projectName - Project name for replacement\n */\n copyAndCustomize(fileName, targetDir, projectName) {\n console.log(` \u251C\u2500 ${fileName}`);\n const template = readFileSync(join(this.templatesDir, fileName), 'utf8');\n const customized = template.replace(/\\{\\{PROJECT_NAME\\}\\}/g, projectName);\n writeFileSync(join(targetDir, fileName), customized);\n }\n\n /**\n * Copy .gitignore file (handles npm renaming issue)\n *\n * @param {string} targetDir - Target directory path\n */\n copyGitignore(targetDir) {\n console.log(' \u251C\u2500 .gitignore');\n const gitignoreSource = existsSync(join(this.templatesDir, '.gitignore'))\n ? join(this.templatesDir, '.gitignore')\n : join(this.templatesDir, '.npmignore');\n cpSync(gitignoreSource, join(targetDir, '.gitignore'));\n }\n}\n", "/**\n * Copyright 2024-2025 Agentic15\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { writeFileSync } from 'fs';\nimport { join } from 'path';\n\n/**\n * HookInstaller - Installs git hooks\n *\n * Single Responsibility: Setup git hooks in project\n */\nexport class HookInstaller {\n /**\n * Install git hooks\n *\n * @param {string} targetDir - Target directory path\n */\n async install(targetDir) {\n console.log('\\n\uD83D\uDD17 Setting up Git hooks...');\n try {\n const gitHooksDir = join(targetDir, '.git', 'hooks');\n\n // Create pre-commit hook (reminder that hooks run via Claude Code)\n const preCommitHook = `#!/bin/sh\n# agentic15-claude-zen pre-commit hook\n# This hook is CRITICAL for enforcement\n\necho \"\u26A0\uFE0F agentic15-claude-zen git hooks are NOT yet active\"\necho \" Hooks run via Claude Code settings.json, not git hooks\"\necho \" This is just a reminder\"\nexit 0\n`;\n\n writeFileSync(join(gitHooksDir, 'pre-commit'), preCommitHook, { mode: 0o755 });\n console.log('\u2705 Git hooks configured');\n } catch (error) {\n console.log('\u26A0\uFE0F Warning: Git hooks setup failed');\n console.log(` Error: ${error.message}`);\n }\n }\n}\n", "/**\n * Copyright 2024-2025 Agentic15\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { execSync } from 'child_process';\n\n/**\n * DependencyInstaller - Installs npm dependencies\n *\n * Single Responsibility: Install project dependencies\n */\nexport class DependencyInstaller {\n /**\n * Install npm dependencies\n *\n * @param {string} targetDir - Target directory path\n */\n async install(targetDir) {\n console.log('\\n\uD83D\uDCE6 Installing dependencies...');\n console.log(' This may take a minute...');\n try {\n execSync('npm install', { cwd: targetDir, stdio: 'inherit' });\n console.log('\u2705 Dependencies installed');\n } catch (error) {\n console.log('\u26A0\uFE0F Warning: npm install failed');\n console.log(' You can install manually with: npm install');\n }\n }\n}\n", "/**\n * Copyright 2024-2025 Agentic15\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { execSync } from 'child_process';\n\n/**\n * GitInitializer - Initializes git repository\n *\n * Single Responsibility: Initialize and configure git\n */\nexport class GitInitializer {\n /**\n * Initialize git repository\n *\n * @param {string} targetDir - Target directory path\n */\n async initialize(targetDir) {\n console.log('\\n\uD83D\uDD27 Initializing git repository...');\n try {\n execSync('git init', { cwd: targetDir, stdio: 'ignore' });\n execSync('git add .', { cwd: targetDir, stdio: 'ignore' });\n execSync('git commit -m \"Initial commit: Agentic15 Claude Zen framework\"', {\n cwd: targetDir,\n stdio: 'ignore'\n });\n console.log('\u2705 Git repository initialized');\n } catch (error) {\n console.log('\u26A0\uFE0F Warning: Git initialization failed');\n console.log(' You can initialize manually with: git init');\n }\n }\n}\n", "/**\n * Copyright 2024-2025 Agentic15\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n/**\n * Agentic15 Claude Zen - Main Entry Point\n *\n * Structured AI-assisted development framework for Claude Code\n * with enforced quality standards\n */\n\nimport { ProjectInitializer } from './core/ProjectInitializer.js';\nimport { TemplateManager } from './core/TemplateManager.js';\nimport { HookInstaller } from './core/HookInstaller.js';\nimport { DependencyInstaller } from './core/DependencyInstaller.js';\nimport { GitInitializer } from './core/GitInitializer.js';\n\n/**\n * Initialize a new project with Agentic15 Claude Zen framework\n *\n * @param {string} projectName - Name of the project\n * @param {string} targetDir - Target directory path\n * @param {Object} options - Configuration options\n * @param {boolean} options.initGit - Initialize git repository (default: true)\n * @param {boolean} options.installDeps - Install npm dependencies (default: true)\n */\nexport async function initializeProject(projectName, targetDir, options = {}) {\n // Dependency Injection: Create all dependencies\n const templateManager = new TemplateManager();\n const hookInstaller = new HookInstaller();\n const dependencyInstaller = new DependencyInstaller();\n const gitInitializer = new GitInitializer();\n\n // Create orchestrator with injected dependencies\n const projectInitializer = new ProjectInitializer(\n templateManager,\n hookInstaller,\n dependencyInstaller,\n gitInitializer\n );\n\n // Execute initialization\n await projectInitializer.initialize(projectName, targetDir, options);\n}\n"],
|
|
4
|
+
"sourcesContent": ["/**\n * Copyright 2024-2025 agentic15.com\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n/**\n * ProjectInitializer - Orchestrates project setup\n *\n * Single Responsibility: Coordinate the initialization process\n */\nexport class ProjectInitializer {\n /**\n * @param {TemplateManager} templateManager - Manages template copying\n * @param {HookInstaller} hookInstaller - Installs git hooks\n * @param {DependencyInstaller} dependencyInstaller - Installs npm dependencies\n * @param {GitInitializer} gitInitializer - Initializes git repository\n */\n constructor(templateManager, hookInstaller, dependencyInstaller, gitInitializer) {\n this.templateManager = templateManager;\n this.hookInstaller = hookInstaller;\n this.dependencyInstaller = dependencyInstaller;\n this.gitInitializer = gitInitializer;\n }\n\n /**\n * Initialize a new project with Agentic15 Claude Zen framework\n *\n * @param {string} projectName - Name of the project\n * @param {string} targetDir - Target directory path\n * @param {Object} options - Configuration options\n * @param {boolean} options.initGit - Initialize git repository\n * @param {boolean} options.installDeps - Install npm dependencies\n */\n async initialize(projectName, targetDir, options = {}) {\n const { initGit = true, installDeps = true } = options;\n\n console.log('\\n' + '\u2550'.repeat(70));\n console.log('\uD83D\uDE80 Agentic15 Claude Zen - Project Initialization');\n console.log(' \"Code with Intelligence, Ship with Confidence\"');\n console.log('\u2550'.repeat(70) + '\\n');\n\n // Step 1: Copy templates\n await this.templateManager.copyTemplates(projectName, targetDir);\n\n // Step 2: Extract bundled scripts and hooks\n await this.templateManager.extractBundledFiles(targetDir);\n\n // Step 3: Initialize git repository\n if (initGit) {\n await this.gitInitializer.initialize(targetDir);\n }\n\n // Step 4: Install dependencies\n if (installDeps) {\n await this.dependencyInstaller.install(targetDir);\n }\n\n // Step 5: Setup git hooks\n if (initGit) {\n await this.hookInstaller.install(targetDir);\n }\n\n // Step 6: Display onboarding instructions\n this.displayOnboarding();\n }\n\n /**\n * Display critical onboarding instructions\n */\n displayOnboarding() {\n console.log('\\n' + '\u2550'.repeat(70));\n console.log('\uD83C\uDFAF CRITICAL: NEXT STEP FOR CLAUDE CODE');\n console.log('\u2550'.repeat(70));\n console.log('\\n\uD83D\uDCD6 READ THIS FILE: .claude/POST-INSTALL.md');\n console.log('\\n This file contains the COMPLETE 6-step setup workflow.');\n console.log(' Single clear path - no confusion or multiple options.\\n');\n console.log('\uD83D\uDE80 QUICK START (6 steps):');\n console.log(' 1. npm run plan:generate \"description\"');\n console.log(' 2. Claude creates PROJECT-PLAN.json');\n console.log(' 3. echo \"plan-001-generated\" > .claude/ACTIVE-PLAN');\n console.log(' 4. npm run plan:init');\n console.log(' 5. npm run task:start TASK-001');\n console.log(' 6. Work on task (9-step workflow in POST-INSTALL.md)');\n console.log('\\n\uD83D\uDCC2 Your Workspace:');\n console.log(' ./Agent/ - Edit your source code here');\n console.log(' ./scripts/ - Edit your scripts here');\n console.log(' ./.claude/ - Framework files (DO NOT EDIT)');\n console.log('\\n\u26A0\uFE0F Work on main branch only - NO feature branches');\n console.log('\u26A0\uFE0F Hooks enforce rules - violations will be BLOCKED');\n console.log('\\n' + '\u2550'.repeat(70));\n console.log('\u2705 Setup complete! Read .claude/POST-INSTALL.md to continue.');\n console.log('\u2550'.repeat(70) + '\\n');\n }\n}\n", "/**\n * Copyright 2024-2025 agentic15.com\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { mkdirSync, cpSync, readFileSync, writeFileSync, existsSync } from 'fs';\nimport { join, dirname } from 'path';\nimport { fileURLToPath } from 'url';\n\nconst __filename = fileURLToPath(import.meta.url);\nconst __dirname = dirname(__filename);\n\n/**\n * TemplateManager - Manages template copying and customization\n *\n * Single Responsibility: Copy and customize project templates\n */\nexport class TemplateManager {\n constructor() {\n this.templatesDir = join(__dirname, '..', 'templates');\n this.distDir = join(__dirname, '.');\n }\n\n /**\n * Copy all templates to target directory\n *\n * @param {string} projectName - Name of the project\n * @param {string} targetDir - Target directory path\n */\n async copyTemplates(projectName, targetDir) {\n console.log('\uD83D\uDCE6 Creating project directory...');\n mkdirSync(targetDir, { recursive: true });\n\n console.log('\uD83D\uDCCB Copying framework templates...');\n\n // Copy .claude directory structure\n this.copyDirectory('.claude', targetDir);\n\n // Copy and customize package.json\n this.copyAndCustomize('package.json', targetDir, projectName);\n\n // Copy and customize README.md\n this.copyAndCustomize('README.md', targetDir, projectName);\n\n // Copy .gitignore (npm may rename it)\n this.copyGitignore(targetDir);\n\n // Copy test-site\n this.copyDirectory('test-site', targetDir);\n\n // Copy Agent directory\n this.copyDirectory('Agent', targetDir);\n\n // Copy scripts directory\n this.copyDirectory('scripts', targetDir);\n\n // Copy Jest configuration files\n this.copySingleFile('jest.config.js', targetDir);\n this.copySingleFile('jest.setup.js', targetDir);\n this.copySingleFile('.babelrc', targetDir);\n\n // Copy __mocks__ directory\n this.copyDirectory('__mocks__', targetDir);\n\n console.log('\u2705 Framework structure created');\n console.log('\u2705 Templates copied');\n console.log('\u2705 Configuration files generated');\n }\n\n /**\n * Extract bundled scripts and hooks to node_modules\n *\n * @param {string} targetDir - Target directory path\n */\n async extractBundledFiles(targetDir) {\n const bundleDir = join(targetDir, 'node_modules', '.agentic15-claude-zen');\n console.log('\\n\uD83D\uDCE6 Setting up bundled scripts and hooks...');\n mkdirSync(bundleDir, { recursive: true });\n\n // Copy bundled scripts\n console.log(' \u251C\u2500 scripts/');\n const bundledScriptsDir = join(this.distDir, 'scripts');\n cpSync(bundledScriptsDir, join(bundleDir, 'scripts'), { recursive: true });\n\n // Copy bundled hooks\n console.log(' \u2514\u2500 hooks/');\n const bundledHooksDir = join(this.distDir, 'hooks');\n cpSync(bundledHooksDir, join(bundleDir, 'hooks'), { recursive: true });\n\n console.log('\u2705 Bundled files extracted');\n }\n\n /**\n * Copy a directory from templates to target\n *\n * @param {string} dirName - Directory name\n * @param {string} targetDir - Target directory path\n */\n copyDirectory(dirName, targetDir) {\n console.log(` \u251C\u2500 ${dirName}/`);\n cpSync(\n join(this.templatesDir, dirName),\n join(targetDir, dirName),\n { recursive: true }\n );\n }\n\n /**\n * Copy a single file from templates to target\n *\n * @param {string} fileName - File name\n * @param {string} targetDir - Target directory path\n */\n copySingleFile(fileName, targetDir) {\n console.log(` \u251C\u2500 ${fileName}`);\n cpSync(\n join(this.templatesDir, fileName),\n join(targetDir, fileName)\n );\n }\n\n /**\n * Copy and customize a file with project name replacement\n *\n * @param {string} fileName - File name\n * @param {string} targetDir - Target directory path\n * @param {string} projectName - Project name for replacement\n */\n copyAndCustomize(fileName, targetDir, projectName) {\n console.log(` \u251C\u2500 ${fileName}`);\n const template = readFileSync(join(this.templatesDir, fileName), 'utf8');\n const customized = template.replace(/\\{\\{PROJECT_NAME\\}\\}/g, projectName);\n writeFileSync(join(targetDir, fileName), customized);\n }\n\n /**\n * Copy .gitignore file (handles npm renaming issue)\n *\n * @param {string} targetDir - Target directory path\n */\n copyGitignore(targetDir) {\n console.log(' \u251C\u2500 .gitignore');\n const gitignoreSource = existsSync(join(this.templatesDir, '.gitignore'))\n ? join(this.templatesDir, '.gitignore')\n : join(this.templatesDir, '.npmignore');\n cpSync(gitignoreSource, join(targetDir, '.gitignore'));\n }\n}\n", "/**\n * Copyright 2024-2025 agentic15.com\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { writeFileSync } from 'fs';\nimport { join } from 'path';\n\n/**\n * HookInstaller - Installs git hooks\n *\n * Single Responsibility: Setup git hooks in project\n */\nexport class HookInstaller {\n /**\n * Install git hooks\n *\n * @param {string} targetDir - Target directory path\n */\n async install(targetDir) {\n console.log('\\n\uD83D\uDD17 Setting up Git hooks...');\n try {\n const gitHooksDir = join(targetDir, '.git', 'hooks');\n\n // Create pre-commit hook (reminder that hooks run via Claude Code)\n const preCommitHook = `#!/bin/sh\n# agentic15-claude-zen pre-commit hook\n# This hook is CRITICAL for enforcement\n\necho \"\u26A0\uFE0F agentic15-claude-zen git hooks are NOT yet active\"\necho \" Hooks run via Claude Code settings.json, not git hooks\"\necho \" This is just a reminder\"\nexit 0\n`;\n\n writeFileSync(join(gitHooksDir, 'pre-commit'), preCommitHook, { mode: 0o755 });\n console.log('\u2705 Git hooks configured');\n } catch (error) {\n console.log('\u26A0\uFE0F Warning: Git hooks setup failed');\n console.log(` Error: ${error.message}`);\n }\n }\n}\n", "/**\n * Copyright 2024-2025 agentic15.com\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { execSync } from 'child_process';\n\n/**\n * DependencyInstaller - Installs npm dependencies\n *\n * Single Responsibility: Install project dependencies\n */\nexport class DependencyInstaller {\n /**\n * Install npm dependencies\n *\n * @param {string} targetDir - Target directory path\n */\n async install(targetDir) {\n console.log('\\n\uD83D\uDCE6 Installing dependencies...');\n console.log(' This may take a minute...');\n try {\n execSync('npm install', { cwd: targetDir, stdio: 'inherit' });\n console.log('\u2705 Dependencies installed');\n } catch (error) {\n console.log('\u26A0\uFE0F Warning: npm install failed');\n console.log(' You can install manually with: npm install');\n }\n }\n}\n", "/**\n * Copyright 2024-2025 agentic15.com\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { execSync } from 'child_process';\n\n/**\n * GitInitializer - Initializes git repository\n *\n * Single Responsibility: Initialize and configure git\n */\nexport class GitInitializer {\n /**\n * Initialize git repository\n *\n * @param {string} targetDir - Target directory path\n */\n async initialize(targetDir) {\n console.log('\\n\uD83D\uDD27 Initializing git repository...');\n try {\n execSync('git init', { cwd: targetDir, stdio: 'ignore' });\n execSync('git add .', { cwd: targetDir, stdio: 'ignore' });\n execSync('git commit -m \"Initial commit: Agentic15 Claude Zen framework\"', {\n cwd: targetDir,\n stdio: 'ignore'\n });\n console.log('\u2705 Git repository initialized');\n } catch (error) {\n console.log('\u26A0\uFE0F Warning: Git initialization failed');\n console.log(' You can initialize manually with: git init');\n }\n }\n}\n", "/**\n * Copyright 2024-2025 agentic15.com\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n/**\n * Agentic15 Claude Zen - Main Entry Point\n *\n * Structured AI-assisted development framework for Claude Code\n * with enforced quality standards\n */\n\nimport { ProjectInitializer } from './core/ProjectInitializer.js';\nimport { TemplateManager } from './core/TemplateManager.js';\nimport { HookInstaller } from './core/HookInstaller.js';\nimport { DependencyInstaller } from './core/DependencyInstaller.js';\nimport { GitInitializer } from './core/GitInitializer.js';\n\n/**\n * Initialize a new project with Agentic15 Claude Zen framework\n *\n * @param {string} projectName - Name of the project\n * @param {string} targetDir - Target directory path\n * @param {Object} options - Configuration options\n * @param {boolean} options.initGit - Initialize git repository (default: true)\n * @param {boolean} options.installDeps - Install npm dependencies (default: true)\n */\nexport async function initializeProject(projectName, targetDir, options = {}) {\n // Dependency Injection: Create all dependencies\n const templateManager = new TemplateManager();\n const hookInstaller = new HookInstaller();\n const dependencyInstaller = new DependencyInstaller();\n const gitInitializer = new GitInitializer();\n\n // Create orchestrator with injected dependencies\n const projectInitializer = new ProjectInitializer(\n templateManager,\n hookInstaller,\n dependencyInstaller,\n gitInitializer\n );\n\n // Execute initialization\n await projectInitializer.initialize(projectName, targetDir, options);\n}\n"],
|
|
5
5
|
"mappings": "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",
|
|
6
6
|
"names": ["ProjectInitializer", "templateManager", "hookInstaller", "dependencyInstaller", "gitInitializer", "projectName", "targetDir", "options", "initGit", "installDeps", "mkdirSync", "cpSync", "readFileSync", "writeFileSync", "existsSync", "join", "dirname", "fileURLToPath", "__filename", "__dirname", "TemplateManager", "projectName", "targetDir", "bundleDir", "bundledScriptsDir", "bundledHooksDir", "dirName", "fileName", "customized", "gitignoreSource", "writeFileSync", "join", "HookInstaller", "targetDir", "gitHooksDir", "error", "execSync", "DependencyInstaller", "targetDir", "execSync", "GitInitializer", "targetDir", "initializeProject", "projectName", "targetDir", "options", "templateManager", "TemplateManager", "hookInstaller", "HookInstaller", "dependencyInstaller", "DependencyInstaller", "gitInitializer", "GitInitializer", "ProjectInitializer"]
|
|
7
7
|
}
|
package/package.json
CHANGED
package/src/index.js
CHANGED