agentlang 0.3.0 → 0.3.2
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 +295 -31
- package/out/api/http.d.ts.map +1 -1
- package/out/api/http.js +5 -3
- package/out/api/http.js.map +1 -1
- package/out/language/agentlang-validator.d.ts.map +1 -1
- package/out/language/agentlang-validator.js +24 -4
- package/out/language/agentlang-validator.js.map +1 -1
- package/out/language/generated/ast.d.ts +58 -7
- package/out/language/generated/ast.d.ts.map +1 -1
- package/out/language/generated/ast.js +82 -1
- package/out/language/generated/ast.js.map +1 -1
- package/out/language/generated/grammar.d.ts.map +1 -1
- package/out/language/generated/grammar.js +537 -216
- package/out/language/generated/grammar.js.map +1 -1
- package/out/language/main.cjs +614 -221
- package/out/language/main.cjs.map +2 -2
- package/out/runtime/agents/common.d.ts +15 -1
- package/out/runtime/agents/common.d.ts.map +1 -1
- package/out/runtime/agents/common.js +71 -2
- package/out/runtime/agents/common.js.map +1 -1
- package/out/runtime/exec-graph.d.ts.map +1 -1
- package/out/runtime/exec-graph.js +1 -7
- package/out/runtime/exec-graph.js.map +1 -1
- package/out/runtime/interpreter.d.ts.map +1 -1
- package/out/runtime/interpreter.js +45 -17
- package/out/runtime/interpreter.js.map +1 -1
- package/out/runtime/loader.d.ts +3 -4
- package/out/runtime/loader.d.ts.map +1 -1
- package/out/runtime/loader.js +97 -12
- package/out/runtime/loader.js.map +1 -1
- package/out/runtime/module.d.ts +41 -4
- package/out/runtime/module.d.ts.map +1 -1
- package/out/runtime/module.js +237 -18
- package/out/runtime/module.js.map +1 -1
- package/out/runtime/modules/ai.d.ts.map +1 -1
- package/out/runtime/modules/ai.js +16 -7
- package/out/runtime/modules/ai.js.map +1 -1
- package/out/runtime/modules/auth.d.ts.map +1 -1
- package/out/runtime/modules/auth.js +42 -43
- package/out/runtime/modules/auth.js.map +1 -1
- package/out/runtime/modules/core.js +1 -1
- package/out/runtime/util.d.ts +3 -1
- package/out/runtime/util.d.ts.map +1 -1
- package/out/runtime/util.js +16 -0
- package/out/runtime/util.js.map +1 -1
- package/out/syntaxes/agentlang.monarch.js +1 -1
- package/out/syntaxes/agentlang.monarch.js.map +1 -1
- package/package.json +1 -1
- package/src/api/http.ts +5 -3
- package/src/language/agentlang-validator.ts +29 -4
- package/src/language/agentlang.langium +15 -3
- package/src/language/generated/ast.ts +149 -7
- package/src/language/generated/grammar.ts +537 -216
- package/src/runtime/agents/common.ts +96 -3
- package/src/runtime/exec-graph.ts +1 -8
- package/src/runtime/interpreter.ts +47 -16
- package/src/runtime/loader.ts +110 -9
- package/src/runtime/module.ts +268 -24
- package/src/runtime/modules/ai.ts +13 -6
- package/src/runtime/modules/auth.ts +42 -43
- package/src/runtime/modules/core.ts +1 -1
- package/src/runtime/util.ts +19 -0
- package/src/syntaxes/agentlang.monarch.ts +1 -1
package/README.md
CHANGED
|
@@ -1,53 +1,316 @@
|
|
|
1
|
+
|
|
1
2
|
<div align="center">
|
|
2
3
|
|
|
3
|
-
|
|
4
|
+
<p>
|
|
5
|
+
<a href="https://zdoc.app/ja/agentlang-ai/agentlang">日本語</a> |
|
|
6
|
+
<a href="https://zdoc.app/es/agentlang-ai/agentlang">Español</a> |
|
|
7
|
+
<a href="https://zdoc.app/fr/agentlang-ai/agentlang">français</a> |
|
|
8
|
+
<a href="https://zdoc.app/de/agentlang-ai/agentlang">Deutsch</a> |
|
|
9
|
+
<a href="https://zdoc.app/pt/agentlang-ai/agentlang">Português</a> |
|
|
10
|
+
<a href="https://zdoc.app/ru/agentlang-ai/agentlang">Русский</a> |
|
|
11
|
+
<a href="https://zdoc.app/ko/agentlang-ai/agentlang">한국어</a> |
|
|
12
|
+
<a href="https://zdoc.app/zh/agentlang-ai/agentlang">中文</a>
|
|
13
|
+
</p>
|
|
14
|
+
|
|
15
|
+
<div id="toc"> <!-- both work, toc or user-content-toc -->
|
|
16
|
+
<ul style="list-style: none;">
|
|
17
|
+
<summary>
|
|
18
|
+
<h1>Agentlang - Reliable Enterprise AI Agents</h1>
|
|
19
|
+
</summary>
|
|
20
|
+
</ul>
|
|
21
|
+
</div>
|
|
22
|
+
|
|
4
23
|
|
|
5
|
-
|
|
24
|
+
<a href="https://agentlang-ai.fractl.io"><img src="https://img.shields.io/badge/Project-Home-blue?logo=homepage&logoColor=blue&style=for-the-badge"></a>
|
|
25
|
+
<a href="https://discord.gg/abcdef"><img src="https://img.shields.io/badge/Discord-Join%20Us-purple?logo=discord&logoColor=red&style=for-the-badge"></a>
|
|
26
|
+
<a href="[https://agentlang-ai.github.io](https://github.com/agentlang-ai/agentlang/tree/main/example)"><img src="https://img.shields.io/badge/Examples-Page-yellow?logo=homepage&logoColor=yellow&style=for-the-badge"></a>
|
|
6
27
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
| CI/CD | [](https://github.com/agentlang-ai/agentlang/actions/workflows/ci.yml) [](https://github.com/agentlang-ai/agentlang/actions/workflows/integration.yml) [](https://vitest.dev/) [](https://eslint.org/) [](https://prettier.io/) |
|
|
10
|
-
| Docs | [](https://github.com/agentlang-ai/agentlang#readme) [](https://github.com/agentlang-ai/agentlang/blob/main/langium-quickstart.md) [](https://github.com/agentlang-ai/agentlang/tree/main/example) |
|
|
11
|
-
| Package | [](https://nodejs.org) [](https://pnpm.io) [](https://www.typescriptlang.org/) [](https://langium.org/) [](LICENSE) [](https://www.npmjs.com/package/agentlang) [](https://www.npmjs.com/package/agentlang) |
|
|
12
|
-
| Runtime | [](https://nodejs.org) [](https://github.com/agentlang-ai/agentlang#runtime-support) [](https://github.com/agentlang-ai/agentlang#runtime-support) [](https://aws.amazon.com/cognito/) |
|
|
13
|
-
| Meta | [](https://github.com/agentlang-ai/agentlang) [](https://github.com/agentlang-ai/agentlang/issues) [](https://github.com/agentlang-ai/agentlang/pulls) [](https://github.com/agentlang-ai/agentlang/graphs/contributors) |
|
|
28
|
+
[](https://nodejs.org) [](https://github.com/agentlang-ai/agentlang/actions/workflows/ci.yml) [](https://www.npmjs.com/package/agentlang)
|
|
29
|
+
<hr>
|
|
14
30
|
|
|
31
|
+
<div id="toc"> <!-- both work, toc or user-content-toc -->
|
|
32
|
+
<ul style="list-style: none;">
|
|
33
|
+
<summary>
|
|
34
|
+
<h2>🎯 Agentic Reliability Modeling - Build AI Agents that actually work!</h2>
|
|
35
|
+
</summary>
|
|
36
|
+
</ul>
|
|
15
37
|
</div>
|
|
16
38
|
|
|
17
|
-
|
|
39
|
+
</div>
|
|
18
40
|
|
|
19
|
-
|
|
41
|
+
Build **teams of reliable AI Agents** that follow your organization's processes closely, while adapting to new scenarios. Agents collaborate with each other and humans to handle complex, time-consuming, monotonous tasks and get work done!
|
|
42
|
+
|
|
43
|
+
* **Agentic:** Agentlang is a programming abstraction specifically designed for building anything involving agents. Agentlang is highly declarative - enabling you to focus on the business logic without getting bogged down in implementation details.
|
|
44
|
+
|
|
45
|
+
* **Robust Integrations:** The Agentlang runtime integrates natively with a wide range of LLMs, databases, vector databases, and auth providers. Agentlang has a novel connector architecture, with a rapidly growing collection of prebuilt connectors for Enterprise tools. Plus, Agentlang programs run on NodeJS (and in the browser) and can leverage any existing JavaScript library.
|
|
46
|
+
|
|
47
|
+
* **Production-grade**: Agentlang is built on top of TypeScript and uses all the modern JS/TS tooling needed to build enterprise-class agents and apps.
|
|
48
|
+
|
|
49
|
+
> Coming soon! Fractl Studio is a no-code environment for building and operating AI Agents.
|
|
50
|
+
|
|
51
|
+
The two key innovations in AgentLang are: [Agentic Reliability Modeling](#agentic-reliabillity-modeling) and [AgentLang Ontology](#agentlang-ontology)
|
|
52
|
+
|
|
53
|
+
## Agentic Reliability Modeling
|
|
54
|
+
|
|
55
|
+
Depending solely only on instructions for agents is a recipe for failure. Natural language is beautiful, but ambiguous - forcing us to be stuck in an endless cycle of prompt-tweaking to achieve our goal. Agentlang offers **just enough structure**, to augment natural language instructions, to model various aspects of your agents - unambiguously, but still effortlessly - to make them reliable.
|
|
56
|
+
|
|
57
|
+
<table>
|
|
58
|
+
<tr>
|
|
59
|
+
<td valign="top">
|
|
60
|
+
<div>
|
|
61
|
+
<b>Agentic Reliability Features:</b>
|
|
62
|
+
<ul>
|
|
63
|
+
<li> First-class AI Agents </li>
|
|
64
|
+
<li> Flows </li>
|
|
65
|
+
<li> Decisions </li>
|
|
66
|
+
<li> Directives </li>
|
|
67
|
+
<li> Scenarios </li>
|
|
68
|
+
<li> Glossary </li>
|
|
69
|
+
<li> Structured output and scratchpad </li>
|
|
70
|
+
<li> Input Template </li>
|
|
71
|
+
</ul>
|
|
72
|
+
<img width="441" height="1">
|
|
73
|
+
</div>
|
|
74
|
+
</td>
|
|
75
|
+
<td>
|
|
76
|
+
<div align="center">
|
|
77
|
+
<img width="350" height="420" alt="image" src="https://github.com/user-attachments/assets/b240a235-3804-4423-a639-cdfb90f07282" />
|
|
78
|
+
<img width="441" height="1">
|
|
79
|
+
</div>
|
|
80
|
+
</td>
|
|
81
|
+
</tr>
|
|
82
|
+
</table>
|
|
83
|
+
|
|
84
|
+
### An Example
|
|
85
|
+
|
|
86
|
+
```typescript
|
|
87
|
+
flow TicketFlow {
|
|
88
|
+
ticketTriager --> "DNS" ticketInProgress
|
|
89
|
+
ticketTriager --> "WLAN" ticketInProgress
|
|
90
|
+
ticketTriager --> "NotEnoughInfo" ticketPending
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
glossary TicketFlow [
|
|
94
|
+
{"name": "incident", "meaning": "a problem report", "synonyms": "ticket"},
|
|
95
|
+
{"name": "task", "meaning": "a record that captures some work that needs to be done", "synonyms": "ticket"},
|
|
96
|
+
{"name": "DNS", "meaning": "Domain Name Service - is used to translate human-readable domain names to IP addresses", "synonyms": "DNS name, CNAME, DNS HOST record"}
|
|
97
|
+
{"name": "WLAN", "meaning": "Wireless LAN - wireless network to connect devices to each other and the internet", "synonyms": "Office network"}
|
|
98
|
+
]
|
|
99
|
+
|
|
100
|
+
agent TicketFlow {
|
|
101
|
+
llm "gpt4o",
|
|
102
|
+
role "You are a network ticket management application. Your job is to triage any ticket passed to you
|
|
103
|
+
and update the ticket with appropriate assigned_to, status and triaging comments.",
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
decision ticketTriager {
|
|
107
|
+
case ("Ticket is related to DNS provisioning. If the request is to point one host/DNS name to an IP address") {
|
|
108
|
+
DNS
|
|
109
|
+
}
|
|
110
|
+
case ("Ticket is related to WLAN provisioning. If the request is to add/whitelist a MAC address on the wireless network") {
|
|
111
|
+
WLAN
|
|
112
|
+
}
|
|
113
|
+
case ("There is not enough information in the ticket about what the category is") {
|
|
114
|
+
NotEnoughInfo
|
|
115
|
+
}
|
|
116
|
+
default {
|
|
117
|
+
Other
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
workflow ticketInProgress {
|
|
122
|
+
// workflow body is developer-written declarative code (not handled by LLM)
|
|
123
|
+
...
|
|
124
|
+
}
|
|
125
|
+
```
|
|
20
126
|
|
|
21
|
-
### **Open | Enterprise-grade | Production-ready**
|
|
22
127
|
|
|
23
|
-
|
|
128
|
+
### ✨ First-class AI Agents
|
|
24
129
|
|
|
25
|
-
|
|
130
|
+
Agents and many concepts agents use are built-in language constructs.
|
|
26
131
|
|
|
27
|
-
|
|
132
|
+
```typescript
|
|
133
|
+
flow TicketFlow {
|
|
134
|
+
ticketTriager --> "DNS" ticketInProgress
|
|
135
|
+
ticketTriager --> "WLAN" ticketInProgress
|
|
136
|
+
ticketTriager --> "NotEnoughInfo" ticketPending
|
|
137
|
+
}
|
|
28
138
|
|
|
29
|
-
|
|
139
|
+
agent TicketFlow {
|
|
140
|
+
llm "gpt4o",
|
|
141
|
+
role "You are a network ticket management agent. Your job is to triage any ticket passed to you and
|
|
142
|
+
update the ticket with appropriate assigned_to, status and triaging comments.",
|
|
143
|
+
}
|
|
30
144
|
|
|
31
|
-
|
|
145
|
+
```
|
|
32
146
|
|
|
33
|
-
|
|
147
|
+
### Flows
|
|
148
|
+
|
|
149
|
+
Flows are central to Agentlang's reliability modeling. Define your business processes using an intuitive flow syntax - flows guide (not enforce) an agent's behavior closely. Agentlang's adaptive runtime will execute them, dynamically adapting the execution flow as needed.
|
|
150
|
+
|
|
151
|
+
Each step in the flow can be an agent or a tool (workflow).
|
|
152
|
+
|
|
153
|
+
```typescript
|
|
154
|
+
flow networkProvisioningRequestManager {
|
|
155
|
+
classifyProvisioningRequest --> "DNS" provisionDNS
|
|
156
|
+
classifyProvisioningRequest --> "WLAN" provisionWLAN
|
|
157
|
+
classifyProvisioningRequest --> "Other" reportFailure
|
|
158
|
+
provisionDNS --> ticketUpdater
|
|
159
|
+
provisionWLAN --> ticketUpdater
|
|
160
|
+
}
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
### Decisions
|
|
34
164
|
|
|
35
|
-
|
|
165
|
+
An agent that takes a decision for branching in a flow can be expressed as a **decision table** of `case` expressions. Each `case` specifies a condition as pure text or a logical expression. The consequence of a `case` will be a tag that tells the flow-evaluator which node to branch to.
|
|
36
166
|
|
|
37
|
-
|
|
167
|
+
```typescript
|
|
168
|
+
decision classifyOrder {
|
|
169
|
+
case ("if requested car type is SUV and customer tier is premier") {
|
|
170
|
+
LuxurySUV
|
|
171
|
+
}
|
|
172
|
+
|
|
173
|
+
case ("if the requested car type is SUV and segment is economy") {
|
|
174
|
+
EconomySUV
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
flow carOrderRequestManager {
|
|
179
|
+
analyseCarOrderRequest --> classifyOrder
|
|
180
|
+
classifyOrder --> "EconomySUV" orderEconomySUV
|
|
181
|
+
classifyOrder --> "LuxurySUV" orderLuxurySUV
|
|
182
|
+
}
|
|
183
|
+
```
|
|
184
|
+
|
|
185
|
+
The `case` conditions may also be written as logical expressions:
|
|
186
|
+
|
|
187
|
+
```typescript
|
|
188
|
+
case (carType == "SUV" and segment == "luxury") {
|
|
189
|
+
LuxurySUV
|
|
190
|
+
}
|
|
191
|
+
|
|
192
|
+
case (carType == "SUV") {
|
|
193
|
+
EconomySUV
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
```
|
|
197
|
+
|
|
198
|
+
As the flow executes an agent that specializes in evaluating decision tables will be invoked for the node `classifyOrder`. The tag returned by this agent will be used to select either the `orderEconomySUV` or `orderLuxurySUV` node of the flow.
|
|
199
|
+
|
|
200
|
+
### Directives
|
|
201
|
+
|
|
202
|
+
**Directives** enhance the decision making capability of agents by providing precise actions to be taken under specific conditions.
|
|
203
|
+
|
|
204
|
+
```typescript
|
|
205
|
+
agent salaryHikeAgent {
|
|
206
|
+
instruction "Give an employee a salary-hike based on his/her sales performance",
|
|
207
|
+
tools acme/employee,
|
|
208
|
+
directives [{"if": "employee sales exceeded 5000", "then": "Give a salary hike of 5 percent"},
|
|
209
|
+
{"if": "sales is more than 2000 but less than 5000", "then": "hike salary by 2 percent"}]
|
|
210
|
+
}
|
|
211
|
+
```
|
|
38
212
|
|
|
39
|
-
|
|
213
|
+
As the `salaryHikeAgent` tries to compute the salary-increment for a particular employee, the directives will guide it to take a more accurate decision based on specific conditions.
|
|
214
|
+
|
|
215
|
+
### Scenarios
|
|
216
|
+
|
|
217
|
+
**Scenarios** provide agents with concrete examples of user-requests and their corresponding LLM-responses.
|
|
218
|
+
|
|
219
|
+
```typescript
|
|
220
|
+
agent salaryHikeAgent {
|
|
221
|
+
instruction "Give an employee a salary-hike based on his/her sales performance",
|
|
222
|
+
tools acme/employee,
|
|
223
|
+
directives [{"if": "employee sales exceeded 5000", "then": "Give a salary hike of 5 percent"},
|
|
224
|
+
{"if": "sales is more than 2000 but less than 5000", "then": "hike salary by 2 percent"}],
|
|
225
|
+
}
|
|
226
|
+
|
|
227
|
+
scenario salaryHikeAgent.outperform {
|
|
228
|
+
user "Jake's sale exceeded 5000"
|
|
229
|
+
}
|
|
230
|
+
|
|
231
|
+
workflow salaryHikeAgent.outperform {
|
|
232
|
+
{acme/employee {email? "jake@acme.com"}} @as [employee];
|
|
233
|
+
{acme/employee {id? employee.id,
|
|
234
|
+
salary employee.salary + employee.salary * 0.5}}
|
|
235
|
+
}
|
|
236
|
+
```
|
|
237
|
+
|
|
238
|
+
Here, the provided scenario helps the agent to take a well-specified action in the case an employee is said to have "outperformed".
|
|
239
|
+
|
|
240
|
+
### Glossary
|
|
241
|
+
|
|
242
|
+
**Glossaries** help the agent understand the meaning of domain-specific vocabulary that the user may use while interacting with the agent.
|
|
243
|
+
|
|
244
|
+
```typescript
|
|
245
|
+
agent campaignAnalyzer {
|
|
246
|
+
instruction "Evaluate and optimize marketing campaign performance based on key performance indicators (KPIs) and assign a performance rating",
|
|
247
|
+
tools acme/campaign_eval,
|
|
248
|
+
// ...
|
|
249
|
+
glossary [
|
|
250
|
+
{"name": "outstanding", "meaning": "CTR ≥ 5%, Conversion Rate ≥ 10%, ROI ≥ 50%", "synonyms": "exceptional, high-impact"},
|
|
251
|
+
{"name": "satisfactory", "meaning": "CTR 2-4.9%, Conversion Rate 5-9.9%, ROI 20-49%", "synonyms": "solid, effective"},
|
|
252
|
+
{"name": "underperforming", "meaning": "CTR < 2%, Conversion Rate < 5%, ROI < 20%", "synonyms": "needs improvement, low-impact"}
|
|
253
|
+
]
|
|
254
|
+
}
|
|
255
|
+
```
|
|
256
|
+
|
|
257
|
+
### Response Schema and Scratchpad
|
|
258
|
+
|
|
259
|
+
In certain scenarios, agents perform better with structured data than plain text. You can configure an agent to output responses in a specific format, enabling another agent to efficiently parse and utilize the relevant information as input.
|
|
260
|
+
|
|
261
|
+
```typescript
|
|
262
|
+
module NetOps
|
|
263
|
+
|
|
264
|
+
record NetworkProvisioningRequest {
|
|
265
|
+
type @enum("DNS", "WLAN"),
|
|
266
|
+
requestedBy String,
|
|
267
|
+
CNAME String,
|
|
268
|
+
IPAddress String
|
|
269
|
+
}
|
|
270
|
+
|
|
271
|
+
agent classifyProvisioningRequest {
|
|
272
|
+
instruction "Analyse the network provisioning request and return its type and other relevant information.",
|
|
273
|
+
responseSchema NetworkProvisioningRequest
|
|
274
|
+
}
|
|
275
|
+
```
|
|
276
|
+
This kind of structured data (as entity or record instances) returned by an agent is added to an internal-cache used by the flow. This cache is known as *scratchpad*.
|
|
277
|
+
|
|
278
|
+
### Templatized Instructions
|
|
279
|
+
|
|
280
|
+
An agent further down the flow can access the scratchpad using template parameters (denoted by `{{}}`) embedded in its instructions/directives. For instance, the `ticketUpdater` agent makes reference to the scratchpad via the parameters `{{classifyProvisioningRequest.type}}` and `{{classifyProvisioningRequest.requestedBy}}`. (The references need not include the agent name and simply be `{{type}}` and `{{requestedBy}}`). The actual instruction the `ticketUpdater` agent will see in this context will be `""Use type=DNS, requestedBy=joe@acme.com and provisioningId={{provisioningId}} to mark the request as completed"` - obviously enhancing its focus on the current context for more deterministic actions.
|
|
281
|
+
|
|
282
|
+
```typescript
|
|
283
|
+
agent ticketUpdater {
|
|
284
|
+
instruction "Use type={{classifyProvisioningRequest.type}}, requestedBy={{classifyProvisioningRequest.requestedBy}} and provisioningId={{provisioningId}} to mark the request as completed",
|
|
285
|
+
tools [Networking/markRequestCompleted]
|
|
286
|
+
}
|
|
287
|
+
|
|
288
|
+
// insert agent/workflow definitions for provisionDNS, reportFailure etc
|
|
289
|
+
|
|
290
|
+
flow networkProvisioningRequestManager {
|
|
291
|
+
classifyProvisioningRequest --> "DNS" provisionDNS
|
|
292
|
+
classifyProvisioningRequest --> "WLAN" provisionWLAN
|
|
293
|
+
classifyProvisioningRequest --> "Other" reportFailure
|
|
294
|
+
provisionDNS --> ticketUpdater
|
|
295
|
+
provisionWLAN --> ticketUpdater
|
|
296
|
+
}
|
|
297
|
+
```
|
|
298
|
+
|
|
299
|
+
The agent `classifyProvisioningRequest` has its `responseSchema` attribute set to the record `NetworkProvisioningRequest`. This means for a request like `"Provision DNS joe.acme.com for 192.3.4.1 as requested by joe@acme.com"` this agent will return:
|
|
300
|
+
|
|
301
|
+
```typescript
|
|
302
|
+
{type "DNS", requestedBy "joe@acme.com", CNAME "joe.acme.com", IPAddress "192.3.4.1"}
|
|
303
|
+
```
|
|
40
304
|
|
|
41
|
-
|
|
305
|
+
## Agentlang Ontology
|
|
42
306
|
|
|
43
|
-
|
|
307
|
+
Agentlang's sophisticated modeling capabilities allow you to design the data-schema, workflows and access control constructs of your application in a declarative way. Agents can work directly with this ontology and dynamically generate business workflows, making your application into a living system that constantly adapts to new requirements and demands.
|
|
44
308
|
|
|
45
|
-
|
|
46
|
-
- Note: Some functions may behave differently between versions (e.g., array methods on iterators)
|
|
309
|
+
To get started with Agentlang Ontology, please see the [quick start](link-to-doc) guide or explore the following example applications:
|
|
47
310
|
|
|
48
|
-
|
|
311
|
+
// TODO: links to example apps
|
|
49
312
|
|
|
50
|
-
|
|
313
|
+
## 🚀 Getting Started
|
|
51
314
|
|
|
52
315
|
#### ⚡ Use npm or pnpm
|
|
53
316
|
|
|
@@ -57,11 +320,12 @@ npm install
|
|
|
57
320
|
OR
|
|
58
321
|
|
|
59
322
|
# Install pnpm: https://pnpm.io/installation
|
|
323
|
+
# Use pnpm
|
|
60
324
|
pnpm install
|
|
61
325
|
```
|
|
62
326
|
**Note**: If pnpm shows build script warnings, run `pnpm approve-builds` and approve esbuild and sqlite3.
|
|
63
327
|
|
|
64
|
-
### Build
|
|
328
|
+
### ⚡ Build
|
|
65
329
|
|
|
66
330
|
```shell
|
|
67
331
|
# Generate parser and build
|
|
@@ -69,7 +333,7 @@ npm run langium:generate
|
|
|
69
333
|
npm run build
|
|
70
334
|
```
|
|
71
335
|
|
|
72
|
-
### Test
|
|
336
|
+
### ⚡ Test
|
|
73
337
|
|
|
74
338
|
```shell
|
|
75
339
|
# Run all tests
|
|
@@ -79,10 +343,10 @@ npm test
|
|
|
79
343
|
npm run test:verbose
|
|
80
344
|
```
|
|
81
345
|
|
|
82
|
-
##
|
|
346
|
+
## Run an Agentlang Script or Application
|
|
83
347
|
|
|
84
348
|
```shell
|
|
85
|
-
# Parse and validate an
|
|
349
|
+
# Parse and validate an Agentlang file
|
|
86
350
|
node ./bin/cli.js parseAndValidate example/blog/blog.al
|
|
87
351
|
|
|
88
352
|
# Run a specific app
|
package/out/api/http.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/api/http.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAkBvD,wBAAgB,WAAW,CAAC,OAAO,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/api/http.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAkBvD,wBAAgB,WAAW,CAAC,OAAO,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,QA2EhF"}
|
package/out/api/http.js
CHANGED
|
@@ -32,10 +32,12 @@ export function startServer(appSpec, port, host) {
|
|
|
32
32
|
handleMetaGet(req, res);
|
|
33
33
|
});
|
|
34
34
|
getAllEventNames().forEach((eventNames, moduleName) => {
|
|
35
|
+
const m = fetchModule(moduleName);
|
|
35
36
|
eventNames.forEach((n) => {
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
37
|
+
if (m.eventIsPublic(n))
|
|
38
|
+
app.post(`/${moduleName}/${n}`, (req, res) => {
|
|
39
|
+
handleEventPost(moduleName, n, req, res);
|
|
40
|
+
});
|
|
39
41
|
});
|
|
40
42
|
});
|
|
41
43
|
getAllEntityNames().forEach((entityNames, moduleName) => {
|
package/out/api/http.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/api/http.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/api/http.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agentlang-validator.d.ts","sourceRoot":"","sources":["../../src/language/agentlang-validator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAoB,MAAM,SAAS,CAAC;AACpE,OAAO,EAIL,gBAAgB,EAChB,gBAAgB,EACjB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE/D;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,iBAAiB,QAQnE;AAED;;GAEG;AACH,qBAAa,kBAAkB;IAE7B,eAAe,CAAC,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,kBAAkB,GAAG,IAAI;
|
|
1
|
+
{"version":3,"file":"agentlang-validator.d.ts","sourceRoot":"","sources":["../../src/language/agentlang-validator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAoB,MAAM,SAAS,CAAC;AACpE,OAAO,EAIL,gBAAgB,EAChB,gBAAgB,EACjB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE/D;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,iBAAiB,QAQnE;AAED;;GAEG;AACH,qBAAa,kBAAkB;IAE7B,eAAe,CAAC,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,kBAAkB,GAAG,IAAI;IAyC3E,qBAAqB,CAAC,GAAG,EAAE,gBAAgB,EAAE,MAAM,EAAE,kBAAkB,GAAG,IAAI;CAiB/E"}
|
|
@@ -21,15 +21,32 @@ export class AgentlangValidator {
|
|
|
21
21
|
// and report an error when we see one we've already seen
|
|
22
22
|
const reported = new Set();
|
|
23
23
|
module.defs.forEach(d => {
|
|
24
|
+
let n;
|
|
24
25
|
if (!isStandaloneStatement(d)) {
|
|
25
|
-
if (d.$type
|
|
26
|
-
|
|
26
|
+
if (d.$type === 'PublicWorkflowDefinition' ||
|
|
27
|
+
d.$type === 'PublicAgentDefinition' ||
|
|
28
|
+
d.$type === 'PublicEventDefinition') {
|
|
29
|
+
n = d.def.name;
|
|
30
|
+
}
|
|
31
|
+
else {
|
|
32
|
+
n = d.name;
|
|
33
|
+
}
|
|
34
|
+
if (d.$type != 'WorkflowDefinition' &&
|
|
35
|
+
d.$type != 'PublicWorkflowDefinition' &&
|
|
36
|
+
d.$type != 'ScenarioDefinition' &&
|
|
37
|
+
d.$type != 'DirectiveDefinition' &&
|
|
38
|
+
d.$type != 'GlossaryEntryDefinition' &&
|
|
39
|
+
reported.has(n)) {
|
|
40
|
+
accept('error', `Definition has non-unique name '${n}'.`, {
|
|
27
41
|
node: d,
|
|
28
42
|
property: 'name',
|
|
29
43
|
});
|
|
30
44
|
}
|
|
31
|
-
if (d.$type != 'FlowDefinition'
|
|
32
|
-
|
|
45
|
+
if (d.$type != 'FlowDefinition' &&
|
|
46
|
+
d.$type != 'ScenarioDefinition' &&
|
|
47
|
+
d.$type != 'DirectiveDefinition' &&
|
|
48
|
+
d.$type != 'GlossaryEntryDefinition') {
|
|
49
|
+
reported.add(n);
|
|
33
50
|
}
|
|
34
51
|
}
|
|
35
52
|
});
|
|
@@ -38,6 +55,9 @@ export class AgentlangValidator {
|
|
|
38
55
|
// create a set of visited functions
|
|
39
56
|
// and report an error when we see one we've already seen
|
|
40
57
|
const reported = new Set();
|
|
58
|
+
if (def.$type === 'PublicEventDefinition') {
|
|
59
|
+
def = def.def;
|
|
60
|
+
}
|
|
41
61
|
def.schema.attributes.forEach((a) => {
|
|
42
62
|
if (reported.has(a.name)) {
|
|
43
63
|
accept('error', `'${def.name} " - attribute has non-unique name '${a.name}'.`, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agentlang-validator.js","sourceRoot":"","sources":["../../src/language/agentlang-validator.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,qBAAqB,GAGtB,MAAM,oBAAoB,CAAC;AAG5B;;GAEG;AACH,MAAM,UAAU,wBAAwB,CAAC,QAA2B;IAClE,MAAM,QAAQ,GAAG,QAAQ,CAAC,UAAU,CAAC,kBAAkB,CAAC;IACxD,MAAM,SAAS,GAAG,QAAQ,CAAC,UAAU,CAAC,kBAAkB,CAAC;IACzD,MAAM,MAAM,GAAuC;QACjD,gBAAgB,EAAE,SAAS,CAAC,eAAe;QAC3C,gBAAgB,EAAE,SAAS,CAAC,qBAAqB;KAClD,CAAC;IACF,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;AACvC,CAAC;AAED;;GAEG;AACH,MAAM,OAAO,kBAAkB;IAC7B,uCAAuC;IACvC,eAAe,CAAC,MAAwB,EAAE,MAA0B;QAClE,oCAAoC;QACpC,yDAAyD;QACzD,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAE,CAAC;QAC3B,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;YACtB,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC9B,IAAI,CAAC,CAAC,KAAK,IAAI,oBAAoB,IAAI,
|
|
1
|
+
{"version":3,"file":"agentlang-validator.js","sourceRoot":"","sources":["../../src/language/agentlang-validator.ts"],"names":[],"mappings":"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"}
|