@godmode-team/godmode 1.0.0 → 1.1.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/README.md +62 -4
- package/dist/deck/.bundle-source.json +5 -0
- package/dist/godmode-ui/.bundle-source.json +5 -0
- package/dist/godmode-ui/apple-touch-icon.png +0 -0
- package/dist/godmode-ui/assets/dashboards-BWn_hwxU.js +1 -0
- package/dist/godmode-ui/assets/index-BzuIjNQD.css +1 -0
- package/dist/godmode-ui/assets/index-DSdrorA1.js +9237 -0
- package/dist/godmode-ui/assets/options-QuHclvvX.js +1 -0
- package/dist/godmode-ui/assets/proactive-intel-BU5IobT1.js +1 -0
- package/dist/godmode-ui/assets/second-brain-nWUdvmOD.js +1 -0
- package/dist/godmode-ui/assets/setup-DDvbMoK2.js +1 -0
- package/dist/godmode-ui/consciousness-icon-64.png +0 -0
- package/dist/godmode-ui/consciousness-icon.png +0 -0
- package/dist/godmode-ui/consciousness-icon.webp +0 -0
- package/dist/godmode-ui/favicon-32.png +0 -0
- package/dist/godmode-ui/favicon.ico +0 -0
- package/dist/godmode-ui/favicon.svg +7 -1
- package/dist/godmode-ui/godmode-logo.png +0 -0
- package/dist/godmode-ui/how-to-godmode.html +1416 -0
- package/dist/godmode-ui/index.html +7 -6
- package/dist/index.js +22984 -5717
- package/dist/index.js.map +1 -1
- package/openclaw.plugin.json +86 -1
- package/package.json +16 -6
- package/dist/deck/assets/index-Dq6YBWDo.css +0 -10
- package/dist/deck/assets/index-OeRjiyQU.js +0 -83
- package/dist/deck/index.html +0 -17
- package/dist/godmode-ui/assets/index-BPHog2ro.css +0 -1
- package/dist/godmode-ui/assets/index-D7TzQ2zb.js +0 -4985
- package/dist/godmode-ui/caleb-avatar.jpg +0 -0
- package/dist/godmode-ui/favicon-new.svg +0 -3
- package/dist/godmode-ui/favicon.ico.svg +0 -3
- package/dist/godmode-ui/lightning-icon.svg +0 -3
- package/dist/godmode-ui/vite.svg +0 -1
package/README.md
CHANGED
|
@@ -43,6 +43,13 @@ Optional workspace root:
|
|
|
43
43
|
openclaw config set plugins.entries.godmode.config.workspaceRoot "~/godmode"
|
|
44
44
|
```
|
|
45
45
|
|
|
46
|
+
Enable coding orchestration:
|
|
47
|
+
|
|
48
|
+
```bash
|
|
49
|
+
openclaw config set plugins.entries.godmode.config.coding.enabled true
|
|
50
|
+
openclaw config set plugins.entries.godmode.config.coding.maxParallelWriters 1
|
|
51
|
+
```
|
|
52
|
+
|
|
46
53
|
Restart gateway after config changes:
|
|
47
54
|
|
|
48
55
|
```bash
|
|
@@ -69,12 +76,25 @@ Build outputs:
|
|
|
69
76
|
- `dist/index.js` (plugin runtime entry)
|
|
70
77
|
- `dist/godmode-ui/*` (UI assets)
|
|
71
78
|
|
|
72
|
-
`pnpm build`
|
|
79
|
+
`pnpm build` bundles UI from the first available source:
|
|
73
80
|
|
|
74
81
|
1. `--ui-dir <path>` passed to `scripts/bundle-ui.mjs`
|
|
75
|
-
2. `
|
|
76
|
-
3.
|
|
77
|
-
4. `assets/godmode-ui` fallback snapshot
|
|
82
|
+
2. `GODMODE_UI_DIR=<path>`
|
|
83
|
+
3. `ui/dist` (in-repo Vite build output)
|
|
84
|
+
4. `assets/godmode-ui` (committed fallback snapshot)
|
|
85
|
+
|
|
86
|
+
Build the UI:
|
|
87
|
+
|
|
88
|
+
```bash
|
|
89
|
+
pnpm build:ui
|
|
90
|
+
pnpm build
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
To refresh fallback assets (recommended before release):
|
|
94
|
+
|
|
95
|
+
```bash
|
|
96
|
+
pnpm ui:sync
|
|
97
|
+
```
|
|
78
98
|
|
|
79
99
|
## Optional Features
|
|
80
100
|
|
|
@@ -86,3 +106,41 @@ export GODMODE_LIFETRACK_MODULE=/absolute/path/to/lifetrack/index.js
|
|
|
86
106
|
|
|
87
107
|
Agent log writer startup integration is optional and auto-detected when the
|
|
88
108
|
host runtime exposes the expected module.
|
|
109
|
+
|
|
110
|
+
## Consciousness Sync (Gold Icon)
|
|
111
|
+
|
|
112
|
+
The gold heart-brain icon in chat is a manual consciousness sync trigger.
|
|
113
|
+
Legacy pre-plugin consciousness flows are retired; this heartbeat + manual flush path is the canonical system.
|
|
114
|
+
|
|
115
|
+
- UI action: click icon (or press `Cmd/Ctrl+Shift+H`)
|
|
116
|
+
- RPC method: `godmode.consciousness.flush`
|
|
117
|
+
- Backend action: runs `~/godmode/scripts/consciousness-sync.sh`
|
|
118
|
+
- Result: regenerates `~/godmode/memory/CONSCIOUSNESS.md` and returns status to UI
|
|
119
|
+
|
|
120
|
+
The plugin also exposes read-only fetch:
|
|
121
|
+
|
|
122
|
+
- RPC method: `godmode.consciousness.read`
|
|
123
|
+
- Result: returns current `CONSCIOUSNESS.md` content and timestamp
|
|
124
|
+
|
|
125
|
+
By default in the GodMode runtime, `CONSCIOUSNESS.md` is refreshed by a
|
|
126
|
+
separate heartbeat cron (typically hourly), while the gold icon forces an
|
|
127
|
+
immediate sync on demand.
|
|
128
|
+
|
|
129
|
+
## Coding Orchestration
|
|
130
|
+
|
|
131
|
+
The `coding_task` agent tool is the single entry point for all code work. It:
|
|
132
|
+
|
|
133
|
+
1. Creates an isolated git worktree and branch per task
|
|
134
|
+
2. Spawns a Claude Code agent directly in the worktree
|
|
135
|
+
3. Runs validation gates (lint, typecheck, test) on completion
|
|
136
|
+
4. Creates a PR and optionally auto-merges
|
|
137
|
+
5. Sends iMessage completion notifications
|
|
138
|
+
|
|
139
|
+
Agents must use `coding_task` — running `claude -p` via `exec` is blocked by the spawn gate.
|
|
140
|
+
|
|
141
|
+
Check coding task status:
|
|
142
|
+
|
|
143
|
+
```bash
|
|
144
|
+
openclaw rpc coding.status '{}'
|
|
145
|
+
openclaw rpc coding.list '{}'
|
|
146
|
+
```
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
async function o(r,d){if(!r.client||!r.connected){r.dashboardsError="Not connected to gateway";return}r.dashboardsLoading=!0,r.dashboardsError=null;try{const a=await r.client.request("dashboards.list",d?{scope:d}:{});r.dashboardsList=a.dashboards,r.activeDashboardId=a.activeDashboard}catch(a){r.dashboardsError=a instanceof Error?a.message:"Failed to load dashboards"}finally{r.dashboardsLoading=!1}}async function s(r,d){if(!r.client||!r.connected){r.dashboardsError="Not connected to gateway";return}r.dashboardsLoading=!0,r.dashboardsError=null;try{const a=await r.client.request("dashboards.get",{id:d});r.activeDashboardId=d,r.activeDashboardManifest=a.manifest,r.activeDashboardHtml=a.html}catch(a){r.dashboardsError=a instanceof Error?a.message:"Failed to load dashboard"}finally{r.dashboardsLoading=!1}}async function n(r,d){if(!r.client||!r.connected)return!1;try{return await r.client.request("dashboards.remove",{id:d}),r.dashboardsList=(r.dashboardsList??[]).filter(a=>a.id!==d),r.activeDashboardId===d&&(r.activeDashboardId=null,r.activeDashboardHtml=null,r.activeDashboardManifest=null),!0}catch(a){return r.dashboardsError=a instanceof Error?a.message:"Failed to delete dashboard",!1}}export{n as deleteDashboard,s as loadDashboard,o as loadDashboards};
|