@rotifer/playground 0.32.1 → 0.33.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +17 -0
- package/README.md +2 -2
- package/README.zh.md +2 -2
- package/dist/commands/agent-create.d.ts +11 -0
- package/dist/commands/agent-create.d.ts.map +1 -1
- package/dist/commands/agent-create.js +50 -1
- package/dist/commands/agent-create.js.map +1 -1
- package/dist/commands/agent-memory.d.ts +64 -0
- package/dist/commands/agent-memory.d.ts.map +1 -0
- package/dist/commands/agent-memory.js +235 -0
- package/dist/commands/agent-memory.js.map +1 -0
- package/dist/commands/agent-run.d.ts.map +1 -1
- package/dist/commands/agent-run.js +84 -26
- package/dist/commands/agent-run.js.map +1 -1
- package/dist/commands/arena-submit.d.ts.map +1 -1
- package/dist/commands/arena-submit.js +9 -24
- package/dist/commands/arena-submit.js.map +1 -1
- package/dist/commands/compile.d.ts.map +1 -1
- package/dist/commands/compile.js +32 -6
- package/dist/commands/compile.js.map +1 -1
- package/dist/commands/genome-format.d.ts +5 -1
- package/dist/commands/genome-format.d.ts.map +1 -1
- package/dist/commands/genome-format.js +5 -1
- package/dist/commands/genome-format.js.map +1 -1
- package/dist/commands/hello.d.ts.map +1 -1
- package/dist/commands/hello.js +15 -2
- package/dist/commands/hello.js.map +1 -1
- package/dist/commands/run.d.ts.map +1 -1
- package/dist/commands/run.js +59 -4
- package/dist/commands/run.js.map +1 -1
- package/dist/commands/test.d.ts.map +1 -1
- package/dist/commands/test.js +78 -25
- package/dist/commands/test.js.map +1 -1
- package/dist/commands/wrap.d.ts.map +1 -1
- package/dist/commands/wrap.js +28 -70
- package/dist/commands/wrap.js.map +1 -1
- package/dist/index.js +47 -1
- package/dist/index.js.map +1 -1
- package/dist/memory/access.d.ts +53 -0
- package/dist/memory/access.d.ts.map +1 -0
- package/dist/memory/access.js +111 -0
- package/dist/memory/access.js.map +1 -0
- package/dist/memory/audit.d.ts +26 -0
- package/dist/memory/audit.d.ts.map +1 -0
- package/dist/memory/audit.js +30 -0
- package/dist/memory/audit.js.map +1 -0
- package/dist/memory/backend.d.ts +141 -0
- package/dist/memory/backend.d.ts.map +1 -0
- package/dist/memory/backend.js +536 -0
- package/dist/memory/backend.js.map +1 -0
- package/dist/memory/codec.d.ts +34 -0
- package/dist/memory/codec.d.ts.map +1 -0
- package/dist/memory/codec.js +184 -0
- package/dist/memory/codec.js.map +1 -0
- package/dist/memory/data-policy.d.ts +39 -0
- package/dist/memory/data-policy.d.ts.map +1 -0
- package/dist/memory/data-policy.js +42 -0
- package/dist/memory/data-policy.js.map +1 -0
- package/dist/memory/host.d.ts +119 -0
- package/dist/memory/host.d.ts.map +1 -0
- package/dist/memory/host.js +226 -0
- package/dist/memory/host.js.map +1 -0
- package/dist/memory/index.d.ts +37 -0
- package/dist/memory/index.d.ts.map +1 -0
- package/dist/memory/index.js +64 -0
- package/dist/memory/index.js.map +1 -0
- package/dist/memory/telemetry.d.ts +35 -0
- package/dist/memory/telemetry.d.ts.map +1 -0
- package/dist/memory/telemetry.js +51 -0
- package/dist/memory/telemetry.js.map +1 -0
- package/dist/memory/types.d.ts +110 -0
- package/dist/memory/types.d.ts.map +1 -0
- package/dist/memory/types.js +74 -0
- package/dist/memory/types.js.map +1 -0
- package/dist/publish/auto-publish.d.ts +1 -1
- package/dist/publish/auto-publish.js +1 -1
- package/dist/testsuite/gate.d.ts +8 -0
- package/dist/testsuite/gate.d.ts.map +1 -1
- package/dist/testsuite/gate.js +8 -2
- package/dist/testsuite/gate.js.map +1 -1
- package/dist/utils/arena-success.d.ts +10 -0
- package/dist/utils/arena-success.d.ts.map +1 -1
- package/dist/utils/arena-success.js +35 -8
- package/dist/utils/arena-success.js.map +1 -1
- package/dist/utils/binding.d.ts +6 -2
- package/dist/utils/binding.d.ts.map +1 -1
- package/dist/utils/binding.js.map +1 -1
- package/dist/utils/clawhub-client.d.ts +73 -0
- package/dist/utils/clawhub-client.d.ts.map +1 -0
- package/dist/utils/clawhub-client.js +176 -0
- package/dist/utils/clawhub-client.js.map +1 -0
- package/dist/utils/config.d.ts +7 -0
- package/dist/utils/config.d.ts.map +1 -1
- package/dist/utils/config.js +15 -1
- package/dist/utils/config.js.map +1 -1
- package/dist/utils/gene-id-display.d.ts +14 -0
- package/dist/utils/gene-id-display.d.ts.map +1 -0
- package/dist/utils/gene-id-display.js +64 -0
- package/dist/utils/gene-id-display.js.map +1 -0
- package/dist/utils/l0-gate.d.ts.map +1 -1
- package/dist/utils/l0-gate.js +4 -1
- package/dist/utils/l0-gate.js.map +1 -1
- package/dist/utils/rust-phenotype.d.ts +17 -5
- package/dist/utils/rust-phenotype.d.ts.map +1 -1
- package/dist/utils/rust-phenotype.js +25 -4
- package/dist/utils/rust-phenotype.js.map +1 -1
- package/package.json +10 -5
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,23 @@ All notable changes to this project will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [0.33.0](https://github.com/rotifer-protocol/rotifer-playground/compare/v0.32.1...v0.33.0) (2026-11-01)
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
### Features
|
|
12
|
+
|
|
13
|
+
* **memory:** Agent Memory in the Cloud binding (spec §38) ([#505](https://github.com/rotifer-protocol/rotifer-playground/issues/505)) ([50b8f45](https://github.com/rotifer-protocol/rotifer-playground/commit/50b8f4537e0965ded6972e7897ee65c1f881a4b4))
|
|
14
|
+
* **memory:** AgentMemory for genes — TS SDK, CLI and demo genes (spec §38) ([#504](https://github.com/rotifer-protocol/rotifer-playground/issues/504)) ([ae84efe](https://github.com/rotifer-protocol/rotifer-playground/commit/ae84efeb35544fb4d3dce43385d5e48047cbfe06))
|
|
15
|
+
* **memory:** AgentMemory in rotifer-core, its host functions and the napi binding ([#503](https://github.com/rotifer-protocol/rotifer-playground/issues/503)) ([67e8c0b](https://github.com/rotifer-protocol/rotifer-playground/commit/67e8c0b0ef4f6384552bef9326ebb30c1c413927))
|
|
16
|
+
* run validates against the gene's schema; fixes for compile, test, agent, sandbox, hello and config ([#501](https://github.com/rotifer-protocol/rotifer-playground/issues/501)) ([012b5f3](https://github.com/rotifer-protocol/rotifer-playground/commit/012b5f3a32a68ae77da1106bd3a32c4e681c34b7))
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
### Bug Fixes
|
|
20
|
+
|
|
21
|
+
* **deps:** bump wasmtime to 48.0.8 for the 2026-10-29 RustSec advisories; run macOS CI on macos-15 ([#502](https://github.com/rotifer-protocol/rotifer-playground/issues/502)) ([809b48a](https://github.com/rotifer-protocol/rotifer-playground/commit/809b48a9b04a513451f58e16ef101739f2672c7f))
|
|
22
|
+
* **wrap:** report ClawHub's real failure and retry it; run the ClawHub suite against a recorded ClawHub ([#517](https://github.com/rotifer-protocol/rotifer-playground/issues/517)) ([3027147](https://github.com/rotifer-protocol/rotifer-playground/commit/302714753e9ee3f6035037b3a8ab7543c3bba638))
|
|
23
|
+
* τ is paused in the CLI and skills; run imports a file: URL on Windows ([#499](https://github.com/rotifer-protocol/rotifer-playground/issues/499)) ([13a2ca3](https://github.com/rotifer-protocol/rotifer-playground/commit/13a2ca341ad65108c18767be993d86543b82084c))
|
|
24
|
+
|
|
8
25
|
## [0.32.1](https://github.com/rotifer-protocol/rotifer-playground/compare/v0.32.0...v0.32.1) (2026-10-28)
|
|
9
26
|
|
|
10
27
|
|
package/README.md
CHANGED
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
|
|
10
10
|
Development environment for the **Rotifer Protocol** — **WASM-Native, Polyglot by Design**: build genes in TypeScript / Rust / AssemblyScript / Go / C, compete in Arenas, share via Cloud, and simulate agent evolution.
|
|
11
11
|
|
|
12
|
-
> **Status:** v0.
|
|
12
|
+
> **Status:** v0.33.x — Agents now have memory (spec §38). It belongs to the agent, not to any gene, so it survives the genome changing. `rotifer agent create --memory-quota <size>` sets an agent's quota (default 10MB); over quota, CACHE, then PATTERN, then CONTEXT entries are evicted oldest first, and PREFERENCE entries never are. Memory is stored in the project's `.rotifer/playground.db`, every change is logged to `.rotifer/audit.jsonl`, and `rotifer agent memory list` / `delete` show and clear it without printing values. In `agent run`, Node-path genes get it as `ctx.memory` (SDK: `@rotifer/playground/memory`) and compiled genes through the `rotifer.readMemory` / `writeMemory` / `queryMemory` / `deleteMemory` host functions; TypeScript compiled to WASM with Javy cannot reach those host functions yet. A gene sees only the entries its access scope allows (same domain by default), and an entry's `maxRetentionDays` is enforced. The Cloud schema and the `agent-memory` edge function are in this repository but not deployed: Rotifer Cloud does not store agent memory yet. `rotifer run` now checks input and output against the gene's schema; `--no-validate` turns that off. Still true from v0.32: Arena F(g) is on a 0–1 scale (ADR-346) and scores from earlier versions are not converted; `arena submit --cloud` uploads the tier that actually ran; Hybrid genes must use https, and every redirect hop is checked against their allowed domains. Still true from v0.30: F(g) is scored against the season median and stays `estimated` and outside the ranking until coverage and robustness are measured (planned for v1.0); every CLI path runs a gene with exactly the permissions its phenotype declares; publishing enforces spec §47.5 T1. See [CHANGELOG.md](CHANGELOG.md) for full release history. Automatic peer discovery, internet-wide reach, and L4 Collective Immunity are later milestones — see [Implementation Status](#implementation-status) below.
|
|
13
13
|
|
|
14
14
|
---
|
|
15
15
|
|
|
@@ -169,7 +169,7 @@ Run `rotifer --help` for the grouped command list. The commands below cover the
|
|
|
169
169
|
| `rotifer wrap <gene-name>` | Wrap a function or SKILL.md as a gene (offers to publish, default yes — see [Publishing by default](#publishing-by-default)) |
|
|
170
170
|
| `rotifer test [gene-name]` | Test a gene (WASM sandbox preferred, `--compliance` for structural checks) |
|
|
171
171
|
| `rotifer compile [gene-name]` | Compile gene to Rotifer IR (auto TS→WASM) |
|
|
172
|
-
| `rotifer run <gene-name>` | Execute a single local gene directly |
|
|
172
|
+
| `rotifer run <gene-name>` | Execute a single local gene directly; input and output are checked against the gene's schema (`--no-validate` skips that) |
|
|
173
173
|
| `rotifer list` | List local genes in the current Agent workspace |
|
|
174
174
|
| `rotifer login` | Log in to Rotifer Cloud (OAuth) |
|
|
175
175
|
| `rotifer logout` | Log out from Rotifer Cloud |
|
package/README.zh.md
CHANGED
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
|
|
10
10
|
**Rotifer Protocol** 的开发环境——构建基因、运行 Arena 竞争、通过 Cloud 共享、模拟代理进化。
|
|
11
11
|
|
|
12
|
-
> **状态:** v0.
|
|
12
|
+
> **状态:** v0.33.x——Agent 有了记忆(规范 §38)。记忆属于 Agent、不属于某个基因,所以换了基因组也不会丢。`rotifer agent create --memory-quota <大小>` 设定 Agent 的配额(默认 10MB);超出配额时,依次清掉最旧的 CACHE、PATTERN、CONTEXT 条目,PREFERENCE 条目永不自动清理。记忆存在项目的 `.rotifer/playground.db` 里,每次改动都记进 `.rotifer/audit.jsonl`;`rotifer agent memory list` / `delete` 可以查看和清除记忆,不会打印出值。在 `agent run` 里,按 Node 方式运行的基因通过 `ctx.memory` 使用记忆(SDK:`@rotifer/playground/memory`),编译成 WASM 的基因通过 `rotifer.readMemory` / `writeMemory` / `queryMemory` / `deleteMemory` 宿主函数使用;用 Javy 把 TypeScript 编译成 WASM 的基因暂时还接不到这些宿主函数。基因只能看到访问范围允许的条目(默认同一领域),条目的 `maxRetentionDays` 会被强制执行。云端的表结构和 `agent-memory` 边缘函数已在本仓库,但还没有部署:Rotifer Cloud 目前还不保存 Agent 记忆。`rotifer run` 现在会按基因的 schema 检查输入和输出,加 `--no-validate` 可以关掉。v0.32 起的内容依然成立:Arena 的 F(g) 是 0 到 1 的分数(ADR-346),之前版本算出的分数不做换算;`arena submit --cloud` 上传实际运行的档位;Hybrid 基因只许 https,每一次重定向都要重新对照基因允许的域名。v0.30 起的内容依然成立:F(g) 按赛季中位数打分,在覆盖度与健壮性真正测量之前(计划在 v1.0)仍标 `estimated`、不进排名;所有 CLI 路径都按基因 phenotype 声明的权限运行;发布执行规范 §47.5 T1。完整发布历史见 [CHANGELOG.md](CHANGELOG.md)。自动节点发现、跨公网连接与 L4 集体免疫在之后的里程碑,见下方[实现状态](#实现状态)。
|
|
13
13
|
|
|
14
14
|
---
|
|
15
15
|
|
|
@@ -167,7 +167,7 @@ playground/
|
|
|
167
167
|
| `rotifer wrap <gene-name>` | 将函数或 `SKILL.md` 包装为基因 |
|
|
168
168
|
| `rotifer test [gene-name]` | 在沙箱中测试基因 |
|
|
169
169
|
| `rotifer compile [gene-name]` | 将基因编译为 Rotifer IR(WASM) |
|
|
170
|
-
| `rotifer run <gene-name>` |
|
|
170
|
+
| `rotifer run <gene-name>` | 直接执行单个本地基因;输入和输出都按基因的 schema 检查(`--no-validate` 跳过) |
|
|
171
171
|
| `rotifer list` | 列出当前 Agent 工作区中的本地基因 |
|
|
172
172
|
| `rotifer login` | 登录 Rotifer Cloud |
|
|
173
173
|
| `rotifer logout` | 从 Rotifer Cloud 登出 |
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { Command } from "commander";
|
|
2
|
+
import { type DataPolicy } from "../memory/data-policy.js";
|
|
2
3
|
export interface CreateAgentParams {
|
|
3
4
|
root: string;
|
|
4
5
|
genesDir: string;
|
|
@@ -15,6 +16,10 @@ export interface CreateAgentParams {
|
|
|
15
16
|
};
|
|
16
17
|
/** Receives schema-compatibility warnings instead of printing them (for --json callers). */
|
|
17
18
|
onSchemaWarnings?: (warnings: string[]) => void;
|
|
19
|
+
/** AgentMemory quota in bytes (spec §38.1); omitted → 10 MB. */
|
|
20
|
+
memoryQuota?: number;
|
|
21
|
+
/** §30.2 DataPolicy; omitted → DEFAULT_DATA_POLICY, written into the record. */
|
|
22
|
+
dataPolicy?: DataPolicy;
|
|
18
23
|
}
|
|
19
24
|
export interface AgentRecord {
|
|
20
25
|
id: string;
|
|
@@ -25,7 +30,13 @@ export interface AgentRecord {
|
|
|
25
30
|
strategy: string;
|
|
26
31
|
createdAt: string;
|
|
27
32
|
reputation: number;
|
|
33
|
+
/** AgentMemory quota in bytes (v0.9.4). Absent on older records → 10 MB. */
|
|
34
|
+
memoryQuota?: number;
|
|
35
|
+
/** §30.2 DataPolicy (v0.9.4). Absent on older records → DEFAULT_DATA_POLICY. */
|
|
36
|
+
dataPolicy?: DataPolicy;
|
|
28
37
|
}
|
|
29
38
|
export declare function createAgentCore(params: CreateAgentParams): AgentRecord;
|
|
30
39
|
export declare const agentCreateCommand: Command;
|
|
40
|
+
/** 10485760 → "10 MB"; 524288 → "512 KB"; 1610612736 → "1.5 GB". */
|
|
41
|
+
export declare function formatQuota(bytes: number): string;
|
|
31
42
|
//# sourceMappingURL=agent-create.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-create.d.ts","sourceRoot":"","sources":["../../src/commands/agent-create.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"agent-create.d.ts","sourceRoot":"","sources":["../../src/commands/agent-create.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAiBpC,OAAO,EAAuB,KAAK,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAKhF,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,6FAA6F;IAC7F,SAAS,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,EAAE,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;IAC5D,4FAA4F;IAC5F,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IAChD,gEAAgE;IAChE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gFAAgF;IAChF,UAAU,CAAC,EAAE,UAAU,CAAC;CACzB;AAED,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,4EAA4E;IAC5E,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gFAAgF;IAChF,UAAU,CAAC,EAAE,UAAU,CAAC;CACzB;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,iBAAiB,GAAG,WAAW,CA4EtE;AAED,eAAO,MAAM,kBAAkB,SA+H5B,CAAC;AAqKJ,oEAAoE;AACpE,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAKjD"}
|
|
@@ -35,6 +35,7 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
36
|
exports.agentCreateCommand = void 0;
|
|
37
37
|
exports.createAgentCore = createAgentCore;
|
|
38
|
+
exports.formatQuota = formatQuota;
|
|
38
39
|
const commander_1 = require("commander");
|
|
39
40
|
const node_fs_1 = require("node:fs");
|
|
40
41
|
const node_path_1 = require("node:path");
|
|
@@ -46,8 +47,16 @@ const config_js_1 = require("../utils/config.js");
|
|
|
46
47
|
const project_root_js_1 = require("../utils/project-root.js");
|
|
47
48
|
const validate_gene_name_js_1 = require("../utils/validate-gene-name.js");
|
|
48
49
|
const fidelity_discount_js_1 = require("../utils/fidelity-discount.js");
|
|
50
|
+
const data_policy_js_1 = require("../memory/data-policy.js");
|
|
51
|
+
const codec_js_1 = require("../memory/codec.js");
|
|
52
|
+
const types_js_1 = require("../memory/types.js");
|
|
53
|
+
const host_js_1 = require("../memory/host.js");
|
|
49
54
|
function createAgentCore(params) {
|
|
50
55
|
const { root, agentName, genome, parMerge } = params;
|
|
56
|
+
const memoryQuota = params.memoryQuota ?? types_js_1.DEFAULT_MEMORY_QUOTA_BYTES;
|
|
57
|
+
if (!Number.isSafeInteger(memoryQuota) || memoryQuota <= 0) {
|
|
58
|
+
throw new types_js_1.MemoryError("MEMORY_INVALID_INPUT", `memory quota must be a positive number of bytes (got ${memoryQuota})`);
|
|
59
|
+
}
|
|
51
60
|
for (const geneName of genome) {
|
|
52
61
|
(0, validate_gene_name_js_1.validateGeneName)(geneName);
|
|
53
62
|
const geneDir = (0, node_path_1.join)(root, params.genesDir, geneName);
|
|
@@ -55,7 +64,10 @@ function createAgentCore(params) {
|
|
|
55
64
|
throw new Error(`Gene '${geneName}' not found or not wrapped`);
|
|
56
65
|
}
|
|
57
66
|
}
|
|
58
|
-
|
|
67
|
+
// Only Seq hands one gene's output to the next; Par, Cond and Try give
|
|
68
|
+
// every gene the same input, and TryPool runs one gene per domain at a
|
|
69
|
+
// time. Checking those as a chain warned about fields nothing passes (#446).
|
|
70
|
+
if (genome.length >= 2 && params.compositionType === "Seq") {
|
|
59
71
|
const warnings = checkSchemaCompatibility(root, params.genesDir, genome);
|
|
60
72
|
if (params.onSchemaWarnings) {
|
|
61
73
|
params.onSchemaWarnings(warnings);
|
|
@@ -88,6 +100,11 @@ function createAgentCore(params) {
|
|
|
88
100
|
composition = { type: "TryPool" };
|
|
89
101
|
}
|
|
90
102
|
const agentId = (0, node_crypto_1.randomUUID)();
|
|
103
|
+
// The agent's memory, with its quota, in the project's native store — before
|
|
104
|
+
// the record, so a store that refuses leaves no half-created agent. Without
|
|
105
|
+
// the native store there is nothing to create; memory calls will say so.
|
|
106
|
+
const dataPolicy = structuredClone(params.dataPolicy ?? data_policy_js_1.DEFAULT_DATA_POLICY);
|
|
107
|
+
(0, host_js_1.ensureAgentMemory)((0, host_js_1.projectNativeMemory)(root), { id: agentId, memoryQuota, dataPolicy });
|
|
91
108
|
const agent = {
|
|
92
109
|
id: agentId,
|
|
93
110
|
name: agentName,
|
|
@@ -97,6 +114,8 @@ function createAgentCore(params) {
|
|
|
97
114
|
strategy: params.strategy || "manual",
|
|
98
115
|
createdAt: new Date().toISOString(),
|
|
99
116
|
reputation: 0.0,
|
|
117
|
+
memoryQuota,
|
|
118
|
+
dataPolicy,
|
|
100
119
|
};
|
|
101
120
|
const agentsDir = (0, node_path_1.join)(root, ".rotifer", "agents");
|
|
102
121
|
(0, node_fs_1.mkdirSync)(agentsDir, { recursive: true });
|
|
@@ -112,10 +131,30 @@ exports.agentCreateCommand = new commander_1.Command("create")
|
|
|
112
131
|
.option("--strategy <strategy>", "gene selection strategy", "greedy")
|
|
113
132
|
.option("--composition <type>", "composition type: Seq, Par, Cond, Try, TryPool", "Seq")
|
|
114
133
|
.option("--par-merge <strategy>", "merge strategy for Par: first, concat, merge", "first")
|
|
134
|
+
.option("--memory-quota <size>", "AgentMemory quota (spec §38.1): a size in KB, MB or GB", "10MB")
|
|
135
|
+
.addHelpText("after", [
|
|
136
|
+
"",
|
|
137
|
+
"Examples:",
|
|
138
|
+
" $ rotifer agent create my-agent --genes hello-world --memory-quota=50MB",
|
|
139
|
+
" $ rotifer agent create searcher --domain search --top 2",
|
|
140
|
+
].join("\n"))
|
|
115
141
|
.action(async (agentName, options) => {
|
|
116
142
|
const root = (0, project_root_js_1.requireProjectRoot)();
|
|
117
143
|
const config = (0, config_js_1.loadConfig)(root);
|
|
118
144
|
display.header("Agent Creation");
|
|
145
|
+
// Checked before anything is created, so a bad size leaves no agent behind.
|
|
146
|
+
let memoryQuota;
|
|
147
|
+
try {
|
|
148
|
+
memoryQuota = (0, codec_js_1.parseMemoryQuota)(options.memoryQuota);
|
|
149
|
+
}
|
|
150
|
+
catch (err) {
|
|
151
|
+
display.rustStyleError({
|
|
152
|
+
code: "E0040",
|
|
153
|
+
message: err.message,
|
|
154
|
+
suggestion: "Give the memory quota as a size in KB, MB or GB, e.g. --memory-quota=10MB",
|
|
155
|
+
});
|
|
156
|
+
process.exit(1);
|
|
157
|
+
}
|
|
119
158
|
let genome = [];
|
|
120
159
|
let selectionMode = "manual";
|
|
121
160
|
if (options.genes && options.genes.length > 0) {
|
|
@@ -145,11 +184,13 @@ exports.agentCreateCommand = new commander_1.Command("create")
|
|
|
145
184
|
compositionType: options.composition || "Seq",
|
|
146
185
|
parMerge: options.parMerge,
|
|
147
186
|
strategy: selectionMode,
|
|
187
|
+
memoryQuota,
|
|
148
188
|
});
|
|
149
189
|
const compositionType = agent.composition.type;
|
|
150
190
|
display.success(`Agent '${agentName}' created`);
|
|
151
191
|
display.keyValue("Agent ID", palette_js_1.c.warn(agent.id));
|
|
152
192
|
display.keyValue("State", agent.state);
|
|
193
|
+
display.keyValue("Memory quota", formatQuota(memoryQuota));
|
|
153
194
|
display.keyValue("Strategy", selectionMode);
|
|
154
195
|
const separator = compositionType === "Par" ? " ∥ " : " → ";
|
|
155
196
|
display.keyValue("Genome", genome.length > 0
|
|
@@ -289,4 +330,12 @@ function checkSchemaCompatibility(root, genesDir, genome) {
|
|
|
289
330
|
}
|
|
290
331
|
return warnings;
|
|
291
332
|
}
|
|
333
|
+
/** 10485760 → "10 MB"; 524288 → "512 KB"; 1610612736 → "1.5 GB". */
|
|
334
|
+
function formatQuota(bytes) {
|
|
335
|
+
for (const [unit, size] of [["GB", 1024 ** 3], ["MB", 1024 ** 2], ["KB", 1024]]) {
|
|
336
|
+
if (bytes >= size)
|
|
337
|
+
return `${Number((bytes / size).toFixed(2))} ${unit}`;
|
|
338
|
+
}
|
|
339
|
+
return `${bytes} B`;
|
|
340
|
+
}
|
|
292
341
|
//# sourceMappingURL=agent-create.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-create.js","sourceRoot":"","sources":["../../src/commands/agent-create.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"agent-create.js","sourceRoot":"","sources":["../../src/commands/agent-create.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `rotifer agent memory` — the deployer's view of an agent's memory
|
|
3
|
+
*. PREFERENCE entries are never evicted
|
|
4
|
+
* for quota, so a full memory needs a person to look and clean up.
|
|
5
|
+
*
|
|
6
|
+
* `list` shows what is stored without the values: key, category, size,
|
|
7
|
+
* the creating gene and the last update. Values can hold user data (§30), so
|
|
8
|
+
* they are never printed. `delete` removes one key or a whole category
|
|
9
|
+
* through rotifer-napi's deployer path (memoryAdminDelete), which audits each
|
|
10
|
+
* entry with actor "deployer". Both work on rotifer-napi's store in the
|
|
11
|
+
* project (`.rotifer/playground.db`); the deployer owns the agent, so gene
|
|
12
|
+
* access scopes do not apply. There is no edit command.
|
|
13
|
+
*/
|
|
14
|
+
import { Command } from "commander";
|
|
15
|
+
import { type NativeMemoryApi } from "../memory/index.js";
|
|
16
|
+
import { type MemoryCategory } from "../memory/types.js";
|
|
17
|
+
/** One stored entry, as the deployer sees it: no value. */
|
|
18
|
+
export interface MemoryListing {
|
|
19
|
+
key: string;
|
|
20
|
+
category: MemoryCategory;
|
|
21
|
+
/** Bytes the entry counts against the quota (UTF-8 key + value). */
|
|
22
|
+
size: number;
|
|
23
|
+
createdBy: string;
|
|
24
|
+
updatedAt: string;
|
|
25
|
+
}
|
|
26
|
+
export interface AgentMemoryListing {
|
|
27
|
+
entries: MemoryListing[];
|
|
28
|
+
/** All entries, whatever the category filter. */
|
|
29
|
+
totalSize: number;
|
|
30
|
+
quota: number | null;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* What `agent memory list` shows. An agent created before v0.9.4 has no
|
|
34
|
+
* memory yet: an empty listing, not an error. Without native memory there is
|
|
35
|
+
* no store to read: MEMORY_STORAGE_ERROR.
|
|
36
|
+
*/
|
|
37
|
+
export declare function listAgentMemory(native: NativeMemoryApi | null, agentId: string, category?: MemoryCategory): AgentMemoryListing;
|
|
38
|
+
/**
|
|
39
|
+
* How a creating gene is shown: its name when a gene in the project has that
|
|
40
|
+
* id, otherwise (an older version, a gene since removed) a short id prefix.
|
|
41
|
+
*/
|
|
42
|
+
export declare function creatorLabels(genesRoot: string): (geneId: string) => string;
|
|
43
|
+
/** Which entries `agent memory delete` removes: one key, or one category. */
|
|
44
|
+
export type MemoryDeleteSelector = {
|
|
45
|
+
key: string;
|
|
46
|
+
} | {
|
|
47
|
+
category: MemoryCategory;
|
|
48
|
+
};
|
|
49
|
+
/** rotifer-napi's deployer delete: the number of entries removed. */
|
|
50
|
+
export interface NativeAdminApi {
|
|
51
|
+
memoryAdminDelete(agentId: string, selectorJson: string): unknown;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* The selector from `--key` / `--category`: exactly one of them. A bad one
|
|
55
|
+
* is MEMORY_INVALID_INPUT, before anything is touched.
|
|
56
|
+
*/
|
|
57
|
+
export declare function deleteSelector(options: {
|
|
58
|
+
key?: string;
|
|
59
|
+
category?: string;
|
|
60
|
+
}): MemoryDeleteSelector;
|
|
61
|
+
/** Delete as the deployer; returns how many entries went. A missing key is MEMORY_NOT_FOUND. */
|
|
62
|
+
export declare function deleteAgentMemory(native: Partial<NativeAdminApi> | null, agentId: string, selector: MemoryDeleteSelector): number;
|
|
63
|
+
export declare const agentMemoryCommand: Command;
|
|
64
|
+
//# sourceMappingURL=agent-memory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-memory.d.ts","sourceRoot":"","sources":["../../src/commands/agent-memory.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AASpC,OAAO,EAAiB,KAAK,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGzE,OAAO,EAAiC,KAAK,cAAc,EAAwB,MAAM,oBAAoB,CAAC;AAE9G,2DAA2D;AAC3D,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,cAAc,CAAC;IACzB,oEAAoE;IACpE,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,aAAa,EAAE,CAAC;IACzB,iDAAiD;IACjD,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,eAAe,GAAG,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,cAAc,GAAG,kBAAkB,CAuB9H;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAS3E;AAED,6EAA6E;AAC7E,MAAM,MAAM,oBAAoB,GAAG;IAAE,GAAG,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,QAAQ,EAAE,cAAc,CAAA;CAAE,CAAC;AAElF,qEAAqE;AACrE,MAAM,WAAW,cAAc;IAC7B,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC;CACnE;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE;IAAE,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,oBAAoB,CAcjG;AAED,gGAAgG;AAChG,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,oBAAoB,GAAG,MAAM,CASjI;AAmGD,eAAO,MAAM,kBAAkB,SAGG,CAAC"}
|
|
@@ -0,0 +1,235 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.agentMemoryCommand = void 0;
|
|
37
|
+
exports.listAgentMemory = listAgentMemory;
|
|
38
|
+
exports.creatorLabels = creatorLabels;
|
|
39
|
+
exports.deleteSelector = deleteSelector;
|
|
40
|
+
exports.deleteAgentMemory = deleteAgentMemory;
|
|
41
|
+
/**
|
|
42
|
+
* `rotifer agent memory` — the deployer's view of an agent's memory
|
|
43
|
+
*. PREFERENCE entries are never evicted
|
|
44
|
+
* for quota, so a full memory needs a person to look and clean up.
|
|
45
|
+
*
|
|
46
|
+
* `list` shows what is stored without the values: key, category, size,
|
|
47
|
+
* the creating gene and the last update. Values can hold user data (§30), so
|
|
48
|
+
* they are never printed. `delete` removes one key or a whole category
|
|
49
|
+
* through rotifer-napi's deployer path (memoryAdminDelete), which audits each
|
|
50
|
+
* entry with actor "deployer". Both work on rotifer-napi's store in the
|
|
51
|
+
* project (`.rotifer/playground.db`); the deployer owns the agent, so gene
|
|
52
|
+
* access scopes do not apply. There is no edit command.
|
|
53
|
+
*/
|
|
54
|
+
const commander_1 = require("commander");
|
|
55
|
+
const node_fs_1 = require("node:fs");
|
|
56
|
+
const node_path_1 = require("node:path");
|
|
57
|
+
const display = __importStar(require("../utils/display.js"));
|
|
58
|
+
const config_js_1 = require("../utils/config.js");
|
|
59
|
+
const binding_js_1 = require("../utils/binding.js");
|
|
60
|
+
const project_root_js_1 = require("../utils/project-root.js");
|
|
61
|
+
const agent_run_js_1 = require("./agent-run.js");
|
|
62
|
+
const agent_create_js_1 = require("./agent-create.js");
|
|
63
|
+
const index_js_1 = require("../memory/index.js");
|
|
64
|
+
const host_js_1 = require("../memory/host.js");
|
|
65
|
+
const codec_js_1 = require("../memory/codec.js");
|
|
66
|
+
const types_js_1 = require("../memory/types.js");
|
|
67
|
+
/**
|
|
68
|
+
* What `agent memory list` shows. An agent created before v0.9.4 has no
|
|
69
|
+
* memory yet: an empty listing, not an error. Without native memory there is
|
|
70
|
+
* no store to read: MEMORY_STORAGE_ERROR.
|
|
71
|
+
*/
|
|
72
|
+
function listAgentMemory(native, agentId, category) {
|
|
73
|
+
if (!native) {
|
|
74
|
+
throw new types_js_1.MemoryError("MEMORY_STORAGE_ERROR", "native binding unavailable: agent memory needs the rotifer native addon on this platform");
|
|
75
|
+
}
|
|
76
|
+
let memory;
|
|
77
|
+
try {
|
|
78
|
+
memory = native.memoryGet(agentId);
|
|
79
|
+
}
|
|
80
|
+
catch (err) {
|
|
81
|
+
const e = (0, index_js_1.asMemoryError)(err);
|
|
82
|
+
if (e.code === "MEMORY_NOT_FOUND")
|
|
83
|
+
return { entries: [], totalSize: 0, quota: null };
|
|
84
|
+
throw e;
|
|
85
|
+
}
|
|
86
|
+
const entries = memory.entries
|
|
87
|
+
.filter((e) => category === undefined || e.category === category)
|
|
88
|
+
.map((e) => ({
|
|
89
|
+
key: e.key,
|
|
90
|
+
category: e.category,
|
|
91
|
+
size: (0, codec_js_1.entrySize)(e.key, Buffer.from(e.value, "base64")),
|
|
92
|
+
createdBy: e.createdBy,
|
|
93
|
+
updatedAt: e.updatedAt,
|
|
94
|
+
}))
|
|
95
|
+
.sort((a, b) => (a.updatedAt < b.updatedAt ? 1 : a.updatedAt > b.updatedAt ? -1 : a.key < b.key ? -1 : 1));
|
|
96
|
+
return { entries, totalSize: memory.totalSize, quota: memory.quota };
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* How a creating gene is shown: its name when a gene in the project has that
|
|
100
|
+
* id, otherwise (an older version, a gene since removed) a short id prefix.
|
|
101
|
+
*/
|
|
102
|
+
function creatorLabels(genesRoot) {
|
|
103
|
+
const names = new Map();
|
|
104
|
+
if ((0, node_fs_1.existsSync)(genesRoot)) {
|
|
105
|
+
for (const name of (0, node_fs_1.readdirSync)(genesRoot)) {
|
|
106
|
+
const result = (0, binding_js_1.geneIdV2)(genesRoot, name);
|
|
107
|
+
if ("id" in result)
|
|
108
|
+
names.set(result.id, name);
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
return (geneId) => names.get(geneId) ?? `${geneId.slice(0, 15)}…`;
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* The selector from `--key` / `--category`: exactly one of them. A bad one
|
|
115
|
+
* is MEMORY_INVALID_INPUT, before anything is touched.
|
|
116
|
+
*/
|
|
117
|
+
function deleteSelector(options) {
|
|
118
|
+
const hasKey = options.key !== undefined;
|
|
119
|
+
const hasCategory = options.category !== undefined;
|
|
120
|
+
if (hasKey === hasCategory) {
|
|
121
|
+
throw new types_js_1.MemoryError("MEMORY_INVALID_INPUT", "give exactly one of --key or --category");
|
|
122
|
+
}
|
|
123
|
+
if (hasKey) {
|
|
124
|
+
if (options.key === "")
|
|
125
|
+
throw new types_js_1.MemoryError("MEMORY_INVALID_INPUT", "--key must not be empty");
|
|
126
|
+
return { key: options.key };
|
|
127
|
+
}
|
|
128
|
+
if (!(0, types_js_1.isMemoryCategory)(options.category)) {
|
|
129
|
+
throw new types_js_1.MemoryError("MEMORY_INVALID_INPUT", `unknown memory category '${options.category}'; use one of PREFERENCE, PATTERN, CONTEXT, CACHE`);
|
|
130
|
+
}
|
|
131
|
+
return { category: options.category };
|
|
132
|
+
}
|
|
133
|
+
/** Delete as the deployer; returns how many entries went. A missing key is MEMORY_NOT_FOUND. */
|
|
134
|
+
function deleteAgentMemory(native, agentId, selector) {
|
|
135
|
+
if (!native || typeof native.memoryAdminDelete !== "function") {
|
|
136
|
+
throw new types_js_1.MemoryError("MEMORY_STORAGE_ERROR", "native binding unavailable: agent memory needs the rotifer native addon on this platform");
|
|
137
|
+
}
|
|
138
|
+
try {
|
|
139
|
+
return Number(native.memoryAdminDelete(agentId, JSON.stringify(selector)));
|
|
140
|
+
}
|
|
141
|
+
catch (err) {
|
|
142
|
+
throw (0, index_js_1.asMemoryError)(err);
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
/** The agent named on the command line, or exit with E0050. */
|
|
146
|
+
function agentOrExit(root, agentName) {
|
|
147
|
+
const agent = (0, agent_run_js_1.findAgent)(root, agentName);
|
|
148
|
+
if (!agent) {
|
|
149
|
+
display.rustStyleError({
|
|
150
|
+
code: "E0050",
|
|
151
|
+
message: `Agent '${agentName}' not found`,
|
|
152
|
+
suggestion: "List agents: rotifer agent list",
|
|
153
|
+
});
|
|
154
|
+
process.exit(1);
|
|
155
|
+
}
|
|
156
|
+
return agent;
|
|
157
|
+
}
|
|
158
|
+
const memoryListCommand = new commander_1.Command("list")
|
|
159
|
+
.description("List an agent's memory entries: key, category, size, creating gene, last update (values are not shown)")
|
|
160
|
+
.argument("<agent-name>", "agent name")
|
|
161
|
+
.option("-c, --category <category>", "only this category: PREFERENCE, PATTERN, CONTEXT or CACHE")
|
|
162
|
+
.addHelpText("after", ["", "Examples:", " $ rotifer agent memory list my-agent", " $ rotifer agent memory list my-agent --category PREFERENCE"].join("\n"))
|
|
163
|
+
.action((agentName, options) => {
|
|
164
|
+
const root = (0, project_root_js_1.requireProjectRoot)();
|
|
165
|
+
const agent = agentOrExit(root, agentName);
|
|
166
|
+
if (options.category !== undefined && !(0, types_js_1.isMemoryCategory)(options.category)) {
|
|
167
|
+
display.rustStyleError({
|
|
168
|
+
code: "E0040",
|
|
169
|
+
message: `unknown memory category '${options.category}'`,
|
|
170
|
+
suggestion: "Use one of PREFERENCE, PATTERN, CONTEXT, CACHE",
|
|
171
|
+
});
|
|
172
|
+
process.exit(1);
|
|
173
|
+
}
|
|
174
|
+
let listing;
|
|
175
|
+
try {
|
|
176
|
+
listing = listAgentMemory((0, host_js_1.projectNativeMemory)(root), agent.id, options.category);
|
|
177
|
+
}
|
|
178
|
+
catch (err) {
|
|
179
|
+
const e = (0, index_js_1.asMemoryError)(err);
|
|
180
|
+
display.rustStyleError({ code: "E0040", message: `${e.code}: ${e.message}` });
|
|
181
|
+
process.exit(1);
|
|
182
|
+
}
|
|
183
|
+
display.header(`Agent Memory: ${agentName}`);
|
|
184
|
+
const creator = creatorLabels((0, node_path_1.join)(root, (0, config_js_1.loadConfig)(root).genes_dir));
|
|
185
|
+
if (listing.entries.length === 0) {
|
|
186
|
+
display.info(options.category ? `No ${options.category} entries` : "No memory entries yet");
|
|
187
|
+
}
|
|
188
|
+
else {
|
|
189
|
+
display.table(listing.entries.map((e) => ({ ...e, createdBy: creator(e.createdBy) })), [
|
|
190
|
+
{ key: "key", label: "Key" },
|
|
191
|
+
{ key: "category", label: "Category", width: 12 },
|
|
192
|
+
{ key: "size", label: "Size", align: "right", format: (v) => (0, agent_create_js_1.formatQuota)(Number(v)) },
|
|
193
|
+
{ key: "createdBy", label: "Created by" },
|
|
194
|
+
{ key: "updatedAt", label: "Updated" },
|
|
195
|
+
]);
|
|
196
|
+
}
|
|
197
|
+
const quota = listing.quota === null ? "no memory created yet" : `${(0, agent_create_js_1.formatQuota)(listing.totalSize)} of ${(0, agent_create_js_1.formatQuota)(listing.quota)} used`;
|
|
198
|
+
display.hint(`${listing.entries.length} entr${listing.entries.length === 1 ? "y" : "ies"} shown · ${quota}`);
|
|
199
|
+
});
|
|
200
|
+
const memoryDeleteCommand = new commander_1.Command("delete")
|
|
201
|
+
.description("Delete an agent's memory entries as the deployer: one key, or every entry of one category")
|
|
202
|
+
.argument("<agent-name>", "agent name")
|
|
203
|
+
.option("-k, --key <key>", "the entry with this key")
|
|
204
|
+
.option("-c, --category <category>", "every entry of this category: PREFERENCE, PATTERN, CONTEXT or CACHE")
|
|
205
|
+
.addHelpText("after", [
|
|
206
|
+
"",
|
|
207
|
+
"Give exactly one of --key or --category. PREFERENCE entries are never evicted for quota, so this is how a full memory is cleared.",
|
|
208
|
+
"",
|
|
209
|
+
"Examples:",
|
|
210
|
+
" $ rotifer agent memory delete my-agent --key preference-demo/ada/language",
|
|
211
|
+
" $ rotifer agent memory delete my-agent --category CACHE",
|
|
212
|
+
].join("\n"))
|
|
213
|
+
.action((agentName, options) => {
|
|
214
|
+
const root = (0, project_root_js_1.requireProjectRoot)();
|
|
215
|
+
const agent = agentOrExit(root, agentName);
|
|
216
|
+
let deleted;
|
|
217
|
+
try {
|
|
218
|
+
deleted = deleteAgentMemory((0, host_js_1.projectNativeMemory)(root), agent.id, deleteSelector(options));
|
|
219
|
+
}
|
|
220
|
+
catch (err) {
|
|
221
|
+
const e = (0, index_js_1.asMemoryError)(err);
|
|
222
|
+
display.rustStyleError({
|
|
223
|
+
code: "E0040",
|
|
224
|
+
message: `${e.code}: ${e.message}`,
|
|
225
|
+
suggestion: e.code === "MEMORY_NOT_FOUND" ? `See what is stored: rotifer agent memory list ${agentName}` : undefined,
|
|
226
|
+
});
|
|
227
|
+
process.exit(1);
|
|
228
|
+
}
|
|
229
|
+
display.success(`Deleted ${deleted} entr${deleted === 1 ? "y" : "ies"} from ${agentName}'s memory`);
|
|
230
|
+
});
|
|
231
|
+
exports.agentMemoryCommand = new commander_1.Command("memory")
|
|
232
|
+
.description("Look at and clean up an agent's memory (deployer tools)")
|
|
233
|
+
.addCommand(memoryListCommand)
|
|
234
|
+
.addCommand(memoryDeleteCommand);
|
|
235
|
+
//# sourceMappingURL=agent-memory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-memory.js","sourceRoot":"","sources":["../../src/commands/agent-memory.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-run.d.ts","sourceRoot":"","sources":["../../src/commands/agent-run.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"agent-run.d.ts","sourceRoot":"","sources":["../../src/commands/agent-run.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAqBpC,UAAU,SAAS;IACjB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,WAAW,CAAC,EAAE;QACZ,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;QACpB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,SAAS,CAAC,EAAE;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,EAAE,CAAC,EAAE,MAAM,CAAC;YAAC,KAAK,CAAC,EAAE,OAAO,CAAC;YAAC,MAAM,CAAC,EAAE,OAAO,CAAA;SAAE,CAAC;QAC9E,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC;CACH;AAED,eAAO,MAAM,eAAe,SAiZxB,CAAC;AA4fL,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAgB3E;AAUD,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,MAAM,EAAE,EAChB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,GACjB,IAAI,CA0DN"}
|