@agentic-eng/easa 0.1.0 → 0.1.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/LICENSE CHANGED
@@ -1,6 +1,6 @@
1
1
  MIT License
2
2
 
3
- Copyright (c) 2024 EASA Contributors
3
+ Copyright (c) 2026 Lahiru Ratnayaka
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
package/README.md CHANGED
@@ -1,121 +1,55 @@
1
- # @agentic-eng/easa
1
+ # ⚠️ @agentic-eng/easa — DEPRECATED
2
2
 
3
- > EASA Easy Agent System Architecture: A minimal, type-safe TypeScript framework for building LLM-powered agent systems.
3
+ > **This package is deprecated and will be removed after 15 April 2026.**
4
+ >
5
+ > Please migrate to [`@agentic-eng/agent`](https://www.npmjs.com/package/@agentic-eng/agent), which contains all the same exports.
4
6
 
5
- [![npm](https://img.shields.io/npm/v/@agentic-eng/easa)](https://www.npmjs.com/package/@agentic-eng/easa)
6
- [![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](https://opensource.org/licenses/MIT)
7
+ ---
7
8
 
8
- > **Beta** — API may change before 1.0. Feedback welcome!
9
+ ## Migration Guide
9
10
 
10
- This is the **umbrella package** that re-exports everything from all EASA packages in a single import. For granular, tree-shakeable imports, use [`@agentic-eng/agent`](https://www.npmjs.com/package/@agentic-eng/agent) directly.
11
-
12
- ## Installation
11
+ Replace your dependency:
13
12
 
14
13
  ```bash
15
- npm install @agentic-eng/easa
16
- # or
17
- pnpm add @agentic-eng/easa
14
+ # Remove this package
15
+ npm uninstall @agentic-eng/easa
16
+
17
+ # Install the replacement
18
+ npm install @agentic-eng/agent
18
19
  ```
19
20
 
20
- ## Quick Start
21
-
22
- ```typescript
23
- import { Agent, ToolRegistry, FlatFileMemoryProvider, ConsoleEventEmitter } from '@agentic-eng/easa';
24
- import type { LLMProvider, Tool } from '@agentic-eng/easa';
25
-
26
- // 1. Bring your own LLM
27
- const provider: LLMProvider = {
28
- async chat(messages) {
29
- const res = await callYourLLM(messages);
30
- return { message: { role: 'assistant', content: res.text } };
31
- },
32
- async *chatStream(messages) {
33
- for await (const chunk of streamYourLLM(messages)) {
34
- yield { delta: chunk.text, done: chunk.finished };
35
- }
36
- },
37
- };
38
-
39
- // 2. Define tools
40
- const calculator: Tool = {
41
- definition: {
42
- name: 'calculator',
43
- description: 'Evaluates arithmetic expressions.',
44
- inputSchema: {
45
- type: 'object',
46
- properties: {
47
- expression: { type: 'string', description: 'Math expression' },
48
- },
49
- required: ['expression'],
50
- },
51
- },
52
- async execute(input) {
53
- const result = evaluate(input.expression as string);
54
- return { toolName: 'calculator', success: true, output: String(result) };
55
- },
56
- };
57
-
58
- const tools = new ToolRegistry();
59
- tools.register(calculator);
60
-
61
- // 3. Create an agent
62
- const agent = new Agent({
63
- name: 'assistant',
64
- provider,
65
- systemPrompt: 'You are a helpful assistant.',
66
- tools,
67
- memory: new FlatFileMemoryProvider('./memory'),
68
- emitter: new ConsoleEventEmitter(),
69
- maxIterations: 10,
70
- });
71
-
72
- // 4. Use it
73
- const result = await agent.invoke('What is 42 × 17?');
74
- console.log(result.content);
75
- console.log(`Done in ${result.trace.totalIterations} iteration(s)`);
76
-
77
- // Or stream
78
- for await (const chunk of agent.invokeStream('Tell me a story.')) {
79
- process.stdout.write(chunk.delta);
80
- }
21
+ Update your imports:
22
+
23
+ ```diff
24
+ - import { Agent, ToolRegistry } from '@agentic-eng/easa';
25
+ + import { Agent, ToolRegistry } from '@agentic-eng/agent';
26
+
27
+ - import type { LLMProvider, Tool } from '@agentic-eng/easa';
28
+ + import type { LLMProvider, Tool } from '@agentic-eng/agent';
81
29
  ```
82
30
 
83
- ## What's Included
31
+ **No API changes** — all exports are identical. This is a drop-in replacement.
84
32
 
85
- Everything from `@agentic-eng/agent` is re-exported:
33
+ ---
86
34
 
87
- | Export | Description |
88
- | --- | --- |
89
- | `Agent` | Core agent class with reasoning loop |
90
- | `ToolRegistry` | Tool management (custom + MCP) |
91
- | `FlatFileMemoryProvider` | File-based memory using KNL format |
92
- | `ConsoleEventEmitter` | Pretty-printed console event logger |
93
- | `NoopEventEmitter` | Silent emitter (default) |
94
- | `LLMProvider` | Interface — implement for your LLM backend |
95
- | `Tool` | Interface — implement for custom tools |
96
- | `MemoryProvider` | Interface — implement for custom storage |
97
- | `AgentEventEmitter` | Interface — implement for custom observability |
98
- | Error classes | `EasaError`, `ProviderError`, `AgentConfigError`, `MaxIterationsError`, `ReasoningParseError`, `ToolExecutionError` |
99
-
100
- ## Key Features
101
-
102
- - **Reasoning Loop** — JSON-controlled iteration: the LLM decides when it's done
103
- - **Tool System** — Hybrid approach: compact index every call, full schema on demand
104
- - **Memory** — Pluggable persistence (built-in KNL flat files or custom backends)
105
- - **Event Emission** — OTEL-aligned lifecycle events at every execution point
106
- - **Streaming** — Single-pass streaming via `invokeStream()`
107
- - **Zero LLM Lock-in** — Bring any LLM backend via the `LLMProvider` interface
108
- - **Dual Output** — ESM + CJS with full TypeScript declarations
109
-
110
- ## Documentation
111
-
112
- Full documentation with detailed examples for each feature is available in the [`@agentic-eng/agent` README](https://www.npmjs.com/package/@agentic-eng/agent).
113
-
114
- ## Granular Packages
115
-
116
- | Package | Description |
35
+ ## Why?
36
+
37
+ The `@agentic-eng/easa` umbrella package was a thin re-export layer over `@agentic-eng/agent`. Going forward, `@agentic-eng/agent` is the single, primary package for the EASA framework. Consolidating to one package simplifies installation, reduces confusion, and streamlines releases.
38
+
39
+ ## Timeline
40
+
41
+ | Date | Action |
117
42
  | --- | --- |
118
- | [`@agentic-eng/agent`](https://www.npmjs.com/package/@agentic-eng/agent) | Core agent, reasoning loop, tools, memory, events |
43
+ | **Now** | `@agentic-eng/easa` marked as deprecated on npm |
44
+ | **15 April 2026** | Final version — no further updates |
45
+ | **After 15 April 2026** | Package will remain on npm but receive no maintenance |
46
+
47
+ ## Feedback & Contact
48
+
49
+ Questions about migrating? Reach out:
50
+
51
+ - **Email:** [lahirunimantha@outlook.com](mailto:lahirunimantha@outlook.com)
52
+ - **LinkedIn:** [Lahiru Nimantha](https://www.linkedin.com/in/lahirunimantha/)
119
53
 
120
54
  ## License
121
55
 
package/dist/index.cjs CHANGED
@@ -2,7 +2,11 @@
2
2
 
3
3
  var agent = require('@agentic-eng/agent');
4
4
 
5
-
5
+ // src/index.ts
6
+ var _warn = globalThis.console.warn;
7
+ _warn(
8
+ "\x1B[33m[DEPRECATED]\x1B[0m @agentic-eng/easa is deprecated and will be removed after 15 April 2026. Please migrate to @agentic-eng/agent. See https://www.npmjs.com/package/@agentic-eng/agent"
9
+ );
6
10
 
7
11
  Object.defineProperty(exports, "Agent", {
8
12
  enumerable: true,
@@ -1 +1 @@
1
- {"version":3,"sources":[],"names":[],"mappings":"","file":"index.cjs","sourcesContent":[]}
1
+ {"version":3,"sources":["../src/index.ts"],"names":[],"mappings":";;;;;AAcA,IAAM,KAAA,GAAS,WAA6E,OAAA,CAAQ,IAAA;AACpG,KAAA;AAAA,EACE;AAEF,CAAA","file":"index.cjs","sourcesContent":["/**\n * @deprecated This package is deprecated and will be removed after 15 April 2026.\n * Please migrate to `@agentic-eng/agent` which contains all the same exports.\n *\n * Migration:\n * npm uninstall @agentic-eng/easa\n * npm install @agentic-eng/agent\n *\n * Then update imports:\n * - import { Agent } from '@agentic-eng/easa';\n * + import { Agent } from '@agentic-eng/agent';\n */\n\n// Runtime deprecation warning\nconst _warn = (globalThis as unknown as { console: { warn: (...args: string[]) => void } }).console.warn;\n_warn(\n '\\x1b[33m[DEPRECATED]\\x1b[0m @agentic-eng/easa is deprecated and will be removed after 15 April 2026. ' +\n 'Please migrate to @agentic-eng/agent. See https://www.npmjs.com/package/@agentic-eng/agent'\n);\n\n// Core\nexport {\n Agent,\n FlatFileMemoryProvider,\n ToolRegistry,\n ConsoleEventEmitter,\n NoopEventEmitter,\n EasaError,\n ProviderError,\n AgentConfigError,\n MaxIterationsError,\n ReasoningParseError,\n ToolExecutionError,\n} from '@agentic-eng/agent';\nexport type {\n AgentConfig,\n InvokeResult,\n LLMProvider,\n MemoryProvider,\n Tool,\n ToolInputSchema,\n ToolDefinition,\n ToolCallRequest,\n ToolResult,\n EventType,\n AgentEvent,\n AgentEventEmitter,\n Role,\n Message,\n ChatOptions,\n ChatResponse,\n ChatChunk,\n TokenUsage,\n ReasoningAction,\n LLMReasoningResponse,\n MemoryEntry,\n IterationResult,\n ReasoningTrace,\n InvokeOptions,\n} from '@agentic-eng/agent';\n"]}
package/dist/index.js CHANGED
@@ -1,3 +1,9 @@
1
1
  export { Agent, AgentConfigError, ConsoleEventEmitter, EasaError, FlatFileMemoryProvider, MaxIterationsError, NoopEventEmitter, ProviderError, ReasoningParseError, ToolExecutionError, ToolRegistry } from '@agentic-eng/agent';
2
+
3
+ // src/index.ts
4
+ var _warn = globalThis.console.warn;
5
+ _warn(
6
+ "\x1B[33m[DEPRECATED]\x1B[0m @agentic-eng/easa is deprecated and will be removed after 15 April 2026. Please migrate to @agentic-eng/agent. See https://www.npmjs.com/package/@agentic-eng/agent"
7
+ );
2
8
  //# sourceMappingURL=index.js.map
3
9
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":[],"names":[],"mappings":"","file":"index.js","sourcesContent":[]}
1
+ {"version":3,"sources":["../src/index.ts"],"names":[],"mappings":";;;AAcA,IAAM,KAAA,GAAS,WAA6E,OAAA,CAAQ,IAAA;AACpG,KAAA;AAAA,EACE;AAEF,CAAA","file":"index.js","sourcesContent":["/**\n * @deprecated This package is deprecated and will be removed after 15 April 2026.\n * Please migrate to `@agentic-eng/agent` which contains all the same exports.\n *\n * Migration:\n * npm uninstall @agentic-eng/easa\n * npm install @agentic-eng/agent\n *\n * Then update imports:\n * - import { Agent } from '@agentic-eng/easa';\n * + import { Agent } from '@agentic-eng/agent';\n */\n\n// Runtime deprecation warning\nconst _warn = (globalThis as unknown as { console: { warn: (...args: string[]) => void } }).console.warn;\n_warn(\n '\\x1b[33m[DEPRECATED]\\x1b[0m @agentic-eng/easa is deprecated and will be removed after 15 April 2026. ' +\n 'Please migrate to @agentic-eng/agent. See https://www.npmjs.com/package/@agentic-eng/agent'\n);\n\n// Core\nexport {\n Agent,\n FlatFileMemoryProvider,\n ToolRegistry,\n ConsoleEventEmitter,\n NoopEventEmitter,\n EasaError,\n ProviderError,\n AgentConfigError,\n MaxIterationsError,\n ReasoningParseError,\n ToolExecutionError,\n} from '@agentic-eng/agent';\nexport type {\n AgentConfig,\n InvokeResult,\n LLMProvider,\n MemoryProvider,\n Tool,\n ToolInputSchema,\n ToolDefinition,\n ToolCallRequest,\n ToolResult,\n EventType,\n AgentEvent,\n AgentEventEmitter,\n Role,\n Message,\n ChatOptions,\n ChatResponse,\n ChatChunk,\n TokenUsage,\n ReasoningAction,\n LLMReasoningResponse,\n MemoryEntry,\n IterationResult,\n ReasoningTrace,\n InvokeOptions,\n} from '@agentic-eng/agent';\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agentic-eng/easa",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "description": "EASA — Easy Agent System Architecture: A Minimal TypeScript Framework for Agent Systems.",
5
5
  "keywords": [
6
6
  "agent",
@@ -43,7 +43,7 @@
43
43
  "node": ">=18.0.0"
44
44
  },
45
45
  "dependencies": {
46
- "@agentic-eng/agent": "0.1.0"
46
+ "@agentic-eng/agent": "0.1.1"
47
47
  },
48
48
  "devDependencies": {
49
49
  "tsup": "^8.0.0",