@karmaniverous/jeeves-meta-openclaw 0.12.5 → 0.12.7

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.
@@ -2,9 +2,9 @@
2
2
  * Rollup configuration for the OpenClaw plugin package.
3
3
  * Two entry points: plugin (ESM + declarations) and CLI (ESM executable).
4
4
  *
5
- * `@karmaniverous/jeeves` is BUNDLED into the plugin output — the plugin
6
- * runs in OpenClaw's extensions directory where node_modules is not
7
- * reliably available. All other node: builtins are externalized.
5
+ * Runtime dependencies (`@karmaniverous/jeeves`, `@karmaniverous/jeeves-meta`)
6
+ * are externalized the OpenClaw host environment provides them.
7
+ * CLI bundles everything for standalone execution.
8
8
  */
9
9
  import type { RollupOptions } from 'rollup';
10
10
  declare const _default: RollupOptions[];
@@ -48,8 +48,12 @@ Full detail for a single meta, with optional archive history. Includes
48
48
  Dry-run for the next synthesis candidate. Shows scope files, delta files,
49
49
  architect trigger reasons, steer status, structure changes, and the
50
50
  phase that would execute next — without running any LLM calls. Includes
51
- `phaseState` and `owedPhase` (the phase that would run). Use before
52
- `meta_trigger` to understand what will happen.
51
+ `phaseState`, `owedPhase` (the phase that would run), `inputStatus`
52
+ (informational flags: structureHash, steerChanged, architectChanged,
53
+ criticChanged, crossRefsDeclChanged, crossRefContentChanged), and
54
+ `architectInvalidators` (list of reasons architect was triggered, e.g.
55
+ `structureHash`, `steer`, `_crossRefs`, `firstRun`, `architectEvery`).
56
+ Use before `meta_trigger` to understand what will happen.
53
57
 
54
58
  **Parameters:**
55
59
  - `path` (optional): Specific `.meta/` or owner directory path. If omitted,
@@ -105,7 +109,8 @@ modify `_crossRefs` — without editing `meta.json` directly on the filesystem.
105
109
  **Parameters:**
106
110
  - `path` (required): `.meta/` or owner directory path.
107
111
  - `updates` (required): Object with properties to set. Supported:
108
- `_steer`, `_emphasis`, `_depth`, `_crossRefs`, `_disabled`.
112
+ `_steer`, `_emphasis`, `_depth`, `_crossRefs`, `_disabled`,
113
+ `_architectTimeout`, `_builderTimeout`, `_criticTimeout`.
109
114
  Set a value to `null` to remove the property.
110
115
 
111
116
  ### meta_queue
@@ -141,6 +146,7 @@ compatibility.
141
146
  - **Disabling a meta:** `meta_update` with path and `updates: { _disabled: true }`
142
147
  - **Re-enabling a meta:** `meta_update` with path and `updates: { _disabled: null }`
143
148
  - **Changing steer via API:** `meta_update` with path and `updates: { _steer: "new focus" }`
149
+ - **Setting per-entity timeouts:** `meta_update` with path and `updates: { _builderTimeout: 600 }`
144
150
  - **Reading synthesis output:** Use `watcher_search` filtered by the properties
145
151
  configured in `metaProperty` (e.g. `{ "domains": ["meta"] }` in production).
146
152
  The default properties are `{ _meta: "current" }` for live metas and
@@ -213,7 +219,9 @@ Key settings:
213
219
 
214
220
  | `schedule` | `*/30 * * * *` | Cron expression for automatic synthesis scheduling |
215
221
  | `serverBaseUrl` | (optional) | Public base URL of the service (e.g. `http://myhost:1938`). When set, progress reports include clickable entity links. |
216
- | `reportChannel` | (optional) | Gateway channel target for progress messages (e.g. Slack channel ID) |
222
+ | `reportChannel` | (optional) | Gateway channel name (e.g. `slack`). Legacy: also used as target if `reportTarget` is unset. |
223
+ | `reportTarget` | (optional) | Channel/user ID to send progress messages to |
224
+ | `tier2ScanLimit` | 50 | Max all-fresh candidates to scan per tick in Tier 2 invalidation |
217
225
  | `logging.level` | `info` | Log level (trace/debug/info/warn/error) |
