@datalayer/agent-runtimes 0.0.11 → 0.0.12
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 +2 -2
- package/lib/Agent.d.ts +29 -0
- package/lib/Agent.js +131 -0
- package/lib/AgentLexical.d.ts +34 -0
- package/lib/AgentLexical.js +296 -0
- package/lib/AgentNotebook.d.ts +19 -0
- package/lib/AgentNotebook.js +192 -0
- package/lib/agent-lexical-main.d.ts +1 -0
- package/lib/agent-lexical-main.js +11 -0
- package/lib/agent-main.d.ts +1 -0
- package/lib/agent-main.js +11 -0
- package/lib/agent-notebook-main.d.ts +1 -0
- package/lib/agent-notebook-main.js +12 -0
- package/lib/components/AgentConfiguration.d.ts +4 -22
- package/lib/components/AgentConfiguration.js +8 -8
- package/lib/components/chat/components/AgentDetails.d.ts +3 -1
- package/lib/components/chat/components/AgentDetails.js +6 -6
- package/lib/components/chat/components/Chat.d.ts +29 -3
- package/lib/components/chat/components/Chat.js +64 -59
- package/lib/components/chat/components/ChatFloating.d.ts +34 -12
- package/lib/components/chat/components/ChatFloating.js +54 -21
- package/lib/components/chat/components/ChatInline.d.ts +5 -1
- package/lib/components/chat/components/ChatInline.js +8 -1
- package/lib/components/chat/components/ChatSidebar.d.ts +6 -1
- package/lib/components/chat/components/ChatSidebar.js +2 -2
- package/lib/components/chat/components/ChatStandalone.d.ts +6 -1
- package/lib/components/chat/components/ChatStandalone.js +2 -2
- package/lib/components/chat/components/base/ChatBase.d.ts +49 -8
- package/lib/components/chat/components/base/ChatBase.js +544 -149
- package/lib/components/chat/components/base/InputPrompt.d.ts +42 -0
- package/lib/components/chat/components/base/InputPrompt.js +131 -0
- package/lib/components/chat/components/index.d.ts +3 -3
- package/lib/components/chat/components/index.js +1 -1
- package/lib/components/chat/components/parts/ReasoningPart.js +2 -4
- package/lib/components/chat/components/parts/TextPart.js +2 -70
- package/lib/components/chat/components/styles/streamdownStyles.d.ts +23 -0
- package/lib/components/chat/components/styles/streamdownStyles.js +319 -0
- package/lib/components/chat/index.d.ts +1 -1
- package/lib/components/chat/index.js +1 -1
- package/lib/components/chat/inference/DatalayerInferenceProvider.js +16 -12
- package/lib/components/chat/inference/SelfHostedInferenceProvider.js +16 -12
- package/lib/components/chat/protocols/AGUIAdapter.d.ts +10 -3
- package/lib/components/chat/protocols/AGUIAdapter.js +123 -44
- package/lib/components/chat/types/tool.d.ts +5 -2
- package/lib/components/index.d.ts +1 -18
- package/lib/components/index.js +0 -9
- package/lib/config/index.d.ts +0 -4
- package/lib/config/index.js +0 -4
- package/lib/examples/A2UiRestaurantExample.js +1 -1
- package/lib/examples/AgentRuntimeChatExample.d.ts +15 -0
- package/lib/examples/AgentRuntimeChatExample.js +126 -0
- package/lib/examples/{AgentSpaceFormExample.d.ts → AgentRuntimeFormExample.d.ts} +3 -3
- package/lib/examples/{AgentSpaceFormExample.js → AgentRuntimeFormExample.js} +10 -8
- package/lib/examples/AgentRuntimeLexicalExample.js +6 -3
- package/lib/examples/AgentRuntimeLexicalSidebarExample.js +8 -1
- package/lib/examples/AgentRuntimeNotebookExample.js +6 -5
- package/lib/examples/CopilotKitNotebookExample.js +2 -2
- package/lib/examples/JupyterNotebookExample.js +2 -2
- package/lib/{components → examples/components}/Header.d.ts +2 -1
- package/lib/{components → examples/components}/HeaderControls.js +1 -1
- package/lib/{components → examples/components}/LexicalEditor.d.ts +6 -1
- package/lib/{components → examples/components}/LexicalEditor.js +4 -4
- package/lib/{components → examples/components}/MainContent.d.ts +1 -1
- package/lib/{components → examples/components}/MainContent.js +7 -5
- package/lib/examples/components/index.d.ts +16 -0
- package/lib/examples/components/index.js +13 -0
- package/lib/examples/example-selector.js +2 -1
- package/lib/examples/index.d.ts +1 -1
- package/lib/examples/index.js +1 -1
- package/lib/examples/main.js +2 -2
- package/lib/examples/stores/examplesStore.d.ts +2 -23
- package/lib/index.d.ts +2 -1
- package/lib/index.js +1 -0
- package/lib/lexical/ChatInlinePlugin.d.ts +13 -2
- package/lib/lexical/ChatInlinePlugin.js +41 -179
- package/lib/lexical/index.d.ts +1 -0
- package/lib/lexical/index.js +1 -0
- package/lib/lexical/useChatInlineToolbarItems.d.ts +28 -0
- package/lib/lexical/useChatInlineToolbarItems.js +163 -0
- package/lib/runtime/useAgentRuntime.d.ts +1 -1
- package/lib/runtime/useAgentRuntime.js +1 -1
- package/lib/{config/agents/code-ai → specs/agents/codeai}/agents.d.ts +5 -2
- package/lib/specs/agents/codeai/agents.js +151 -0
- package/lib/{config → specs}/agents/codemode-paper/agents.d.ts +4 -2
- package/lib/{config → specs}/agents/codemode-paper/agents.js +39 -19
- package/lib/{config → specs}/agents/datalayer-ai/agents.d.ts +4 -2
- package/lib/{config → specs}/agents/datalayer-ai/agents.js +17 -2
- package/lib/{config → specs}/agents/index.d.ts +3 -1
- package/lib/{config → specs}/agents/index.js +12 -3
- package/lib/{config → specs}/envvars.d.ts +1 -0
- package/lib/{config → specs}/envvars.js +10 -0
- package/lib/specs/index.d.ts +5 -0
- package/lib/specs/index.js +9 -0
- package/lib/{config → specs}/mcpServers.d.ts +2 -1
- package/lib/{config → specs}/mcpServers.js +23 -1
- package/lib/specs/models.d.ts +68 -0
- package/lib/specs/models.js +239 -0
- package/lib/state/substates/AIAgentState.d.ts +0 -1
- package/lib/tools/adapters/agent-runtimes/AgentRuntimesToolAdapter.d.ts +11 -22
- package/lib/tools/adapters/agent-runtimes/AgentRuntimesToolAdapter.js +5 -5
- package/lib/tools/adapters/agent-runtimes/lexicalHooks.d.ts +6 -6
- package/lib/tools/adapters/agent-runtimes/lexicalHooks.js +4 -4
- package/lib/tools/adapters/agent-runtimes/notebookHooks.d.ts +6 -6
- package/lib/tools/adapters/agent-runtimes/notebookHooks.js +4 -4
- package/lib/{types.d.ts → types/Types.d.ts} +32 -6
- package/lib/types/index.d.ts +1 -0
- package/lib/types/index.js +1 -0
- package/package.json +11 -5
- package/scripts/codegen/generate_agents.py +53 -13
- package/scripts/codegen/generate_envvars.py +1 -1
- package/scripts/codegen/generate_mcp_servers.py +5 -5
- package/scripts/codegen/generate_models.py +486 -0
- package/scripts/codegen/generate_skills.py +2 -2
- package/style/primer-primitives.css +22 -0
- package/lib/components/chat/components/elements/ChatInputPrompt.d.ts +0 -37
- package/lib/components/chat/components/elements/ChatInputPrompt.js +0 -150
- package/lib/config/agents/code-ai/agents.js +0 -70
- /package/lib/{components → examples/components}/FooterMetrics.d.ts +0 -0
- /package/lib/{components → examples/components}/FooterMetrics.js +0 -0
- /package/lib/{components → examples/components}/Header.js +0 -0
- /package/lib/{components → examples/components}/HeaderControls.d.ts +0 -0
- /package/lib/{components → examples/components}/MockFileBrowser.d.ts +0 -0
- /package/lib/{components → examples/components}/MockFileBrowser.js +0 -0
- /package/lib/{components → examples/components}/SessionTabs.d.ts +0 -0
- /package/lib/{components → examples/components}/SessionTabs.js +0 -0
- /package/lib/{components → examples/components}/TimeTravel.d.ts +0 -0
- /package/lib/{components → examples/components}/TimeTravel.js +0 -0
- /package/lib/{config/agents/code-ai → specs/agents/codeai}/index.d.ts +0 -0
- /package/lib/{config/agents/code-ai → specs/agents/codeai}/index.js +0 -0
- /package/lib/{config → specs}/agents/codemode-paper/index.d.ts +0 -0
- /package/lib/{config → specs}/agents/codemode-paper/index.js +0 -0
- /package/lib/{config → specs}/agents/datalayer-ai/index.d.ts +0 -0
- /package/lib/{config → specs}/agents/datalayer-ai/index.js +0 -0
- /package/lib/{config → specs}/skills.d.ts +0 -0
- /package/lib/{config → specs}/skills.js +0 -0
- /package/lib/{types.js → types/Types.js} +0 -0
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2025-2026 Datalayer, Inc.
|
|
3
|
+
* Distributed under the terms of the Modified BSD License.
|
|
4
|
+
*/
|
|
5
|
+
import { FILESYSTEM_MCP_SERVER, KAGGLE_MCP_SERVER, TAVILY_MCP_SERVER, } from '../../mcpServers';
|
|
6
|
+
import { GITHUB_SKILL_SPEC } from '../../skills';
|
|
7
|
+
// ============================================================================
|
|
8
|
+
// MCP Server Lookup
|
|
9
|
+
// ============================================================================
|
|
10
|
+
const MCP_SERVER_MAP = {
|
|
11
|
+
filesystem: FILESYSTEM_MCP_SERVER,
|
|
12
|
+
kaggle: KAGGLE_MCP_SERVER,
|
|
13
|
+
tavily: TAVILY_MCP_SERVER,
|
|
14
|
+
};
|
|
15
|
+
/**
|
|
16
|
+
* Map skill IDs to SkillSpec objects, converting to AgentSkillSpec shape.
|
|
17
|
+
*/
|
|
18
|
+
const SKILL_MAP = {
|
|
19
|
+
github: GITHUB_SKILL_SPEC,
|
|
20
|
+
};
|
|
21
|
+
function toAgentSkillSpec(skill) {
|
|
22
|
+
return {
|
|
23
|
+
id: skill.id,
|
|
24
|
+
name: skill.name,
|
|
25
|
+
description: skill.description,
|
|
26
|
+
version: '1.0.0',
|
|
27
|
+
tags: skill.tags,
|
|
28
|
+
enabled: skill.enabled,
|
|
29
|
+
requiredEnvVars: skill.requiredEnvVars,
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
// ============================================================================
|
|
33
|
+
// Agent Specs
|
|
34
|
+
// ============================================================================
|
|
35
|
+
// Codeai Agents
|
|
36
|
+
// ============================================================================
|
|
37
|
+
export const DATA_ACQUISITION_AGENT_SPEC = {
|
|
38
|
+
id: 'codeai/data-acquisition',
|
|
39
|
+
name: 'Data Acquisition Agent',
|
|
40
|
+
description: `Acquires and manages data from various sources including Kaggle datasets and local filesystem operations.`,
|
|
41
|
+
tags: ['data', 'acquisition', 'kaggle', 'filesystem'],
|
|
42
|
+
enabled: true,
|
|
43
|
+
model: 'bedrock:us.anthropic.claude-sonnet-4-5-20250929-v1:0',
|
|
44
|
+
mcpServers: [
|
|
45
|
+
MCP_SERVER_MAP['kaggle'],
|
|
46
|
+
MCP_SERVER_MAP['filesystem'],
|
|
47
|
+
MCP_SERVER_MAP['tavily'],
|
|
48
|
+
],
|
|
49
|
+
skills: [toAgentSkillSpec(SKILL_MAP['github'])],
|
|
50
|
+
environmentName: 'ai-agents-env',
|
|
51
|
+
icon: 'database',
|
|
52
|
+
emoji: '📊',
|
|
53
|
+
color: '#3B82F6',
|
|
54
|
+
suggestions: [
|
|
55
|
+
'Find popular machine learning datasets on Kaggle',
|
|
56
|
+
'Download and explore a dataset for sentiment analysis',
|
|
57
|
+
'List available files in my workspace',
|
|
58
|
+
'Search Kaggle for time series forecasting competitions',
|
|
59
|
+
],
|
|
60
|
+
sandboxVariant: 'jupyter',
|
|
61
|
+
systemPrompt: `You are a data acquisition specialist with access to Kaggle datasets and filesystem tools. You can search for datasets, download data, read and write files, and help users prepare data for analysis. Guide users through finding relevant datasets and organizing their workspace efficiently.
|
|
62
|
+
`,
|
|
63
|
+
systemPromptCodemodeAddons: `## IMPORTANT: Be Honest About Your Capabilities NEVER claim to have tools or capabilities you haven't verified.
|
|
64
|
+
## Core Codemode Tools Use these 4 tools to accomplish any task: 1. **list_servers** - List available MCP servers
|
|
65
|
+
Use this to see what MCP servers you can access.
|
|
66
|
+
|
|
67
|
+
2. **search_tools** - Progressive tool discovery by natural language query
|
|
68
|
+
Use this to find relevant tools before executing tasks.
|
|
69
|
+
|
|
70
|
+
3. **get_tool_details** - Get full tool schema and documentation
|
|
71
|
+
Use this to understand tool parameters before calling them.
|
|
72
|
+
|
|
73
|
+
4. **execute_code** - Run Python code that composes multiple tools
|
|
74
|
+
Use this for complex multi-step operations. Code runs in a PERSISTENT sandbox.
|
|
75
|
+
Variables, functions, and state PERSIST between execute_code calls.
|
|
76
|
+
Import tools using: \`from generated.servers.<server_name> import <function_name>\`
|
|
77
|
+
NEVER use \`import *\` - always use explicit named imports.
|
|
78
|
+
|
|
79
|
+
## Recommended Workflow 1. **Discover**: Use list_servers and search_tools to find relevant tools 2. **Understand**: Use get_tool_details to check parameters 3. **Execute**: Use execute_code to perform multi-step tasks, calling tools as needed
|
|
80
|
+
## Token Efficiency When possible, chain multiple tool calls in a single execute_code block. This reduces output tokens by processing intermediate results in code rather than returning them. If you want to examine results, print subsets, preview (maximum 20 first characters) and/or counts instead of full data, this is really important.
|
|
81
|
+
`,
|
|
82
|
+
};
|
|
83
|
+
export const SIMPLE_AGENT_SPEC = {
|
|
84
|
+
id: 'codeai/simple',
|
|
85
|
+
name: 'A Simple Agent',
|
|
86
|
+
description: `A simple conversational agent. No tools, no MCP servers, no skills — just a helpful AI assistant you can chat with.`,
|
|
87
|
+
tags: ['simple', 'chat', 'assistant'],
|
|
88
|
+
enabled: true,
|
|
89
|
+
model: 'bedrock:us.anthropic.claude-sonnet-4-5-20250929-v1:0',
|
|
90
|
+
mcpServers: [],
|
|
91
|
+
skills: [],
|
|
92
|
+
environmentName: 'ai-agents-env',
|
|
93
|
+
icon: 'share-2',
|
|
94
|
+
emoji: '🤖',
|
|
95
|
+
color: '#6366F1',
|
|
96
|
+
suggestions: [
|
|
97
|
+
'Tell me a joke',
|
|
98
|
+
'Explain quantum computing in simple terms',
|
|
99
|
+
'Help me brainstorm ideas for a weekend project',
|
|
100
|
+
'Summarize the key points of a topic I describe',
|
|
101
|
+
],
|
|
102
|
+
sandboxVariant: 'jupyter',
|
|
103
|
+
systemPrompt: `You are a helpful, friendly AI assistant. You do not have access to any external tools, MCP servers, or skills. Answer questions using your training knowledge, be concise, and let the user know if a question is outside your knowledge.
|
|
104
|
+
`,
|
|
105
|
+
systemPromptCodemodeAddons: undefined,
|
|
106
|
+
};
|
|
107
|
+
// ============================================================================
|
|
108
|
+
// Agent Specs Registry
|
|
109
|
+
// ============================================================================
|
|
110
|
+
export const AGENT_SPECS = {
|
|
111
|
+
// Codeai
|
|
112
|
+
'codeai/data-acquisition': DATA_ACQUISITION_AGENT_SPEC,
|
|
113
|
+
'codeai/simple': SIMPLE_AGENT_SPEC,
|
|
114
|
+
};
|
|
115
|
+
/**
|
|
116
|
+
* Get an agent specification by ID.
|
|
117
|
+
*/
|
|
118
|
+
export function getAgentSpecs(agentId) {
|
|
119
|
+
return AGENT_SPECS[agentId];
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* List all available agent specifications.
|
|
123
|
+
*
|
|
124
|
+
* @param prefix - If provided, only return specs whose ID starts with this prefix.
|
|
125
|
+
*/
|
|
126
|
+
export function listAgentSpecs(prefix) {
|
|
127
|
+
const specs = Object.values(AGENT_SPECS);
|
|
128
|
+
return prefix !== undefined
|
|
129
|
+
? specs.filter(s => s.id.startsWith(prefix))
|
|
130
|
+
: specs;
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* Collect all required environment variables for an agent spec.
|
|
134
|
+
*
|
|
135
|
+
* Iterates over the spec's MCP servers and skills and returns the
|
|
136
|
+
* deduplicated union of their `requiredEnvVars` arrays.
|
|
137
|
+
*/
|
|
138
|
+
export function getAgentSpecRequiredEnvVars(spec) {
|
|
139
|
+
const vars = new Set();
|
|
140
|
+
for (const server of spec.mcpServers) {
|
|
141
|
+
for (const v of server.requiredEnvVars ?? []) {
|
|
142
|
+
vars.add(v);
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
for (const skill of spec.skills) {
|
|
146
|
+
for (const v of skill.requiredEnvVars ?? []) {
|
|
147
|
+
vars.add(v);
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
return Array.from(vars);
|
|
151
|
+
}
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* THIS FILE IS AUTO-GENERATED. DO NOT EDIT MANUALLY.
|
|
6
6
|
* Generated from YAML specifications in specs/agents/
|
|
7
7
|
*/
|
|
8
|
-
import type { AgentSpec } from '../../../types';
|
|
8
|
+
import type { AgentSpec } from '../../../types/Types';
|
|
9
9
|
export declare const CRAWLER_AGENT_SPEC: AgentSpec;
|
|
10
10
|
export declare const DATA_ACQUISITION_AGENT_SPEC: AgentSpec;
|
|
11
11
|
export declare const FINANCIAL_VIZ_AGENT_SPEC: AgentSpec;
|
|
@@ -18,8 +18,10 @@ export declare const AGENT_SPECS: Record<string, AgentSpec>;
|
|
|
18
18
|
export declare function getAgentSpecs(agentId: string): AgentSpec | undefined;
|
|
19
19
|
/**
|
|
20
20
|
* List all available agent specifications.
|
|
21
|
+
*
|
|
22
|
+
* @param prefix - If provided, only return specs whose ID starts with this prefix.
|
|
21
23
|
*/
|
|
22
|
-
export declare function listAgentSpecs(): AgentSpec[];
|
|
24
|
+
export declare function listAgentSpecs(prefix?: string): AgentSpec[];
|
|
23
25
|
/**
|
|
24
26
|
* Collect all required environment variables for an agent spec.
|
|
25
27
|
*
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Copyright (c) 2025-2026 Datalayer, Inc.
|
|
3
3
|
* Distributed under the terms of the Modified BSD License.
|
|
4
4
|
*/
|
|
5
|
-
import { ALPHAVANTAGE_MCP_SERVER, CHART_MCP_SERVER, FILESYSTEM_MCP_SERVER, GITHUB_MCP_SERVER, GOOGLE_WORKSPACE_MCP_SERVER,
|
|
5
|
+
import { ALPHAVANTAGE_MCP_SERVER, CHART_MCP_SERVER, FILESYSTEM_MCP_SERVER, GITHUB_MCP_SERVER, GOOGLE_WORKSPACE_MCP_SERVER, HUGGINGFACE_MCP_SERVER, KAGGLE_MCP_SERVER, TAVILY_MCP_SERVER, } from '../../mcpServers';
|
|
6
6
|
import { GITHUB_SKILL_SPEC } from '../../skills';
|
|
7
7
|
// ============================================================================
|
|
8
8
|
// MCP Server Lookup
|
|
@@ -13,8 +13,8 @@ const MCP_SERVER_MAP = {
|
|
|
13
13
|
filesystem: FILESYSTEM_MCP_SERVER,
|
|
14
14
|
github: GITHUB_MCP_SERVER,
|
|
15
15
|
'google-workspace': GOOGLE_WORKSPACE_MCP_SERVER,
|
|
16
|
+
huggingface: HUGGINGFACE_MCP_SERVER,
|
|
16
17
|
kaggle: KAGGLE_MCP_SERVER,
|
|
17
|
-
slack: SLACK_MCP_SERVER,
|
|
18
18
|
tavily: TAVILY_MCP_SERVER,
|
|
19
19
|
};
|
|
20
20
|
/**
|
|
@@ -45,7 +45,13 @@ export const CRAWLER_AGENT_SPEC = {
|
|
|
45
45
|
description: `Web crawling and research agent that searches the web and GitHub repositories for information.`,
|
|
46
46
|
tags: ['web', 'search', 'research', 'crawler', 'github'],
|
|
47
47
|
enabled: false,
|
|
48
|
-
|
|
48
|
+
model: 'bedrock:us.anthropic.claude-sonnet-4-5-20250929-v1:0',
|
|
49
|
+
mcpServers: [
|
|
50
|
+
MCP_SERVER_MAP['tavily'],
|
|
51
|
+
MCP_SERVER_MAP['github'],
|
|
52
|
+
MCP_SERVER_MAP['kaggle'],
|
|
53
|
+
MCP_SERVER_MAP['huggingface'],
|
|
54
|
+
],
|
|
49
55
|
skills: [],
|
|
50
56
|
environmentName: 'ai-agents-env',
|
|
51
57
|
icon: 'globe',
|
|
@@ -57,6 +63,7 @@ export const CRAWLER_AGENT_SPEC = {
|
|
|
57
63
|
'Research best practices for building RAG applications',
|
|
58
64
|
'Compare popular JavaScript frameworks in 2024',
|
|
59
65
|
],
|
|
66
|
+
sandboxVariant: 'local-eval',
|
|
60
67
|
systemPrompt: `You are a web crawling and research assistant with access to Tavily search and GitHub tools. Use Tavily to search the web for current information and search GitHub repositories for relevant projects. Synthesize information from multiple sources and provide clear summaries with sources cited.
|
|
61
68
|
`,
|
|
62
69
|
systemPromptCodemodeAddons: `## IMPORTANT: Be Honest About Your Capabilities NEVER claim to have tools or capabilities you haven't verified.
|
|
@@ -70,13 +77,13 @@ export const CRAWLER_AGENT_SPEC = {
|
|
|
70
77
|
Use this to understand tool parameters before calling them.
|
|
71
78
|
|
|
72
79
|
4. **execute_code** - Run Python code that composes multiple tools
|
|
73
|
-
Use this for complex multi-step operations. Code runs in a PERSISTENT sandbox.
|
|
74
80
|
Variables, functions, and state PERSIST between execute_code calls.
|
|
75
81
|
Import tools using: \`from generated.servers.<server_name> import <function_name>\`
|
|
76
82
|
NEVER use \`import *\` - always use explicit named imports.
|
|
77
83
|
|
|
78
84
|
## Recommended Workflow 1. **Discover**: Use list_servers and search_tools to find relevant tools 2. **Understand**: Use get_tool_details to check parameters 3. **Execute**: Use execute_code to perform multi-step tasks, calling tools as needed
|
|
79
|
-
## Token Efficiency
|
|
85
|
+
## Token Efficiency Always chain multiple tool calls in a single execute_code block. This reduces output tokens by processing intermediate results in code rather than returning them. If you want to examine results, print subsets, preview (maximum 20 first characters) and/or counts instead of full data, this is really important.
|
|
86
|
+
For huggingface tools, use search_doc tool to understand other tools return's schema.
|
|
80
87
|
`,
|
|
81
88
|
};
|
|
82
89
|
export const DATA_ACQUISITION_AGENT_SPEC = {
|
|
@@ -85,6 +92,7 @@ export const DATA_ACQUISITION_AGENT_SPEC = {
|
|
|
85
92
|
description: `Acquires and manages data from various sources including Kaggle datasets and local filesystem operations.`,
|
|
86
93
|
tags: ['data', 'acquisition', 'kaggle', 'filesystem'],
|
|
87
94
|
enabled: true,
|
|
95
|
+
model: 'bedrock:us.anthropic.claude-sonnet-4-5-20250929-v1:0',
|
|
88
96
|
mcpServers: [
|
|
89
97
|
MCP_SERVER_MAP['kaggle'],
|
|
90
98
|
MCP_SERVER_MAP['filesystem'],
|
|
@@ -101,6 +109,7 @@ export const DATA_ACQUISITION_AGENT_SPEC = {
|
|
|
101
109
|
'List available files in my workspace',
|
|
102
110
|
'Search Kaggle for time series forecasting competitions',
|
|
103
111
|
],
|
|
112
|
+
sandboxVariant: 'local-eval',
|
|
104
113
|
systemPrompt: `You are a data acquisition specialist with access to Kaggle datasets and filesystem tools. You can search for datasets, download data, read and write files, and help users prepare data for analysis. Guide users through finding relevant datasets and organizing their workspace efficiently.
|
|
105
114
|
`,
|
|
106
115
|
systemPromptCodemodeAddons: `## IMPORTANT: Be Honest About Your Capabilities NEVER claim to have tools or capabilities you haven't verified.
|
|
@@ -129,6 +138,7 @@ export const FINANCIAL_VIZ_AGENT_SPEC = {
|
|
|
129
138
|
description: `Analyzes financial market data and creates visualizations and charts.`,
|
|
130
139
|
tags: ['finance', 'stocks', 'visualization', 'charts'],
|
|
131
140
|
enabled: false,
|
|
141
|
+
model: 'bedrock:us.anthropic.claude-sonnet-4-5-20250929-v1:0',
|
|
132
142
|
mcpServers: [MCP_SERVER_MAP['alphavantage'], MCP_SERVER_MAP['chart']],
|
|
133
143
|
skills: [],
|
|
134
144
|
environmentName: 'ai-agents-env',
|
|
@@ -141,6 +151,7 @@ export const FINANCIAL_VIZ_AGENT_SPEC = {
|
|
|
141
151
|
'Analyze the trading volume trends for Tesla',
|
|
142
152
|
'Get the latest market news for tech stocks',
|
|
143
153
|
],
|
|
154
|
+
sandboxVariant: 'local-eval',
|
|
144
155
|
systemPrompt: `You are a financial market analyst with access to Alpha Vantage market data and chart generation tools. You can fetch stock prices, analyze trading volumes, create visualizations, and track market trends. Provide clear insights with relevant data points and generate charts to illustrate patterns.
|
|
145
156
|
`,
|
|
146
157
|
systemPromptCodemodeAddons: `## IMPORTANT: Be Honest About Your Capabilities NEVER claim to have tools or capabilities you haven't verified.
|
|
@@ -169,6 +180,7 @@ export const GITHUB_AGENT_SPEC = {
|
|
|
169
180
|
description: `Manages GitHub repositories, issues, and pull requests with email notification capabilities.`,
|
|
170
181
|
tags: ['github', 'git', 'code', 'email'],
|
|
171
182
|
enabled: false,
|
|
183
|
+
model: 'bedrock:us.anthropic.claude-sonnet-4-5-20250929-v1:0',
|
|
172
184
|
mcpServers: [MCP_SERVER_MAP['github'], MCP_SERVER_MAP['google-workspace']],
|
|
173
185
|
skills: [],
|
|
174
186
|
environmentName: 'ai-agents-env',
|
|
@@ -181,7 +193,8 @@ export const GITHUB_AGENT_SPEC = {
|
|
|
181
193
|
'Show recent commits on the main branch',
|
|
182
194
|
'Search for repositories related to Jupyter notebooks',
|
|
183
195
|
],
|
|
184
|
-
|
|
196
|
+
sandboxVariant: 'local-eval',
|
|
197
|
+
systemPrompt: `You are a GitHub assistant with access to GitHub repository tools and Google Workspace for email notifications.
|
|
185
198
|
`,
|
|
186
199
|
systemPromptCodemodeAddons: `## IMPORTANT: Be Honest About Your Capabilities NEVER claim to have tools or capabilities you haven't verified.
|
|
187
200
|
## Core Codemode Tools Use these 4 tools to accomplish any task: 1. **list_servers** - List available MCP servers
|
|
@@ -194,22 +207,23 @@ export const GITHUB_AGENT_SPEC = {
|
|
|
194
207
|
Use this to understand tool parameters before calling them.
|
|
195
208
|
|
|
196
209
|
4. **execute_code** - Run Python code that composes multiple tools
|
|
197
|
-
|
|
210
|
+
Code runs in a PERSISTENT sandbox.
|
|
198
211
|
Variables, functions, and state PERSIST between execute_code calls.
|
|
199
212
|
Import tools using: \`from generated.servers.<server_name> import <function_name>\`
|
|
200
213
|
NEVER use \`import *\` - always use explicit named imports.
|
|
201
214
|
|
|
202
215
|
## Recommended Workflow 1. **Discover**: Use list_servers and search_tools to find relevant tools 2. **Understand**: Use get_tool_details to check parameters 3. **Execute**: Use execute_code to perform multi-step tasks, calling tools as needed
|
|
203
|
-
## Token Efficiency
|
|
216
|
+
## Token Efficiency Always chain multiple tool calls in a single execute_code block. This reduces output tokens by processing intermediate results in code rather than returning them. If you want to examine results, print subsets, preview (maximum 20 first characters) and/or counts instead of full data, this is really important.
|
|
204
217
|
`,
|
|
205
218
|
};
|
|
206
219
|
export const INFORMATION_ROUTING_AGENT_SPEC = {
|
|
207
220
|
id: 'codemode-paper/information-routing',
|
|
208
221
|
name: 'Information Routing Agent',
|
|
209
|
-
description: `Routes information between Google Drive and
|
|
210
|
-
tags: ['workflow', 'communication', 'gdrive'
|
|
222
|
+
description: `Routes information between Google Drive and other services, managing document workflows and information sharing.`,
|
|
223
|
+
tags: ['workflow', 'communication', 'gdrive'],
|
|
211
224
|
enabled: false,
|
|
212
|
-
|
|
225
|
+
model: 'bedrock:us.anthropic.claude-sonnet-4-5-20250929-v1:0',
|
|
226
|
+
mcpServers: [MCP_SERVER_MAP['google-workspace'], MCP_SERVER_MAP['github']],
|
|
213
227
|
skills: [],
|
|
214
228
|
environmentName: 'ai-agents-env',
|
|
215
229
|
icon: 'share-2',
|
|
@@ -217,11 +231,12 @@ export const INFORMATION_ROUTING_AGENT_SPEC = {
|
|
|
217
231
|
color: '#EC4899',
|
|
218
232
|
suggestions: [
|
|
219
233
|
'Find documents shared with me in Google Drive',
|
|
220
|
-
"Send a summary of today's meeting notes to the",
|
|
221
234
|
'List recent files in my Drive folder',
|
|
222
|
-
'
|
|
235
|
+
'Summarize the contents of a document in my Drive',
|
|
236
|
+
'Search for documents by keyword in Google Drive',
|
|
223
237
|
],
|
|
224
|
-
|
|
238
|
+
sandboxVariant: 'local-eval',
|
|
239
|
+
systemPrompt: `You are an information routing specialist with access to Google Drive tools. You can find and manage documents in Drive and automate document workflows. Help users with document management efficiently. Do not use file extension when referring to Google Drive documents. Always use search_drive_files tool before using get_drive_file_content to find parent folder (using only name and mimeType in the query, no other fields!!!).
|
|
225
240
|
`,
|
|
226
241
|
systemPromptCodemodeAddons: `## IMPORTANT: Be Honest About Your Capabilities NEVER claim to have tools or capabilities you haven't verified.
|
|
227
242
|
## Core Codemode Tools Use these 4 tools to accomplish any task: 1. **list_servers** - List available MCP servers
|
|
@@ -231,7 +246,7 @@ export const INFORMATION_ROUTING_AGENT_SPEC = {
|
|
|
231
246
|
Use this to find relevant tools before executing tasks.
|
|
232
247
|
|
|
233
248
|
3. **get_tool_details** - Get full tool schema and documentation
|
|
234
|
-
Use this to understand tool parameters before calling them.
|
|
249
|
+
Use this to understand tool parameters before calling them. If no output schema is specified, try using the tool on a subset and preview the result.
|
|
235
250
|
|
|
236
251
|
4. **execute_code** - Run Python code that composes multiple tools
|
|
237
252
|
Use this for complex multi-step operations. Code runs in a PERSISTENT sandbox.
|
|
@@ -239,8 +254,8 @@ export const INFORMATION_ROUTING_AGENT_SPEC = {
|
|
|
239
254
|
Import tools using: \`from generated.servers.<server_name> import <function_name>\`
|
|
240
255
|
NEVER use \`import *\` - always use explicit named imports.
|
|
241
256
|
|
|
242
|
-
## Recommended Workflow 1. **Discover**: Use list_servers and search_tools to find relevant tools 2. **Understand**: Use get_tool_details to check
|
|
243
|
-
## Token Efficiency
|
|
257
|
+
## Recommended Workflow 1. **Discover**: Use list_servers and search_tools to find relevant tools 2. **Understand**: Use get_tool_details to check input and output schemas 3. **Execute**: Use execute_code to perform multi-step tasks, calling tools as needed
|
|
258
|
+
## Token Efficiency Always chain multiple tool calls in a single execute_code block. This reduces output tokens by processing intermediate results in code rather than returning them. If you want to examine results, print subsets, preview (maximum 20 first characters) and/or counts instead of full data, this is really important!!!!
|
|
244
259
|
`,
|
|
245
260
|
};
|
|
246
261
|
// ============================================================================
|
|
@@ -262,9 +277,14 @@ export function getAgentSpecs(agentId) {
|
|
|
262
277
|
}
|
|
263
278
|
/**
|
|
264
279
|
* List all available agent specifications.
|
|
280
|
+
*
|
|
281
|
+
* @param prefix - If provided, only return specs whose ID starts with this prefix.
|
|
265
282
|
*/
|
|
266
|
-
export function listAgentSpecs() {
|
|
267
|
-
|
|
283
|
+
export function listAgentSpecs(prefix) {
|
|
284
|
+
const specs = Object.values(AGENT_SPECS);
|
|
285
|
+
return prefix !== undefined
|
|
286
|
+
? specs.filter(s => s.id.startsWith(prefix))
|
|
287
|
+
: specs;
|
|
268
288
|
}
|
|
269
289
|
/**
|
|
270
290
|
* Collect all required environment variables for an agent spec.
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* THIS FILE IS AUTO-GENERATED. DO NOT EDIT MANUALLY.
|
|
6
6
|
* Generated from YAML specifications in specs/agents/
|
|
7
7
|
*/
|
|
8
|
-
import type { AgentSpec } from '../../../types';
|
|
8
|
+
import type { AgentSpec } from '../../../types/Types';
|
|
9
9
|
export declare const CRAWLER_AGENT_SPEC: AgentSpec;
|
|
10
10
|
export declare const DATA_ACQUISITION_AGENT_SPEC: AgentSpec;
|
|
11
11
|
export declare const FINANCIAL_AGENT_SPEC: AgentSpec;
|
|
@@ -18,8 +18,10 @@ export declare const AGENT_SPECS: Record<string, AgentSpec>;
|
|
|
18
18
|
export declare function getAgentSpecs(agentId: string): AgentSpec | undefined;
|
|
19
19
|
/**
|
|
20
20
|
* List all available agent specifications.
|
|
21
|
+
*
|
|
22
|
+
* @param prefix - If provided, only return specs whose ID starts with this prefix.
|
|
21
23
|
*/
|
|
22
|
-
export declare function listAgentSpecs(): AgentSpec[];
|
|
24
|
+
export declare function listAgentSpecs(prefix?: string): AgentSpec[];
|
|
23
25
|
/**
|
|
24
26
|
* Collect all required environment variables for an agent spec.
|
|
25
27
|
*
|
|
@@ -42,6 +42,7 @@ export const CRAWLER_AGENT_SPEC = {
|
|
|
42
42
|
description: `Web crawling and research agent that searches the web and GitHub repositories for information.`,
|
|
43
43
|
tags: ['web', 'search', 'research', 'crawler', 'github'],
|
|
44
44
|
enabled: false,
|
|
45
|
+
model: 'bedrock:us.anthropic.claude-sonnet-4-5-20250929-v1:0',
|
|
45
46
|
mcpServers: [MCP_SERVER_MAP['tavily']],
|
|
46
47
|
skills: [toAgentSkillSpec(SKILL_MAP['github'])],
|
|
47
48
|
environmentName: 'ai-agents-env',
|
|
@@ -54,6 +55,7 @@ export const CRAWLER_AGENT_SPEC = {
|
|
|
54
55
|
'Research best practices for building RAG applications',
|
|
55
56
|
'Compare popular JavaScript frameworks in 2024',
|
|
56
57
|
],
|
|
58
|
+
sandboxVariant: 'jupyter',
|
|
57
59
|
systemPrompt: `You are a web crawling and research assistant with access to Tavily search and GitHub tools. Use Tavily to search the web for current information and search GitHub repositories for relevant projects. Synthesize information from multiple sources and provide clear summaries with sources cited.
|
|
58
60
|
`,
|
|
59
61
|
systemPromptCodemodeAddons: `## IMPORTANT: Be Honest About Your Capabilities NEVER claim to have tools or capabilities you haven't verified.
|
|
@@ -82,6 +84,7 @@ export const DATA_ACQUISITION_AGENT_SPEC = {
|
|
|
82
84
|
description: `Acquires and manages data from various sources including Kaggle datasets and local filesystem operations.`,
|
|
83
85
|
tags: ['data', 'acquisition', 'kaggle', 'filesystem'],
|
|
84
86
|
enabled: true,
|
|
87
|
+
model: 'bedrock:us.anthropic.claude-sonnet-4-5-20250929-v1:0',
|
|
85
88
|
mcpServers: [
|
|
86
89
|
MCP_SERVER_MAP['kaggle'],
|
|
87
90
|
MCP_SERVER_MAP['filesystem'],
|
|
@@ -98,6 +101,7 @@ export const DATA_ACQUISITION_AGENT_SPEC = {
|
|
|
98
101
|
'List available files in my workspace',
|
|
99
102
|
'Search Kaggle for time series forecasting competitions',
|
|
100
103
|
],
|
|
104
|
+
sandboxVariant: 'jupyter',
|
|
101
105
|
systemPrompt: `You are a data acquisition specialist with access to Kaggle datasets and filesystem tools. You can search for datasets, download data, read and write files, and help users prepare data for analysis. Guide users through finding relevant datasets and organizing their workspace efficiently.
|
|
102
106
|
`,
|
|
103
107
|
systemPromptCodemodeAddons: `## IMPORTANT: Be Honest About Your Capabilities NEVER claim to have tools or capabilities you haven't verified.
|
|
@@ -126,6 +130,7 @@ export const FINANCIAL_AGENT_SPEC = {
|
|
|
126
130
|
description: `Analyzes financial market data and creates visualizations and charts.`,
|
|
127
131
|
tags: ['finance', 'stocks', 'visualization', 'charts'],
|
|
128
132
|
enabled: false,
|
|
133
|
+
model: 'bedrock:us.anthropic.claude-sonnet-4-5-20250929-v1:0',
|
|
129
134
|
mcpServers: [MCP_SERVER_MAP['alphavantage']],
|
|
130
135
|
skills: [],
|
|
131
136
|
environmentName: 'ai-agents-env',
|
|
@@ -138,6 +143,7 @@ export const FINANCIAL_AGENT_SPEC = {
|
|
|
138
143
|
'Analyze the trading volume trends for Tesla',
|
|
139
144
|
'Get the latest market news for tech stocks',
|
|
140
145
|
],
|
|
146
|
+
sandboxVariant: 'jupyter',
|
|
141
147
|
systemPrompt: `You are a financial market analyst with access to Alpha Vantage market data tools. You can fetch stock prices, analyze trading volumes, create visualizations, and track market trends. Provide clear insights with relevant data points and suggest visualization approaches when appropriate.
|
|
142
148
|
`,
|
|
143
149
|
systemPromptCodemodeAddons: `## IMPORTANT: Be Honest About Your Capabilities NEVER claim to have tools or capabilities you haven't verified.
|
|
@@ -166,6 +172,7 @@ export const GITHUB_AGENT_SPEC = {
|
|
|
166
172
|
description: `Manages GitHub repositories, issues, and pull requests with email notification capabilities.`,
|
|
167
173
|
tags: ['github', 'git', 'code', 'email'],
|
|
168
174
|
enabled: false,
|
|
175
|
+
model: 'bedrock:us.anthropic.claude-sonnet-4-5-20250929-v1:0',
|
|
169
176
|
mcpServers: [MCP_SERVER_MAP['google-workspace']],
|
|
170
177
|
skills: [toAgentSkillSpec(SKILL_MAP['github'])],
|
|
171
178
|
environmentName: 'ai-agents-env',
|
|
@@ -178,6 +185,7 @@ export const GITHUB_AGENT_SPEC = {
|
|
|
178
185
|
'Show recent commits on the main branch',
|
|
179
186
|
'Search for repositories related to Jupyter notebooks',
|
|
180
187
|
],
|
|
188
|
+
sandboxVariant: 'jupyter',
|
|
181
189
|
systemPrompt: `You are a GitHub assistant with access to GitHub skills and Google Workspace for email notifications. You can list and search repositories, issues, and pull requests, create new issues, review PRs, search code, and send email notifications. Always confirm repository names before creating issues/PRs and provide clear summaries when listing multiple items.
|
|
182
190
|
`,
|
|
183
191
|
systemPromptCodemodeAddons: `## IMPORTANT: Be Honest About Your Capabilities NEVER claim to have tools or capabilities you haven't verified.
|
|
@@ -206,6 +214,7 @@ export const SIMPLE_AGENT_SPEC = {
|
|
|
206
214
|
description: `A simple conversational agent. No tools, no MCP servers, no skills — just a helpful AI assistant you can chat with.`,
|
|
207
215
|
tags: ['simple', 'chat', 'assistant'],
|
|
208
216
|
enabled: true,
|
|
217
|
+
model: 'bedrock:us.anthropic.claude-sonnet-4-5-20250929-v1:0',
|
|
209
218
|
mcpServers: [],
|
|
210
219
|
skills: [],
|
|
211
220
|
environmentName: 'ai-agents-env',
|
|
@@ -218,6 +227,7 @@ export const SIMPLE_AGENT_SPEC = {
|
|
|
218
227
|
'Help me brainstorm ideas for a weekend project',
|
|
219
228
|
'Summarize the key points of a topic I describe',
|
|
220
229
|
],
|
|
230
|
+
sandboxVariant: 'jupyter',
|
|
221
231
|
systemPrompt: `You are a helpful, friendly AI assistant. You do not have access to any external tools, MCP servers, or skills. Answer questions using your training knowledge, be concise, and let the user know if a question is outside your knowledge.
|
|
222
232
|
`,
|
|
223
233
|
systemPromptCodemodeAddons: undefined,
|
|
@@ -241,9 +251,14 @@ export function getAgentSpecs(agentId) {
|
|
|
241
251
|
}
|
|
242
252
|
/**
|
|
243
253
|
* List all available agent specifications.
|
|
254
|
+
*
|
|
255
|
+
* @param prefix - If provided, only return specs whose ID starts with this prefix.
|
|
244
256
|
*/
|
|
245
|
-
export function listAgentSpecs() {
|
|
246
|
-
|
|
257
|
+
export function listAgentSpecs(prefix) {
|
|
258
|
+
const specs = Object.values(AGENT_SPECS);
|
|
259
|
+
return prefix !== undefined
|
|
260
|
+
? specs.filter(s => s.id.startsWith(prefix))
|
|
261
|
+
: specs;
|
|
247
262
|
}
|
|
248
263
|
/**
|
|
249
264
|
* Collect all required environment variables for an agent spec.
|
|
@@ -11,8 +11,10 @@ export declare const AGENT_SPECS: Record<string, AgentSpec>;
|
|
|
11
11
|
export declare function getAgentSpecs(agentId: string): AgentSpec | undefined;
|
|
12
12
|
/**
|
|
13
13
|
* List all available agent specifications.
|
|
14
|
+
*
|
|
15
|
+
* @param prefix - If provided, only return specs whose ID starts with this prefix.
|
|
14
16
|
*/
|
|
15
|
-
export declare function listAgentSpecs(): AgentSpec[];
|
|
17
|
+
export declare function listAgentSpecs(prefix?: string): AgentSpec[];
|
|
16
18
|
/**
|
|
17
19
|
* Collect all required environment variables for an agent spec.
|
|
18
20
|
*/
|
|
@@ -2,9 +2,13 @@
|
|
|
2
2
|
* Copyright (c) 2025-2026 Datalayer, Inc.
|
|
3
3
|
* Distributed under the terms of the Modified BSD License.
|
|
4
4
|
*/
|
|
5
|
+
import { AGENT_SPECS as CODEAI_AGENTS } from './codeai';
|
|
6
|
+
import { AGENT_SPECS as CODEMODE_PAPER_AGENTS } from './codemode-paper';
|
|
5
7
|
import { AGENT_SPECS as DATALAYER_AI_AGENTS } from './datalayer-ai';
|
|
6
|
-
//
|
|
8
|
+
// Merge all agent specs from subfolders
|
|
7
9
|
export const AGENT_SPECS = {
|
|
10
|
+
...CODEAI_AGENTS,
|
|
11
|
+
...CODEMODE_PAPER_AGENTS,
|
|
8
12
|
...DATALAYER_AI_AGENTS,
|
|
9
13
|
};
|
|
10
14
|
/**
|
|
@@ -15,9 +19,14 @@ export function getAgentSpecs(agentId) {
|
|
|
15
19
|
}
|
|
16
20
|
/**
|
|
17
21
|
* List all available agent specifications.
|
|
22
|
+
*
|
|
23
|
+
* @param prefix - If provided, only return specs whose ID starts with this prefix.
|
|
18
24
|
*/
|
|
19
|
-
export function listAgentSpecs() {
|
|
20
|
-
|
|
25
|
+
export function listAgentSpecs(prefix) {
|
|
26
|
+
const specs = Object.values(AGENT_SPECS);
|
|
27
|
+
return prefix !== undefined
|
|
28
|
+
? specs.filter(s => s.id.startsWith(prefix))
|
|
29
|
+
: specs;
|
|
21
30
|
}
|
|
22
31
|
/**
|
|
23
32
|
* Collect all required environment variables for an agent spec.
|
|
@@ -19,6 +19,7 @@ export declare const ALPHAVANTAGE_API_KEY_SPEC: EnvvarSpec;
|
|
|
19
19
|
export declare const GITHUB_TOKEN_SPEC: EnvvarSpec;
|
|
20
20
|
export declare const GOOGLE_OAUTH_CLIENT_ID_SPEC: EnvvarSpec;
|
|
21
21
|
export declare const GOOGLE_OAUTH_CLIENT_SECRET_SPEC: EnvvarSpec;
|
|
22
|
+
export declare const HF_TOKEN_SPEC: EnvvarSpec;
|
|
22
23
|
export declare const KAGGLE_TOKEN_SPEC: EnvvarSpec;
|
|
23
24
|
export declare const SLACK_BOT_TOKEN_SPEC: EnvvarSpec;
|
|
24
25
|
export declare const SLACK_CHANNEL_IDS_SPEC: EnvvarSpec;
|
|
@@ -48,6 +48,15 @@ export const GOOGLE_OAUTH_CLIENT_SECRET_SPEC = {
|
|
|
48
48
|
icon: 'lock',
|
|
49
49
|
emoji: '🔒',
|
|
50
50
|
};
|
|
51
|
+
export const HF_TOKEN_SPEC = {
|
|
52
|
+
id: 'HF_TOKEN',
|
|
53
|
+
name: 'Hugging Face Token',
|
|
54
|
+
description: 'Access token for Hugging Face API. Required for Hugging Face MCP server authentication. Create a READ token from your settings.',
|
|
55
|
+
registrationUrl: 'https://huggingface.co/settings/tokens',
|
|
56
|
+
tags: ['authentication', 'api-key', 'huggingface', 'machine-learning'],
|
|
57
|
+
icon: 'key',
|
|
58
|
+
emoji: '🔑',
|
|
59
|
+
};
|
|
51
60
|
export const KAGGLE_TOKEN_SPEC = {
|
|
52
61
|
id: 'KAGGLE_TOKEN',
|
|
53
62
|
name: 'Kaggle API Token',
|
|
@@ -100,6 +109,7 @@ export const ENVVAR_CATALOG = {
|
|
|
100
109
|
GITHUB_TOKEN: GITHUB_TOKEN_SPEC,
|
|
101
110
|
GOOGLE_OAUTH_CLIENT_ID: GOOGLE_OAUTH_CLIENT_ID_SPEC,
|
|
102
111
|
GOOGLE_OAUTH_CLIENT_SECRET: GOOGLE_OAUTH_CLIENT_SECRET_SPEC,
|
|
112
|
+
HF_TOKEN: HF_TOKEN_SPEC,
|
|
103
113
|
KAGGLE_TOKEN: KAGGLE_TOKEN_SPEC,
|
|
104
114
|
SLACK_BOT_TOKEN: SLACK_BOT_TOKEN_SPEC,
|
|
105
115
|
SLACK_CHANNEL_IDS: SLACK_CHANNEL_IDS_SPEC,
|
|
@@ -6,12 +6,13 @@
|
|
|
6
6
|
* This file is AUTO-GENERATED from YAML specifications.
|
|
7
7
|
* DO NOT EDIT MANUALLY - run 'make specs' to regenerate.
|
|
8
8
|
*/
|
|
9
|
-
import type { MCPServer } from '../types';
|
|
9
|
+
import type { MCPServer } from '../types/Types';
|
|
10
10
|
export declare const ALPHAVANTAGE_MCP_SERVER: MCPServer;
|
|
11
11
|
export declare const CHART_MCP_SERVER: MCPServer;
|
|
12
12
|
export declare const FILESYSTEM_MCP_SERVER: MCPServer;
|
|
13
13
|
export declare const GITHUB_MCP_SERVER: MCPServer;
|
|
14
14
|
export declare const GOOGLE_WORKSPACE_MCP_SERVER: MCPServer;
|
|
15
|
+
export declare const HUGGINGFACE_MCP_SERVER: MCPServer;
|
|
15
16
|
export declare const KAGGLE_MCP_SERVER: MCPServer;
|
|
16
17
|
export declare const SLACK_MCP_SERVER: MCPServer;
|
|
17
18
|
export declare const TAVILY_MCP_SERVER: MCPServer;
|
|
@@ -63,7 +63,7 @@ export const GITHUB_MCP_SERVER = {
|
|
|
63
63
|
'-i',
|
|
64
64
|
'--rm',
|
|
65
65
|
'-e',
|
|
66
|
-
'
|
|
66
|
+
'GITHUB_PERSONAL_ACCESS_TOKEN',
|
|
67
67
|
'ghcr.io/github/github-mcp-server',
|
|
68
68
|
],
|
|
69
69
|
transport: 'stdio',
|
|
@@ -87,6 +87,27 @@ export const GOOGLE_WORKSPACE_MCP_SERVER = {
|
|
|
87
87
|
tools: [],
|
|
88
88
|
requiredEnvVars: ['GOOGLE_OAUTH_CLIENT_ID', 'GOOGLE_OAUTH_CLIENT_SECRET'],
|
|
89
89
|
};
|
|
90
|
+
export const HUGGINGFACE_MCP_SERVER = {
|
|
91
|
+
id: 'huggingface',
|
|
92
|
+
name: 'Hugging Face',
|
|
93
|
+
description: 'Hugging Face models, datasets, spaces, and papers access',
|
|
94
|
+
icon: 'brain',
|
|
95
|
+
emoji: '🤗',
|
|
96
|
+
url: '',
|
|
97
|
+
command: 'npx',
|
|
98
|
+
args: [
|
|
99
|
+
'-y',
|
|
100
|
+
'mcp-remote',
|
|
101
|
+
'https://huggingface.co/mcp',
|
|
102
|
+
'--header',
|
|
103
|
+
'Authorization: Bearer ${HF_TOKEN}',
|
|
104
|
+
],
|
|
105
|
+
transport: 'stdio',
|
|
106
|
+
enabled: true,
|
|
107
|
+
isAvailable: false,
|
|
108
|
+
tools: [],
|
|
109
|
+
requiredEnvVars: ['HF_TOKEN'],
|
|
110
|
+
};
|
|
90
111
|
export const KAGGLE_MCP_SERVER = {
|
|
91
112
|
id: 'kaggle',
|
|
92
113
|
name: 'Kaggle',
|
|
@@ -147,6 +168,7 @@ export const MCP_SERVER_LIBRARY = {
|
|
|
147
168
|
filesystem: FILESYSTEM_MCP_SERVER,
|
|
148
169
|
github: GITHUB_MCP_SERVER,
|
|
149
170
|
'google-workspace': GOOGLE_WORKSPACE_MCP_SERVER,
|
|
171
|
+
huggingface: HUGGINGFACE_MCP_SERVER,
|
|
150
172
|
kaggle: KAGGLE_MCP_SERVER,
|
|
151
173
|
slack: SLACK_MCP_SERVER,
|
|
152
174
|
tavily: TAVILY_MCP_SERVER,
|