fluxy-bot 0.8.2 → 0.8.3

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "fluxy-bot",
3
- "version": "0.8.2",
3
+ "version": "0.8.3",
4
4
  "releaseNotes": [
5
5
  "Fixed some bugs to iOs ",
6
6
  "2. ",
@@ -45,7 +45,8 @@
45
45
  "build": "vite build && vite build --config vite.fluxy.config.ts",
46
46
  "build:fluxy": "vite build --config vite.fluxy.config.ts",
47
47
  "start": "node --import tsx/esm supervisor/index.ts",
48
- "postinstall": "node scripts/postinstall.js"
48
+ "postinstall": "node scripts/postinstall.js",
49
+ "dev:docs": "cd ./docs && npx fumapress"
49
50
  },
50
51
  "dependencies": {
51
52
  "@anthropic-ai/claude-agent-sdk": "^0.2.50",
@@ -93,6 +94,7 @@
93
94
  "@types/react-syntax-highlighter": "^15.5.13",
94
95
  "@types/ws": "^8.18.1",
95
96
  "concurrently": "^9.2.1",
97
+ "fumapress": "^0.1.1",
96
98
  "typescript": "^5.9.3"
97
99
  }
98
100
  }
@@ -17,7 +17,6 @@ import { ensureFileDirs, saveAttachment, type SavedFile } from './file-saver.js'
17
17
  import { startViteDevServers, stopViteDevServers } from './vite-dev.js';
18
18
  import { startScheduler, stopScheduler } from './scheduler.js';
19
19
  import { execSync, spawn as cpSpawn } from 'child_process';
20
- import os from 'os';
21
20
 
22
21
  const DIST_FLUXY = path.join(PKG_DIR, 'dist-fluxy');
23
22
 
