f2g-telco 0.1.2 → 0.1.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.
@@ -168,7 +168,7 @@ function handleInitError(err) {
168
168
  }
169
169
  }
170
170
  async function runInit(options) {
171
- const version = '0.1.1';
171
+ const version = '0.1.3';
172
172
  console.log('');
173
173
  console.log(chalk.cyan.bold(' ███████╗██████╗ ██████╗ '));
174
174
  console.log(chalk.cyan.bold(' ██╔════╝╚════██╗██╔════╝ '));
@@ -346,9 +346,9 @@ async function runInit(options) {
346
346
  Permissions: ${tool === 'crush' ? '38+ tools auto-approved' : 'configured'}
347
347
 
348
348
  Next steps:
349
- f2g-telco doctor Check everything is working
350
- f2g-telco list See what's installed
351
- f2g-telco update Pull latest configs
349
+ npx f2g-telco doctor Check everything is working
350
+ npx f2g-telco list See what's installed
351
+ npx f2g-telco update Pull latest configs
352
352
 
353
353
  Log file: ${getLogPath()}
354
354
  `));
@@ -1,20 +1,66 @@
1
1
  import chalk from 'chalk';
2
- import { loadConfig } from '../utils/config.js';
2
+ import fs from 'fs-extra';
3
+ import path from 'path';
4
+ import os from 'os';
5
+ import { loadConfig, getToolPaths } from '../utils/config.js';
3
6
  import { log } from '../utils/logger.js';
4
7
  export async function statusCommand() {
5
8
  const config = await loadConfig();
6
9
  if (!config) {
7
- log.error('No F2G-Telco config found. Run: f2g-telco init');
10
+ log.error('No F2G-Telco config found. Run: npx f2g-telco init');
8
11
  return;
9
12
  }
13
+ const home = os.homedir();
14
+ const paths = getToolPaths(config.tool);
15
+ // MCP config check
16
+ let mcpCount = 0;
17
+ try {
18
+ if (config.tool === 'crush') {
19
+ const crush = await fs.readJson(paths.mcpConfig);
20
+ mcpCount = Object.keys(crush.mcp || {}).length;
21
+ }
22
+ else {
23
+ const kiro = await fs.readJson(paths.mcpConfig);
24
+ mcpCount = Object.keys(kiro.mcpServers || {}).length;
25
+ }
26
+ }
27
+ catch { /* config unreadable */ }
28
+ // Skills count
29
+ let skillCount = 0;
30
+ try {
31
+ const entries = await fs.readdir(paths.skills);
32
+ skillCount = entries.length;
33
+ }
34
+ catch { /* dir missing */ }
35
+ // Inventory check
36
+ const invExists = await fs.pathExists(config.paths.inventory);
37
+ let invLines = 0;
38
+ if (invExists) {
39
+ const content = await fs.readFile(config.paths.inventory, 'utf-8');
40
+ invLines = content.split('\n').length;
41
+ }
42
+ // Providers from config
43
+ const providers = config.provider ? config.provider.split(',').map(p => p.trim()) : ['unknown'];
10
44
  console.log(`
11
- ${chalk.bold('F2G-Telco')} v${config.version}
45
+ ${chalk.bold.blue('F2G-Telco')} v${config.version}
46
+ ${'─'.repeat(40)}
47
+
48
+ ${chalk.bold('Tool')} ${chalk.cyan(config.tool)}
49
+ ${chalk.bold('Providers')} ${providers.map(p => chalk.cyan(p)).join(', ')}
50
+ ${chalk.bold('MCPs')} ${chalk.green(String(config.installedMcps.length))} configured (${mcpCount} in ${config.tool} config)
51
+ ${chalk.bold('Skills')} ${chalk.green(String(skillCount))} in ${paths.skills}
52
+ ${chalk.bold('Inventory')} ${invExists ? chalk.green(`${invLines} lines`) : chalk.red('missing')}
53
+
54
+ ${chalk.bold('Configured MCPs:')}
55
+ ${config.installedMcps.map(m => ' ' + chalk.dim('• ') + m).join('\n ')}
12
56
 
13
- Tool: ${chalk.cyan(config.tool)}
14
- Provider: ${chalk.cyan(config.provider)}
15
- MCPs: ${chalk.green(String(config.installedMcps.length))} installed
16
- Config: ${chalk.dim(config.paths.config)}
17
- Inventory: ${chalk.dim(config.paths.inventory)}
57
+ ${chalk.bold('Paths:')}
58
+ ${chalk.dim(' Config: ')} ${config.paths.config}
59
+ ${chalk.dim(' Skills: ')} ${paths.skills}
60
+ ${chalk.dim(' Agents: ')} ${paths.agents}
61
+ ${chalk.dim(' MCP file: ')} ${paths.mcpConfig}
62
+ ${chalk.dim(' Inventory: ')} ${config.paths.inventory}
63
+ ${chalk.dim(' Log: ')} ${path.join(home, '.f2g-telco', 'f2g-telco.log')}
18
64
  `);
19
65
  }
20
66
  //# sourceMappingURL=status.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAC;AAEzC,MAAM,CAAC,KAAK,UAAU,aAAa;IACjC,MAAM,MAAM,GAAG,MAAM,UAAU,EAAE,CAAC;IAClC,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,GAAG,CAAC,KAAK,CAAC,gDAAgD,CAAC,CAAC;QAC5D,OAAO;IACT,CAAC;IAED,OAAO,CAAC,GAAG,CAAC;IACV,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,MAAM,CAAC,OAAO;;eAE/B,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;eACvB,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;eAC3B,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;eAChD,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;eAC9B,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC;GAC7C,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"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"}
@@ -1,41 +1,94 @@
1
+ import chalk from 'chalk';
1
2
  import { execSync } from 'child_process';
3
+ import fs from 'fs-extra';
4
+ import path from 'path';
5
+ import os from 'os';
2
6
  import ora from 'ora';
7
+ import { loadConfig, getToolPaths } from '../utils/config.js';
3
8
  import { log } from '../utils/logger.js';
4
- import { loadConfig } from '../utils/config.js';
5
9
  export async function updateCommand() {
6
10
  log.header('F2G-Telco Update');
7
11
  const config = await loadConfig();
8
12
  if (!config) {
9
- log.error('No F2G-Telco config found. Run: f2g-telco init');
13
+ log.error('No F2G-Telco config found. Run: npx f2g-telco init');
10
14
  return;
11
15
  }
12
- // Update the CLI itself
13
- const spinner = ora('Updating f2g-telco...').start();
16
+ const home = os.homedir();
17
+ let updated = 0;
18
+ // 1. Check for CLI updates via npm
19
+ const s1 = ora('Checking for f2g-telco updates...').start();
14
20
  try {
15
- execSync('npm update -g f2g-telco', { stdio: 'pipe', timeout: 60_000 });
16
- spinner.succeed('f2g-telco updated');
21
+ const latest = execSync('npm view f2g-telco version 2>/dev/null', {
22
+ encoding: 'utf-8', timeout: 15_000,
23
+ }).trim();
24
+ if (latest && latest !== config.version) {
25
+ s1.succeed(`New version available: ${chalk.green(latest)} (current: ${config.version})`);
26
+ console.log(chalk.dim(` Run: npx f2g-telco@${latest} init to upgrade`));
27
+ }
28
+ else {
29
+ s1.succeed(`f2g-telco is up to date (v${config.version})`);
30
+ }
17
31
  }
18
32
  catch {
19
- spinner.info('f2g-telco is up to date (or not installed globally)');
33
+ s1.info('Could not check npm registry (offline?)');
20
34
  }
21
- // Update skill repos
22
- const spinner2 = ora('Updating skill repositories...').start();
23
- try {
24
- const agentsDir = `${process.env.HOME}/.agents`;
25
- const dirs = ['awesome-copilot', 'agency-agents'];
26
- for (const dir of dirs) {
27
- try {
28
- execSync(`git -C ${agentsDir}/${dir} pull --ff-only 2>/dev/null`, {
29
- stdio: 'pipe', timeout: 30_000,
30
- });
35
+ // 2. Update skill repositories
36
+ const skillDirs = ['awesome-copilot', 'agency-agents', 'claude-best-practices'];
37
+ const agentsDir = path.join(home, '.agents');
38
+ for (const dir of skillDirs) {
39
+ const repoPath = path.join(agentsDir, dir);
40
+ if (!await fs.pathExists(path.join(repoPath, '.git')))
41
+ continue;
42
+ const s = ora(`Updating ${dir}...`).start();
43
+ try {
44
+ const result = execSync(`git -C "${repoPath}" pull --ff-only 2>&1`, {
45
+ encoding: 'utf-8', timeout: 30_000,
46
+ });
47
+ if (result.includes('Already up to date')) {
48
+ s.succeed(`${dir} — already up to date`);
49
+ }
50
+ else {
51
+ s.succeed(`${dir} — ${chalk.green('updated')}`);
52
+ updated++;
31
53
  }
32
- catch { /* skip if not cloned */ }
33
54
  }
34
- spinner2.succeed('Skill repositories updated');
55
+ catch {
56
+ s.warn(`${dir} — could not update (check manually)`);
57
+ }
58
+ }
59
+ // 3. Refresh MCP config from registry
60
+ const s3 = ora('Refreshing MCP configuration...').start();
61
+ try {
62
+ const registryPath = path.resolve(path.dirname(new URL(import.meta.url).pathname), '..', '..', 'registry', 'mcps.json');
63
+ // For npx usage, registry is bundled — just confirm config is intact
64
+ const paths = getToolPaths(config.tool);
65
+ if (await fs.pathExists(paths.mcpConfig)) {
66
+ s3.succeed('MCP configuration intact');
67
+ }
68
+ else {
69
+ s3.warn('MCP config file missing — run: npx f2g-telco init');
70
+ }
35
71
  }
36
72
  catch {
37
- spinner2.warn('Some repositories could not be updated');
73
+ s3.info('MCP config check skipped');
74
+ }
75
+ // 4. Verify INVENTORY.md
76
+ const s4 = ora('Checking INVENTORY.md...').start();
77
+ if (await fs.pathExists(config.paths.inventory)) {
78
+ s4.succeed('INVENTORY.md present');
79
+ }
80
+ else {
81
+ s4.warn('INVENTORY.md missing — run: npx f2g-telco init');
82
+ }
83
+ // Summary
84
+ console.log('');
85
+ if (updated > 0) {
86
+ log.success(`Update complete — ${updated} skill source(s) updated.`);
87
+ }
88
+ else {
89
+ log.success('Everything is up to date.');
38
90
  }
39
- log.success('Update complete. Run: f2g-telco doctor');
91
+ console.log(chalk.dim(' Run: npx f2g-telco doctor to verify health'));
92
+ console.log('');
40
93
  }
41
94
  //# sourceMappingURL=update.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"update.js","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEhD,MAAM,CAAC,KAAK,UAAU,aAAa;IACjC,GAAG,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;IAE/B,MAAM,MAAM,GAAG,MAAM,UAAU,EAAE,CAAC;IAClC,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,GAAG,CAAC,KAAK,CAAC,gDAAgD,CAAC,CAAC;QAC5D,OAAO;IACT,CAAC;IAED,wBAAwB;IACxB,MAAM,OAAO,GAAG,GAAG,CAAC,uBAAuB,CAAC,CAAC,KAAK,EAAE,CAAC;IACrD,IAAI,CAAC;QACH,QAAQ,CAAC,yBAAyB,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QACxE,OAAO,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACvC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAC;IACtE,CAAC;IAED,qBAAqB;IACrB,MAAM,QAAQ,GAAG,GAAG,CAAC,gCAAgC,CAAC,CAAC,KAAK,EAAE,CAAC;IAC/D,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,UAAU,CAAC;QAChD,MAAM,IAAI,GAAG,CAAC,iBAAiB,EAAE,eAAe,CAAC,CAAC;QAClD,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,IAAI,CAAC;gBACH,QAAQ,CAAC,UAAU,SAAS,IAAI,GAAG,6BAA6B,EAAE;oBAChE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;iBAC/B,CAAC,CAAC;YACL,CAAC;YAAC,MAAM,CAAC,CAAC,wBAAwB,CAAC,CAAC;QACtC,CAAC;QACD,QAAQ,CAAC,OAAO,CAAC,4BAA4B,CAAC,CAAC;IACjD,CAAC;IAAC,MAAM,CAAC;QACP,QAAQ,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;IAC1D,CAAC;IAED,GAAG,CAAC,OAAO,CAAC,wCAAwC,CAAC,CAAC;AACxD,CAAC"}
1
+ {"version":3,"file":"update.js","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":"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"}
@@ -11,28 +11,22 @@ export async function installMcps(mcps, tool, envVars) {
11
11
  const userPrefix = path.join(home, '.local');
12
12
  for (let i = 0; i < mcps.length; i++) {
13
13
  const mcp = mcps[i];
14
- const spinner = ora(`[${i + 1}/${mcps.length}] Installing ${mcp.name}...`).start();
14
+ const spinner = ora(`[${i + 1}/${mcps.length}] Configuring ${mcp.name}...`).start();
15
15
  try {
16
16
  if (mcp.python) {
17
- execSync('pip3 install --user contextgraph[server,mcp] --quiet --break-system-packages 2>/dev/null || pip3 install --user contextgraph[server,mcp] --quiet', { stdio: 'pipe', timeout: 120_000 });
17
+ // Python MCPs need actual install
18
+ execSync('pip3 install contextgraph[server,mcp] --quiet --break-system-packages 2>/dev/null || pip3 install contextgraph[server,mcp] --quiet', { stdio: 'pipe', timeout: 120_000 });
19
+ spinner.succeed(`${mcp.name} installed`);
18
20
  }
19
21
  else {
20
- const pkg = mcp.install.replace('npm install -g ', '');
21
- // Try global first, then user prefix, then skip (npx fallback)
22
- try {
23
- execSync(`npm install -g ${pkg} 2>/dev/null`, { stdio: 'pipe', timeout: 120_000 });
24
- }
25
- catch {
26
- execSync(`npm install --prefix "${userPrefix}" ${pkg}`, { stdio: 'pipe', timeout: 120_000 });
27
- }
22
+ // Node MCPs: npx handles download at runtime — no install needed
23
+ spinner.succeed(`${mcp.name} configured (via npx)`);
28
24
  }
29
25
  installed.push(mcp.id);
30
- spinner.succeed(`${mcp.name} installed`);
31
26
  }
32
27
  catch {
33
- // Install failed, but npx will still work — mark as installed
34
28
  installed.push(mcp.id);
35
- spinner.warn(`${mcp.name} — npm install failed, will use npx`);
29
+ spinner.warn(`${mcp.name} — will use npx at runtime`);
36
30
  }
37
31
  }
38
32
  return installed;
@@ -1 +1 @@
1
- {"version":3,"file":"mcps.js","sourceRoot":"","sources":["../../src/installers/mcps.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcps.js","sourceRoot":"","sources":["../../src/installers/mcps.ts"],"names":[],"mappings":"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"}
@@ -26,7 +26,7 @@ export async function logSection(title) {
26
26
  }
27
27
  export async function logSystemInfo() {
28
28
  await logSection('F2G-Telco Session');
29
- await logToFile('INFO', `Version: 0.1.2`);
29
+ await logToFile('INFO', `Version: 0.1.3`);
30
30
  await logToFile('INFO', `OS: ${os.platform()} ${os.arch()} ${os.release()}`);
31
31
  await logToFile('INFO', `Node: ${process.version}`);
32
32
  await logToFile('INFO', `Home: ${os.homedir()}`);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "f2g-telco",
3
- "version": "0.1.2",
3
+ "version": "0.1.4",
4
4
  "description": "CLI tool to supercharge AI coding environments — installs MCPs, skills, agents, and memory pipelines",
5
5
  "type": "module",
6
6
  "bin": {