@chanaka_nakandala/integration-agent 1.1.1 → 2.0.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/index.js +22 -486
- package/dist/index.js.map +1 -1
- package/dist/{cli/init-command.d.ts → init-command.d.ts} +2 -2
- package/dist/init-command.d.ts.map +1 -0
- package/dist/{cli/init-command.js → init-command.js} +72 -46
- package/dist/init-command.js.map +1 -0
- package/package.json +6 -14
- package/agent-personas/ba-agent.yaml +0 -682
- package/agent-personas/developer-agent.yaml +0 -585
- package/dist/cache/file-cache.d.ts +0 -10
- package/dist/cache/file-cache.d.ts.map +0 -1
- package/dist/cache/file-cache.js +0 -79
- package/dist/cache/file-cache.js.map +0 -1
- package/dist/cli/init-command.d.ts.map +0 -1
- package/dist/cli/init-command.js.map +0 -1
- package/dist/scrapers/docs-scraper.d.ts +0 -28
- package/dist/scrapers/docs-scraper.d.ts.map +0 -1
- package/dist/scrapers/docs-scraper.js +0 -200
- package/dist/scrapers/docs-scraper.js.map +0 -1
- package/dist/search/keyword-search.d.ts +0 -39
- package/dist/search/keyword-search.d.ts.map +0 -1
- package/dist/search/keyword-search.js +0 -127
- package/dist/search/keyword-search.js.map +0 -1
- package/dist/tools/code-generation-tool.d.ts +0 -33
- package/dist/tools/code-generation-tool.d.ts.map +0 -1
- package/dist/tools/code-generation-tool.js +0 -62
- package/dist/tools/code-generation-tool.js.map +0 -1
- package/dist/tools/search-result-formatter.d.ts +0 -27
- package/dist/tools/search-result-formatter.d.ts.map +0 -1
- package/dist/tools/search-result-formatter.js +0 -89
- package/dist/tools/search-result-formatter.js.map +0 -1
- package/dist/tools/search-tool.d.ts +0 -9
- package/dist/tools/search-tool.d.ts.map +0 -1
- package/dist/tools/search-tool.js +0 -32
- package/dist/tools/search-tool.js.map +0 -1
- package/dist/tools/template-loader.d.ts +0 -54
- package/dist/tools/template-loader.d.ts.map +0 -1
- package/dist/tools/template-loader.js +0 -148
- package/dist/tools/template-loader.js.map +0 -1
- package/dist/types/search.d.ts +0 -21
- package/dist/types/search.d.ts.map +0 -1
- package/dist/types/search.js +0 -2
- package/dist/types/search.js.map +0 -1
- package/templates/README.md +0 -98
- package/templates/authenticate/curl.template +0 -97
- package/templates/authenticate/java.template +0 -155
- package/templates/authenticate/python.template +0 -111
- package/templates/authenticate/typescript.template +0 -98
- package/templates/create_menu/curl.template +0 -145
- package/templates/create_menu/java.template +0 -285
- package/templates/create_menu/python.template +0 -159
- package/templates/create_menu/typescript.template +0 -184
- package/templates/receive_order/curl.template +0 -138
- package/templates/receive_order/java.template +0 -263
- package/templates/receive_order/python.template +0 -157
- package/templates/receive_order/typescript.template +0 -194
- package/templates/update_item_availability/curl.template +0 -143
- package/templates/update_item_availability/java.template +0 -279
- package/templates/update_item_availability/python.template +0 -203
- package/templates/update_item_availability/typescript.template +0 -194
- package/templates/update_order_status/curl.template +0 -138
- package/templates/update_order_status/java.template +0 -202
- package/templates/update_order_status/python.template +0 -142
- package/templates/update_order_status/typescript.template +0 -139
@@ -2,14 +2,17 @@ import { promises as fs } from 'fs';
|
|
2
2
|
import { join, dirname } from 'path';
|
3
3
|
import { homedir } from 'os';
|
4
4
|
import { fileURLToPath } from 'url';
|
5
|
+
import { exec } from 'child_process';
|
6
|
+
import { promisify } from 'util';
|
7
|
+
const execAsync = promisify(exec);
|
5
8
|
/**
|
6
9
|
* Initializes the Grubtech Integration Agent
|
7
10
|
*
|
8
11
|
* This command sets up everything needed to use the MCP server with Claude Code:
|
9
12
|
* 1. Verifies Claude Code installation
|
10
13
|
* 2. Creates cache directory for storing scraped documentation
|
11
|
-
* 3. Configures MCP server in Claude Code's config
|
12
|
-
* 4. Installs agent persona YAML files to ~/.claude/agents/
|
14
|
+
* 3. Configures MCP server (@chanaka_nakandala/mcp-server) in Claude Code's config
|
15
|
+
* 4. Installs agent persona YAML files from @chanaka_nakandala/agent-personas to ~/.claude/agents/
|
13
16
|
*
|
14
17
|
* Users only need to run this once: npx @chanaka_nakandala/integration-agent init
|
15
18
|
*/
|
@@ -33,7 +36,8 @@ export async function initCommand() {
|
|
33
36
|
await fs.mkdir(join(cacheDir, 'docs'), { recursive: true });
|
34
37
|
console.log('✓ Created cache directory at ~/.grubtech/cache/');
|
35
38
|
// Step 3: Configure MCP server in Claude Code
|
36
|
-
// This tells Claude Code how to start
|
39
|
+
// This tells Claude Code how to start the MCP server when needed
|
40
|
+
// IMPORTANT: Points to @chanaka_nakandala/mcp-server (the actual MCP server package)
|
37
41
|
let mcpConfig = {};
|
38
42
|
try {
|
39
43
|
const existing = await fs.readFile(mcpConfigFile, 'utf-8');
|
@@ -50,16 +54,19 @@ export async function initCommand() {
|
|
50
54
|
}
|
51
55
|
mcpConfig.mcpServers['grubtech-integration-support'] = {
|
52
56
|
command: 'npx', // Use npx to run the package directly
|
53
|
-
args: ['
|
57
|
+
args: ['-y', '@chanaka_nakandala/mcp-server'], // Start the MCP server package
|
54
58
|
};
|
55
59
|
// Write the updated configuration back to disk
|
56
60
|
await fs.mkdir(claudeConfigPath, { recursive: true });
|
57
61
|
await fs.writeFile(mcpConfigFile, JSON.stringify(mcpConfig, null, 2));
|
58
|
-
console.log('✓
|
59
|
-
// 4
|
62
|
+
console.log('✓ Configured MCP server (@chanaka_nakandala/mcp-server)');
|
63
|
+
// Step 4: Install agent personas from the separate agent-personas package
|
60
64
|
await installAgentPersonas();
|
61
|
-
// 5
|
65
|
+
// Step 5: Display success message
|
62
66
|
console.log('\n✅ Setup complete!\n');
|
67
|
+
console.log('Installed components:');
|
68
|
+
console.log(' ✓ MCP Server: @chanaka_nakandala/mcp-server');
|
69
|
+
console.log(' ✓ Agent Personas: Developer & BA agents\n');
|
63
70
|
console.log('Next steps:');
|
64
71
|
console.log(' 1. Restart Claude Code');
|
65
72
|
console.log(' 2. Select an agent persona from the personas menu:');
|
@@ -70,59 +77,78 @@ export async function initCommand() {
|
|
70
77
|
/**
|
71
78
|
* Installs agent persona YAML files to Claude's agents directory
|
72
79
|
*
|
80
|
+
* This function downloads the @chanaka_nakandala/agent-personas package
|
81
|
+
* and copies the YAML files to ~/.claude/agents/
|
82
|
+
*
|
73
83
|
* Agent personas customize Claude's behavior for specific tasks:
|
74
84
|
* - Developer Agent: Technical, code-first responses with production-ready code
|
75
85
|
* - BA Agent: Planning, requirements gathering, documentation generation
|
76
|
-
*
|
77
|
-
* These files are copied to ~/.claude/agents/ where Claude Code can load them
|
78
86
|
*/
|
79
87
|
async function installAgentPersonas() {
|
80
|
-
console.log('\n📦 Installing agent personas...');
|
88
|
+
console.log('\n📦 Installing agent personas from @chanaka_nakandala/agent-personas...');
|
81
89
|
const agentsDir = getClaudeAgentsPath();
|
82
90
|
await fs.mkdir(agentsDir, { recursive: true });
|
83
|
-
// Find the agent-personas
|
84
|
-
// When run via npx,
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
target: join(agentsDir, 'grubtech-developer.yaml'),
|
92
|
-
name: 'Grubtech Integration Developer',
|
93
|
-
},
|
94
|
-
{
|
95
|
-
source: join(agentPersonasSource, 'ba-agent.yaml'),
|
96
|
-
target: join(agentsDir, 'grubtech-ba.yaml'),
|
97
|
-
name: 'Grubtech Integration BA',
|
98
|
-
},
|
99
|
-
];
|
100
|
-
// Copy each agent persona file to Claude's agents directory
|
101
|
-
for (const agent of agents) {
|
91
|
+
// Find the agent-personas package in node_modules
|
92
|
+
// When run via npx, packages are cached in npm's cache directory
|
93
|
+
let agentPersonasSource;
|
94
|
+
try {
|
95
|
+
// Try to find agent-personas package
|
96
|
+
// First, check if it's in the current package's node_modules
|
97
|
+
const currentDir = dirname(fileURLToPath(import.meta.url));
|
98
|
+
const localNodeModules = join(currentDir, '..', 'node_modules', '@chanaka_nakandala', 'agent-personas');
|
102
99
|
try {
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
100
|
+
await fs.access(localNodeModules);
|
101
|
+
agentPersonasSource = localNodeModules;
|
102
|
+
}
|
103
|
+
catch {
|
104
|
+
// If not found locally, try to resolve using npm
|
105
|
+
console.log(' Resolving @chanaka_nakandala/agent-personas package...');
|
106
|
+
const { stdout } = await execAsync('npm root -g');
|
107
|
+
const globalRoot = stdout.trim();
|
108
|
+
agentPersonasSource = join(globalRoot, '@chanaka_nakandala', 'agent-personas');
|
109
|
+
}
|
110
|
+
// Define both agent personas to install
|
111
|
+
const agents = [
|
112
|
+
{
|
113
|
+
source: join(agentPersonasSource, 'developer-agent.yaml'),
|
114
|
+
target: join(agentsDir, 'grubtech-developer.yaml'),
|
115
|
+
name: 'Grubtech Integration Developer',
|
116
|
+
},
|
117
|
+
{
|
118
|
+
source: join(agentPersonasSource, 'ba-agent.yaml'),
|
119
|
+
target: join(agentsDir, 'grubtech-ba.yaml'),
|
120
|
+
name: 'Grubtech Integration BA',
|
121
|
+
},
|
122
|
+
];
|
123
|
+
// Copy each agent persona file to Claude's agents directory
|
124
|
+
for (const agent of agents) {
|
107
125
|
try {
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
126
|
+
// Verify source file exists in the package
|
127
|
+
await fs.access(agent.source);
|
128
|
+
// Check if agent is already installed (from previous init)
|
129
|
+
try {
|
130
|
+
await fs.access(agent.target);
|
131
|
+
console.log(` ⚠️ ${agent.name} already exists`);
|
132
|
+
console.log(' Overwriting with latest version...');
|
133
|
+
}
|
134
|
+
catch {
|
135
|
+
// Target doesn't exist, proceed with copy
|
136
|
+
}
|
137
|
+
// Copy the YAML file to Claude's agents directory
|
117
138
|
await fs.copyFile(agent.source, agent.target);
|
118
139
|
console.log(` ✓ Installed ${agent.name}`);
|
119
140
|
}
|
141
|
+
catch (error) {
|
142
|
+
console.warn(` ⚠️ Failed to install ${agent.name}: ${error.message}`);
|
143
|
+
}
|
120
144
|
}
|
121
|
-
|
122
|
-
|
123
|
-
|
145
|
+
console.log('\n✓ Agent personas installed to ~/.claude/agents/');
|
146
|
+
}
|
147
|
+
catch (error) {
|
148
|
+
console.error('\n❌ Failed to install agent personas');
|
149
|
+
console.error(` Error: ${error.message}`);
|
150
|
+
console.error('\n Please ensure @chanaka_nakandala/agent-personas is published to npm');
|
124
151
|
}
|
125
|
-
console.log('\n✓ Agent personas installed to ~/.claude/agents/');
|
126
152
|
}
|
127
153
|
/**
|
128
154
|
* Gets the Claude Code configuration directory path
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"init-command.js","sourceRoot":"","sources":["../src/init-command.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
@@ -1,14 +1,12 @@
|
|
1
1
|
{
|
2
2
|
"name": "@chanaka_nakandala/integration-agent",
|
3
|
-
"version": "
|
4
|
-
"description": "
|
3
|
+
"version": "2.0.0",
|
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",
|
7
7
|
"types": "./dist/index.d.ts",
|
8
|
-
"homepage": "https://www.grubtech.com",
|
9
8
|
"bin": {
|
10
|
-
"grubtech-integration-agent": "./dist/index.js"
|
11
|
-
"grubtech-mcp": "./dist/index.js"
|
9
|
+
"grubtech-integration-agent": "./dist/index.js"
|
12
10
|
},
|
13
11
|
"exports": {
|
14
12
|
".": {
|
@@ -18,8 +16,6 @@
|
|
18
16
|
},
|
19
17
|
"files": [
|
20
18
|
"dist/",
|
21
|
-
"templates/",
|
22
|
-
"agent-personas/",
|
23
19
|
"README.md",
|
24
20
|
"LICENSE"
|
25
21
|
],
|
@@ -30,8 +26,7 @@
|
|
30
26
|
"scripts": {
|
31
27
|
"build": "node ../../node_modules/typescript/lib/tsc.js",
|
32
28
|
"dev": "node ../../node_modules/typescript/lib/tsc.js --watch",
|
33
|
-
"clean": "rm -rf dist"
|
34
|
-
"test": "echo \"Tests will be added in future iteration\""
|
29
|
+
"clean": "rm -rf dist"
|
35
30
|
},
|
36
31
|
"keywords": [
|
37
32
|
"grubtech",
|
@@ -58,13 +53,10 @@
|
|
58
53
|
"menu-sync",
|
59
54
|
"order-management"
|
60
55
|
],
|
61
|
-
"author": "Grubtech <support@grubtech.io>
|
56
|
+
"author": "Grubtech <support@grubtech.io>",
|
62
57
|
"license": "MIT",
|
63
|
-
"docs": "https://docs.grubtech.io",
|
64
58
|
"dependencies": {
|
65
|
-
"@
|
66
|
-
"axios": "^1.12.2",
|
67
|
-
"cheerio": "^1.1.2"
|
59
|
+
"@chanaka_nakandala/agent-personas": "^2.0.0"
|
68
60
|
},
|
69
61
|
"devDependencies": {
|
70
62
|
"@types/node": "^20.0.0",
|