@pellux/goodvibes-agent 1.7.0 → 1.8.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/docs/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # GoodVibes Agent Docs
2
2
 
3
- These are the package-facing docs for the GoodVibes Agent `1.7.x` release line.
3
+ These are the package-facing docs for the GoodVibes Agent `1.8.x` release line.
4
4
 
5
5
  ## Current Docs
6
6
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pellux/goodvibes-agent",
3
- "version": "1.7.0",
3
+ "version": "1.8.0",
4
4
  "private": false,
5
5
  "description": "GoodVibes personal operator assistant TUI with a proactive Agent product brain, isolated Agent Knowledge, local profiles, routines, skills, personas, and explicit build delegation.",
6
6
  "type": "module",
@@ -92,7 +92,7 @@
92
92
  },
93
93
  "dependencies": {},
94
94
  "devDependencies": {
95
- "@pellux/goodvibes-sdk": "1.5.0",
95
+ "@pellux/goodvibes-sdk": "1.6.1",
96
96
  "sql.js": "^1.14.1",
97
97
  "sqlite-vec": "^0.1.9",
98
98
  "zustand": "^5.0.12",
@@ -1,5 +1,5 @@
1
1
  {
2
- "generatedAt": "2026-07-01T04:29:35.261Z",
2
+ "generatedAt": "2026-07-09T06:39:25.714Z",
3
3
  "homeDir": "[goodvibes-home]",
4
4
  "binaryPath": "[agent-binary]",
5
5
  "connectedHostBaseUrl": "http://127.0.0.1:3421",
@@ -9,8 +9,8 @@
9
9
  "id": "verification-ledger",
10
10
  "title": "Verification inventory ledger",
11
11
  "status": "pass",
12
- "summary": "99.5% local verification signal across 824 inventory items.",
13
- "detail": "84% local behavior verified; 98 item(s) require external outcomes."
12
+ "summary": "99.5% local verification signal across 839 inventory items.",
13
+ "detail": "82.8% local behavior verified; 110 item(s) require external outcomes."
14
14
  },
15
15
  {
16
16
  "id": "compiled-cli-present",
@@ -23,7 +23,7 @@
23
23
  "title": "Agent CLI version command",
24
24
  "status": "pass",
25
25
  "summary": "Agent CLI version returned successfully.",
26
- "detail": "goodvibes-agent 1.5.3"
26
+ "detail": "goodvibes-agent 1.6.4"
27
27
  },
28
28
  {
29
29
  "id": "cli-status-json",
@@ -37,14 +37,14 @@
37
37
  "title": "Agent CLI compatibility JSON command",
38
38
  "status": "pass",
39
39
  "summary": "Agent CLI compatibility returned parseable JSON.",
40
- "detail": "{\n \"ok\": true,\n \"packageVersion\": \"1.5.3\",\n \"connectedHost\": {\n \"baseUrl\": \"http://127.0.0.1:3421\",\n \"status\": 200,\n \"reachable\": true,\n \"compatible\": true\n },\n \"auth\": {\n \"tokenPresent\": true,\n \"tokenPath\": \"env:GOODVIBES_CONNECTED_HOST_TOKEN\"\n },\n \"agentKnowledge\": {\n \"route\": \"/api/goodvibes-agent/knowledge/status\",\n \"ready\": true,\n \"kind\": \"ok\"\n }\n}"
40
+ "detail": "{\n \"ok\": true,\n \"packageVersion\": \"1.6.4\",\n \"connectedHost\": {\n \"baseUrl\": \"http://127.0.0.1:3421\",\n \"status\": 200,\n \"reachable\": true,\n \"compatible\": true\n },\n \"auth\": {\n \"tokenPresent\": true,\n \"tokenPath\": \"env:GOODVIBES_CONNECTED_HOST_TOKEN\"\n },\n \"agentKnowledge\": {\n \"route\": \"/api/goodvibes-agent/knowledge/status\",\n \"ready\": true,\n \"kind\": \"ok\"\n }\n}"
41
41
  },
42
42
  {
43
43
  "id": "cli-agent-knowledge-status",
44
44
  "title": "Agent Knowledge CLI status command",
45
45
  "status": "pass",
46
46
  "summary": "Agent Knowledge status returned parseable JSON.",
47
- "detail": "{\n \"ok\": true,\n \"kind\": \"agentKnowledge.status\",\n \"route\": \"/api/goodvibes-agent/knowledge/status\",\n \"data\": {\n \"ready\": true,\n \"storagePath\": \"[goodvibes-home]/tui/knowledge-agent.sqlite\",\n \"sourceCount\": 0,\n \"nodeCount\": 0,\n \"edgeCount\": 0,\n \"issueCount\": 0,\n \"extractionCount\": 0,\n \"jobRunCount\": 357,\n \"refinementTaskCount\": 0,\n \"usageCount\": 0,\n \"candidateCount\": 0,\n \"reportCount\": 17,\n \"scheduleCount\": 3,\n \"note\": \"Structured knowledge uses SQL-backed sources, nodes, edges, issues, extractions, and job runs. Markdown is an optional projection, not the source of truth.\"\n }\n}"
47
+ "detail": "{\n \"ok\": true,\n \"kind\": \"agentKnowledge.status\",\n \"route\": \"/api/goodvibes-agent/knowledge/status\",\n \"data\": {\n \"ready\": true,\n \"storagePath\": \"[goodvibes-home]/tui/knowledge-agent.sqlite\",\n \"sourceCount\": 0,\n \"nodeCount\": 0,\n \"edgeCount\": 0,\n \"issueCount\": 0,\n \"extractionCount\": 0,\n \"jobRunCount\": 561,\n \"refinementTaskCount\": 0,\n \"usageCount\": 0,\n \"candidateCount\": 0,\n \"reportCount\": 26,\n \"scheduleCount\": 3,\n \"note\": \"Structured knowledge uses SQL-backed sources, nodes, edges, issues, extractions, and job runs. Markdown is an optional projection, not the source of truth.\"\n }\n}"
48
48
  },
49
49
  {
50
50
  "id": "cli-providers",
@@ -57,7 +57,7 @@
57
57
  "id": "cli-doctor",
58
58
  "title": "CLI doctor command",
59
59
  "status": "pass",
60
- "summary": "Doctor completed without findings.",
60
+ "summary": "Doctor completed; 1 operator-configuration risk advisory(ies) noted (intentional trust posture, not a release defect).",
61
61
  "detail": "Doctor command completed without findings; provider/model identifiers and credential posture omitted from release artifact."
62
62
  },
63
63
  {
@@ -65,7 +65,7 @@
65
65
  "title": "Authenticated connected-host /status",
66
66
  "status": "pass",
67
67
  "summary": "/status returned 200 with parseable JSON.",
68
- "detail": "{\"status\":\"running\",\"version\":\"0.35.0\"}"
68
+ "detail": "{\"status\":\"running\",\"version\":\"1.5.0\"}"
69
69
  },
70
70
  {
71
71
  "id": "connected-host-health",
@@ -78,15 +78,15 @@
78
78
  "id": "openai-compatible-models",
79
79
  "title": "OpenAI-compatible /v1/models route",
80
80
  "status": "pass",
81
- "summary": "/v1/models returned 121 model(s).",
82
- "detail": "/v1/models returned 121 model(s); model identifiers omitted from release artifact."
81
+ "summary": "/v1/models returned 214 model(s).",
82
+ "detail": "/v1/models returned 214 model(s); model identifiers omitted from release artifact."
83
83
  },
84
84
  {
85
85
  "id": "agent-knowledge-status",
86
86
  "title": "Agent Knowledge isolated /status",
87
87
  "status": "pass",
88
88
  "summary": "Agent Knowledge status route returned parseable isolated JSON.",
89
- "detail": "{\"ready\":true,\"storagePath\":\"[goodvibes-home]/tui/knowledge-agent.sqlite\",\"sourceCount\":0,\"nodeCount\":0,\"edgeCount\":0,\"issueCount\":0,\"extractionCount\":0,\"jobRunCount\":357,\"refinementTaskCount\":0,\"usageCount\":0,\"candidateCount\":0,\"reportCount\":17,\"scheduleCount\":3,\"note\":\"Structured knowledge uses SQL-backed sources, nodes, edges, issues, extractions, and job runs. Markdown is an optional projection, not the source of truth.\"}"
89
+ "detail": "{\"ready\":true,\"storagePath\":\"[goodvibes-home]/tui/knowledge-agent.sqlite\",\"sourceCount\":0,\"nodeCount\":0,\"edgeCount\":0,\"issueCount\":0,\"extractionCount\":0,\"jobRunCount\":561,\"refinementTaskCount\":0,\"usageCount\":0,\"candidateCount\":0,\"reportCount\":26,\"scheduleCount\":3,\"note\":\"Structured knowledge uses SQL-backed sources, nodes, edges, issues, extractions, and job runs. Markdown is an optional projection, not the source of truth.\"}"
90
90
  },
91
91
  {
92
92
  "id": "agent-knowledge-ask-isolated",
@@ -128,7 +128,7 @@
128
128
  "title": "Agent Knowledge isolated map",
129
129
  "status": "pass",
130
130
  "summary": "Agent Knowledge isolated map stayed on the isolated Agent route.",
131
- "detail": "{\"ok\":true,\"title\":\"Knowledge Map\",\"generatedAt\":1782880175258,\"width\":1280,\"height\":920,\"nodeCount\":0,\"edgeCount\":0,\"totalNodeCount\":0,\"totalEdgeCount\":0,\"facets\":{\"recordKinds\":[],\"nodeKinds\":[],\"sourceTypes\":[],\"sourceStatuses\":[],\"nodeStatuses\":[],\"issueCodes\":[],\"issueStatuses\":[],\"issueSeverities\":[],\"edgeRelations\":[],\"tags\":[]},\"nodes\":[],\"edges\":[],\"svg\":\"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" width=\\\"1280\\\" height=\\\"920\\\" viewBox=\\\"0 0 1280 920\\\" role=\\\"img\\\" aria-label=\\\"Knowledge Map\\\">\\n<defs>\\n <radialGradient id=\\\"knowledgeMapBg\\\" cx=\\\"50%\\\" cy=\\\"46%\\\" r=\\\"70%\\\">\\n <stop offset=\\\"0%\\\" stop-color=\\\"#f7f4ec\\\" />\\n <stop offset=\\\"60%\\\" stop-color=\\\"#e9eef0\\\" />\\n <stop offset=\\\"100%\\\" stop-color=\\\"#dde6df\\\" />\\n </radialGradient>\\n <filter id=\\\"softShadow\\\" x=\\\"-20%\\\" y=\\\"-20%\\\" width=\\\"140%\\\" height=\\\"140%\\\">\\n <feDropShadow dx=\\\"0\\\" dy=\\\"6\\... [truncated]"
131
+ "detail": "{\"ok\":true,\"title\":\"Knowledge Map\",\"generatedAt\":1783579165713,\"width\":1280,\"height\":920,\"nodeCount\":0,\"edgeCount\":0,\"totalNodeCount\":0,\"totalEdgeCount\":0,\"facets\":{\"recordKinds\":[],\"nodeKinds\":[],\"sourceTypes\":[],\"sourceStatuses\":[],\"nodeStatuses\":[],\"issueCodes\":[],\"issueStatuses\":[],\"issueSeverities\":[],\"edgeRelations\":[],\"tags\":[]},\"nodes\":[],\"edges\":[],\"svg\":\"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" width=\\\"1280\\\" height=\\\"920\\\" viewBox=\\\"0 0 1280 920\\\" role=\\\"img\\\" aria-label=\\\"Knowledge Map\\\">\\n<defs>\\n <radialGradient id=\\\"knowledgeMapBg\\\" cx=\\\"50%\\\" cy=\\\"46%\\\" r=\\\"70%\\\">\\n <stop offset=\\\"0%\\\" stop-color=\\\"#f7f4ec\\\" />\\n <stop offset=\\\"60%\\\" stop-color=\\\"#e9eef0\\\" />\\n <stop offset=\\\"100%\\\" stop-color=\\\"#dde6df\\\" />\\n </radialGradient>\\n <filter id=\\\"softShadow\\\" x=\\\"-20%\\\" y=\\\"-20%\\\" width=\\\"140%\\\" height=\\\"140%\\\">\\n <feDropShadow dx=\\\"0\\\" dy=\\\"6\\... [truncated]"
132
132
  },
133
133
  {
134
134
  "id": "agent-knowledge-connectors-isolated",
@@ -1,6 +1,6 @@
1
1
  # GoodVibes Agent Live Verification
2
2
 
3
- Generated: 2026-07-01T04:29:35.261Z
3
+ Generated: 2026-07-09T06:39:25.714Z
4
4
  Home: `[goodvibes-home]`
5
5
  Binary: `[agent-binary]`
6
6
  Connected host: `http://127.0.0.1:3421`
@@ -14,17 +14,17 @@ Connected host: `http://127.0.0.1:3421`
14
14
 
15
15
  | Check | Status | Summary |
16
16
  |---|---|---|
17
- | Verification inventory ledger | pass | 99.5% local verification signal across 824 inventory items. |
17
+ | Verification inventory ledger | pass | 99.5% local verification signal across 839 inventory items. |
18
18
  | Compiled GoodVibes Agent CLI binary | pass | Found [agent-binary]. |
19
19
  | Agent CLI version command | pass | Agent CLI version returned successfully. |
20
20
  | Agent CLI status JSON command | pass | Agent CLI status returned parseable JSON. |
21
21
  | Agent CLI compatibility JSON command | pass | Agent CLI compatibility returned parseable JSON. |
22
22
  | Agent Knowledge CLI status command | pass | Agent Knowledge status returned parseable JSON. |
23
23
  | Agent CLI providers command | pass | Provider inventory rendered successfully. |
24
- | CLI doctor command | pass | Doctor completed without findings. |
24
+ | CLI doctor command | pass | Doctor completed; 1 operator-configuration risk advisory(ies) noted (intentional trust posture, not a release defect). |
25
25
  | Authenticated connected-host /status | pass | /status returned 200 with parseable JSON. |
26
26
  | Authenticated connected-host /api/health | pass | Health overall=healthy. |
27
- | OpenAI-compatible /v1/models route | pass | /v1/models returned 121 model(s). |
27
+ | OpenAI-compatible /v1/models route | pass | /v1/models returned 214 model(s). |
28
28
  | Agent Knowledge isolated /status | pass | Agent Knowledge status route returned parseable isolated JSON. |
29
29
  | Agent Knowledge isolated ask | pass | Agent Knowledge ask stayed on the isolated Agent route. |
30
30
  | Agent Knowledge isolated search | pass | Agent Knowledge search stayed on the isolated Agent route. |
@@ -39,13 +39,13 @@ Connected host: `http://127.0.0.1:3421`
39
39
  ### Verification inventory ledger
40
40
 
41
41
  ```text
42
- 84% local behavior verified; 98 item(s) require external outcomes.
42
+ 82.8% local behavior verified; 110 item(s) require external outcomes.
43
43
  ```
44
44
 
45
45
  ### Agent CLI version command
46
46
 
47
47
  ```text
48
- goodvibes-agent 1.5.3
48
+ goodvibes-agent 1.6.4
49
49
  ```
50
50
 
51
51
  ### Agent CLI status JSON command
@@ -59,7 +59,7 @@ Status JSON command completed; provider/model identifiers omitted from release a
59
59
  ```text
60
60
  {
61
61
  "ok": true,
62
- "packageVersion": "1.5.3",
62
+ "packageVersion": "1.6.4",
63
63
  "connectedHost": {
64
64
  "baseUrl": "http://127.0.0.1:3421",
65
65
  "status": 200,
@@ -93,11 +93,11 @@ Status JSON command completed; provider/model identifiers omitted from release a
93
93
  "edgeCount": 0,
94
94
  "issueCount": 0,
95
95
  "extractionCount": 0,
96
- "jobRunCount": 357,
96
+ "jobRunCount": 561,
97
97
  "refinementTaskCount": 0,
98
98
  "usageCount": 0,
99
99
  "candidateCount": 0,
100
- "reportCount": 17,
100
+ "reportCount": 26,
101
101
  "scheduleCount": 3,
102
102
  "note": "Structured knowledge uses SQL-backed sources, nodes, edges, issues, extractions, and job runs. Markdown is an optional projection, not the source of truth."
103
103
  }
@@ -119,7 +119,7 @@ Doctor command completed without findings; provider/model identifiers and creden
119
119
  ### Authenticated connected-host /status
120
120
 
121
121
  ```text
122
- {"status":"running","version":"0.35.0"}
122
+ {"status":"running","version":"1.5.0"}
123
123
  ```
124
124
 
125
125
  ### Authenticated connected-host /api/health
@@ -131,13 +131,13 @@ Doctor command completed without findings; provider/model identifiers and creden
131
131
  ### OpenAI-compatible /v1/models route
132
132
 
133
133
  ```text
134
- /v1/models returned 121 model(s); model identifiers omitted from release artifact.
134
+ /v1/models returned 214 model(s); model identifiers omitted from release artifact.
135
135
  ```
136
136
 
137
137
  ### Agent Knowledge isolated /status
138
138
 
139
139
  ```text
140
- {"ready":true,"storagePath":"[goodvibes-home]/tui/knowledge-agent.sqlite","sourceCount":0,"nodeCount":0,"edgeCount":0,"issueCount":0,"extractionCount":0,"jobRunCount":357,"refinementTaskCount":0,"usageCount":0,"candidateCount":0,"reportCount":17,"scheduleCount":3,"note":"Structured knowledge uses SQL-backed sources, nodes, edges, issues, extractions, and job runs. Markdown is an optional projection, not the source of truth."}
140
+ {"ready":true,"storagePath":"[goodvibes-home]/tui/knowledge-agent.sqlite","sourceCount":0,"nodeCount":0,"edgeCount":0,"issueCount":0,"extractionCount":0,"jobRunCount":561,"refinementTaskCount":0,"usageCount":0,"candidateCount":0,"reportCount":26,"scheduleCount":3,"note":"Structured knowledge uses SQL-backed sources, nodes, edges, issues, extractions, and job runs. Markdown is an optional projection, not the source of truth."}
141
141
  ```
142
142
 
143
143
  ### Agent Knowledge isolated ask
@@ -173,7 +173,7 @@ Doctor command completed without findings; provider/model identifiers and creden
173
173
  ### Agent Knowledge isolated map
174
174
 
175
175
  ```text
176
- {"ok":true,"title":"Knowledge Map","generatedAt":1782880175258,"width":1280,"height":920,"nodeCount":0,"edgeCount":0,"totalNodeCount":0,"totalEdgeCount":0,"facets":{"recordKinds":[],"nodeKinds":[],"sourceTypes":[],"sourceStatuses":[],"nodeStatuses":[],"issueCodes":[],"issueStatuses":[],"issueSeverities":[],"edgeRelations":[],"tags":[]},"nodes":[],"edges":[],"svg":"<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"1280\" height=\"920\" viewBox=\"0 0 1280 920\" role=\"img\" aria-label=\"Knowledge Map\">\n<defs>\n <radialGradient id=\"knowledgeMapBg\" cx=\"50%\" cy=\"46%\" r=\"70%\">\n <stop offset=\"0%\" stop-color=\"#f7f4ec\" />\n <stop offset=\"60%\" stop-color=\"#e9eef0\" />\n <stop offset=\"100%\" stop-color=\"#dde6df\" />\n </radialGradient>\n <filter id=\"softShadow\" x=\"-20%\" y=\"-20%\" width=\"140%\" height=\"140%\">\n <feDropShadow dx=\"0\" dy=\"6\... [truncated]
176
+ {"ok":true,"title":"Knowledge Map","generatedAt":1783579165713,"width":1280,"height":920,"nodeCount":0,"edgeCount":0,"totalNodeCount":0,"totalEdgeCount":0,"facets":{"recordKinds":[],"nodeKinds":[],"sourceTypes":[],"sourceStatuses":[],"nodeStatuses":[],"issueCodes":[],"issueStatuses":[],"issueSeverities":[],"edgeRelations":[],"tags":[]},"nodes":[],"edges":[],"svg":"<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"1280\" height=\"920\" viewBox=\"0 0 1280 920\" role=\"img\" aria-label=\"Knowledge Map\">\n<defs>\n <radialGradient id=\"knowledgeMapBg\" cx=\"50%\" cy=\"46%\" r=\"70%\">\n <stop offset=\"0%\" stop-color=\"#f7f4ec\" />\n <stop offset=\"60%\" stop-color=\"#e9eef0\" />\n <stop offset=\"100%\" stop-color=\"#dde6df\" />\n </radialGradient>\n <filter id=\"softShadow\" x=\"-20%\" y=\"-20%\" width=\"140%\" height=\"140%\">\n <feDropShadow dx=\"0\" dy=\"6\... [truncated]
177
177
  ```
178
178
 
179
179
  ### Agent Knowledge isolated connectors list
@@ -45,7 +45,7 @@ import { AgentOrchestrator } from '@pellux/goodvibes-sdk/platform/agents';
45
45
  import { ArchetypeLoader } from '@pellux/goodvibes-sdk/platform/agents';
46
46
  import { CodeIndexStore } from '@pellux/goodvibes-sdk/platform/state';
47
47
  import { CodeIndexReindexScheduler } from '@pellux/goodvibes-sdk/platform/state';
48
- import { createProcessRegistry } from '@pellux/goodvibes-sdk/platform/runtime/fleet';
48
+ import { createProcessRegistry, withFleetArchive } from '@pellux/goodvibes-sdk/platform/runtime/fleet';
49
49
  import { createOrchestrationEngine } from '@pellux/goodvibes-sdk/platform/orchestration';
50
50
  import { WorkspaceCheckpointManager } from '@pellux/goodvibes-sdk/platform/workspace';
51
51
  import { ProcessManager } from '@pellux/goodvibes-sdk/platform/tools';
@@ -932,7 +932,9 @@ export function createRuntimeServices(options: RuntimeServicesOptions): RuntimeS
932
932
  workingDirectory,
933
933
  isEnabled: () => false,
934
934
  });
935
- const processRegistry = createProcessRegistry({
935
+ // Archive-aware: finished agent/swarm subtrees can be moved out of the
936
+ // live fleet view into a session-scoped archive (SDK fleet/archive.ts).
937
+ const processRegistry = withFleetArchive(createProcessRegistry({
936
938
  agentManager,
937
939
  wrfcController,
938
940
  orchestrationEngine,
@@ -945,7 +947,7 @@ export function createRuntimeServices(options: RuntimeServicesOptions): RuntimeS
945
947
  messageBus: agentMessageBus,
946
948
  automationManager,
947
949
  runtimeBus: options.runtimeBus,
948
- });
950
+ }));
949
951
  const workspaceCheckpointManager = new WorkspaceCheckpointManager({
950
952
  workspaceRoot: workingDirectory,
951
953
  });
@@ -93,7 +93,8 @@ export interface ModelPickerEntry {
93
93
  /**
94
94
  * How `contextWindow` was determined.
95
95
  * - `provider_api` — reported by the provider's /v1/models endpoint
96
- * - `configured_cap` — set explicitly in the provider config file
96
+ * - `configured_cap` — set explicitly by the user (config file or context-cap surface)
97
+ * - `observed_limit` — learned from a provider rejecting a longer request
97
98
  * - `fallback` — default constant (no config or API source)
98
99
  * - `openrouter` — sourced from OpenRouter model data (built-in catalog models)
99
100
  * - `registry` — static value in the built-in model registry
@@ -101,6 +102,7 @@ export interface ModelPickerEntry {
101
102
  readonly contextWindowSource:
102
103
  | 'provider_api'
103
104
  | 'configured_cap'
105
+ | 'observed_limit'
104
106
  | 'fallback'
105
107
  | 'openrouter'
106
108
  | 'registry';
package/src/version.ts CHANGED
@@ -6,7 +6,7 @@ import { join } from 'node:path';
6
6
  // The prebuild script updates the fallback value before compilation.
7
7
  // Uses import.meta.dir (Bun) to locate package.json relative to this file,
8
8
  // which is correct regardless of the process working directory.
9
- let _version = '1.7.0';
9
+ let _version = '1.8.0';
10
10
  try {
11
11
  const pkg = JSON.parse(readFileSync(join(import.meta.dir, '..', 'package.json'), 'utf-8')) as {
12
12
  readonly version?: unknown;