218
226
  | `logging.file` | (optional) | Log file path |
219
227
 
@@ -335,7 +343,7 @@ The `autoSeed` config field enables declarative, config-driven `.meta/`
335
343
  creation. It is an array of policy rules, each with the shape:
336
344
 
337
345
  ```json
338
- { "match": "<glob>", "steer": "<optional prompt>", "crossRefs": ["<optional paths>"] }
346
+ { "match": "<glob>", "steer": "<optional>", "crossRefs": ["<optional>"], "parentDepth": 0 }
339
347
  ```
340
348
 
341
349
  - **`match`** (required) — a glob pattern compatible with `watcher.walk()`.
@@ -345,6 +353,14 @@ creation. It is an array of policy rules, each with the shape:
345
353
  seeded `meta.json`.
346
354
  - **`crossRefs`** (optional) — array of cross-ref owner paths written as
347
355
  `_crossRefs` in the seeded `meta.json`.
356
+ - **`parentDepth`** (optional, default 0) — walk up this many extra parent
357
+ levels from the matched file's directory.
358
+ - **`architectTimeout`** (optional) — per-category timeout override for
359
+ the architect phase (seconds, min 30).
360
+ - **`builderTimeout`** (optional) — per-category timeout override for
361
+ the builder phase (seconds, min 30).
362
+ - **`criticTimeout`** (optional) — per-category timeout override for
363
+ the critic phase (seconds, min 30).
348
364
 
349
365
  **Evaluation order:** Rules are processed in array order. If multiple rules
350
366
  match the same directory, the last match wins for `steer` and `crossRefs`.
