@altotyler/alto-rootstock-cli 1.0.5 → 1.0.7

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@altotyler/alto-rootstock-cli",
3
- "version": "1.0.5",
3
+ "version": "1.0.7",
4
4
  "description": "CLI for creating and managing Rootstock Salesforce DX projects with AI agent scaffolding",
5
5
  "bin": {
6
6
  "altors": "./bin/altors.js"
@@ -0,0 +1,10 @@
1
+ {
2
+ "mcpServers": {
3
+ "Salesforce DX": {
4
+ "command": "npx",
5
+ "args": ["-y", "@salesforce/mcp@latest",
6
+ "--orgs", "DEFAULT_TARGET_ORG",
7
+ "--toolsets", "orgs,metadata,data,users,testing"]
8
+ }
9
+ }
10
+ }
@@ -0,0 +1,10 @@
1
+ {
2
+ "mcpServers": {
3
+ "Salesforce DX": {
4
+ "command": "npx",
5
+ "args": ["-y", "@salesforce/mcp@latest",
6
+ "--orgs", "DEFAULT_TARGET_ORG",
7
+ "--toolsets", "orgs,metadata,data,users,testing"]
8
+ }
9
+ }
10
+ }
@@ -5,9 +5,6 @@ const path = require('path');
5
5
  const chalk = require('chalk');
6
6
  const { fetchRemoteFile } = require('./fetcher');
7
7
 
8
- const TEMPLATE_DIR = path.join(__dirname, '../../project-template');
9
-
10
- // Maps template-relative paths → local project paths
11
8
  const SCAFFOLD_MANIFEST = [
12
9
  { template: 'claude/CLAUDE.md', local: '.claude/CLAUDE.md' },
13
10
  { template: 'claude/skills/rootstock-core.md', local: '.claude/skills/rootstock-core.md' },
@@ -23,6 +20,8 @@ const SCAFFOLD_MANIFEST = [
23
20
  { template: 'cursor/rules/rootstock.mdc', local: '.cursor/rules/rootstock.mdc' },
24
21
  { template: 'github/agents/Rootstock Agent.agent.md', local: '.github/agents/Rootstock Agent.agent.md' },
25
22
  { template: 'github/copilot-instructions.md', local: '.github/copilot-instructions.md' },
23
+ { template: 'cursor/mcp.json', local: '.cursor/mcp.json' },
24
+ { template: 'claude/settings.json', local: '.claude/settings.json' },
26
25
  { template: 'vscode/mcp.json', local: '.vscode/mcp.json' },
27
26
  { template: 'vscode/tasks.json', local: '.vscode/tasks.json' },
28
27
  ];
@@ -34,19 +33,18 @@ function writeFile(projectRoot, relPath, content) {
34
33
  fs.writeFileSync(full, content, 'utf8');
35
34
  }
36
35
 
37
- // Used by `altors new` — reads from bundled project-template (fast, works offline)
38
36
  async function injectScaffolding(projectRoot) {
39
37
  const results = { ok: [], failed: [] };
40
38
 
41
39
  for (const entry of SCAFFOLD_MANIFEST) {
42
- const src = path.join(TEMPLATE_DIR, entry.template);
43
40
  try {
44
- const content = fs.readFileSync(src, 'utf8');
41
+ process.stdout.write(chalk.dim(` Fetching ${entry.local}...`));
42
+ const content = await fetchRemoteFile(`project-template/${entry.template}`);
45
43
  writeFile(projectRoot, entry.local, content);
46
- console.log(` ${chalk.green('✓')} ${entry.local}`);
44
+ process.stdout.write(`\r${' '.repeat(70)}\r ${chalk.green('✓')} ${entry.local}\n`);
47
45
  results.ok.push(entry.local);
48
46
  } catch (err) {
49
- console.log(` ${chalk.red('✗')} ${entry.local} ${chalk.dim(`(${err.message})`)}`);
47
+ process.stdout.write(`\r${' '.repeat(70)}\r ${chalk.red('✗')} ${entry.local} ${chalk.dim(`(${err.message})`)}\n`);
50
48
  results.failed.push(entry.local);
51
49
  }
52
50
  }