@pellux/goodvibes-agent 1.6.4 → 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/CHANGELOG.md +18 -0
- package/README.md +1 -1
- package/dist/package/main.js +1663 -818
- package/docs/README.md +1 -1
- package/package.json +2 -2
- package/release/live-verification/live-verification.json +12 -12
- package/release/live-verification/live-verification.md +13 -13
- package/src/runtime/services.ts +5 -3
- package/src/runtime/ui/model-picker/types.ts +3 -1
- package/src/version.ts +1 -1
package/docs/README.md
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pellux/goodvibes-agent",
|
|
3
|
-
"version": "1.
|
|
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.
|
|
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-
|
|
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
|
|
13
|
-
"detail": "
|
|
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.
|
|
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.
|
|
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\":
|
|
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
|
|
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\":\"
|
|
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
|
|
82
|
-
"detail": "/v1/models returned
|
|
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\":
|
|
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\":
|
|
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-
|
|
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
|
|
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
|
|
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
|
|
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
|
-
|
|
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.
|
|
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.
|
|
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":
|
|
96
|
+
"jobRunCount": 561,
|
|
97
97
|
"refinementTaskCount": 0,
|
|
98
98
|
"usageCount": 0,
|
|
99
99
|
"candidateCount": 0,
|
|
100
|
-
"reportCount":
|
|
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":"
|
|
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
|
|
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":
|
|
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":
|
|
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
|
package/src/runtime/services.ts
CHANGED
|
@@ -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
|
-
|
|
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
|
|
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.
|
|
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;
|