@atlashub/smartstack-cli 1.5.3 → 1.6.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/README.md +30 -9
- package/dist/index.js +14 -3
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/templates/agents/gitflow/status.md +98 -11
- package/templates/commands/gitflow/2-status.md +238 -58
package/README.md
CHANGED
|
@@ -3,7 +3,20 @@
|
|
|
3
3
|
[](https://www.npmjs.com/package/@atlashub/smartstack-cli)
|
|
4
4
|
[](https://opensource.org/licenses/MIT)
|
|
5
5
|
|
|
6
|
-
SmartStack
|
|
6
|
+
**SmartStack** transforms Claude Code into an enterprise-grade development platform. Stop writing boilerplate - start shipping features.
|
|
7
|
+
|
|
8
|
+
> **SmartStack** is your AI-powered co-pilot for .NET development: automated GitFlow, intelligent migrations, business analysis workflows, and battle-tested methodologies - all integrated directly into Claude Code.
|
|
9
|
+
|
|
10
|
+
## Why SmartStack?
|
|
11
|
+
|
|
12
|
+
- **10x Faster Development** - Pre-built workflows eliminate repetitive tasks
|
|
13
|
+
- **Enterprise GitFlow** - Full branch management with EF Core migration safety
|
|
14
|
+
- **Business Analysis Built-in** - From requirements to implementation handoff
|
|
15
|
+
- **Zero Configuration** - Install once, use everywhere
|
|
16
|
+
|
|
17
|
+
**By [AtlasHub](https://www.atlashub.ch)** | [support@atlashub.ch](mailto:support@atlashub.ch)
|
|
18
|
+
|
|
19
|
+
---
|
|
7
20
|
|
|
8
21
|
## Installation
|
|
9
22
|
|
|
@@ -113,20 +126,28 @@ smartstack update
|
|
|
113
126
|
smartstack uninstall
|
|
114
127
|
```
|
|
115
128
|
|
|
116
|
-
## What's New in v1.
|
|
129
|
+
## What's New in v1.5.2
|
|
117
130
|
|
|
118
|
-
- **
|
|
119
|
-
- **
|
|
120
|
-
- **
|
|
121
|
-
- **Prompts System
|
|
122
|
-
- **Quick Search
|
|
131
|
+
- **Azure DevOps Support** - Full GitFlow integration with Azure DevOps PRs and pipelines
|
|
132
|
+
- **npm Auto-Publish** - Automated publishing via Azure Pipelines (@next and @latest tags)
|
|
133
|
+
- **Ralph Loop Integration** - Fully automated BA orchestration with Ralph Loop framework
|
|
134
|
+
- **Prompts System** - Expert prompt creation and optimization tools
|
|
135
|
+
- **Quick Search** - Lightning-fast codebase exploration
|
|
123
136
|
|
|
124
137
|
## Documentation
|
|
125
138
|
|
|
126
|
-
Full documentation
|
|
139
|
+
Full documentation available at:
|
|
127
140
|
- [GitFlow Documentation](.documentation/gitflow.html)
|
|
128
141
|
- [Business Analysis Documentation](.documentation/business-analyse.html)
|
|
129
142
|
|
|
143
|
+
---
|
|
144
|
+
|
|
145
|
+
## About AtlasHub
|
|
146
|
+
|
|
147
|
+
**[AtlasHub](https://www.atlashub.ch)** builds intelligent tools for modern development teams. SmartStack is our flagship CLI toolkit, designed to accelerate .NET and full-stack development with AI-powered automation.
|
|
148
|
+
|
|
149
|
+
**Need help?** Contact us at [support@atlashub.ch](mailto:support@atlashub.ch)
|
|
150
|
+
|
|
130
151
|
## License
|
|
131
152
|
|
|
132
|
-
MIT
|
|
153
|
+
MIT - Free for personal and commercial use.
|
package/dist/index.js
CHANGED
|
@@ -38995,7 +38995,7 @@ var import_child_process = require("child_process");
|
|
|
38995
38995
|
var import_fs_extra = __toESM(require_lib());
|
|
38996
38996
|
var PACKAGE_ROOT = (0, import_path.join)(__dirname, "..");
|
|
38997
38997
|
var TEMPLATES_DIR = (0, import_path.join)(PACKAGE_ROOT, "templates");
|
|
38998
|
-
var INSTALL_DIRS = ["commands", "agents", "hooks"];
|
|
38998
|
+
var INSTALL_DIRS = ["commands", "agents", "hooks", "skills"];
|
|
38999
38999
|
var DEFAULT_PLUGINS = [];
|
|
39000
39000
|
function getClaudeDir(global3) {
|
|
39001
39001
|
if (global3) {
|
|
@@ -39165,7 +39165,8 @@ async function checkInstallation(options = {}) {
|
|
|
39165
39165
|
components: {
|
|
39166
39166
|
commands: { installed: false, count: 0 },
|
|
39167
39167
|
agents: { installed: false, count: 0 },
|
|
39168
|
-
hooks: { installed: false, count: 0 }
|
|
39168
|
+
hooks: { installed: false, count: 0 },
|
|
39169
|
+
skills: { installed: false, count: 0 }
|
|
39169
39170
|
},
|
|
39170
39171
|
gitflow: {
|
|
39171
39172
|
configExists: false,
|
|
@@ -39191,6 +39192,12 @@ async function checkInstallation(options = {}) {
|
|
|
39191
39192
|
result.components.hooks.installed = await import_fs_extra.default.pathExists((0, import_path.join)(hooksDir, "hooks.json"));
|
|
39192
39193
|
result.components.hooks.count = result.components.hooks.installed ? 1 : 0;
|
|
39193
39194
|
}
|
|
39195
|
+
const skillsDir = (0, import_path.join)(claudeDir, "skills");
|
|
39196
|
+
if (await import_fs_extra.default.pathExists(skillsDir)) {
|
|
39197
|
+
const files = await getTemplateFiles(skillsDir);
|
|
39198
|
+
result.components.skills.count = files.filter((f) => f.endsWith(".md")).length;
|
|
39199
|
+
result.components.skills.installed = result.components.skills.count > 0;
|
|
39200
|
+
}
|
|
39194
39201
|
const gitflowDir = (0, import_path.join)(claudeDir, "gitflow");
|
|
39195
39202
|
result.gitflow.configExists = await import_fs_extra.default.pathExists((0, import_path.join)(gitflowDir, "config.json"));
|
|
39196
39203
|
const plansDir = (0, import_path.join)(gitflowDir, "plans");
|
|
@@ -39198,7 +39205,7 @@ async function checkInstallation(options = {}) {
|
|
|
39198
39205
|
const plans = await import_fs_extra.default.readdir(plansDir);
|
|
39199
39206
|
result.gitflow.plansCount = plans.filter((f) => f.endsWith(".md")).length;
|
|
39200
39207
|
}
|
|
39201
|
-
result.installed = result.components.commands.installed || result.components.agents.installed || result.components.hooks.installed;
|
|
39208
|
+
result.installed = result.components.commands.installed || result.components.agents.installed || result.components.hooks.installed || result.components.skills.installed;
|
|
39202
39209
|
return result;
|
|
39203
39210
|
}
|
|
39204
39211
|
async function listInstalledCommands(options = {}) {
|
|
@@ -41886,6 +41893,10 @@ var statusCommand = new Command("status").alias("s").description("Show installat
|
|
|
41886
41893
|
"Hooks",
|
|
41887
41894
|
installation.components.hooks.installed ? source_default.green(`\u2713 Configured`) : source_default.gray("Not installed")
|
|
41888
41895
|
],
|
|
41896
|
+
[
|
|
41897
|
+
"Skills",
|
|
41898
|
+
installation.components.skills.installed ? source_default.green(`\u2713 ${installation.components.skills.count} files`) : source_default.gray("Not installed")
|
|
41899
|
+
],
|
|
41889
41900
|
[""],
|
|
41890
41901
|
[
|
|
41891
41902
|
"GitFlow Config",
|