@@ -785,27 +784,12 @@ export async function startSupervisor() {
785
784
  const cliPath = path.join(PKG_DIR, 'bin', 'cli.js');
786
785
  log.info('Deferred update triggered — running fluxy update...');
787
786
  try {
788
- if (os.platform() === 'linux') {
789
- // Use systemd-run on Linux so the update survives daemon restart
790
- const user = os.userInfo().username;
791
- const child = cpSpawn('sudo', [
792
- 'systemd-run', '--quiet',
793
- '--unit=fluxy-update',
794
- '--uid=' + user,
795
- '--setenv=HOME=' + os.homedir(),
796
- '--setenv=PATH=' + process.env.PATH,
797
- process.execPath, cliPath, 'update',
798
- ], { detached: true, stdio: 'ignore' });
799
- child.unref();
800
- } else {
801
- // macOS / other: detached child process survives parent exit
802
- const child = cpSpawn(process.execPath, [cliPath, 'update'], {
803
- detached: true,
804
- stdio: 'ignore',
805
- env: { ...process.env },
806
- });
807
- child.unref();
808
- }
787
+ const child = cpSpawn(process.execPath, [cliPath, 'update'], {
788
+ detached: true,
789
+ stdio: 'ignore',
790
+ env: { ...process.env },
791
+ });
792
+ child.unref();
809
793
  } catch (err) {
810
794
  log.error(`Deferred update failed: ${err instanceof Error ? err.message : err}`);
811
795
  }
@@ -156,17 +156,17 @@ Notify your human only if importance is 7+ — otherwise log results silently.
156
156
 
157
157
  **Check version:** `cat ~/.fluxy/VERSION` (current) vs `npm view fluxy-bot version` (latest).
158
158
 
159
- **To update:** Create the trigger file `touch ~/.fluxy/workspace/.update` — the supervisor runs the update after your turn ends. You will
159
+ **To update:** Create the trigger file `touch .update` — the supervisor runs the update after your turn ends. You will
160
160
  NOT die. Finish your turn normally.
161
161
 
162
162
  **On PULSE:** Occasionally check for updates (not every pulse — once every few hours). If a new version exists:
163
163
  1. Read release notes: `npm view fluxy-bot releaseNotes --json`
164
- 2. `touch ~/.fluxy/workspace/.update`
164
+ 2. `touch .update`
165
165
  3. Save to daily notes: "Updated from vX to vY" + notable changes to talk with your human later "Btw I updated myself this night"
166
166
 
167
167
  **When user asks to update:**
168
168
  1. Check version, if already latest say so
169
- 2. Otherwise read release notes, `touch ~/.fluxy/workspace/.update`
169
+ 2. Otherwise read release notes, `touch .update`
170
170
  3. Tell your human what is new and that the page will be unresponsive for up to 2 minutes while this happens.
171
171
 
172
172
  ## Task Files — `tasks/`
@@ -0,0 +1,56 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="256" height="256" viewBox="0 0 256 256" fill="none">
2
+ <path d="M 240.91,138.91 C 233.17,132.97 219.01,128.82 219.78,105.04 C 222.51,70.32 202.18,34.26 155.19,27.17 C 122.91,22.28 98.81,35.96 80.08,59.11 C 69.99,71.74 59.18,76.12 43.12,75.61 C 39.98,75.51 38.02,75.06 35.42,75.17 C 17.29,75.97 2.11,88.69 2.24,103.78 C 2.35,116.39 13.41,127.29 26.58,127.07 C 35.21,126.92 41.39,123.86 47.89,118.76 C 51.29,116.21 55.71,114.78 58.31,116.93 C 62.68,120.47 59.98,127.97 46.92,136.32 C 32.82,144.78 17.01,156.87 18.19,173.94 C 19.53,191.76 37.19,199.93 54.61,202.21 C 63.18,202.97 70.92,201.38 78.32,201.99 C 88.92,202.91 96.07,207.81 103.91,214.81 C 113.25,223.09 123.72,227.77 136.99,227.34 C 152.17,226.82 163.18,218.71 174.28,207.06 C 184.32,196.76 196.62,191.96 208.76,191.59 C 218.29,191.29 227.23,190.96 235.12,187.22 C 252.26,178.94 259.46,153.81 240.91,138.91 Z" fill="url(#paint0_radial_143_2721)"/>
3
+ <path d="M 142.28,26.41 C 119.01,26.08 98.31,36.68 80.38,58.48 C 70.89,70.46 61.18,76.07 43.66,75.74 C 60.22,76.76 70.92,70.93 79.92,60.09 C 96.71,39.08 117.29,28.48 142.28,26.41 Z" fill="url(#paint1_linear_143_2721)"/>
4
+ <path d="M 200.43,201.63 C 191.8,202.29 184.71,209.18 184.81,214.81 C 184.92,221.44 192.42,226.56 200.01,226.51 C 207.91,226.46 214.46,219.12 214.46,212.93 C 214.46,206.04 207.26,201.15 200.43,201.63 Z" fill="url(#paint2_radial_143_2721)"/>
5
+ <path d="M 241.12,150.21 C 239.69,141.98 232.86,137.88 223.71,139.26 C 210.71,141.38 201.61,157.41 194.78,166.13 C 204.11,159.65 209.17,151.7 222.34,150.1 C 231.13,149.02 237.01,155.06 238.76,156.24 C 240.61,157.46 241.69,153.81 241.12,150.21 Z" fill="url(#paint3_radial_143_2721)"/>
6
+ <path d="M 42.41,80.18 C 33.13,77.01 21.04,78.71 13.84,87.91 C 9.01,94.05 9.49,97.49 11.39,97.65 C 13.73,97.86 16.02,94.16 20.22,90.11 C 26.88,83.64 33.33,82.89 42.41,80.18 Z" fill="url(#paint4_radial_143_2721)"/>
7
+ <path d="M 61.82,142.19 C 55.22,138.19 41.23,143.21 33.74,154.11 C 28.73,161.16 28.16,170.04 33.28,172.1 C 38.69,174.31 46.19,165.86 51.07,160.5 C 56.79,154.21 66.02,144.9 61.82,142.19 Z" fill="url(#paint5_radial_143_2721)"/>
8
+ <path d="M 111.11,86.68 C 105.39,86.68 103.96,91.68 103.96,93.74 C 103.96,99.01 108.01,101.51 111.11,101.51 C 116.98,101.51 119.09,96.87 119.09,93.95 C 119.09,90.06 116.15,86.68 111.11,86.68 Z" fill="url(#paint6_radial_143_2721)"/>
9
+ <path d="M 166.45,86.68 C 160.26,86.68 157.92,91.84 157.92,93.95 C 157.92,99.22 162.02,101.62 165.68,101.62 C 171.09,101.62 173.64,97.13 173.64,93.95 C 173.64,89.85 170.4,86.68 166.45,86.68 Z" fill="url(#paint7_radial_143_2721)"/>
10
+ <path d="M 146.82,99.06 C 143.88,101.83 141.49,102.04 138.79,102.04 C 135.44,102.04 133.16,100.91 130.82,99.06 C 128.81,97.54 126.96,100.76 128.19,102.14 C 130.58,104.96 134.58,106.56 138.79,106.56 C 143.31,106.56 146.82,104.76 148.99,102.14 C 150.32,100.55 148.62,97.33 146.82,99.06 Z" fill="url(#paint8_radial_143_2721)"/>
11
+ <path d="M 199.81,204.07 C 194.82,205.25 191.83,208.94 192.25,211.06 C 192.82,213.88 197.81,213.61 200.41,212.69 C 205.08,211.05 207.15,208.42 206.73,206.41 C 206.31,204.67 203.71,203.29 199.81,204.07 Z" fill="url(#paint9_radial_143_2721)"/>
12
+ <defs>
13
+ <radialGradient id="paint0_radial_143_2721" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(109.896 49.9071) scale(193.071 191.493)">
14
+ <stop stop-color="#00FFFF"/>
15
+ <stop offset="0.354167" stop-color="#9933FF"/>
16
+ <stop offset="0.692708" stop-color="#FE336F"/>
17
+ <stop offset="1" stop-color="#FF7777"/>
18
+ </radialGradient>
19
+ <linearGradient id="paint1_linear_143_2721" x1="113.903" y1="26.3556" x2="113.903" y2="75.8114" gradientUnits="userSpaceOnUse">
20
+ <stop stop-color="#00FFFF"/>
21
+ <stop offset="1" stop-color="#00FFFF" stop-opacity="0.01"/>
22
+ </linearGradient>
23
+ <radialGradient id="paint2_radial_143_2721" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(200.253 209.179) scale(19.3566 17.7296)">
24
+ <stop stop-color="#FFCDBB"/>
25
+ <stop offset="0.994792" stop-color="#FF5555"/>
26
+ </radialGradient>
27
+ <radialGradient id="paint3_radial_143_2721" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(227.953 148.408) rotate(16.5911) scale(18.3468 12.2944)">
28
+ <stop stop-color="#FFD9C5"/>
29
+ <stop offset="1" stop-color="#FFD9C5" stop-opacity="0.01"/>
30
+ </radialGradient>
31
+ <radialGradient id="paint4_radial_143_2721" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(23.7314 86.0908) rotate(29.0072) scale(15.4089 9.09911)">
32
+ <stop stop-color="#99FFFF"/>
33
+ <stop offset="1" stop-color="#00CCFF" stop-opacity="0.01"/>
34
+ </radialGradient>
35
+ <radialGradient id="paint5_radial_143_2721" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(46.4881 153.877) rotate(37.8519) scale(17.2361 10.9818)">
36
+ <stop stop-color="#9999FF"/>
37
+ <stop offset="1" stop-color="#9999FF" stop-opacity="0.01"/>
38
+ </radialGradient>
39
+ <radialGradient id="paint6_radial_143_2721" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(111.098 93.3764) scale(9.10161 8.12939)">
40
+ <stop stop-color="#1E1240"/>
41
+ <stop offset="1" stop-color="#0A003B"/>
42
+ </radialGradient>
43
+ <radialGradient id="paint7_radial_143_2721" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(165.666 93.3764) scale(9.10161 8.12939)">
44
+ <stop stop-color="#1E1240"/>
45
+ <stop offset="1" stop-color="#0A003B"/>
46
+ </radialGradient>
47
+ <radialGradient id="paint8_radial_143_2721" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(138.658 101.292) scale(10.0069 5.26581)">
48
+ <stop stop-color="#1E1240"/>
49
+ <stop offset="1" stop-color="#0A003B"/>
50
+ </radialGradient>
51
+ <radialGradient id="paint9_radial_143_2721" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(199.318 208.168) rotate(16.4322) scale(9.07216 5.68359)">
52
+ <stop stop-color="#FFCDBB"/>
53
+ <stop offset="0.994792" stop-color="#FFCDBB" stop-opacity="0.01"/>
54
+ </radialGradient>
55
+ </defs>
56
+ </svg>