aimeat 1.9.4 → 1.10.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/README.md +47 -10
- package/dist/locales/en.json +29 -8
- package/dist/locales/fi.json +39 -18
- package/dist/public/llms-template.txt +13 -2
- package/dist/public/views/profile/agents/agent-card.js +5 -2
- package/dist/public/views/profile/agents/tab-activity.js +17 -3
- package/dist/public/views/profile/agents/tab-integration.js +48 -5
- package/dist/public/views/profile/agents-capabilities-subtab.js +14 -7
- package/dist/public/views/profile/agents-tab.js +73 -19
- package/dist/scripts/audit-mcp-tools.d.ts +18 -0
- package/dist/scripts/audit-mcp-tools.d.ts.map +1 -0
- package/dist/scripts/audit-mcp-tools.js +164 -0
- package/dist/scripts/audit-mcp-tools.js.map +1 -0
- package/dist/src/cli/connect/auth.d.ts.map +1 -1
- package/dist/src/cli/connect/auth.js +134 -21
- package/dist/src/cli/connect/auth.js.map +1 -1
- package/dist/src/cli/connect/config.d.ts.map +1 -1
- package/dist/src/cli/connect/config.js.map +1 -1
- package/dist/src/cli/connect/mcp/poller.d.ts +8 -2
- package/dist/src/cli/connect/mcp/poller.d.ts.map +1 -1
- package/dist/src/cli/connect/mcp/poller.js +77 -12
- package/dist/src/cli/connect/mcp/poller.js.map +1 -1
- package/dist/src/cli/connect/mcp/tools/agent-caps.js +4 -4
- package/dist/src/cli/connect/mcp/tools/agent-caps.js.map +1 -1
- package/dist/src/cli/connect/mcp/tools/agent-messages.d.ts +1 -0
- package/dist/src/cli/connect/mcp/tools/agent-messages.d.ts.map +1 -1
- package/dist/src/cli/connect/mcp/tools/agent-messages.js +12 -5
- package/dist/src/cli/connect/mcp/tools/agent-messages.js.map +1 -1
- package/dist/src/cli/connect/mcp/tools/agent-tasks.d.ts +3 -0
- package/dist/src/cli/connect/mcp/tools/agent-tasks.d.ts.map +1 -1
- package/dist/src/cli/connect/mcp/tools/agent-tasks.js +31 -10
- package/dist/src/cli/connect/mcp/tools/agent-tasks.js.map +1 -1
- package/dist/src/cli/connect/mcp/tools/agent-telemetry.d.ts +11 -0
- package/dist/src/cli/connect/mcp/tools/agent-telemetry.d.ts.map +1 -0
- package/dist/src/cli/connect/mcp/tools/agent-telemetry.js +24 -0
- package/dist/src/cli/connect/mcp/tools/agent-telemetry.js.map +1 -0
- package/dist/src/cli/connect/mcp/tools/core.d.ts +5 -0
- package/dist/src/cli/connect/mcp/tools/core.d.ts.map +1 -1
- package/dist/src/cli/connect/mcp/tools/core.js +15 -3
- package/dist/src/cli/connect/mcp/tools/core.js.map +1 -1
- package/dist/src/cli/connect/mcp/tools/index.d.ts +2 -0
- package/dist/src/cli/connect/mcp/tools/index.d.ts.map +1 -1
- package/dist/src/cli/connect/mcp/tools/index.js +4 -0
- package/dist/src/cli/connect/mcp/tools/index.js.map +1 -1
- package/dist/src/cli/connect/mcp/tools/onboarding.d.ts +14 -0
- package/dist/src/cli/connect/mcp/tools/onboarding.d.ts.map +1 -0
- package/dist/src/cli/connect/mcp/tools/onboarding.js +44 -0
- package/dist/src/cli/connect/mcp/tools/onboarding.js.map +1 -0
- package/dist/src/cli/connect/mcp/wakeup.d.ts.map +1 -1
- package/dist/src/cli/connect/mcp/wakeup.js +12 -0
- package/dist/src/cli/connect/mcp/wakeup.js.map +1 -1
- package/dist/src/cli/connect/onboarding-prompt.d.ts +19 -0
- package/dist/src/cli/connect/onboarding-prompt.d.ts.map +1 -0
- package/dist/src/cli/connect/onboarding-prompt.js +58 -0
- package/dist/src/cli/connect/onboarding-prompt.js.map +1 -0
- package/dist/src/cli/connect/send.d.ts.map +1 -1
- package/dist/src/cli/connect/send.js +6 -5
- package/dist/src/cli/connect/send.js.map +1 -1
- package/dist/src/cli/connect/skill-bundle.d.ts +9 -1
- package/dist/src/cli/connect/skill-bundle.d.ts.map +1 -1
- package/dist/src/cli/connect/skill-bundle.js +219 -4
- package/dist/src/cli/connect/skill-bundle.js.map +1 -1
- package/dist/src/cli/connect/tool-call.d.ts +43 -0
- package/dist/src/cli/connect/tool-call.d.ts.map +1 -0
- package/dist/src/cli/connect/tool-call.js +878 -0
- package/dist/src/cli/connect/tool-call.js.map +1 -0
- package/dist/src/index.js +125 -30
- package/dist/src/index.js.map +1 -1
- package/dist/src/mcp/agent-onboarding.d.ts +20 -0
- package/dist/src/mcp/agent-onboarding.d.ts.map +1 -0
- package/dist/src/mcp/agent-onboarding.js +199 -0
- package/dist/src/mcp/agent-onboarding.js.map +1 -0
- package/dist/src/mcp/agent-tasks.d.ts +4 -2
- package/dist/src/mcp/agent-tasks.d.ts.map +1 -1
- package/dist/src/mcp/agent-tasks.js +42 -24
- package/dist/src/mcp/agent-tasks.js.map +1 -1
- package/dist/src/mcp/agent-telemetry.d.ts +18 -0
- package/dist/src/mcp/agent-telemetry.d.ts.map +1 -0
- package/dist/src/mcp/agent-telemetry.js +45 -0
- package/dist/src/mcp/agent-telemetry.js.map +1 -0
- package/dist/src/mcp/catalog/definitions.d.ts +42 -0
- package/dist/src/mcp/catalog/definitions.d.ts.map +1 -0
- package/dist/src/mcp/catalog/definitions.js +825 -0
- package/dist/src/mcp/catalog/definitions.js.map +1 -0
- package/dist/src/mcp/core.d.ts +1 -0
- package/dist/src/mcp/core.d.ts.map +1 -1
- package/dist/src/mcp/core.js +31 -2
- package/dist/src/mcp/core.js.map +1 -1
- package/dist/src/mcp/index.d.ts +1 -0
- package/dist/src/mcp/index.d.ts.map +1 -1
- package/dist/src/mcp/index.js +5 -0
- package/dist/src/mcp/index.js.map +1 -1
- package/dist/src/middleware/agent-me-alias.d.ts +26 -0
- package/dist/src/middleware/agent-me-alias.d.ts.map +1 -0
- package/dist/src/middleware/agent-me-alias.js +29 -0
- package/dist/src/middleware/agent-me-alias.js.map +1 -0
- package/dist/src/models/agent-onboarding-schemas.d.ts +7 -2
- package/dist/src/models/agent-onboarding-schemas.d.ts.map +1 -1
- package/dist/src/models/agent-onboarding-schemas.js +13 -2
- package/dist/src/models/agent-onboarding-schemas.js.map +1 -1
- package/dist/src/routes/agent-capabilities.d.ts +2 -0
- package/dist/src/routes/agent-capabilities.d.ts.map +1 -1
- package/dist/src/routes/agent-capabilities.js +6 -6
- package/dist/src/routes/agent-capabilities.js.map +1 -1
- package/dist/src/routes/agent-directives.d.ts +1 -0
- package/dist/src/routes/agent-directives.d.ts.map +1 -1
- package/dist/src/routes/agent-directives.js +3 -0
- package/dist/src/routes/agent-directives.js.map +1 -1
- package/dist/src/routes/agent-integration.js +1 -1
- package/dist/src/routes/agent-integration.js.map +1 -1
- package/dist/src/routes/agent-onboarding.d.ts +5 -0
- package/dist/src/routes/agent-onboarding.d.ts.map +1 -1
- package/dist/src/routes/agent-onboarding.js +69 -2
- package/dist/src/routes/agent-onboarding.js.map +1 -1
- package/dist/src/routes/agent-telemetry.d.ts +3 -0
- package/dist/src/routes/agent-telemetry.d.ts.map +1 -1
- package/dist/src/routes/agent-telemetry.js +5 -0
- package/dist/src/routes/agent-telemetry.js.map +1 -1
- package/dist/src/routes/agents.d.ts +14 -0
- package/dist/src/routes/agents.d.ts.map +1 -1
- package/dist/src/routes/agents.js +69 -0
- package/dist/src/routes/agents.js.map +1 -1
- package/dist/src/routes/apps.d.ts.map +1 -1
- package/dist/src/routes/apps.js +5 -0
- package/dist/src/routes/apps.js.map +1 -1
- package/dist/src/routes/auth.d.ts +14 -0
- package/dist/src/routes/auth.d.ts.map +1 -1
- package/dist/src/routes/auth.js +23 -1
- package/dist/src/routes/auth.js.map +1 -1
- package/dist/src/routes/bootstrap.d.ts +1 -0
- package/dist/src/routes/bootstrap.d.ts.map +1 -1
- package/dist/src/routes/bootstrap.js +3 -1
- package/dist/src/routes/bootstrap.js.map +1 -1
- package/dist/src/routes/libs.d.ts +10 -0
- package/dist/src/routes/libs.d.ts.map +1 -1
- package/dist/src/routes/libs.js +58 -27
- package/dist/src/routes/libs.js.map +1 -1
- package/dist/src/routes/memory.d.ts +1 -0
- package/dist/src/routes/memory.d.ts.map +1 -1
- package/dist/src/routes/memory.js +3 -1
- package/dist/src/routes/memory.js.map +1 -1
- package/dist/src/routes/prompts.d.ts +1 -0
- package/dist/src/routes/prompts.d.ts.map +1 -1
- package/dist/src/routes/prompts.js +2 -1
- package/dist/src/routes/prompts.js.map +1 -1
- package/dist/src/server.d.ts.map +1 -1
- package/dist/src/server.js +9 -1
- package/dist/src/server.js.map +1 -1
- package/dist/src/services/activity-recorder.d.ts +18 -1
- package/dist/src/services/activity-recorder.d.ts.map +1 -1
- package/dist/src/services/activity-recorder.js +42 -0
- package/dist/src/services/activity-recorder.js.map +1 -1
- package/dist/src/services/agent-post-onboarding.d.ts +31 -0
- package/dist/src/services/agent-post-onboarding.d.ts.map +1 -0
- package/dist/src/services/agent-post-onboarding.js +101 -0
- package/dist/src/services/agent-post-onboarding.js.map +1 -0
- package/dist/src/services/onboarding-validator.d.ts +3 -0
- package/dist/src/services/onboarding-validator.d.ts.map +1 -1
- package/dist/src/services/onboarding-validator.js +75 -0
- package/dist/src/services/onboarding-validator.js.map +1 -1
- package/dist/src/services/prompt-defaults.d.ts +23 -19
- package/dist/src/services/prompt-defaults.d.ts.map +1 -1
- package/dist/src/services/prompt-defaults.js +43 -37
- package/dist/src/services/prompt-defaults.js.map +1 -1
- package/dist/src/services/skill-bundle/generator.d.ts +8 -0
- package/dist/src/services/skill-bundle/generator.d.ts.map +1 -1
- package/dist/src/services/skill-bundle/generator.js +168 -48
- package/dist/src/services/skill-bundle/generator.js.map +1 -1
- package/dist/src/services/skill-bundle/generic-adapter.d.ts +5 -0
- package/dist/src/services/skill-bundle/generic-adapter.d.ts.map +1 -1
- package/dist/src/services/skill-bundle/generic-adapter.js +35 -15
- package/dist/src/services/skill-bundle/generic-adapter.js.map +1 -1
- package/dist/src/services/skill-bundle/hermes-adapter.d.ts +5 -0
- package/dist/src/services/skill-bundle/hermes-adapter.d.ts.map +1 -1
- package/dist/src/services/skill-bundle/hermes-adapter.js +26 -10
- package/dist/src/services/skill-bundle/hermes-adapter.js.map +1 -1
- package/dist/src/storage/interface.d.ts +2 -0
- package/dist/src/storage/interface.d.ts.map +1 -1
- package/dist/src/storage/providers/mongodb/index.d.ts +4 -0
- package/dist/src/storage/providers/mongodb/index.d.ts.map +1 -1
- package/dist/src/storage/providers/mongodb/index.js +22 -3
- package/dist/src/storage/providers/mongodb/index.js.map +1 -1
- package/dist/src/storage/providers/sqlite/index.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/index.js +4 -2
- package/dist/src/storage/providers/sqlite/index.js.map +1 -1
- package/dist/src/storage/providers/sqlite/schema.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/schema.js +1 -0
- package/dist/src/storage/providers/sqlite/schema.js.map +1 -1
- package/package.json +3 -2
- package/prisma/schema.prisma +1 -0
|
@@ -4,11 +4,99 @@
|
|
|
4
4
|
* @structure Prompts for connection details, starts RFC 8628 device auth, stores the issued token, and downloads the skill bundle.
|
|
5
5
|
* @usage Called by `aimeat connect`.
|
|
6
6
|
* @version-history v1.9.4 — 2026-05-28 — Update connector guidance, name-based inbox checks, network errors, and lazy interactive prompts.
|
|
7
|
+
* @version-history v1.9.5 — 2026-05-28 — Validate and default the interactive node URL prompt.
|
|
8
|
+
* @version-history v1.9.6 — 2026-05-28 — Accept raw OAuth token responses and avoid logging credentials.
|
|
9
|
+
* @version-history v1.9.7 — 2026-05-28 — Print post-connection MCP and onboarding next steps.
|
|
10
|
+
* @version-history v1.9.8 — 2026-05-28 — Include a paste-ready Hello Integration instruction for agents.
|
|
11
|
+
* @version-history v1.9.9 — 2026-05-28 — Report the actual extracted SKILL.md path after bundle download.
|
|
12
|
+
* @version-history v1.9.10 — 2026-05-28 — Clarify that skill bundles are downloaded and extracted locally.
|
|
13
|
+
* @version-history v1.9.11 — 2026-05-28 — Print the extracted BUNDLE.md guide after download.
|
|
14
|
+
* @version-history v1.9.12 — 2026-05-28 — Give agents the concrete Hello Integration MCP sequence.
|
|
15
|
+
* @version-history v1.9.13 — 2026-05-28 — Print serve and Hello Integration next steps even when already connected.
|
|
16
|
+
* @version-history v1.9.14 — 2026-05-28 — Default missing non-interactive agent names so the short connect command works.
|
|
17
|
+
* @version-history v1.9.15 — 2026-05-28 — Clarify MCP tool names are not terminal commands.
|
|
18
|
+
* @version-history v1.9.16 — 2026-05-28 — Include required telemetry reporting in Hello Integration guidance.
|
|
19
|
+
* @version-history v1.9.17 — 2026-05-28 — State that Hello Integration is required first-run onboarding.
|
|
20
|
+
* @version-history v1.9.18 -- 2026-05-28 -- Add correct post-onboarding setup instruction for actual commands, config, and knowledge artifacts.
|
|
21
|
+
* @version-history v1.9.19 -- 2026-05-28 -- Add shared owner-memory tag guidance after onboarding.
|
|
22
|
+
* @version-history v1.9.20 -- 2026-05-28 -- Move Hello Integration instruction into shared onboarding-prompt.ts to remove duplication with skill-bundle.ts.
|
|
7
23
|
*/
|
|
8
24
|
import { AimeatClient } from './api-client.js';
|
|
9
25
|
import { storeToken, getToken } from './keychain.js';
|
|
10
|
-
import { saveConfig
|
|
11
|
-
import { downloadSkillBundle } from './skill-bundle.js';
|
|
26
|
+
import { saveConfig } from './config.js';
|
|
27
|
+
import { downloadSkillBundle, readSkillBundleGuide } from './skill-bundle.js';
|
|
28
|
+
import { buildAgentOnboardingInstruction } from './onboarding-prompt.js';
|
|
29
|
+
const DEFAULT_NODE_URL = 'https://aimeat.io';
|
|
30
|
+
const DEFAULT_AGENT_NAME = 'assistant';
|
|
31
|
+
function normalizeNodeUrl(value) {
|
|
32
|
+
const trimmed = value?.trim() ?? '';
|
|
33
|
+
if (!trimmed)
|
|
34
|
+
return null;
|
|
35
|
+
const withProtocol = /^https?:\/\//i.test(trimmed) ? trimmed : `https://${trimmed}`;
|
|
36
|
+
try {
|
|
37
|
+
const url = new URL(withProtocol);
|
|
38
|
+
if (url.protocol !== 'http:' && url.protocol !== 'https:')
|
|
39
|
+
return null;
|
|
40
|
+
return url.toString().replace(/\/$/, '');
|
|
41
|
+
}
|
|
42
|
+
catch {
|
|
43
|
+
return null;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
function isRecord(value) {
|
|
47
|
+
return typeof value === 'object' && value !== null;
|
|
48
|
+
}
|
|
49
|
+
function isDeviceTokenResponse(value) {
|
|
50
|
+
return isRecord(value)
|
|
51
|
+
&& typeof value.access_token === 'string'
|
|
52
|
+
&& typeof value.gaii === 'string'
|
|
53
|
+
&& typeof value.name === 'string';
|
|
54
|
+
}
|
|
55
|
+
function getOAuthError(value) {
|
|
56
|
+
if (!isRecord(value) || typeof value.error !== 'string')
|
|
57
|
+
return null;
|
|
58
|
+
return {
|
|
59
|
+
error: value.error,
|
|
60
|
+
error_description: typeof value.error_description === 'string' ? value.error_description : undefined,
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
function buildNextStepsMessage(agentInstruction) {
|
|
64
|
+
return `Done. Your agent is connected.
|
|
65
|
+
|
|
66
|
+
NEXT TERMINAL COMMAND FOR THE AGENT
|
|
67
|
+
For AI runtimes that can attach an MCP stdio server (Claude Desktop, MCP-aware
|
|
68
|
+
IDEs, OpenClaw with mcp config, etc.), run this and leave it running:
|
|
69
|
+
|
|
70
|
+
aimeat connect serve
|
|
71
|
+
|
|
72
|
+
After that MCP server is attached to the AI runtime, paste this instruction
|
|
73
|
+
into the connected agent:
|
|
74
|
+
|
|
75
|
+
${agentInstruction}
|
|
76
|
+
|
|
77
|
+
IF YOUR RUNTIME CANNOT ATTACH MCP VIA STDIO
|
|
78
|
+
(e.g. you are a CLI-only agent, a shell-driven assistant, or a runtime where
|
|
79
|
+
"aimeat connect serve" would just block without exposing tools to you):
|
|
80
|
+
use the shell fallback instead. Every MCP tool is also callable directly:
|
|
81
|
+
|
|
82
|
+
aimeat connect tools # list available tool names
|
|
83
|
+
aimeat connect schema <tool-name> # show the tool's input schema
|
|
84
|
+
aimeat connect call <tool-name> --json '<input>' # invoke a tool
|
|
85
|
+
|
|
86
|
+
Walk through the same Hello Integration sequence with these commands. Start
|
|
87
|
+
with: aimeat connect call aimeat_handbook_get --json '{}'`;
|
|
88
|
+
}
|
|
89
|
+
async function downloadAndPrintBundleGuide(client, agentName, success, info, warn) {
|
|
90
|
+
try {
|
|
91
|
+
const bundle = await downloadSkillBundle(client, agentName);
|
|
92
|
+
success(`Skill bundle downloaded and extracted to ${bundle.bundleDir}`);
|
|
93
|
+
info(`Main skill file: ${bundle.skillPath}`);
|
|
94
|
+
info(readSkillBundleGuide(bundle));
|
|
95
|
+
}
|
|
96
|
+
catch {
|
|
97
|
+
warn('Could not download skill bundle. Run: npx aimeat connect refresh');
|
|
98
|
+
}
|
|
99
|
+
}
|
|
12
100
|
function createProgress(interactive, prompts) {
|
|
13
101
|
if (interactive && prompts)
|
|
14
102
|
return prompts.spinner();
|
|
@@ -46,28 +134,52 @@ export async function runAuth(args) {
|
|
|
46
134
|
else
|
|
47
135
|
console.error(message); };
|
|
48
136
|
intro('AIMEAT Agent Connector');
|
|
49
|
-
if (!interactive && (!args.url || !args.owner
|
|
50
|
-
fail('Missing required options. Usage: npx aimeat connect --url <node-url> --owner <owner> --agent <agent-name>');
|
|
137
|
+
if (!interactive && (!args.url || !args.owner)) {
|
|
138
|
+
fail('Missing required options. Usage: npx aimeat connect --url <node-url> --owner <owner> [--agent <agent-name>]');
|
|
51
139
|
process.exit(1);
|
|
52
140
|
}
|
|
53
|
-
const nodeUrlInput = args.url ?? await prompts.text({
|
|
141
|
+
const nodeUrlInput = args.url ?? await prompts.text({
|
|
142
|
+
message: 'AIMEAT node URL:',
|
|
143
|
+
placeholder: DEFAULT_NODE_URL,
|
|
144
|
+
defaultValue: DEFAULT_NODE_URL,
|
|
145
|
+
validate(value) {
|
|
146
|
+
return normalizeNodeUrl(value) ? undefined : 'Enter a valid AIMEAT node URL, for example https://aimeat.io';
|
|
147
|
+
},
|
|
148
|
+
});
|
|
54
149
|
if (prompts?.isCancel(nodeUrlInput)) {
|
|
55
150
|
prompts.cancel('Cancelled.');
|
|
56
151
|
process.exit(0);
|
|
57
152
|
}
|
|
58
|
-
const nodeUrl = nodeUrlInput;
|
|
153
|
+
const nodeUrl = normalizeNodeUrl(nodeUrlInput);
|
|
154
|
+
if (!nodeUrl) {
|
|
155
|
+
fail('Missing or invalid node URL. Usage: npx aimeat connect --url https://aimeat.io --owner <owner> [--agent <agent-name>]');
|
|
156
|
+
process.exit(1);
|
|
157
|
+
}
|
|
59
158
|
const ownerInput = args.owner ?? await prompts.text({ message: 'Your owner handle:' });
|
|
60
159
|
if (prompts?.isCancel(ownerInput)) {
|
|
61
160
|
prompts.cancel('Cancelled.');
|
|
62
161
|
process.exit(0);
|
|
63
162
|
}
|
|
64
|
-
const owner = ownerInput;
|
|
65
|
-
|
|
163
|
+
const owner = ownerInput.trim();
|
|
164
|
+
if (!owner) {
|
|
165
|
+
fail('Missing owner handle. Usage: npx aimeat connect --url https://aimeat.io --owner <owner> [--agent <agent-name>]');
|
|
166
|
+
process.exit(1);
|
|
167
|
+
}
|
|
168
|
+
const agentInput = args.agent ?? (interactive
|
|
169
|
+
? await prompts.text({ message: 'Agent name:', placeholder: DEFAULT_AGENT_NAME, defaultValue: DEFAULT_AGENT_NAME })
|
|
170
|
+
: (process.env.AIMEAT_AGENT_NAME || DEFAULT_AGENT_NAME));
|
|
66
171
|
if (prompts?.isCancel(agentInput)) {
|
|
67
172
|
prompts.cancel('Cancelled.');
|
|
68
173
|
process.exit(0);
|
|
69
174
|
}
|
|
70
|
-
const agentName = agentInput;
|
|
175
|
+
const agentName = agentInput.trim();
|
|
176
|
+
if (!agentName) {
|
|
177
|
+
fail('Missing agent name. Usage: npx aimeat connect --url https://aimeat.io --owner <owner> [--agent <agent-name>]');
|
|
178
|
+
process.exit(1);
|
|
179
|
+
}
|
|
180
|
+
if (!args.agent && !interactive) {
|
|
181
|
+
info(`No --agent provided; using agent name "${agentName}". To choose another name, rerun with --agent <name>.`);
|
|
182
|
+
}
|
|
71
183
|
const client = new AimeatClient(nodeUrl);
|
|
72
184
|
const existingToken = await getToken(agentName, owner);
|
|
73
185
|
if (existingToken) {
|
|
@@ -76,7 +188,9 @@ export async function runAuth(args) {
|
|
|
76
188
|
const check = await client.get(`/v1/agents/${encodeURIComponent(agentName)}/inbox`);
|
|
77
189
|
if (check.ok) {
|
|
78
190
|
success('Already connected! Token is valid.');
|
|
79
|
-
|
|
191
|
+
saveConfig({ node_url: nodeUrl, agent: agentName, owner });
|
|
192
|
+
await downloadAndPrintBundleGuide(client, agentName, success, info, warn);
|
|
193
|
+
outro(buildNextStepsMessage(buildAgentOnboardingInstruction()));
|
|
80
194
|
return;
|
|
81
195
|
}
|
|
82
196
|
}
|
|
@@ -123,11 +237,16 @@ export async function runAuth(args) {
|
|
|
123
237
|
fail(e.message);
|
|
124
238
|
process.exit(1);
|
|
125
239
|
}
|
|
126
|
-
if (pollResp
|
|
240
|
+
if (isDeviceTokenResponse(pollResp)) {
|
|
241
|
+
tokenData = pollResp;
|
|
242
|
+
break;
|
|
243
|
+
}
|
|
244
|
+
if (pollResp.ok && isDeviceTokenResponse(pollResp.data)) {
|
|
127
245
|
tokenData = pollResp.data;
|
|
128
246
|
break;
|
|
129
247
|
}
|
|
130
|
-
const
|
|
248
|
+
const oauthError = getOAuthError(pollResp);
|
|
249
|
+
const errCode = oauthError?.error;
|
|
131
250
|
if (errCode === 'access_denied') {
|
|
132
251
|
s.stop('Authorization denied.');
|
|
133
252
|
fail('The owner denied the authorization request.');
|
|
@@ -135,7 +254,7 @@ export async function runAuth(args) {
|
|
|
135
254
|
}
|
|
136
255
|
if (errCode !== 'authorization_pending' && errCode !== 'slow_down') {
|
|
137
256
|
s.stop('Unexpected error.');
|
|
138
|
-
fail(
|
|
257
|
+
fail(oauthError?.error_description ?? 'Token endpoint returned an unrecognized response. No credentials were printed.');
|
|
139
258
|
process.exit(1);
|
|
140
259
|
}
|
|
141
260
|
}
|
|
@@ -149,13 +268,7 @@ export async function runAuth(args) {
|
|
|
149
268
|
success(`Token stored (aimeat:${agentName}@${owner})`);
|
|
150
269
|
saveConfig({ node_url: nodeUrl, agent: agentName, owner });
|
|
151
270
|
client.setToken(token.access_token);
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
success(`Skill bundle downloaded to ${getConfigDir()}/${agentName}/SKILL.md`);
|
|
155
|
-
}
|
|
156
|
-
catch {
|
|
157
|
-
warn('Could not download skill bundle. Run: npx aimeat connect refresh');
|
|
158
|
-
}
|
|
159
|
-
outro('Done. Your agent is connected.');
|
|
271
|
+
await downloadAndPrintBundleGuide(client, agentName, success, info, warn);
|
|
272
|
+
outro(buildNextStepsMessage(buildAgentOnboardingInstruction()));
|
|
160
273
|
}
|
|
161
274
|
//# sourceMappingURL=auth.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../../src/cli/connect/auth.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../../src/cli/connect/auth.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../src/cli/connect/config.ts"],"names":[],"mappings":"AASA,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../src/cli/connect/config.ts"],"names":[],"mappings":"AASA,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IAKd,IAAI,CAAC,EAAE;QACL,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,QAAQ,CAAC,EAAE,eAAe,GAAG,eAAe,GAAG,cAAc,GAAG,cAAc,CAAC;KAChF,CAAC;IACF,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAKD,wBAAgB,YAAY,IAAI,MAAM,CAAuB;AAE7D,wBAAgB,UAAU,IAAI,mBAAmB,GAAG,IAAI,CAIvD;AAED,wBAAgB,UAAU,CAAC,MAAM,EAAE,mBAAmB,GAAG,IAAI,CAG5D"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../src/cli/connect/config.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAC7E,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../src/cli/connect/config.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAC7E,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AAkBxC,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,CAAC,CAAC;AAC9C,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;AAEpD,MAAM,UAAU,YAAY,KAAa,OAAO,UAAU,CAAC,CAAC,CAAC;AAE7D,MAAM,UAAU,UAAU;IACxB,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC;QAAE,OAAO,IAAI,CAAC;IAC1C,MAAM,GAAG,GAAG,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IAC/C,OAAO,KAAK,CAAC,GAAG,CAAwB,CAAC;AAC3C,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,MAA2B;IACpD,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC;QAAE,SAAS,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACxE,aAAa,CAAC,WAAW,EAAE,SAAS,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,CAAC;AACzD,CAAC"}
|
|
@@ -1,9 +1,15 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @file poller.ts
|
|
3
3
|
* @description Background poller for new tasks and messages. Triggers agent wake-up.
|
|
4
|
-
* @structure
|
|
4
|
+
* @structure Tracks task and message IDs seen on the last poll and wakes the agent
|
|
5
|
+
* when previously-unseen IDs appear. Uses recursive setTimeout (not setInterval)
|
|
6
|
+
* so overlapping polls cannot stack up if a round trip slows down. Treats
|
|
7
|
+
* auth-style envelope errors as terminal: a stale token will never recover by
|
|
8
|
+
* polling, so the poller stops and prints a clear next step instead of silently
|
|
9
|
+
* spinning.
|
|
5
10
|
* @usage Started by `aimeat connect serve` after MCP server registration.
|
|
6
|
-
* @version-history v1.9.4
|
|
11
|
+
* @version-history v1.9.4 -- 2026-05-28 -- Use the name-based message inbox endpoint.
|
|
12
|
+
* @version-history v1.9.5 -- 2026-05-28 -- Track IDs instead of counts (interleaved completes+arrivals were missed); recursive setTimeout; surface auth failures.
|
|
7
13
|
*/
|
|
8
14
|
import type { AimeatClient } from '../api-client.js';
|
|
9
15
|
import type { AimeatConnectConfig } from '../config.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"poller.d.ts","sourceRoot":"","sources":["../../../../../src/cli/connect/mcp/poller.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"poller.d.ts","sourceRoot":"","sources":["../../../../../src/cli/connect/mcp/poller.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAwBxD,wBAAgB,WAAW,CAAC,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,mBAAmB,GAAG,IAAI,CA6EnF"}
|
|
@@ -1,34 +1,99 @@
|
|
|
1
1
|
import { wakeAgent } from './wakeup.js';
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
const AUTH_ERROR_CODES = new Set(['UNAUTHORIZED', 'INVALID_TOKEN', 'TOKEN_EXPIRED', 'FORBIDDEN']);
|
|
3
|
+
const FAILURE_NOTICE_THRESHOLD = 5;
|
|
4
|
+
function extractIds(items) {
|
|
5
|
+
const ids = new Set();
|
|
6
|
+
if (!items)
|
|
7
|
+
return ids;
|
|
8
|
+
for (const item of items) {
|
|
9
|
+
if (typeof item.id === 'string' && item.id)
|
|
10
|
+
ids.add(item.id);
|
|
11
|
+
}
|
|
12
|
+
return ids;
|
|
13
|
+
}
|
|
14
|
+
function diff(current, seen) {
|
|
15
|
+
const out = [];
|
|
16
|
+
for (const id of current)
|
|
17
|
+
if (!seen.has(id))
|
|
18
|
+
out.push(id);
|
|
19
|
+
return out;
|
|
20
|
+
}
|
|
4
21
|
export function startPoller(client, config) {
|
|
5
22
|
const interval = (config.poll_interval ?? 30) * 1000;
|
|
6
23
|
const enc = encodeURIComponent(config.agent);
|
|
7
|
-
|
|
24
|
+
let seenTaskIds = new Set();
|
|
25
|
+
let seenMessageIds = new Set();
|
|
26
|
+
let bootstrapped = false;
|
|
27
|
+
let consecutiveFailures = 0;
|
|
28
|
+
let stopped = false;
|
|
29
|
+
async function pollOnce() {
|
|
30
|
+
let anyOk = false;
|
|
8
31
|
try {
|
|
9
32
|
const tasksResp = await client.get(`/v1/agents/${enc}/tasks?status=queued`);
|
|
10
33
|
if (tasksResp.ok) {
|
|
34
|
+
anyOk = true;
|
|
11
35
|
const tasks = tasksResp.data?.tasks ?? [];
|
|
12
|
-
|
|
13
|
-
|
|
36
|
+
const currentTaskIds = extractIds(tasks);
|
|
37
|
+
if (bootstrapped) {
|
|
38
|
+
const newIds = diff(currentTaskIds, seenTaskIds);
|
|
39
|
+
if (newIds.length > 0) {
|
|
40
|
+
await wakeAgent(config, 'task_new', `${newIds.length} new task(s) queued`);
|
|
41
|
+
}
|
|
14
42
|
}
|
|
15
|
-
|
|
43
|
+
seenTaskIds = currentTaskIds;
|
|
44
|
+
}
|
|
45
|
+
else if (tasksResp.error && AUTH_ERROR_CODES.has(tasksResp.error.code)) {
|
|
46
|
+
console.error(`[poller] Stopped: ${tasksResp.error.code} -- ${tasksResp.error.message}. Run: npx aimeat connect`);
|
|
47
|
+
stopped = true;
|
|
48
|
+
return;
|
|
16
49
|
}
|
|
50
|
+
}
|
|
51
|
+
catch (err) {
|
|
52
|
+
console.error(`[poller] Tasks poll error: ${err.message}`);
|
|
53
|
+
}
|
|
54
|
+
try {
|
|
17
55
|
const msgResp = await client.get(`/v1/agents/${enc}/messages/inbox`);
|
|
18
56
|
if (msgResp.ok) {
|
|
57
|
+
anyOk = true;
|
|
19
58
|
const messages = msgResp.data?.messages ?? [];
|
|
20
|
-
|
|
21
|
-
|
|
59
|
+
const currentMessageIds = extractIds(messages);
|
|
60
|
+
if (bootstrapped) {
|
|
61
|
+
const newIds = diff(currentMessageIds, seenMessageIds);
|
|
62
|
+
if (newIds.length > 0) {
|
|
63
|
+
await wakeAgent(config, 'message_new', `${newIds.length} new message(s)`);
|
|
64
|
+
}
|
|
22
65
|
}
|
|
23
|
-
|
|
66
|
+
seenMessageIds = currentMessageIds;
|
|
67
|
+
}
|
|
68
|
+
else if (msgResp.error && AUTH_ERROR_CODES.has(msgResp.error.code)) {
|
|
69
|
+
console.error(`[poller] Stopped: ${msgResp.error.code} -- ${msgResp.error.message}. Run: npx aimeat connect`);
|
|
70
|
+
stopped = true;
|
|
71
|
+
return;
|
|
24
72
|
}
|
|
25
73
|
}
|
|
26
74
|
catch (err) {
|
|
27
|
-
console.error(`[poller]
|
|
75
|
+
console.error(`[poller] Messages poll error: ${err.message}`);
|
|
76
|
+
}
|
|
77
|
+
if (anyOk) {
|
|
78
|
+
bootstrapped = true;
|
|
79
|
+
consecutiveFailures = 0;
|
|
28
80
|
}
|
|
81
|
+
else {
|
|
82
|
+
consecutiveFailures += 1;
|
|
83
|
+
if (consecutiveFailures === FAILURE_NOTICE_THRESHOLD) {
|
|
84
|
+
console.error(`[poller] ${consecutiveFailures} consecutive failed polls -- check node connectivity at ${client.getBaseUrl()}.`);
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
async function loop() {
|
|
89
|
+
if (stopped)
|
|
90
|
+
return;
|
|
91
|
+
await pollOnce();
|
|
92
|
+
if (stopped)
|
|
93
|
+
return;
|
|
94
|
+
setTimeout(loop, interval).unref();
|
|
29
95
|
}
|
|
30
|
-
|
|
31
|
-
setInterval(poll, interval);
|
|
96
|
+
loop();
|
|
32
97
|
console.error(`[poller] Polling every ${config.poll_interval ?? 30}s for tasks and messages`);
|
|
33
98
|
}
|
|
34
99
|
//# sourceMappingURL=poller.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"poller.js","sourceRoot":"","sources":["../../../../../src/cli/connect/mcp/poller.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"poller.js","sourceRoot":"","sources":["../../../../../src/cli/connect/mcp/poller.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,10 +4,10 @@ export function registerAgentCapsTools(mcp, client, agentName) {
|
|
|
4
4
|
mcp.tool('aimeat_agent_capabilities_report', 'Report agent capabilities to the node', {
|
|
5
5
|
technical: z.array(z.object({
|
|
6
6
|
name: z.string(),
|
|
7
|
-
type: z.
|
|
8
|
-
})).optional().describe('Technical capabilities'),
|
|
9
|
-
domain: z.array(z.string()).optional().describe('Domain expertise areas'),
|
|
10
|
-
languages: z.array(z.string()).optional().describe('Supported
|
|
7
|
+
type: z.enum(['mcp', 'skill', 'tool']).describe("Capability type: 'mcp' (an MCP server/tool), 'skill' (a built-in skill or module), or 'tool' (a generic tool the agent can call)."),
|
|
8
|
+
})).optional().describe('Technical capabilities, each with a name and a type from the enum mcp|skill|tool.'),
|
|
9
|
+
domain: z.array(z.string()).optional().describe('Domain expertise areas, free-form short labels.'),
|
|
10
|
+
languages: z.array(z.string()).optional().describe('Supported language codes (BCP-47 short form), e.g. "en", "fi".'),
|
|
11
11
|
}, async ({ technical, domain, languages }) => {
|
|
12
12
|
const body = {};
|
|
13
13
|
if (technical)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-caps.js","sourceRoot":"","sources":["../../../../../../src/cli/connect/mcp/tools/agent-caps.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,MAAM,UAAU,sBAAsB,CAAC,GAAc,EAAE,MAAoB,EAAE,SAAkB;IAC7F,MAAM,GAAG,GAAG,kBAAkB,CAAC,SAAU,CAAC,CAAC;IAE3C,GAAG,CAAC,IAAI,CAAC,kCAAkC,EAAE,uCAAuC,EAAE;QACpF,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;YAC1B,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;YAChB,IAAI,EAAE,CAAC,CAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"agent-caps.js","sourceRoot":"","sources":["../../../../../../src/cli/connect/mcp/tools/agent-caps.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,MAAM,UAAU,sBAAsB,CAAC,GAAc,EAAE,MAAoB,EAAE,SAAkB;IAC7F,MAAM,GAAG,GAAG,kBAAkB,CAAC,SAAU,CAAC,CAAC;IAE3C,GAAG,CAAC,IAAI,CAAC,kCAAkC,EAAE,uCAAuC,EAAE;QACpF,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;YAC1B,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;YAChB,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,mIAAmI,CAAC;SACrL,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mFAAmF,CAAC;QAC5G,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iDAAiD,CAAC;QAClG,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gEAAgE,CAAC;KACrH,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,EAAE;QAC5C,MAAM,IAAI,GAA4B,EAAE,CAAC;QACzC,IAAI,SAAS;YAAE,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC1C,IAAI,MAAM;YAAE,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACjC,IAAI,SAAS;YAAE,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC1C,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,cAAc,GAAG,eAAe,EAAE,IAAI,CAAC,CAAC;QACtE,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;IACpG,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,IAAI,CAAC,uBAAuB,EAAE,gCAAgC,EAAE,EAAE,EAAE,KAAK,IAAI,EAAE;QACjF,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,cAAc,GAAG,WAAW,CAAC,CAAC;QAC5D,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;IACpG,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
* @file agent-messages.ts
|
|
3
3
|
* @description MCP tool registrations for agent-to-agent messaging. Routes are
|
|
4
4
|
* scoped to the connected agent via /v1/agents/{name}/messages.
|
|
5
|
+
* @version-history v1.1.0 -- 2026-05-28 -- Align send payload with the actual agent message API.
|
|
5
6
|
*/
|
|
6
7
|
import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
7
8
|
import type { AimeatClient } from '../../api-client.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-messages.d.ts","sourceRoot":"","sources":["../../../../../../src/cli/connect/mcp/tools/agent-messages.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"agent-messages.d.ts","sourceRoot":"","sources":["../../../../../../src/cli/connect/mcp/tools/agent-messages.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAExD,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAwBzG"}
|
|
@@ -5,12 +5,19 @@ export function registerAgentMessagesTools(mcp, client, agentName) {
|
|
|
5
5
|
const resp = await client.get(`/v1/agents/${enc}/messages/inbox`);
|
|
6
6
|
return { content: [{ type: 'text', text: JSON.stringify(resp.data ?? resp, null, 2) }] };
|
|
7
7
|
});
|
|
8
|
-
mcp.tool('aimeat_message_send', 'Send
|
|
9
|
-
|
|
10
|
-
body: z.string().describe('Message
|
|
8
|
+
mcp.tool('aimeat_message_send', 'Send an outbound message from the connected agent to the owner conversation', {
|
|
9
|
+
content: z.string().optional().describe('Message content'),
|
|
10
|
+
body: z.string().optional().describe('Message content alias for older callers'),
|
|
11
|
+
linked_task_id: z.string().optional().describe('Optional linked task identifier'),
|
|
11
12
|
metadata: z.record(z.string(), z.unknown()).optional().describe('Optional metadata key-value pairs'),
|
|
12
|
-
}, async ({
|
|
13
|
-
const
|
|
13
|
+
}, async ({ content, body, linked_task_id, metadata }) => {
|
|
14
|
+
const message = content ?? body;
|
|
15
|
+
if (!message) {
|
|
16
|
+
return { content: [{ type: 'text', text: 'Message content is required. Provide content or body.' }] };
|
|
17
|
+
}
|
|
18
|
+
const payload = { content: message, direction: 'outbound' };
|
|
19
|
+
if (linked_task_id)
|
|
20
|
+
payload.linked_task_id = linked_task_id;
|
|
14
21
|
if (metadata)
|
|
15
22
|
payload.metadata = metadata;
|
|
16
23
|
const resp = await client.post(`/v1/agents/${enc}/messages`, payload);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-messages.js","sourceRoot":"","sources":["../../../../../../src/cli/connect/mcp/tools/agent-messages.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"agent-messages.js","sourceRoot":"","sources":["../../../../../../src/cli/connect/mcp/tools/agent-messages.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,MAAM,UAAU,0BAA0B,CAAC,GAAc,EAAE,MAAoB,EAAE,SAAkB;IACjG,MAAM,GAAG,GAAG,kBAAkB,CAAC,SAAU,CAAC,CAAC;IAE3C,GAAG,CAAC,IAAI,CAAC,sBAAsB,EAAE,8BAA8B,EAAE,EAAE,EAAE,KAAK,IAAI,EAAE;QAC9E,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,cAAc,GAAG,iBAAiB,CAAC,CAAC;QAClE,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;IACpG,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,IAAI,CAAC,qBAAqB,EAAE,6EAA6E,EAAE;QAC7G,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC;QAC1D,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yCAAyC,CAAC;QAC/E,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;QACjF,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC;KACrG,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,QAAQ,EAAE,EAAE,EAAE;QACvD,MAAM,OAAO,GAAG,OAAO,IAAI,IAAI,CAAC;QAChC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,uDAAuD,EAAE,CAAC,EAAE,CAAC;QACjH,CAAC;QACD,MAAM,OAAO,GAA4B,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC;QACrF,IAAI,cAAc;YAAE,OAAO,CAAC,cAAc,GAAG,cAAc,CAAC;QAC5D,IAAI,QAAQ;YAAE,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAC1C,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,cAAc,GAAG,WAAW,EAAE,OAAO,CAAC,CAAC;QACtE,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;IACpG,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -2,6 +2,9 @@
|
|
|
2
2
|
* @file agent-tasks.ts
|
|
3
3
|
* @description MCP tool registrations for agent task management. All routes
|
|
4
4
|
* are scoped to the connected agent via /v1/agents/{name}/tasks.
|
|
5
|
+
* @version-history v1.1.0 -- 2026-05-28 -- Add TODO proposal tool for Hello Integration.
|
|
6
|
+
* @version-history v1.1.1 -- 2026-05-28 -- Remove owner-only task start tool from agent MCP surface.
|
|
7
|
+
* @version-history v1.1.2 -- 2026-05-28 -- Send task complete/fail messages with the REST API field name.
|
|
5
8
|
*/
|
|
6
9
|
import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
7
10
|
import type { AimeatClient } from '../../api-client.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-tasks.d.ts","sourceRoot":"","sources":["../../../../../../src/cli/connect/mcp/tools/agent-tasks.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"agent-tasks.d.ts","sourceRoot":"","sources":["../../../../../../src/cli/connect/mcp/tools/agent-tasks.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAExD,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAoFtG"}
|
|
@@ -14,10 +14,29 @@ export function registerAgentTasksTools(mcp, client, agentName) {
|
|
|
14
14
|
const resp = await client.get(`/v1/agents/${enc}/tasks/${encodeURIComponent(task_id)}`);
|
|
15
15
|
return { content: [{ type: 'text', text: JSON.stringify(resp.data ?? resp, null, 2) }] };
|
|
16
16
|
});
|
|
17
|
-
mcp.tool('
|
|
17
|
+
mcp.tool('aimeat_task_propose_todos', 'Propose TODOs for a queued task before owner approval or onboarding auto-start', {
|
|
18
18
|
task_id: z.string().describe('Task identifier'),
|
|
19
|
-
|
|
20
|
-
|
|
19
|
+
todos: z.array(z.object({
|
|
20
|
+
title: z.string().describe('TODO title'),
|
|
21
|
+
description: z.string().optional().describe('TODO details'),
|
|
22
|
+
verification: z.string().optional().describe('How completion can be verified'),
|
|
23
|
+
estimate_minutes: z.number().optional().describe('Estimated work time in minutes'),
|
|
24
|
+
})).describe('Proposed TODO plan'),
|
|
25
|
+
}, async ({ task_id, todos }) => {
|
|
26
|
+
const payload = {
|
|
27
|
+
todos: todos.map((todo, index) => ({
|
|
28
|
+
id: `todo-${index + 1}`,
|
|
29
|
+
order: index + 1,
|
|
30
|
+
title: todo.title,
|
|
31
|
+
description: todo.description ?? '',
|
|
32
|
+
environment: 'agent',
|
|
33
|
+
environment_reason: 'The connected agent can perform this onboarding verification step through AIMEAT MCP tools.',
|
|
34
|
+
verification: todo.verification ?? '',
|
|
35
|
+
estimate_minutes: todo.estimate_minutes,
|
|
36
|
+
status: 'pending',
|
|
37
|
+
})),
|
|
38
|
+
};
|
|
39
|
+
const resp = await client.patch(`/v1/agents/${enc}/tasks/${encodeURIComponent(task_id)}`, payload);
|
|
21
40
|
return { content: [{ type: 'text', text: JSON.stringify(resp.data ?? resp, null, 2) }] };
|
|
22
41
|
});
|
|
23
42
|
mcp.tool('aimeat_task_event', 'Append a progress event to a task', {
|
|
@@ -38,19 +57,21 @@ export function registerAgentTasksTools(mcp, client, agentName) {
|
|
|
38
57
|
});
|
|
39
58
|
mcp.tool('aimeat_task_complete', 'Complete a task', {
|
|
40
59
|
task_id: z.string().describe('Task identifier'),
|
|
41
|
-
|
|
42
|
-
|
|
60
|
+
message: z.string().optional().describe('Completion message'),
|
|
61
|
+
summary: z.string().optional().describe('Completion message alias for older callers'),
|
|
62
|
+
}, async ({ task_id, message, summary }) => {
|
|
43
63
|
const body = {};
|
|
44
|
-
if (summary)
|
|
45
|
-
body.
|
|
64
|
+
if (message ?? summary)
|
|
65
|
+
body.message = message ?? summary;
|
|
46
66
|
const resp = await client.post(`/v1/agents/${enc}/tasks/${encodeURIComponent(task_id)}/complete`, body);
|
|
47
67
|
return { content: [{ type: 'text', text: JSON.stringify(resp.data ?? resp, null, 2) }] };
|
|
48
68
|
});
|
|
49
69
|
mcp.tool('aimeat_task_fail', 'Fail a task with a reason', {
|
|
50
70
|
task_id: z.string().describe('Task identifier'),
|
|
51
|
-
reason: z.string().describe('Failure reason'),
|
|
52
|
-
|
|
53
|
-
|
|
71
|
+
reason: z.string().describe('Failure reason alias for message'),
|
|
72
|
+
message: z.string().optional().describe('Failure message'),
|
|
73
|
+
}, async ({ task_id, reason, message }) => {
|
|
74
|
+
const resp = await client.post(`/v1/agents/${enc}/tasks/${encodeURIComponent(task_id)}/fail`, { message: message ?? reason });
|
|
54
75
|
return { content: [{ type: 'text', text: JSON.stringify(resp.data ?? resp, null, 2) }] };
|
|
55
76
|
});
|
|
56
77
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-tasks.js","sourceRoot":"","sources":["../../../../../../src/cli/connect/mcp/tools/agent-tasks.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"agent-tasks.js","sourceRoot":"","sources":["../../../../../../src/cli/connect/mcp/tools/agent-tasks.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file agent-telemetry.ts
|
|
3
|
+
* @description MCP tool registrations for reporting agent telemetry through the connector.
|
|
4
|
+
* @structure Registers `aimeat_agent_telemetry_report` against the name-scoped telemetry API.
|
|
5
|
+
* @usage Called by `aimeat connect serve` via the MCP tool registry.
|
|
6
|
+
* @version-history v1.0.0 -- 2026-05-28 -- Initial connector MCP telemetry tool.
|
|
7
|
+
*/
|
|
8
|
+
import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
9
|
+
import type { AimeatClient } from '../../api-client.js';
|
|
10
|
+
export declare function registerAgentTelemetryTools(mcp: McpServer, client: AimeatClient, agentName: string): void;
|
|
11
|
+
//# sourceMappingURL=agent-telemetry.d.ts.map
|