@openenthrium/oe-runtime 1.5.9 → 1.6.1
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 +182 -44
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,9 +1,12 @@
|
|
|
1
|
-
#
|
|
1
|
+
# Open Enthrium AI Agent Runtime · `@openenthrium/oe-runtime`
|
|
2
2
|
|
|
3
|
-
**
|
|
3
|
+
**OE Runtime · Standalone AI Agent Executor · Apache-2.0 · Windows · Linux · macOS**
|
|
4
|
+
|
|
5
|
+
Run AI agents against any enterprise data source — no cloud, no platform, just a single binary.
|
|
4
6
|
|
|
5
7
|
[](https://www.npmjs.com/package/@openenthrium/oe-runtime)
|
|
6
8
|
[](https://github.com/enthrium/open-enthrium-ai-agent-runtime/blob/main/LICENSE)
|
|
9
|
+
[](https://github.com/enthrium/open-enthrium-ai-agent-runtime/releases)
|
|
7
10
|
[](https://www.openenthrium.com/runtime.html)
|
|
8
11
|
[](https://discord.com/invite/vWsZ24Msn)
|
|
9
12
|
|
|
@@ -11,13 +14,29 @@
|
|
|
11
14
|
|
|
12
15
|
## What is OE Runtime?
|
|
13
16
|
|
|
14
|
-
OE Runtime is a standalone binary that reads a declarative YAML agent file, connects to your enterprise data sources, and runs an AI-powered workflow — locally or as an HTTP API server.
|
|
17
|
+
Open Enthrium AI Agent Runtime (OE Runtime) is a standalone, cross-platform binary that reads a declarative YAML agent file, connects to your enterprise data sources, and runs an AI-powered workflow — locally or as an HTTP API server.
|
|
18
|
+
|
|
19
|
+
- **No LangChain. No Python. No code.** Agents are plain YAML files.
|
|
20
|
+
- **No install.** Single binary for Windows, Linux, and macOS. No Node.js, no Docker on the target machine.
|
|
21
|
+
- **45+ connector categories.** PostgreSQL, MySQL, MongoDB, S3, Slack, GitHub, SSH, REST API, Kafka, and 2,600+ more — all built in.
|
|
22
|
+
- **HTTP server mode.** `--serve` turns the runtime into a persistent API server any app can call.
|
|
23
|
+
- **Self-hosted.** Runs entirely on your own machine. No call-home. Own your data.
|
|
24
|
+
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
## Sample Library
|
|
28
|
+
|
|
29
|
+
Download [oe-runtime-samples.zip](https://github.com/enthrium/open-enthrium-ai-agent-runtime/releases/latest/download/oe-runtime-samples.zip) for 21 ready-to-run starter kits — each with a complete `agent.yaml` + `oe-config.json`:
|
|
30
|
+
|
|
31
|
+
`sql-databases` · `nosql-cache` · `file-storage` · `cloud-drives` · `email` · `team-messaging` · `telegram` · `productivity-crm` · `rest-api` · `graphql` · `ssh` · `message-queues` · `iot-messaging` · `web-search` · `ocr-vision` · `image-generation` · `speech-audio` · `video-generation` · `music-generation` · `blockchain-web3` · `directory-identity`
|
|
15
32
|
|
|
16
33
|
---
|
|
17
34
|
|
|
18
35
|
## Quick Start
|
|
19
36
|
|
|
20
|
-
|
|
37
|
+
No binary download needed — `npx` handles everything automatically.
|
|
38
|
+
|
|
39
|
+
**1. Edit `oe-config.json`** with your LLM key and connector credentials
|
|
21
40
|
|
|
22
41
|
```json
|
|
23
42
|
{
|
|
@@ -28,45 +47,81 @@ OE Runtime is a standalone binary that reads a declarative YAML agent file, conn
|
|
|
28
47
|
},
|
|
29
48
|
"connectors": [
|
|
30
49
|
{
|
|
31
|
-
"connection_name": "
|
|
50
|
+
"connection_name": "My Database",
|
|
32
51
|
"connection_type": "postgresql",
|
|
33
52
|
"host": "localhost",
|
|
34
53
|
"port": 5432,
|
|
35
54
|
"database": "mydb",
|
|
36
55
|
"user": "postgres",
|
|
37
|
-
"password": "
|
|
56
|
+
"password": "YOUR_DB_PASSWORD"
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
"connection_name": "My Telegram Bot",
|
|
60
|
+
"connection_type": "telegram",
|
|
61
|
+
"baseUrl": "https://api.telegram.org/botYOUR_BOT_TOKEN"
|
|
38
62
|
}
|
|
39
63
|
],
|
|
40
64
|
"server": {
|
|
41
|
-
"enabled":
|
|
65
|
+
"enabled": false,
|
|
42
66
|
"port": 3333,
|
|
43
67
|
"apiKey": "your-secret"
|
|
44
68
|
}
|
|
45
69
|
}
|
|
46
70
|
```
|
|
47
71
|
|
|
48
|
-
**2.
|
|
72
|
+
**2. Edit `agent.yaml`** if needed — adjust the instructions or steps for your use case
|
|
73
|
+
|
|
74
|
+
Agents are plain YAML files. No Python. No framework to learn.
|
|
49
75
|
|
|
50
76
|
```yaml
|
|
51
77
|
name: DB Summary Agent
|
|
52
|
-
description:
|
|
53
|
-
instructions:
|
|
78
|
+
description: Queries a database and sends a summary to Telegram
|
|
79
|
+
instructions: |
|
|
80
|
+
You are a data analyst. Query the database for key metrics,
|
|
81
|
+
summarise the findings clearly, and send the report to Telegram.
|
|
82
|
+
Complete all steps fully before writing your report.
|
|
54
83
|
steps:
|
|
55
|
-
- name:
|
|
56
|
-
content:
|
|
84
|
+
- name: Query metrics
|
|
85
|
+
content: |
|
|
86
|
+
Run exactly this query against My Database, no other queries:
|
|
87
|
+
SELECT table_name FROM information_schema.tables
|
|
88
|
+
WHERE table_schema = 'public';
|
|
89
|
+
Summarise the results.
|
|
90
|
+
- name: Get chat ID
|
|
91
|
+
content: |
|
|
92
|
+
Call My Telegram Bot:
|
|
93
|
+
GET /getUpdates with params: { "limit": "1" }
|
|
94
|
+
Extract the chat_id from the most recent message.
|
|
95
|
+
- name: Send report
|
|
96
|
+
content: |
|
|
97
|
+
Send the summary via My Telegram Bot:
|
|
98
|
+
POST /sendMessage with body:
|
|
99
|
+
{
|
|
100
|
+
"chat_id": "<chat_id from previous step>",
|
|
101
|
+
"text": "<your summary>",
|
|
102
|
+
"parse_mode": "Markdown"
|
|
103
|
+
}
|
|
57
104
|
connectors:
|
|
58
|
-
- connection_name:
|
|
105
|
+
- connection_name: My Database
|
|
59
106
|
connection_type: postgresql
|
|
107
|
+
- connection_name: My Telegram Bot
|
|
108
|
+
connection_type: telegram
|
|
60
109
|
```
|
|
61
110
|
|
|
62
|
-
|
|
111
|
+
### YAML Agent Reference
|
|
63
112
|
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
113
|
+
| Field | Required | Description |
|
|
114
|
+
|---|---|---|
|
|
115
|
+
| `name` | No | Display name shown in terminal |
|
|
116
|
+
| `description` | No | Short description |
|
|
117
|
+
| `instructions` | Yes | System prompt — what the agent does and how |
|
|
118
|
+
| `params` | No | Named parameters; substituted via `{{name}}` in prompt and steps |
|
|
119
|
+
| `connectors` | No | Connector references matched to credentials in `oe-config.json` |
|
|
120
|
+
| `steps` | No | Named workflow steps injected sequentially into the system prompt |
|
|
121
|
+
| `maxRounds` | No | Max LLM tool-call iterations (default: 25) |
|
|
122
|
+
|
|
123
|
+
**3. Run it**
|
|
68
124
|
|
|
69
|
-
Windows:
|
|
70
125
|
```bash
|
|
71
126
|
npx -y @openenthrium/oe-runtime agent.yaml --config oe-config.json
|
|
72
127
|
```
|
|
@@ -86,7 +141,35 @@ npx -y @openenthrium/oe-runtime agent.yaml --config oe-config.json
|
|
|
86
141
|
|
|
87
142
|
---
|
|
88
143
|
|
|
89
|
-
## HTTP Server
|
|
144
|
+
## HTTP Server Mode
|
|
145
|
+
|
|
146
|
+
Turn the runtime into a persistent HTTP API — call agents from mobile apps, web services, or any HTTP client.
|
|
147
|
+
|
|
148
|
+
**Step 1 — Enable server mode in `oe-config.json`:**
|
|
149
|
+
|
|
150
|
+
```json
|
|
151
|
+
{
|
|
152
|
+
"llm": { "provider": "openai", "apiKey": "sk-...", "model": "gpt-4o" },
|
|
153
|
+
"server": {
|
|
154
|
+
"enabled": true,
|
|
155
|
+
"port": 3333,
|
|
156
|
+
"apiKey": "your-secret-api-key"
|
|
157
|
+
},
|
|
158
|
+
"connectors": [ ... ]
|
|
159
|
+
}
|
|
160
|
+
```
|
|
161
|
+
|
|
162
|
+
> Set **`"enabled": true`** to activate server mode on startup.
|
|
163
|
+
|
|
164
|
+
**Step 2 — Start in serve mode:**
|
|
165
|
+
|
|
166
|
+
```bash
|
|
167
|
+
npx -y @openenthrium/oe-runtime --serve --config oe-config.json
|
|
168
|
+
# 🚀 OE Runtime Server v1.5.9
|
|
169
|
+
# Listening http://localhost:3333
|
|
170
|
+
```
|
|
171
|
+
|
|
172
|
+
### Endpoints
|
|
90
173
|
|
|
91
174
|
All endpoints require the `x-api-key` header when `server.apiKey` is set in your config.
|
|
92
175
|
|
|
@@ -101,7 +184,7 @@ All endpoints require the `x-api-key` header when `server.apiKey` is set in your
|
|
|
101
184
|
{
|
|
102
185
|
"yaml": "name: Hi\nsteps:\n - name: Greet\n content: Say hi!",
|
|
103
186
|
"params": {},
|
|
104
|
-
"input": "
|
|
187
|
+
"input": "Run"
|
|
105
188
|
}
|
|
106
189
|
```
|
|
107
190
|
|
|
@@ -110,7 +193,7 @@ All endpoints require the `x-api-key` header when `server.apiKey` is set in your
|
|
|
110
193
|
{
|
|
111
194
|
"file": "/path/to/agent.yaml",
|
|
112
195
|
"params": { "topic": "AI trends" },
|
|
113
|
-
"input": "
|
|
196
|
+
"input": "Run"
|
|
114
197
|
}
|
|
115
198
|
```
|
|
116
199
|
|
|
@@ -128,50 +211,105 @@ curl http://localhost:3333/health -H "x-api-key: your-secret"
|
|
|
128
211
|
curl -X POST http://localhost:3333/run \
|
|
129
212
|
-H "x-api-key: your-secret" \
|
|
130
213
|
-H "Content-Type: application/json" \
|
|
131
|
-
-d '{"yaml":"name: Hi\nsteps:\n - name: Greet\n content: Say hi!"}'
|
|
214
|
+
-d '{"yaml":"name: Hi\nsteps:\n - name: Greet\n content: Say hi!","input":"Run"}'
|
|
132
215
|
|
|
133
216
|
# Run agent from file
|
|
134
217
|
curl -X POST http://localhost:3333/run-file \
|
|
135
218
|
-H "x-api-key: your-secret" \
|
|
136
219
|
-H "Content-Type: application/json" \
|
|
137
|
-
-d '{"file":"/path/to/agent.yaml","params":{"topic":"AI trends"}}'
|
|
220
|
+
-d '{"file":"/path/to/agent.yaml","params":{"topic":"AI trends"},"input":"Run"}'
|
|
221
|
+
```
|
|
222
|
+
|
|
223
|
+
---
|
|
224
|
+
|
|
225
|
+
## Binary vs Node.js Mode
|
|
226
|
+
|
|
227
|
+
Both **`npx @openenthrium/oe-runtime`** and the standalone binary exclude Oracle, MSSQL, SQLite, and Snowflake — these use native C++ addons that cannot be bundled into a single executable. npx downloads the same binary under the hood, so it has the same limitation.
|
|
228
|
+
|
|
229
|
+
If you need any of these four, run with Node.js directly instead:
|
|
230
|
+
```bash
|
|
231
|
+
git clone https://github.com/enthrium/open-enthrium-ai-agent-runtime.git
|
|
232
|
+
cd open-enthrium-ai-agent-runtime/server
|
|
233
|
+
yarn install
|
|
234
|
+
node cli/index.js agent.yaml --config oe-config.json
|
|
235
|
+
# or serve mode
|
|
236
|
+
node cli/index.js --serve --config oe-config.json
|
|
138
237
|
```
|
|
139
238
|
|
|
239
|
+
All other connectors (PostgreSQL, MySQL, MongoDB, Redis, S3, Slack, GitHub, REST API, SSH, etc.) work directly with npx — no Node.js clone required.
|
|
240
|
+
|
|
140
241
|
---
|
|
141
242
|
|
|
142
|
-
##
|
|
243
|
+
## Connector Catalog
|
|
143
244
|
|
|
144
|
-
**2,600+ connectors across 45+ categories
|
|
245
|
+
**2,600+ connectors across 45+ categories** — built in, no custom code required.
|
|
145
246
|
|
|
146
247
|
| Category | Examples |
|
|
147
248
|
|---|---|
|
|
148
249
|
| **SQL Databases** | PostgreSQL, MySQL, MSSQL, Oracle, SQLite, Snowflake, BigQuery, Redshift |
|
|
149
|
-
| **NoSQL / Cache** | MongoDB, Redis, Elasticsearch, DynamoDB, Cassandra |
|
|
150
|
-
| **Object Storage** | AWS S3, GCS, Azure Blob, MinIO, Cloudflare R2 |
|
|
151
|
-
| **Cloud Drives** | Google Drive, OneDrive, Dropbox, Box |
|
|
152
|
-
| **Filesystem** | Local directories — list, read, write, search |
|
|
153
|
-
| **Email** | Gmail, Outlook, Zoho Mail, SMTP |
|
|
250
|
+
| **NoSQL / Cache** | MongoDB, Redis, Elasticsearch, DynamoDB, Cassandra, Couchbase |
|
|
251
|
+
| **Object Storage** | AWS S3, GCS, Azure Blob, MinIO, Cloudflare R2, Backblaze B2 |
|
|
252
|
+
| **Cloud Drives** | Google Drive, OneDrive, SharePoint, Dropbox, Box |
|
|
253
|
+
| **Filesystem** | Local directories — list, read, write, search files |
|
|
254
|
+
| **Email** | Gmail, Outlook, Zoho Mail, SMTP, IMAP, SendGrid |
|
|
154
255
|
| **Team Messaging** | Slack, Microsoft Teams, Discord, Telegram |
|
|
155
|
-
| **CRM** | HubSpot, Salesforce, Notion, Airtable |
|
|
256
|
+
| **CRM / Productivity** | HubSpot, Salesforce, Notion, Airtable, Confluence |
|
|
156
257
|
| **Issue Tracking** | GitHub, Jira, GitLab, Linear |
|
|
157
|
-
| **REST API** | Any HTTP/REST endpoint |
|
|
158
|
-
| **
|
|
159
|
-
| **
|
|
160
|
-
|
|
|
258
|
+
| **REST API** | Any HTTP/REST endpoint — bearer, API key, basic auth |
|
|
259
|
+
| **GraphQL** | Any GraphQL endpoint |
|
|
260
|
+
| **SSH / SFTP** | Remote command execution and file transfer |
|
|
261
|
+
| **Message Queues** | Kafka, AWS SQS, Azure Service Bus, Google Pub/Sub, RabbitMQ |
|
|
262
|
+
| **IoT / MQTT** | MQTT brokers, AWS IoT |
|
|
263
|
+
| **Search** | Perplexity, Google Custom Search, Bing |
|
|
264
|
+
| **LDAP / Directory** | Active Directory, OpenLDAP, Azure AD |
|
|
265
|
+
| **OCR / Vision** | Azure Vision, Google Vision, AWS Textract |
|
|
266
|
+
| **Image Generation** | OpenAI gpt-image-1, FLUX, Stable Diffusion, Ideogram |
|
|
267
|
+
| **Speech & Audio** | ElevenLabs, OpenAI TTS, Azure Speech, Google TTS |
|
|
268
|
+
| **Video Generation** | Runway, Kling, Pika |
|
|
269
|
+
| **Music Generation** | kie.ai, Udio |
|
|
270
|
+
| **Web3 / Blockchain** | Ethereum, Polygon, Solana via web3.js / ethers.js |
|
|
271
|
+
| **Helpdesk** | Zendesk, Freshdesk, Intercom |
|
|
272
|
+
| **ERP** | SAP, Oracle ERP, Microsoft Dynamics |
|
|
273
|
+
| **+ more** | Healthcare (FHIR), Marketing, Analytics, Finance, HR, E-commerce, ... |
|
|
274
|
+
|
|
275
|
+
---
|
|
276
|
+
|
|
277
|
+
## Supported LLM Providers
|
|
278
|
+
|
|
279
|
+
`openai` · `anthropic` · `azure` · `groq` · `gemini` · `ollama` · `mistral` · `deepseek` · `together` · `fireworks` · `bedrock` · and more
|
|
280
|
+
|
|
281
|
+
---
|
|
282
|
+
|
|
283
|
+
## Contributing
|
|
284
|
+
|
|
285
|
+
Contributions are welcome. Before opening a PR:
|
|
286
|
+
|
|
287
|
+
- [Open an issue](https://github.com/enthrium/open-enthrium-ai-agent-runtime/issues/new) to discuss the change — especially for new features
|
|
288
|
+
- Fork the repository and branch from `main`
|
|
289
|
+
- Test your changes locally
|
|
290
|
+
- [Open a PR](https://github.com/enthrium/open-enthrium-ai-agent-runtime/compare) with a clear description of what and why
|
|
291
|
+
|
|
292
|
+
Where contributions are most valuable:
|
|
293
|
+
|
|
294
|
+
- New connector adapters (`server/src/utils/tools/adapters/`)
|
|
295
|
+
- Agent YAML examples for the community marketplace
|
|
296
|
+
- Bug fixes with clear reproduction steps
|
|
161
297
|
|
|
162
298
|
---
|
|
163
299
|
|
|
164
|
-
##
|
|
300
|
+
## Part of Open Enthrium
|
|
301
|
+
|
|
302
|
+
OE Agent Runtime is the open-source standalone execution layer of the [Open Enthrium](https://openenthrium.com) platform.
|
|
165
303
|
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
- [OE MCP Server](https://www.openenthrium.com/mcp.html) — connect Claude Code, Cursor & Windsurf to enterprise data
|
|
304
|
+
| | |
|
|
305
|
+
|---|---|
|
|
306
|
+
| 🖥️ **Platform** | [open-enthrium-ai-platform](https://github.com/enthrium/open-enthrium-ai-platform) — full web app with workspaces, RAG, Agent Builder, DLP |
|
|
307
|
+
| 🔌 **MCP Server** | [open-enthrium-ai-mcp-server](https://github.com/enthrium/open-enthrium-ai-mcp-server) — connect Claude Code, Cursor, Windsurf to enterprise data |
|
|
308
|
+
| 🌐 **Website** | [openenthrium.com](https://openenthrium.com) |
|
|
172
309
|
|
|
173
310
|
---
|
|
174
311
|
|
|
175
312
|
## License
|
|
176
313
|
|
|
177
|
-
[Apache-2.0](https://github.com/enthrium/open-enthrium-ai-agent-runtime/blob/main/LICENSE) — free to use, modify, and deploy for any purpose including commercial use.
|
|
314
|
+
[Apache-2.0](https://github.com/enthrium/open-enthrium-ai-agent-runtime/blob/main/LICENSE) — free to use, modify, and deploy for any purpose, including commercial use.
|
|
315
|
+
No usage limits. No telemetry. No call-home.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@openenthrium/oe-runtime",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.6.1",
|
|
4
4
|
"description": "OE Runtime - run AI agents against 2,600+ enterprise data sources. One binary, one YAML agent, one config file.",
|
|
5
5
|
"homepage": "https://www.openenthrium.com/runtime.html",
|
|
6
6
|
"repository": {
|