@@ -567,7 +583,8 @@ jeeves-meta <command> [options]
567
583
  ```
568
584
 
569
585
  Commands: `start`, `status`, `list`, `detail`, `preview`, `synthesize`,
570
- `seed`, `unlock`, `config`, `service install|start|stop|status|remove`.
586
+ `seed`, `unlock`, `abort`, `prune`, `config`, `queue list|clear`,
587
+ `service install|start|stop|status|remove`.
571
588
 
572
589
  Config resolution: `--config` flag → `JEEVES_META_CONFIG` env var → error.
573
590
  All client commands support `-p, --port` to specify the service port (default: 1938).
@@ -6,7 +6,7 @@
6
6
  *
7
7
  * @module serviceClient
8
8
  */
9
- import type { DepHealth, GatewayDepHealth, MetaListSummary, MetasItem, MetasResponse, ServiceState, WatcherDepHealth } from '@karmaniverous/jeeves-meta-core';
9
+ import { type DepHealth, type GatewayDepHealth, type MetaListSummary, type MetasItem, type MetasResponse, type ServiceState, type WatcherDepHealth } from '@karmaniverous/jeeves-meta-core';
10
10
  export type { DepHealth, GatewayDepHealth, MetaListSummary, MetasItem, MetasResponse, ServiceState, WatcherDepHealth, };
11
11
  /**
12
12
  * Service status response from GET /status.
@@ -48,6 +48,11 @@ export declare class MetaServiceClient {
48
48
  private get;
49
49
  /** POST helper — returns parsed JSON. */
50
50
  private post;
51
+ /**
52
+ * Interpolate a parameterized endpoint path.
53
+ * Replaces `:param` placeholders with URI-encoded values.
54
+ */
55
+ private endpointPath;
51
56
  /** GET /status — service health + queue state. */
52
57
  status(): Promise<StatusResponse>;
53
58
  /** GET /metas — list all meta entities with summary. */
@@ -67,6 +72,9 @@ export declare class MetaServiceClient {
67
72
  _depth?: number | null;
68
73
  _crossRefs?: string[] | null;
69
74
  _disabled?: boolean | null;
75
+ _architectTimeout?: number | null;
76
+ _builderTimeout?: number | null;
77
+ _criticTimeout?: number | null;
70
78
  }): Promise<unknown>;
71
79
  /** GET /metas/:path — detail for a single meta. */
72
80
  detail(metaPath: string, options?: {
@@ -2,7 +2,7 @@
2
2
  "id": "jeeves-meta-openclaw",
3
3
  "name": "Jeeves Meta",
4
4
  "description": "Knowledge synthesis tools — trigger synthesis, view status, manage entities.",
5
- "version": "0.12.5",
5
+ "version": "0.12.7",
6
6
  "skills": [
7
7
  "dist/skills/jeeves-meta"
8
8
  ],
package/package.json CHANGED
@@ -1,15 +1,30 @@
1
1
  {
2
- "name": "@karmaniverous/jeeves-meta-openclaw",
3
- "version": "0.12.5",
4
2
  "author": "Jason Williscroft",
5
- "description": "OpenClaw plugin for jeeves-meta — synthesis tools and virtual rule registration",
6
- "license": "BSD-3-Clause",
7
- "type": "module",
8
- "main": "dist/index.js",
9
- "types": "dist/index.d.ts",
10
3
  "bin": {
11
4
  "jeeves-meta-openclaw": "./dist/cli.js"
12
5
  },
6
+ "bugs": {
7
+ "url": "https://github.com/karmaniverous/jeeves-meta/issues"
8
+ },
9
+ "dependencies": {
10
+ "@karmaniverous/jeeves": "^0.5.11",
11
+ "@karmaniverous/jeeves-meta-core": "^0.1.3"
12
+ },
13
+ "description": "OpenClaw plugin for jeeves-meta — synthesis tools and virtual rule registration",
14
+ "devDependencies": {
15
+ "@dotenvx/dotenvx": "^1.69.1",
16
+ "@rollup/plugin-commonjs": "^29.0.2",
17
+ "@rollup/plugin-node-resolve": "^16.0.3",
18
+ "@rollup/plugin-typescript": "^12.3.0",
19
+ "cross-env": "^10.1.0",
20
+ "release-it": "^20.0.1",
21
+ "rollup": "^4.60.4",
22
+ "tslib": "^2.8.1",
23
+ "vitest": "^4.1.7"
24
+ },
25
+ "engines": {
26
+ "node": ">=22"
27
+ },
13
28
  "exports": {
14
29
  ".": {
15
30
  "import": {
@@ -23,17 +38,6 @@
23
38
  "content",
24
39
  "openclaw.plugin.json"
25
40
  ],
26
- "publishConfig": {
27
- "access": "public"
28
- },
29
- "repository": {
30
- "type": "git",
31
- "url": "git+https://github.com/karmaniverous/jeeves-meta.git",
32
- "directory": "packages/openclaw"
33
- },
34
- "bugs": {
35
- "url": "https://github.com/karmaniverous/jeeves-meta/issues"
36
- },
37
41
  "homepage": "https://github.com/karmaniverous/jeeves-meta#readme",
38
42
  "keywords": [
39
43
  "openclaw",
@@ -41,46 +45,23 @@
41
45
  "jeeves-meta",
42
46
  "synthesis"
43
47
  ],
44
- "engines": {
45
- "node": ">=22"
46
- },
48
+ "license": "BSD-3-Clause",
49
+ "main": "dist/index.js",
50
+ "name": "@karmaniverous/jeeves-meta-openclaw",
47
51
  "openclaw": {
48
52
  "extensions": [
49
53
  "./dist/index.js"
50
54
  ]
51
55
  },
52
- "devDependencies": {
53
- "@dotenvx/dotenvx": "^1.65.0",
54
- "@rollup/plugin-commonjs": "^29.0.2",
55
- "@rollup/plugin-node-resolve": "^16.0.3",
56
- "@rollup/plugin-typescript": "^12.3.0",
57
- "cross-env": "^10.1.0",
58
- "release-it": "^20.0.1",
59
- "rollup": "^4.60.3",
60
- "tslib": "^2.8.1",
61
- "vitest": "^4.1.6"
62
- },
63
- "scripts": {
64
- "build": "npm run build:plugin && npm run build:skills && npm run build:content",
65
- "changelog": "git-cliff -o CHANGELOG.md",
66
- "lint": "eslint .",
67
- "lint:fix": "eslint --fix .",
68
- "release": "dotenvx run -f .env.local -- release-it",
69
- "release:pre": "dotenvx run -f .env.local -- release-it --no-git.requireBranch --github.prerelease --preRelease",
70
- "knip": "knip",
71
- "test": "vitest run",
72
- "typecheck": "tsc",
73
- "diagrams": "cd diagrams && plantuml -tpng -o ../assets -r .",
74
- "build:plugin": "rimraf dist && cross-env NO_COLOR=1 rollup --config rollup.config.ts --configPlugin @rollup/plugin-typescript",
75
- "build:skills": "node scripts/build-skills.mjs",
76
- "build:content": "node scripts/copy-content.mjs"
56
+ "publishConfig": {
57
+ "access": "public"
77
58
  },
78
59
  "release-it": {
79
60
  "git": {
80
61
  "changelog": "npx git-cliff --unreleased --strip header",
81
62
  "commitMessage": "chore: release @karmaniverous/jeeves-meta-openclaw v${version}",
82
- "tagName": "openclaw/${version}",
83
- "requireBranch": "main"
63
+ "requireBranch": "main",
64
+ "tagName": "openclaw/${version}"
84
65
  },
85
66
  "github": {
86
67
  "release": true
@@ -89,10 +70,6 @@
89
70
  "after:bump": [
90
71
  "node -e \"const f='openclaw.plugin.json';const j=JSON.parse(require('fs').readFileSync(f,'utf8'));j.version='${version}';require('fs').writeFileSync(f,JSON.stringify(j,null,2)+'')\""
91
72
  ],
92
- "before:npm:release": [
93
- "npx git-cliff -o CHANGELOG.md",
94
- "git add -A"
95
- ],
96
73
  "after:init": [
97
74
  "npm run lint",
98
75
  "npm run typecheck",
@@ -103,14 +80,37 @@
103
80
  "git switch -c release/openclaw/${version}",
104
81
  "git push -u origin release/openclaw/${version}",
105
82
  "git switch ${branchName}"
83
+ ],
84
+ "before:npm:release": [
85
+ "npx git-cliff -o CHANGELOG.md",
86
+ "git add -A"
106
87
  ]
107
88
  },
108
89
  "npm": {
109
90
  "publish": true
110
91
  }
111
92
  },
112
- "dependencies": {
113
- "@karmaniverous/jeeves": "^0.5.10",
114
- "@karmaniverous/jeeves-meta-core": "^0.1.1"
115
- }
93
+ "repository": {
94
+ "directory": "packages/openclaw",
95
+ "type": "git",
96
+ "url": "git+https://github.com/karmaniverous/jeeves-meta.git"
97
+ },
98
+ "scripts": {
99
+ "build": "npm run build:plugin && npm run build:skills && npm run build:content",
100
+ "build:content": "node scripts/copy-content.mjs",
101
+ "build:plugin": "rimraf dist && cross-env NO_COLOR=1 rollup --config rollup.config.ts --configPlugin @rollup/plugin-typescript",
102
+ "build:skills": "node scripts/build-skills.mjs",
103
+ "changelog": "git-cliff -o CHANGELOG.md",
104
+ "diagrams": "cd diagrams && plantuml -tpng -o ../assets -r .",
105
+ "knip": "knip",
106
+ "lint": "eslint .",
107
+ "lint:fix": "eslint --fix .",
108
+ "release": "dotenvx run -f .env.local -- release-it",
109
+ "release:pre": "dotenvx run -f .env.local -- release-it --no-git.requireBranch --github.prerelease --preRelease",
110
+ "test": "vitest run",
111
+ "typecheck": "tsc"
112
+ },
113
+ "type": "module",
114
+ "types": "dist/index.d.ts",
115
+ "version": "0.12.7"
116
116
  }