@chanaka_nakandala/integration-agent 3.0.0 ā 3.1.0
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/dist/init-command.d.ts +4 -3
- package/dist/init-command.d.ts.map +1 -1
- package/dist/init-command.js +41 -31
- package/dist/init-command.js.map +1 -1
- package/package.json +1 -1
package/dist/init-command.d.ts
CHANGED
@@ -2,9 +2,10 @@
|
|
2
2
|
* Initializes the Grubtech Integration Agent
|
3
3
|
*
|
4
4
|
* This command sets up everything needed to use the MCP server with Claude Code:
|
5
|
-
* 1.
|
6
|
-
* 2.
|
7
|
-
* 3.
|
5
|
+
* 1. Verifies Claude Code is installed (exits with error if not found)
|
6
|
+
* 2. Creates cache directory for storing scraped documentation
|
7
|
+
* 3. Registers MCP server using 'claude mcp add' command (requires claude CLI in PATH)
|
8
|
+
* 4. Installs agent persona YAML files to project's .claude/grubtech/agents/ directory as subagents
|
8
9
|
*
|
9
10
|
* Users only need to run this once: npx @chanaka_nakandala/integration-agent init
|
10
11
|
*/
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"init-command.d.ts","sourceRoot":"","sources":["../src/init-command.ts"],"names":[],"mappings":"AASA
|
1
|
+
{"version":3,"file":"init-command.d.ts","sourceRoot":"","sources":["../src/init-command.ts"],"names":[],"mappings":"AASA;;;;;;;;;;GAUG;AACH,wBAAsB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAoEjD"}
|
package/dist/init-command.js
CHANGED
@@ -9,55 +9,65 @@ const execAsync = promisify(exec);
|
|
9
9
|
* Initializes the Grubtech Integration Agent
|
10
10
|
*
|
11
11
|
* This command sets up everything needed to use the MCP server with Claude Code:
|
12
|
-
* 1.
|
13
|
-
* 2.
|
14
|
-
* 3.
|
12
|
+
* 1. Verifies Claude Code is installed (exits with error if not found)
|
13
|
+
* 2. Creates cache directory for storing scraped documentation
|
14
|
+
* 3. Registers MCP server using 'claude mcp add' command (requires claude CLI in PATH)
|
15
|
+
* 4. Installs agent persona YAML files to project's .claude/grubtech/agents/ directory as subagents
|
15
16
|
*
|
16
17
|
* Users only need to run this once: npx @chanaka_nakandala/integration-agent init
|
17
18
|
*/
|
18
19
|
export async function initCommand() {
|
19
20
|
console.log('š Initializing Grubtech Integration Agent...\n');
|
20
|
-
// Step 1:
|
21
|
+
// Step 1: Verify Claude Code is installed
|
22
|
+
console.log('Checking for Claude Code installation...');
|
23
|
+
const claudeConfigPath = getClaudeConfigPath();
|
24
|
+
try {
|
25
|
+
await fs.access(claudeConfigPath);
|
26
|
+
console.log('ā Claude Code found\n');
|
27
|
+
}
|
28
|
+
catch {
|
29
|
+
console.error('ā Claude Code is not installed!\n');
|
30
|
+
console.error('This tool requires Claude Code to be installed on your system.\n');
|
31
|
+
console.error('š„ Download Claude Code from:');
|
32
|
+
console.error(' https://claude.ai/download\n');
|
33
|
+
console.error('After installing Claude Code, run this command again:\n');
|
34
|
+
console.error(' npx @chanaka_nakandala/integration-agent init\n');
|
35
|
+
process.exit(1);
|
36
|
+
}
|
37
|
+
// Step 2: Create cache directory for storing scraped Grubtech documentation
|
21
38
|
// This avoids repeated downloads and speeds up documentation searches
|
22
39
|
const cacheDir = join(homedir(), '.grubtech', 'cache');
|
23
40
|
await fs.mkdir(join(cacheDir, 'docs'), { recursive: true });
|
24
41
|
console.log('ā Created cache directory at ~/.grubtech/cache/');
|
25
|
-
// Step
|
42
|
+
// Step 3: Configure MCP server in Claude Code using the claude CLI
|
26
43
|
// This registers the MCP server with identifier 'grubtech-integration-support'
|
27
|
-
//
|
44
|
+
// Syntax: claude mcp add --transport stdio <name> -- <command> [args...]
|
28
45
|
console.log('\nš” Configuring MCP server...');
|
46
|
+
// Build the command based on platform
|
47
|
+
// On Windows: cmd /c npx is needed for npx commands
|
48
|
+
// On other platforms: npx directly
|
49
|
+
const isWindows = process.platform === 'win32';
|
50
|
+
const mcpCommand = isWindows
|
51
|
+
? 'claude mcp add --transport stdio grubtech-integration-support -- cmd /c npx -y @chanaka_nakandala/integration-mcp-server'
|
52
|
+
: 'claude mcp add --transport stdio grubtech-integration-support -- npx -y @chanaka_nakandala/integration-mcp-server';
|
29
53
|
try {
|
30
|
-
const mcpCommand = 'claude mcp add grubtech-integration-support npx -y @chanaka_nakandala/integration-mcp-server';
|
31
54
|
await execAsync(mcpCommand);
|
32
55
|
console.log('ā MCP server registered with Claude Code');
|
33
56
|
}
|
34
57
|
catch (error) {
|
35
|
-
|
36
|
-
console.
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
catch {
|
45
|
-
// File doesn't exist, start with empty config
|
46
|
-
}
|
47
|
-
if (!mcpConfig.mcpServers) {
|
48
|
-
mcpConfig.mcpServers = {};
|
49
|
-
}
|
50
|
-
mcpConfig.mcpServers['grubtech-integration-support'] = {
|
51
|
-
command: 'npx',
|
52
|
-
args: ['-y', '@chanaka_nakandala/integration-mcp-server'],
|
53
|
-
};
|
54
|
-
await fs.mkdir(claudeConfigPath, { recursive: true });
|
55
|
-
await fs.writeFile(mcpConfigFile, JSON.stringify(mcpConfig, null, 2));
|
56
|
-
console.log('ā MCP server configured manually');
|
58
|
+
console.error('\nā Failed to register MCP server!\n');
|
59
|
+
console.error('The "claude" CLI command is not available or failed to execute.\n');
|
60
|
+
console.error('Please ensure:');
|
61
|
+
console.error(' 1. Claude Code is running');
|
62
|
+
console.error(' 2. The "claude" command is available in your PATH');
|
63
|
+
console.error(' 3. You have the latest version of Claude Code\n');
|
64
|
+
console.error('Error details:', error.message, '\n');
|
65
|
+
console.error('For manual setup, see: https://docs.claude.com/en/docs/claude-code/mcp\n');
|
66
|
+
process.exit(1);
|
57
67
|
}
|
58
|
-
// Step
|
68
|
+
// Step 4: Install agent personas to project .claude/grubtech/agents directory
|
59
69
|
await installAgentPersonas(process.cwd());
|
60
|
-
// Step
|
70
|
+
// Step 5: Display success message
|
61
71
|
console.log('\nā
Setup complete!\n');
|
62
72
|
console.log('Installed components:');
|
63
73
|
console.log(' ā MCP Server: @chanaka_nakandala/integration-mcp-server');
|
package/dist/init-command.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"init-command.js","sourceRoot":"","sources":["../src/init-command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,EAAE,EAAE,MAAM,IAAI,CAAC;AACpC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AAEjC,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;AAElC
|
1
|
+
{"version":3,"file":"init-command.js","sourceRoot":"","sources":["../src/init-command.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@chanaka_nakandala/integration-agent",
|
3
|
-
"version": "3.
|
3
|
+
"version": "3.1.0",
|
4
4
|
"description": "One-command installer that sets up the complete Grubtech Integration Agent (MCP server + AI agent personas) for Claude Code to help developers build restaurant and POS integrations.",
|
5
5
|
"type": "module",
|
6
6
|
"main": "./dist/index.js",
|