@openagt/dashboard 0.50.0 → 0.51.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 +3 -4
- package/dist/built-in.d.ts.map +1 -1
- package/dist/built-in.js +2 -2
- package/dist/built-in.js.map +1 -1
- package/dist/cli/bin.d.ts +3 -0
- package/dist/cli/bin.d.ts.map +1 -0
- package/dist/cli/bin.js +11 -0
- package/dist/cli/bin.js.map +1 -0
- package/dist/cli/browser.d.ts +14 -0
- package/dist/cli/browser.d.ts.map +1 -0
- package/dist/cli/browser.js +22 -0
- package/dist/cli/browser.js.map +1 -0
- package/dist/cli/cli.d.ts +37 -0
- package/dist/cli/cli.d.ts.map +1 -0
- package/dist/cli/cli.js +188 -0
- package/dist/cli/cli.js.map +1 -0
- package/dist/cli/project.d.ts +6 -0
- package/dist/cli/project.d.ts.map +1 -0
- package/dist/cli/project.js +13 -0
- package/dist/cli/project.js.map +1 -0
- package/dist/cli/skills.d.ts +18 -0
- package/dist/cli/skills.d.ts.map +1 -0
- package/dist/cli/skills.js +36 -0
- package/dist/cli/skills.js.map +1 -0
- package/dist/cli/update-check.d.ts +44 -0
- package/dist/cli/update-check.d.ts.map +1 -0
- package/dist/cli/update-check.js +71 -0
- package/dist/cli/update-check.js.map +1 -0
- package/dist/daemon.d.ts +0 -2
- package/dist/daemon.d.ts.map +1 -1
- package/dist/daemon.js +0 -3
- package/dist/daemon.js.map +1 -1
- package/dist/dashboard/copy-logins.js +1 -1
- package/dist/dashboard/copy-logins.js.map +1 -1
- package/dist/dashboard-rpc/computers.js +1 -1
- package/dist/dashboard-rpc/computers.js.map +1 -1
- package/dist/module-types/src/project-skills/catalogue.d.ts +1 -1
- package/dist/module-types/src/version.d.ts +0 -1
- package/dist/project-skills/catalogue.d.ts +1 -1
- package/dist/version.d.ts +0 -1
- package/dist/version.d.ts.map +1 -1
- package/dist/version.js +21 -9
- package/dist/version.js.map +1 -1
- package/package.json +23 -23
- package/dist/serve.d.ts +0 -4
- package/dist/serve.d.ts.map +0 -1
- package/dist/serve.js +0 -6
- package/dist/serve.js.map +0 -1
package/README.md
CHANGED
|
@@ -8,15 +8,14 @@ checkout of the repo, does its work, and hands the result off as a pull request.
|
|
|
8
8
|
checkout is never touched.
|
|
9
9
|
|
|
10
10
|
```bash
|
|
11
|
-
npm i -g @openagt/
|
|
11
|
+
npm i -g @openagt/dashboard
|
|
12
12
|
|
|
13
13
|
cd ~/code/my-repo
|
|
14
14
|
openagent # serves the dashboard at http://127.0.0.1:4200
|
|
15
15
|
```
|
|
16
16
|
|
|
17
|
-
This package is
|
|
18
|
-
|
|
19
|
-
default.
|
|
17
|
+
This package is OpenAgent: the server, its pages and the command that serves them and hands
|
|
18
|
+
every run the skills it gets by default.
|
|
20
19
|
|
|
21
20
|
## The command is three options and no verbs
|
|
22
21
|
|
package/dist/built-in.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"built-in.d.ts","sourceRoot":"","sources":["../src/built-in.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AACzD,OAAO,EAA4H,KAAK,cAAc,EAAE,KAAK,eAAe,EAAE,KAAK,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AAErO;;;;;;;;GAQG;AAEH,4GAA4G;AAC5G,eAAO,MAAM,iBAAiB,EAAE,SAAS,MAAM,
|
|
1
|
+
{"version":3,"file":"built-in.d.ts","sourceRoot":"","sources":["../src/built-in.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AACzD,OAAO,EAA4H,KAAK,cAAc,EAAE,KAAK,eAAe,EAAE,KAAK,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AAErO;;;;;;;;GAQG;AAEH,4GAA4G;AAC5G,eAAO,MAAM,iBAAiB,EAAE,SAAS,MAAM,EAAmK,CAAA;AAElN;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,EAAE,SAAS,MAAM,EAAsE,CAAA;AAErH;;;;;;;GAOG;AACH,eAAO,MAAM,eAAe,EAAE,SAAS,MAAM,EAA6I,CAAA;AAE1L,0CAA0C;AAC1C,eAAO,MAAM,iBAAiB,EAAE,SAAS,MAAM,EAAqE,CAAA;AAYpH,iHAAiH;AACjH,wBAAgB,eAAe,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC,CAE3D;AAsBD;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,CAQ/E;AA2BD,oFAAoF;AACpF,wBAAsB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,CAEzE;AAED;;;GAGG;AACH,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC,CAEnE;AAED,4EAA4E;AAC5E,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC,CAElE;AAED;;;;;GAKG;AACH,wBAAsB,eAAe,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC,CAElE;AAED,0IAA0I;AAC1I,wBAAsB,cAAc,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAMxD;AAED,wIAAwI;AACxI,wBAAsB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAE/F;AAED,gFAAgF;AAChF,wBAAsB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC,CAEtG;AAED,gGAAgG;AAChG,wBAAgB,SAAS,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAE3D;AAED;;;;;;GAMG;AACH,wBAAsB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAQpE;AAED;;;;;;;GAOG;AACH,wBAAsB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAkBtE"}
|
package/dist/built-in.js
CHANGED
|
@@ -12,13 +12,13 @@ import { declaring, SKILLS_DIRS, SKILLS_ENV, lookupProvidedCommand, packageBins,
|
|
|
12
12
|
* project has it, are the only ones.
|
|
13
13
|
*/
|
|
14
14
|
/** The packages every project has: an agent cannot start, be shown or be put on a git host without them. */
|
|
15
|
-
export const BUILT_IN_PACKAGES = ['@openagt/changes', '@openagt/files', '@openagt/skill-branches', '@openagt/skill-github', '@openagt/skill-logs', '@openagt/agent-runner'];
|
|
15
|
+
export const BUILT_IN_PACKAGES = ['@openagt/dashboard-changes', '@openagt/dashboard-files', '@openagt/skill-branches', '@openagt/skill-github', '@openagt/skill-logs', '@openagt/agent-runner'];
|
|
16
16
|
/**
|
|
17
17
|
* The packages that are this computer's and no project's: the door to it, the servers it
|
|
18
18
|
* installed OpenAgent on, and the accounts its runs use. Their pages show and their commands run with no project added, and
|
|
19
19
|
* what one keeps is in the person's home folder.
|
|
20
20
|
*/
|
|
21
|
-
export const COMPUTER_PACKAGES = ['@openagt/devices', '@openagt/skill-account-rotation'];
|
|
21
|
+
export const COMPUTER_PACKAGES = ['@openagt/dashboard-devices', '@openagt/skill-account-rotation'];
|
|
22
22
|
/**
|
|
23
23
|
* The packages a project has once it picked them (#2023). A skill's package is every project's
|
|
24
24
|
* when the skill is one every run gets by default (the package that started OpenAgent names those,
|
package/dist/built-in.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"built-in.js","sourceRoot":"","sources":["../src/built-in.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAA;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAC3C,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAEpD,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,qBAAqB,EAAE,WAAW,EAAE,eAAe,EAAE,YAAY,EAAE,iBAAiB,EAAyE,MAAM,qBAAqB,CAAA;AAErO;;;;;;;;GAQG;AAEH,4GAA4G;AAC5G,MAAM,CAAC,MAAM,iBAAiB,GAAsB,CAAC,
|
|
1
|
+
{"version":3,"file":"built-in.js","sourceRoot":"","sources":["../src/built-in.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAA;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAC3C,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAEpD,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,qBAAqB,EAAE,WAAW,EAAE,eAAe,EAAE,YAAY,EAAE,iBAAiB,EAAyE,MAAM,qBAAqB,CAAA;AAErO;;;;;;;;GAQG;AAEH,4GAA4G;AAC5G,MAAM,CAAC,MAAM,iBAAiB,GAAsB,CAAC,4BAA4B,EAAE,0BAA0B,EAAE,yBAAyB,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,uBAAuB,CAAC,CAAA;AAElN;;;;GAIG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAsB,CAAC,4BAA4B,EAAE,iCAAiC,CAAC,CAAA;AAErH;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,eAAe,GAAsB,CAAC,wBAAwB,EAAE,sBAAsB,EAAE,8BAA8B,EAAE,wBAAwB,EAAE,0BAA0B,CAAC,CAAA;AAE1L,0CAA0C;AAC1C,MAAM,CAAC,MAAM,iBAAiB,GAAsB,CAAC,GAAG,iBAAiB,EAAE,GAAG,iBAAiB,EAAE,GAAG,eAAe,CAAC,CAAA;AAUpH,IAAI,QAA2C,CAAA;AAE/C,iHAAiH;AACjH,MAAM,UAAU,eAAe;IAC7B,OAAO,CAAC,QAAQ,KAAK,UAAU,EAAE,CAAC,CAAA;AACpC,CAAC;AAED,KAAK,UAAU,UAAU;IACvB,MAAM,OAAO,GAAG,aAAa,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAA;IAC9C,MAAM,QAAQ,GAAiB,EAAE,CAAA;IACjC,KAAK,MAAM,IAAI,IAAI,iBAAiB,EAAE,CAAC;QACrC,IAAI,YAAoB,CAAA;QACxB,IAAI,CAAC;YACH,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI,eAAe,CAAC,CAAA;QACxD,CAAC;QAAC,MAAM,CAAC;YACP,SAAQ;QACV,CAAC;QACD,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;QACxE,MAAM,QAAQ,GAAG,GAAG,CAAC,CAAC,CAAC,MAAM,YAAY,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;QAChF,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ;YAAE,SAAQ;QAC/B,MAAM,KAAK,GAAG,0CAA0C,CAAC,IAAI,CAAC,6BAA6B,CAAC,IAAI,CAAC,MAAM,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;QAChL,MAAM,EAAE,GAAG,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,eAAe,CAAA;QAC1H,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;IACvF,CAAC;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,IAAY;IAClD,MAAM,QAAQ,GAAqB,EAAE,CAAA;IACrC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,QAAQ,KAAK,UAAU,EAAE,CAAC,EAAE,CAAC;QACpD,IAAI,GAAG,CAAC,EAAE,KAAK,cAAc;YAAE,SAAQ;QACvC,IAAI,GAAG,CAAC,EAAE,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,aAAa,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,KAAK,SAAS,IAAI,CAAC,MAAM,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;YAAE,SAAQ;QAChJ,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACpB,CAAC;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED,wEAAwE;AACxE,IAAI,QAAmE,CAAA;AAEvE,iGAAiG;AACjG,SAAS,aAAa;IACpB,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,EAAE,CAAA;IAC1C,IAAI,QAAQ,EAAE,IAAI,KAAK,IAAI;QAAE,QAAQ,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAA;IAChF,OAAO,QAAQ,CAAC,KAAK,CAAA;AACvB,CAAC;AAED,KAAK,UAAU,iBAAiB,CAAC,IAAY;IAC3C,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAA;IAC/B,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;QACxD,MAAM,IAAI,GAAG,CAAC,MAAM,YAAY,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,IAAI,CAAA;QAClE,IAAI,OAAO,IAAI,KAAK,QAAQ;YAAE,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;IAC/C,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED,4GAA4G;AAC5G,KAAK,UAAU,UAAU,CAAC,IAAY,EAAE,IAAY;IAClD,KAAK,MAAM,GAAG,IAAI,WAAW;QAAE,IAAI,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC;YAAE,OAAO,IAAI,CAAA;IAChI,OAAO,KAAK,CAAA;AACd,CAAC;AAED,oFAAoF;AACpF,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,IAAY;IAC5C,OAAO,eAAe,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAA;AACjD,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB;IACrC,OAAO,CAAC,MAAM,CAAC,QAAQ,KAAK,UAAU,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,cAAc,CAAC,CAAA;AACrF,CAAC;AAED,4EAA4E;AAC5E,MAAM,CAAC,KAAK,UAAU,gBAAgB;IACpC,OAAO,CAAC,MAAM,CAAC,QAAQ,KAAK,UAAU,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,cAAc,CAAC,CAAA;AACrF,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe;IACnC,OAAO,SAAS,CAAC,MAAM,gBAAgB,EAAE,EAAE,SAAS,CAAC,CAAA;AACvD,CAAC;AAED,0IAA0I;AAC1I,MAAM,CAAC,KAAK,UAAU,cAAc;IAClC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAA;IAC9B,KAAK,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,MAAM,eAAe,EAAE,EAAE,CAAC;QAC9D,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAAE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAA;IAC/F,CAAC;IACD,OAAO,CAAC,GAAG,IAAI,CAAC,CAAA;AAClB,CAAC;AAED,wIAAwI;AACxI,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,IAAY,EAAE,IAAY;IAC7D,OAAO,qBAAqB,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC,IAAI,CAAC,EAAE,iBAAiB,CAAC,CAAA;AAC5F,CAAC;AAED,gFAAgF;AAChF,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,IAAY,EAAE,IAAY;IAC9D,OAAO,CAAC,MAAM,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAA;AACnD,CAAC;AAED,gGAAgG;AAChG,MAAM,UAAU,SAAS,CAAC,OAAwB;IAChD,OAAO,iBAAiB,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;AACpD,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,IAAY;IAC/C,MAAM,QAAQ,GAAG,CAAC,GAAG,CAAC,MAAM,WAAW,CAAC,IAAI,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACnF,MAAM,MAAM,GAAa,EAAE,CAAA;IAC3B,KAAK,MAAM,OAAO,IAAI,SAAS,CAAC,QAAQ,EAAE,OAAO,CAAC,EAAE,CAAC;QACnD,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,MAAM,CAAC,CAAC,CAAA;QAC/D,IAAI,CAAC,MAAM,CAAC,EAAE;YAAE,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,OAAO,KAAK,MAAM,CAAC,KAAK,EAAE,CAAC,CAAA;IACpE,CAAC;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,IAAY;IAC5C,MAAM,QAAQ,GAAG,CAAC,GAAG,CAAC,MAAM,WAAW,CAAC,IAAI,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,eAAe,EAAE,CAAC,CAAC,CAAA;IAC7E,MAAM,MAAM,GAAkB,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAA;IACnE,KAAK,MAAM,OAAO,IAAI,SAAS,CAAC,QAAQ,EAAE,SAAS,CAAC,EAAE,CAAC;QACrD,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,SAAS,CAAC,CAAC,CAAA;QAClE,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,OAAO,KAAK,MAAM,CAAC,KAAK,EAAE,CAAC,CAAA;YACzD,SAAQ;QACV,CAAC;QACD,MAAM,MAAM,GAAG,iBAAiB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QAC/C,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,OAAO,sEAAsE,CAAC,CAAA;YAC5G,SAAQ;QACV,CAAC;QACD,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,CAAA;QACtC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAA;IAClC,CAAC;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AAED,oEAAoE;AACpE,SAAS,iBAAiB,CAAC,MAAe;IACxC,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAA;IAC3D,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,MAA6D,CAAA;IAC3F,IAAI,EAAE,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;QAAE,OAAO,SAAS,CAAA;IACpF,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC;QAAE,OAAO,SAAS,CAAA;IACtE,MAAM,MAAM,GAAG,CAAC,KAAc,EAA6C,EAAE,CAC3E,OAAO,CAAC,KAAK,CAAC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAQ,KAA4B,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAQ,KAA8B,CAAC,MAAM,KAAK,QAAQ,CAAA;IACrK,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;QAAE,OAAO,SAAS,CAAA;IACzC,OAAO,EAAE,OAAO,EAAE,CAAC,GAAG,OAAO,CAAa,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAA;AACrH,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bin.d.ts","sourceRoot":"","sources":["../../src/cli/bin.ts"],"names":[],"mappings":""}
|
package/dist/cli/bin.js
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import { runCli } from './cli.js';
|
|
3
|
+
// Exited outright once the CLI is done: a handle left over (a child, a timer, a socket) must not
|
|
4
|
+
// keep the process up after the dashboard stopped (#2141).
|
|
5
|
+
runCli(process.argv.slice(2))
|
|
6
|
+
.then(code => process.exit(code))
|
|
7
|
+
.catch((err) => {
|
|
8
|
+
console.error(err);
|
|
9
|
+
process.exit(1);
|
|
10
|
+
});
|
|
11
|
+
//# sourceMappingURL=bin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bin.js","sourceRoot":"","sources":["../../src/cli/bin.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAEjC,iGAAiG;AACjG,2DAA2D;AAC3D,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;KAC1B,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAChC,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE;IACtB,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAClB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACjB,CAAC,CAAC,CAAA"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/** The command that opens an address in the default browser, by platform. */
|
|
2
|
+
export declare function browserCommand(platform: NodeJS.Platform, url: string): {
|
|
3
|
+
command: string;
|
|
4
|
+
args: string[];
|
|
5
|
+
};
|
|
6
|
+
/**
|
|
7
|
+
* Open the dashboard in the browser, for a person at this terminal only: a service, with no
|
|
8
|
+
* terminal, has no one to show it to. A computer with no browser to open says nothing: the
|
|
9
|
+
* address is printed above it.
|
|
10
|
+
*/
|
|
11
|
+
export declare function openInBrowser(url: string, stdout?: {
|
|
12
|
+
isTTY?: boolean;
|
|
13
|
+
}): void;
|
|
14
|
+
//# sourceMappingURL=browser.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../../src/cli/browser.ts"],"names":[],"mappings":"AAEA,6EAA6E;AAC7E,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,CAK1G;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,GAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAmB,GAAG,IAAI,CAI7F"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { spawn } from 'node:child_process';
|
|
2
|
+
/** The command that opens an address in the default browser, by platform. */
|
|
3
|
+
export function browserCommand(platform, url) {
|
|
4
|
+
if (platform === 'darwin')
|
|
5
|
+
return { command: 'open', args: [url] };
|
|
6
|
+
// `start` is a command of cmd itself; its first quoted argument is the window's title.
|
|
7
|
+
if (platform === 'win32')
|
|
8
|
+
return { command: 'cmd', args: ['/c', 'start', '""', url] };
|
|
9
|
+
return { command: 'xdg-open', args: [url] };
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Open the dashboard in the browser, for a person at this terminal only: a service, with no
|
|
13
|
+
* terminal, has no one to show it to. A computer with no browser to open says nothing: the
|
|
14
|
+
* address is printed above it.
|
|
15
|
+
*/
|
|
16
|
+
export function openInBrowser(url, stdout = process.stdout) {
|
|
17
|
+
if (!stdout.isTTY)
|
|
18
|
+
return;
|
|
19
|
+
const { command, args } = browserCommand(process.platform, url);
|
|
20
|
+
spawn(command, args, { stdio: 'ignore', detached: true }).on('error', () => { }).unref();
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=browser.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"browser.js","sourceRoot":"","sources":["../../src/cli/browser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAE1C,6EAA6E;AAC7E,MAAM,UAAU,cAAc,CAAC,QAAyB,EAAE,GAAW;IACnE,IAAI,QAAQ,KAAK,QAAQ;QAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,CAAA;IAClE,uFAAuF;IACvF,IAAI,QAAQ,KAAK,OAAO;QAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,EAAE,CAAA;IACrF,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,CAAA;AAC7C,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,aAAa,CAAC,GAAW,EAAE,MAAM,GAAwB,OAAO,CAAC,MAAM;IACrF,IAAI,CAAC,MAAM,CAAC,KAAK;QAAE,OAAM;IACzB,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,cAAc,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAA;IAC/D,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAA;AACzF,CAAC"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { type VersionFetcher } from './update-check.js';
|
|
2
|
+
/** Where the CLI writes. Injectable so tests capture output. */
|
|
3
|
+
export interface CliIO {
|
|
4
|
+
out: (line: string) => void;
|
|
5
|
+
err: (line: string) => void;
|
|
6
|
+
}
|
|
7
|
+
/** What the CLI itself accepts: three options, no verbs (D4). */
|
|
8
|
+
export interface CliArgs {
|
|
9
|
+
help: boolean;
|
|
10
|
+
version: boolean;
|
|
11
|
+
/** `--port <n>`: the port the dashboard binds. Default {@link DEFAULT_DAEMON_PORT}; `0` is ephemeral. */
|
|
12
|
+
port?: number;
|
|
13
|
+
error?: string;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Parse argv (without the node/script prefix). Pure and testable.
|
|
17
|
+
*
|
|
18
|
+
* Three options and nothing else: `--port` because it is the one thing a browser cannot be asked
|
|
19
|
+
* and a dashboard cannot serve about itself; `--help` and `--version` because a command with
|
|
20
|
+
* options owes the user both. The command runs no agent (#1774): a run is started
|
|
21
|
+
* from the dashboard, by the project's own start hook.
|
|
22
|
+
*/
|
|
23
|
+
export declare function parseArgs(argv: string[]): CliArgs;
|
|
24
|
+
export declare function runCli(argv: string[], io?: CliIO): Promise<number>;
|
|
25
|
+
/**
|
|
26
|
+
* The startup footer every dashboard path prints (#312): where prompts come from, the version,
|
|
27
|
+
* and then — once npm answers — whether that version is the latest.
|
|
28
|
+
*
|
|
29
|
+
* The update line is deliberately not awaited before the static lines. #312 asks for the static
|
|
30
|
+
* info first, and the foreground path (bare `openagent`) blocks on the server forever, so a line
|
|
31
|
+
* printed after the await would never appear there at all. `checkForUpdate` is already forgiving:
|
|
32
|
+
* offline or slow (2.5s cap) resolves to 'unknown', which prints nothing.
|
|
33
|
+
*/
|
|
34
|
+
export declare function printStartupFooter(io: CliIO, opts?: {
|
|
35
|
+
fetchLatest?: VersionFetcher;
|
|
36
|
+
}): Promise<void>;
|
|
37
|
+
//# sourceMappingURL=cli.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/cli/cli.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0D,KAAK,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAS/G,gEAAgE;AAChE,MAAM,WAAW,KAAK;IACpB,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IAC3B,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;CAC5B;AA0BD,iEAAiE;AACjE,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,OAAO,CAAA;IACb,OAAO,EAAE,OAAO,CAAA;IAChB,yGAAyG;IACzG,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED;;;;;;;GAOG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAyBjD;AAED,wBAAsB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,GAAE,KAAiB,GAAG,OAAO,CAAC,MAAM,CAAC,CAiBnF;AAgFD;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,GAAE;IAAE,WAAW,CAAC,EAAE,cAAc,CAAA;CAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAaxG"}
|
package/dist/cli/cli.js
ADDED
|
@@ -0,0 +1,188 @@
|
|
|
1
|
+
import { checkForUpdate, formatUpdateStatus, nodeVersionFetcher } from './update-check.js';
|
|
2
|
+
import { runDaemon, DEFAULT_DAEMON_PORT } from '../daemon.js';
|
|
3
|
+
import { joinRunningDashboard } from '../join-dashboard.js';
|
|
4
|
+
import { handDownSkills } from './skills.js';
|
|
5
|
+
import { repositoryOf } from './project.js';
|
|
6
|
+
import { openInBrowser } from './browser.js';
|
|
7
|
+
import { openagentVersion } from '../version.js';
|
|
8
|
+
const defaultIO = {
|
|
9
|
+
out: line => process.stdout.write(line + '\n'),
|
|
10
|
+
err: line => process.stderr.write(line + '\n'),
|
|
11
|
+
};
|
|
12
|
+
const HELP = `OpenAgent — turnkey AI orchestration that wraps a coding agent (Claude Code or Codex).
|
|
13
|
+
|
|
14
|
+
Usage:
|
|
15
|
+
openagent Serve the dashboard in the foreground. Ctrl+C closes it; the server
|
|
16
|
+
logs stream to this terminal. Typed inside a Git repository, it adds
|
|
17
|
+
that repository to the dashboard's projects and opens its page. With
|
|
18
|
+
the dashboard running already, it hands the repository to that one.
|
|
19
|
+
|
|
20
|
+
Options:
|
|
21
|
+
--port <n> Dashboard port (default: 4200).
|
|
22
|
+
-h, --help Show this help.
|
|
23
|
+
-v, --version Print the version.
|
|
24
|
+
|
|
25
|
+
The dashboard listens on this computer only. A phone, or another computer's OpenAgent, gets in
|
|
26
|
+
from Settings › Devices.
|
|
27
|
+
|
|
28
|
+
Everything else is the dashboard: it shows a project's runs from their files, and starts one
|
|
29
|
+
through the project's own start hook (.openagent/hooks.yml), which names the tool that runs it.`;
|
|
30
|
+
/**
|
|
31
|
+
* Parse argv (without the node/script prefix). Pure and testable.
|
|
32
|
+
*
|
|
33
|
+
* Three options and nothing else: `--port` because it is the one thing a browser cannot be asked
|
|
34
|
+
* and a dashboard cannot serve about itself; `--help` and `--version` because a command with
|
|
35
|
+
* options owes the user both. The command runs no agent (#1774): a run is started
|
|
36
|
+
* from the dashboard, by the project's own start hook.
|
|
37
|
+
*/
|
|
38
|
+
export function parseArgs(argv) {
|
|
39
|
+
const opts = { help: false, version: false };
|
|
40
|
+
for (let i = 0; i < argv.length; i++) {
|
|
41
|
+
const arg = argv[i];
|
|
42
|
+
switch (arg) {
|
|
43
|
+
case '--help':
|
|
44
|
+
case '-h':
|
|
45
|
+
opts.help = true;
|
|
46
|
+
break;
|
|
47
|
+
case '--version':
|
|
48
|
+
case '-v':
|
|
49
|
+
opts.version = true;
|
|
50
|
+
break;
|
|
51
|
+
case '--port': {
|
|
52
|
+
const n = Number(argv[++i]);
|
|
53
|
+
if (Number.isInteger(n) && n >= 0)
|
|
54
|
+
opts.port = n;
|
|
55
|
+
else
|
|
56
|
+
opts.error ??= 'invalid --port: must be a non-negative integer';
|
|
57
|
+
break;
|
|
58
|
+
}
|
|
59
|
+
default:
|
|
60
|
+
// The first thing that could not be read is the one told: what follows an unknown option is its value, not a command.
|
|
61
|
+
opts.error ??= arg.startsWith('-') ? `unknown option: ${arg}` : `unknown command: ${arg}`;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
return opts;
|
|
65
|
+
}
|
|
66
|
+
export async function runCli(argv, io = defaultIO) {
|
|
67
|
+
const args = parseArgs(argv);
|
|
68
|
+
if (args.error) {
|
|
69
|
+
io.err(args.error);
|
|
70
|
+
io.err('Run `openagent --help` for usage.');
|
|
71
|
+
return 2;
|
|
72
|
+
}
|
|
73
|
+
if (args.help) {
|
|
74
|
+
io.out(HELP);
|
|
75
|
+
return 0;
|
|
76
|
+
}
|
|
77
|
+
if (args.version) {
|
|
78
|
+
io.out(openagentVersion());
|
|
79
|
+
return 0;
|
|
80
|
+
}
|
|
81
|
+
// Everything else is bare `openagent`: serve the dashboard in the foreground until Ctrl-C.
|
|
82
|
+
return runForegroundDaemonCmd(args, io);
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Bare `openagent`: run the dashboard server in the foreground (#456), so its logs and any
|
|
86
|
+
* server-thrown errors are visible and Ctrl+C stops it. Blocks until the server is signalled
|
|
87
|
+
* (SIGINT/SIGTERM).
|
|
88
|
+
*/
|
|
89
|
+
async function runForegroundDaemonCmd(args, io) {
|
|
90
|
+
const cwd = process.cwd();
|
|
91
|
+
const port = args.port ?? DEFAULT_DAEMON_PORT;
|
|
92
|
+
let project;
|
|
93
|
+
try {
|
|
94
|
+
// Set in this process's own environment, so everything the dashboard starts inherits it.
|
|
95
|
+
await handDownSkills(process.env);
|
|
96
|
+
// A server's service starts in its user's home, which is no project however it looks: a home
|
|
97
|
+
// made a repository would be added again at every start.
|
|
98
|
+
project = process.env.OPENAGENT_SERVER === '1' ? undefined : await repositoryOf(cwd);
|
|
99
|
+
let url = '';
|
|
100
|
+
await runDaemon(cwd, {
|
|
101
|
+
port,
|
|
102
|
+
onListening: state => {
|
|
103
|
+
url = state.url;
|
|
104
|
+
io.out(`◆ dashboard running: ${state.url}`);
|
|
105
|
+
io.out(' Ctrl+C to stop the dashboard. Server logs stream below.');
|
|
106
|
+
// #312 asks bare `openagent` to print the commands + version too. onListening is sync and
|
|
107
|
+
// runDaemon then blocks until signalled, so this is fire-and-forget by necessity: the
|
|
108
|
+
// update line lands a moment later, above the server logs.
|
|
109
|
+
void printStartupFooter(io);
|
|
110
|
+
// Outside a repository there is no project to open: the Overview, where one is added.
|
|
111
|
+
if (project === undefined)
|
|
112
|
+
openInBrowser(state.url);
|
|
113
|
+
},
|
|
114
|
+
...(project !== undefined ? { project, onProject: (started) => openProject(url, started, io) } : {}),
|
|
115
|
+
});
|
|
116
|
+
}
|
|
117
|
+
catch (err) {
|
|
118
|
+
// Another dashboard has the port (#2141): this one hands it the folder rather than failing.
|
|
119
|
+
// An ephemeral port never collides, so it never joins.
|
|
120
|
+
if (err.code === 'EADDRINUSE' && port !== 0)
|
|
121
|
+
return joinRunning(port, project, io);
|
|
122
|
+
io.err(`could not start the dashboard (${err instanceof Error ? err.message : String(err)}).`);
|
|
123
|
+
return 1;
|
|
124
|
+
}
|
|
125
|
+
return 0;
|
|
126
|
+
}
|
|
127
|
+
/**
|
|
128
|
+
* Say where the project is and open its page, which picks it in the sidebar too. What is printed
|
|
129
|
+
* is the address the page shows; what is opened is its id, which always opens it, whatever the
|
|
130
|
+
* page's modules call their pages: the dashboard then writes the address in its place.
|
|
131
|
+
*/
|
|
132
|
+
function openProject(url, started, io) {
|
|
133
|
+
if (started.added)
|
|
134
|
+
io.out(`◆ project added: ${started.path}`);
|
|
135
|
+
io.out(`◆ project: ${url}/${encodeURIComponent(started.address)}`);
|
|
136
|
+
openInBrowser(`${url}/${encodeURIComponent(started.id)}`);
|
|
137
|
+
}
|
|
138
|
+
/**
|
|
139
|
+
* A dashboard runs on the port already: hand it the repository this was typed in, open the page,
|
|
140
|
+
* and end, since this process serves nothing. What holds the port may be no dashboard at all.
|
|
141
|
+
*/
|
|
142
|
+
async function joinRunning(port, project, io) {
|
|
143
|
+
const running = await joinRunningDashboard(port, project);
|
|
144
|
+
if (!running.joined) {
|
|
145
|
+
io.err(`could not start the dashboard: port ${port} is taken by another program. Pass --port <n> to use another one.`);
|
|
146
|
+
return 1;
|
|
147
|
+
}
|
|
148
|
+
io.out(`◆ dashboard already running: ${running.url}`);
|
|
149
|
+
const version = openagentVersion();
|
|
150
|
+
if (running.version !== version)
|
|
151
|
+
io.out(` It runs OpenAgent v${running.version}; this is v${version}. Stop it and run this again to use v${version}.`);
|
|
152
|
+
if (!running.project) {
|
|
153
|
+
// Outside a repository there is no project to open: the Overview, where one is added.
|
|
154
|
+
openInBrowser(running.url);
|
|
155
|
+
return 0;
|
|
156
|
+
}
|
|
157
|
+
if (!running.project.ok) {
|
|
158
|
+
io.err(`could not add ${project}: ${running.project.error}`);
|
|
159
|
+
return 1;
|
|
160
|
+
}
|
|
161
|
+
openProject(running.url, running.project, io);
|
|
162
|
+
return 0;
|
|
163
|
+
}
|
|
164
|
+
/**
|
|
165
|
+
* The startup footer every dashboard path prints (#312): where prompts come from, the version,
|
|
166
|
+
* and then — once npm answers — whether that version is the latest.
|
|
167
|
+
*
|
|
168
|
+
* The update line is deliberately not awaited before the static lines. #312 asks for the static
|
|
169
|
+
* info first, and the foreground path (bare `openagent`) blocks on the server forever, so a line
|
|
170
|
+
* printed after the await would never appear there at all. `checkForUpdate` is already forgiving:
|
|
171
|
+
* offline or slow (2.5s cap) resolves to 'unknown', which prints nothing.
|
|
172
|
+
*/
|
|
173
|
+
export function printStartupFooter(io, opts = {}) {
|
|
174
|
+
const version = openagentVersion();
|
|
175
|
+
io.out('');
|
|
176
|
+
io.out('Type a prompt on the dashboard to start an agent, or use:');
|
|
177
|
+
io.out(' openagent --help All options');
|
|
178
|
+
io.out('');
|
|
179
|
+
io.out(`OpenAgent v${version}`);
|
|
180
|
+
return checkForUpdate(version, opts.fetchLatest ?? nodeVersionFetcher())
|
|
181
|
+
.then(status => {
|
|
182
|
+
const line = formatUpdateStatus(status);
|
|
183
|
+
if (line)
|
|
184
|
+
io.out(line);
|
|
185
|
+
})
|
|
186
|
+
.catch(() => { });
|
|
187
|
+
}
|
|
188
|
+
//# sourceMappingURL=cli.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/cli/cli.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,kBAAkB,EAAuB,MAAM,mBAAmB,CAAA;AAC/G,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAC7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAA;AAE3D,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAQhD,MAAM,SAAS,GAAU;IACvB,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;IAC9C,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;CAC/C,CAAA;AAED,MAAM,IAAI,GAAG;;;;;;;;;;;;;;;;;gGAiBmF,CAAA;AAWhG;;;;;;;GAOG;AACH,MAAM,UAAU,SAAS,CAAC,IAAc;IACtC,MAAM,IAAI,GAAY,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,CAAA;IACrD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAE,CAAA;QACpB,QAAQ,GAAG,EAAE,CAAC;YACZ,KAAK,QAAQ,CAAC;YACd,KAAK,IAAI;gBACP,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;gBAChB,MAAK;YACP,KAAK,WAAW,CAAC;YACjB,KAAK,IAAI;gBACP,IAAI,CAAC,OAAO,GAAG,IAAI,CAAA;gBACnB,MAAK;YACP,KAAK,QAAQ,EAAE,CAAC;gBACd,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;gBAC3B,IAAI,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;oBAAE,IAAI,CAAC,IAAI,GAAG,CAAC,CAAA;;oBAC3C,IAAI,CAAC,KAAK,KAAK,gDAAgD,CAAA;gBACpE,MAAK;YACP,CAAC;YACD;gBACE,sHAAsH;gBACtH,IAAI,CAAC,KAAK,KAAK,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,mBAAmB,GAAG,EAAE,CAAC,CAAC,CAAC,oBAAoB,GAAG,EAAE,CAAA;QAC7F,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,MAAM,CAAC,IAAc,EAAE,EAAE,GAAU,SAAS;IAChE,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,CAAA;IAC5B,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;QACf,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAClB,EAAE,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAA;QAC3C,OAAO,CAAC,CAAA;IACV,CAAC;IACD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QACZ,OAAO,CAAC,CAAA;IACV,CAAC;IACD,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACjB,EAAE,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC,CAAA;QAC1B,OAAO,CAAC,CAAA;IACV,CAAC;IACD,2FAA2F;IAC3F,OAAO,sBAAsB,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;AACzC,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,sBAAsB,CAAC,IAAa,EAAE,EAAS;IAC5D,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAA;IACzB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,mBAAmB,CAAA;IAC7C,IAAI,OAA2B,CAAA;IAC/B,IAAI,CAAC;QACH,yFAAyF;QACzF,MAAM,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QACjC,6FAA6F;QAC7F,yDAAyD;QACzD,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,KAAK,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,YAAY,CAAC,GAAG,CAAC,CAAA;QACpF,IAAI,GAAG,GAAG,EAAE,CAAA;QACZ,MAAM,SAAS,CAAC,GAAG,EAAE;YACnB,IAAI;YACJ,WAAW,EAAE,KAAK,CAAC,EAAE;gBACnB,GAAG,GAAG,KAAK,CAAC,GAAG,CAAA;gBACf,EAAE,CAAC,GAAG,CAAC,wBAAwB,KAAK,CAAC,GAAG,EAAE,CAAC,CAAA;gBAC3C,EAAE,CAAC,GAAG,CAAC,2DAA2D,CAAC,CAAA;gBACnE,0FAA0F;gBAC1F,sFAAsF;gBACtF,2DAA2D;gBAC3D,KAAK,kBAAkB,CAAC,EAAE,CAAC,CAAA;gBAC3B,sFAAsF;gBACtF,IAAI,OAAO,KAAK,SAAS;oBAAE,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YACrD,CAAC;YACD,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,OAAuB,EAAE,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACrH,CAAC,CAAA;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,4FAA4F;QAC5F,uDAAuD;QACvD,IAAK,GAA6B,CAAC,IAAI,KAAK,YAAY,IAAI,IAAI,KAAK,CAAC;YAAE,OAAO,WAAW,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,CAAA;QAC7G,EAAE,CAAC,GAAG,CAAC,kCAAkC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QAC9F,OAAO,CAAC,CAAA;IACV,CAAC;IACD,OAAO,CAAC,CAAA;AACV,CAAC;AAED;;;;GAIG;AACH,SAAS,WAAW,CAAC,GAAW,EAAE,OAAuB,EAAE,EAAS;IAClE,IAAI,OAAO,CAAC,KAAK;QAAE,EAAE,CAAC,GAAG,CAAC,oBAAoB,OAAO,CAAC,IAAI,EAAE,CAAC,CAAA;IAC7D,EAAE,CAAC,GAAG,CAAC,cAAc,GAAG,IAAI,kBAAkB,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IAClE,aAAa,CAAC,GAAG,GAAG,IAAI,kBAAkB,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;AAC3D,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,WAAW,CAAC,IAAY,EAAE,OAA2B,EAAE,EAAS;IAC7E,MAAM,OAAO,GAAG,MAAM,oBAAoB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;IACzD,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QACpB,EAAE,CAAC,GAAG,CAAC,uCAAuC,IAAI,mEAAmE,CAAC,CAAA;QACtH,OAAO,CAAC,CAAA;IACV,CAAC;IACD,EAAE,CAAC,GAAG,CAAC,gCAAgC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAA;IACrD,MAAM,OAAO,GAAG,gBAAgB,EAAE,CAAA;IAClC,IAAI,OAAO,CAAC,OAAO,KAAK,OAAO;QAAE,EAAE,CAAC,GAAG,CAAC,wBAAwB,OAAO,CAAC,OAAO,cAAc,OAAO,wCAAwC,OAAO,GAAG,CAAC,CAAA;IACvJ,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;QACrB,sFAAsF;QACtF,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QAC1B,OAAO,CAAC,CAAA;IACV,CAAC;IACD,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;QACxB,EAAE,CAAC,GAAG,CAAC,iBAAiB,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAA;QAC5D,OAAO,CAAC,CAAA;IACV,CAAC;IACD,WAAW,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAA;IAC7C,OAAO,CAAC,CAAA;AACV,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,kBAAkB,CAAC,EAAS,EAAE,IAAI,GAAqC,EAAE;IACvF,MAAM,OAAO,GAAG,gBAAgB,EAAE,CAAA;IAClC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IACV,EAAE,CAAC,GAAG,CAAC,2DAA2D,CAAC,CAAA;IACnE,EAAE,CAAC,GAAG,CAAC,6CAA6C,CAAC,CAAA;IACrD,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IACV,EAAE,CAAC,GAAG,CAAC,cAAc,OAAO,EAAE,CAAC,CAAA;IAC/B,OAAO,cAAc,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,IAAI,kBAAkB,EAAE,CAAC;SACrE,IAAI,CAAC,MAAM,CAAC,EAAE;QACb,MAAM,IAAI,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAA;QACvC,IAAI,IAAI;YAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;IACxB,CAAC,CAAC;SACD,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;AACpB,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The Git repository a folder is in, by its top folder: the project `npx @openagt/dashboard` adds when
|
|
3
|
+
* it is typed in that folder. Undefined outside a repository, where there is nothing to add.
|
|
4
|
+
*/
|
|
5
|
+
export declare function repositoryOf(folder: string): Promise<string | undefined>;
|
|
6
|
+
//# sourceMappingURL=project.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../../src/cli/project.ts"],"names":[],"mappings":"AAKA;;;GAGG;AACH,wBAAsB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAI9E"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { execFile } from 'node:child_process';
|
|
2
|
+
import { promisify } from 'node:util';
|
|
3
|
+
const run = promisify(execFile);
|
|
4
|
+
/**
|
|
5
|
+
* The Git repository a folder is in, by its top folder: the project `npx @openagt/dashboard` adds when
|
|
6
|
+
* it is typed in that folder. Undefined outside a repository, where there is nothing to add.
|
|
7
|
+
*/
|
|
8
|
+
export async function repositoryOf(folder) {
|
|
9
|
+
const said = await run('git', ['rev-parse', '--show-toplevel'], { cwd: folder }).catch(() => undefined);
|
|
10
|
+
const top = said?.stdout.trim();
|
|
11
|
+
return top ? top : undefined;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=project.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project.js","sourceRoot":"","sources":["../../src/cli/project.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AAErC,MAAM,GAAG,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAA;AAE/B;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,MAAc;IAC/C,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,KAAK,EAAE,CAAC,WAAW,EAAE,iBAAiB,CAAC,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;IACvG,MAAM,GAAG,GAAG,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAA;IAC/B,OAAO,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAA;AAC9B,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The skills every run gets by default: what an agent needs in any project to work at all, read
|
|
3
|
+
* what earlier agents did, ask the person a question, and hand its work over on the project's git
|
|
4
|
+
* host; and the ones the dashboard has pages for, so a page never shows work an agent cannot do:
|
|
5
|
+
* split a task across subagents, the tickets and the queue; and the accounts runs use, which are
|
|
6
|
+
* the computer's and no project's. The one place they are named: the runner links whatever it is
|
|
7
|
+
* handed, and the dashboard gives every project their pages. Each is linked into a run's checkout,
|
|
8
|
+
* hidden from git, and a project's own skill of the same name takes its place (see the runner's
|
|
9
|
+
* `basic-skills.ts`).
|
|
10
|
+
*/
|
|
11
|
+
export declare const DEFAULT_SKILLS: readonly string[];
|
|
12
|
+
/**
|
|
13
|
+
* Put the default skills in `env` under {@link SKILLS_ENV}: their packages' directories, resolved
|
|
14
|
+
* from this package's own install, joined by the path delimiter. One that is not installed is
|
|
15
|
+
* left out.
|
|
16
|
+
*/
|
|
17
|
+
export declare function handDownSkills(env: NodeJS.ProcessEnv): Promise<void>;
|
|
18
|
+
//# sourceMappingURL=skills.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skills.d.ts","sourceRoot":"","sources":["../../src/cli/skills.ts"],"names":[],"mappings":"AAKA;;;;;;;;;GASG;AACH,eAAO,MAAM,cAAc,EAAE,SAAS,MAAM,EAAqM,CAAA;AAEjP;;;;GAIG;AACH,wBAAsB,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAa1E"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { realpath } from 'node:fs/promises';
|
|
2
|
+
import { createRequire } from 'node:module';
|
|
3
|
+
import { delimiter, dirname } from 'node:path';
|
|
4
|
+
import { SKILLS_ENV } from '@openagt/agent-data';
|
|
5
|
+
/**
|
|
6
|
+
* The skills every run gets by default: what an agent needs in any project to work at all, read
|
|
7
|
+
* what earlier agents did, ask the person a question, and hand its work over on the project's git
|
|
8
|
+
* host; and the ones the dashboard has pages for, so a page never shows work an agent cannot do:
|
|
9
|
+
* split a task across subagents, the tickets and the queue; and the accounts runs use, which are
|
|
10
|
+
* the computer's and no project's. The one place they are named: the runner links whatever it is
|
|
11
|
+
* handed, and the dashboard gives every project their pages. Each is linked into a run's checkout,
|
|
12
|
+
* hidden from git, and a project's own skill of the same name takes its place (see the runner's
|
|
13
|
+
* `basic-skills.ts`).
|
|
14
|
+
*/
|
|
15
|
+
export const DEFAULT_SKILLS = ['@openagt/skill-logs', '@openagt/skill-question', '@openagt/skill-github', '@openagt/skill-orchestration', '@openagt/skill-tickets', '@openagt/skill-queue', '@openagt/skill-account-rotation'];
|
|
16
|
+
/**
|
|
17
|
+
* Put the default skills in `env` under {@link SKILLS_ENV}: their packages' directories, resolved
|
|
18
|
+
* from this package's own install, joined by the path delimiter. One that is not installed is
|
|
19
|
+
* left out.
|
|
20
|
+
*/
|
|
21
|
+
export async function handDownSkills(env) {
|
|
22
|
+
const require = createRequire(import.meta.url);
|
|
23
|
+
const dirs = [];
|
|
24
|
+
for (const name of DEFAULT_SKILLS) {
|
|
25
|
+
let manifest;
|
|
26
|
+
try {
|
|
27
|
+
manifest = require.resolve(`${name}/package.json`);
|
|
28
|
+
}
|
|
29
|
+
catch {
|
|
30
|
+
continue;
|
|
31
|
+
}
|
|
32
|
+
dirs.push(await realpath(dirname(manifest)));
|
|
33
|
+
}
|
|
34
|
+
env[SKILLS_ENV] = dirs.join(delimiter);
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=skills.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skills.js","sourceRoot":"","sources":["../../src/cli/skills.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAC3C,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAEhD;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,cAAc,GAAsB,CAAC,qBAAqB,EAAE,yBAAyB,EAAE,uBAAuB,EAAE,8BAA8B,EAAE,wBAAwB,EAAE,sBAAsB,EAAE,iCAAiC,CAAC,CAAA;AAEjP;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,GAAsB;IACzD,MAAM,OAAO,GAAG,aAAa,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAA;IAC9C,MAAM,IAAI,GAAa,EAAE,CAAA;IACzB,KAAK,MAAM,IAAI,IAAI,cAAc,EAAE,CAAC;QAClC,IAAI,QAAgB,CAAA;QACpB,IAAI,CAAC;YACH,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI,eAAe,CAAC,CAAA;QACpD,CAAC;QAAC,MAAM,CAAC;YACP,SAAQ;QACV,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,MAAM,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;IAC9C,CAAC;IACD,GAAG,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;AACxC,CAAC"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CLI "up-to-date?" check (#312): after the bare-`openagent` version footer,
|
|
3
|
+
* tell the user whether a newer version is published on npm. Display only;
|
|
4
|
+
* auto-update is a separate, deferred concern. Same seam + node-adapter +
|
|
5
|
+
* forgiving-on-error convention as `project.ts` (#380).
|
|
6
|
+
*/
|
|
7
|
+
/** The npm package this CLI ships as; the registry key for the version check. */
|
|
8
|
+
export declare const PACKAGE_NAME = "@openagt/dashboard";
|
|
9
|
+
/** Fetches the latest published version of `pkg`, or undefined on any failure. Injectable for tests. */
|
|
10
|
+
export type VersionFetcher = (pkg: string) => Promise<string | undefined>;
|
|
11
|
+
/**
|
|
12
|
+
* A {@link VersionFetcher} backed by the npm registry. GETs the packument and
|
|
13
|
+
* reads `dist-tags.latest`. A 2.5s AbortSignal.timeout caps it; any error /
|
|
14
|
+
* non-ok / offline yields undefined (the check silently degrades to "unknown").
|
|
15
|
+
*/
|
|
16
|
+
export declare function nodeVersionFetcher(): VersionFetcher;
|
|
17
|
+
/** The result of an update check. */
|
|
18
|
+
export type UpdateStatus = {
|
|
19
|
+
kind: 'up-to-date';
|
|
20
|
+
current: string;
|
|
21
|
+
} | {
|
|
22
|
+
kind: 'update-available';
|
|
23
|
+
current: string;
|
|
24
|
+
latest: string;
|
|
25
|
+
} | {
|
|
26
|
+
kind: 'unknown';
|
|
27
|
+
current: string;
|
|
28
|
+
};
|
|
29
|
+
/**
|
|
30
|
+
* Compare two `major.minor.patch` versions numerically (a prerelease/build
|
|
31
|
+
* suffix after `-` or `+` is stripped, missing parts read as 0). Returns
|
|
32
|
+
* -1 / 0 / 1. No semver dependency.
|
|
33
|
+
*/
|
|
34
|
+
export declare function compareVersions(a: string, b: string): number;
|
|
35
|
+
/**
|
|
36
|
+
* Check whether `current` is behind the latest published version. Uses the
|
|
37
|
+
* injected fetcher; a missing/failed fetch is 'unknown'. `current` >= latest is
|
|
38
|
+
* 'up-to-date' (so running a local build ahead of the registry never reads as
|
|
39
|
+
* "update available").
|
|
40
|
+
*/
|
|
41
|
+
export declare function checkForUpdate(current: string, fetchLatest: VersionFetcher, pkg?: string): Promise<UpdateStatus>;
|
|
42
|
+
/** The one-line message to print for a status, or undefined for 'unknown' (print nothing). */
|
|
43
|
+
export declare function formatUpdateStatus(status: UpdateStatus): string | undefined;
|
|
44
|
+
//# sourceMappingURL=update-check.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update-check.d.ts","sourceRoot":"","sources":["../../src/cli/update-check.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,iFAAiF;AACjF,eAAO,MAAM,YAAY,uBAAuB,CAAA;AAEhD,wGAAwG;AACxG,MAAM,MAAM,cAAc,GAAG,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAA;AAEzE;;;;GAIG;AACH,wBAAgB,kBAAkB,IAAI,cAAc,CAYnD;AAED,qCAAqC;AACrC,MAAM,MAAM,YAAY,GACpB;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACvC;IAAE,IAAI,EAAE,kBAAkB,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAC7D;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAA;AAExC;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAW5D;AAED;;;;;GAKG;AACH,wBAAsB,cAAc,CAClC,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,cAAc,EAC3B,GAAG,GAAE,MAAqB,GACzB,OAAO,CAAC,YAAY,CAAC,CAMvB;AAED,8FAA8F;AAC9F,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM,GAAG,SAAS,CAS3E"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CLI "up-to-date?" check (#312): after the bare-`openagent` version footer,
|
|
3
|
+
* tell the user whether a newer version is published on npm. Display only;
|
|
4
|
+
* auto-update is a separate, deferred concern. Same seam + node-adapter +
|
|
5
|
+
* forgiving-on-error convention as `project.ts` (#380).
|
|
6
|
+
*/
|
|
7
|
+
/** The npm package this CLI ships as; the registry key for the version check. */
|
|
8
|
+
export const PACKAGE_NAME = '@openagt/dashboard';
|
|
9
|
+
/**
|
|
10
|
+
* A {@link VersionFetcher} backed by the npm registry. GETs the packument and
|
|
11
|
+
* reads `dist-tags.latest`. A 2.5s AbortSignal.timeout caps it; any error /
|
|
12
|
+
* non-ok / offline yields undefined (the check silently degrades to "unknown").
|
|
13
|
+
*/
|
|
14
|
+
export function nodeVersionFetcher() {
|
|
15
|
+
return async (pkg) => {
|
|
16
|
+
try {
|
|
17
|
+
const res = await fetch(`https://registry.npmjs.org/${pkg}`, { signal: AbortSignal.timeout(2500) });
|
|
18
|
+
if (!res.ok)
|
|
19
|
+
return undefined;
|
|
20
|
+
const data = (await res.json());
|
|
21
|
+
const latest = data?.['dist-tags']?.latest;
|
|
22
|
+
return typeof latest === 'string' ? latest : undefined;
|
|
23
|
+
}
|
|
24
|
+
catch {
|
|
25
|
+
return undefined;
|
|
26
|
+
}
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Compare two `major.minor.patch` versions numerically (a prerelease/build
|
|
31
|
+
* suffix after `-` or `+` is stripped, missing parts read as 0). Returns
|
|
32
|
+
* -1 / 0 / 1. No semver dependency.
|
|
33
|
+
*/
|
|
34
|
+
export function compareVersions(a, b) {
|
|
35
|
+
const parse = (v) => (v.split(/[-+]/)[0] ?? '').split('.').map(n => parseInt(n, 10) || 0);
|
|
36
|
+
const pa = parse(a);
|
|
37
|
+
const pb = parse(b);
|
|
38
|
+
for (let i = 0; i < Math.max(pa.length, pb.length); i++) {
|
|
39
|
+
const na = pa[i] ?? 0;
|
|
40
|
+
const nb = pb[i] ?? 0;
|
|
41
|
+
if (na !== nb)
|
|
42
|
+
return na < nb ? -1 : 1;
|
|
43
|
+
}
|
|
44
|
+
return 0;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Check whether `current` is behind the latest published version. Uses the
|
|
48
|
+
* injected fetcher; a missing/failed fetch is 'unknown'. `current` >= latest is
|
|
49
|
+
* 'up-to-date' (so running a local build ahead of the registry never reads as
|
|
50
|
+
* "update available").
|
|
51
|
+
*/
|
|
52
|
+
export async function checkForUpdate(current, fetchLatest, pkg = PACKAGE_NAME) {
|
|
53
|
+
const latest = await fetchLatest(pkg);
|
|
54
|
+
if (!latest)
|
|
55
|
+
return { kind: 'unknown', current };
|
|
56
|
+
return compareVersions(latest, current) > 0
|
|
57
|
+
? { kind: 'update-available', current, latest }
|
|
58
|
+
: { kind: 'up-to-date', current };
|
|
59
|
+
}
|
|
60
|
+
/** The one-line message to print for a status, or undefined for 'unknown' (print nothing). */
|
|
61
|
+
export function formatUpdateStatus(status) {
|
|
62
|
+
switch (status.kind) {
|
|
63
|
+
case 'up-to-date':
|
|
64
|
+
return `✅ Up to date (v${status.current})`;
|
|
65
|
+
case 'update-available':
|
|
66
|
+
return `⬆️ Update available: v${status.latest} (you have v${status.current}). Run: npm i -g ${PACKAGE_NAME}`;
|
|
67
|
+
case 'unknown':
|
|
68
|
+
return undefined;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
//# sourceMappingURL=update-check.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update-check.js","sourceRoot":"","sources":["../../src/cli/update-check.ts"],"names":[],"mappings":"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"}
|
package/dist/daemon.d.ts
CHANGED
|
@@ -38,8 +38,6 @@ export interface RunDaemonOptions {
|
|
|
38
38
|
signal?: AbortSignal;
|
|
39
39
|
/** Env the registry is read from. Default `process.env`; injectable for tests. */
|
|
40
40
|
env?: NodeJS.ProcessEnv;
|
|
41
|
-
/** OpenAgent's version, as the package that started it says: what this computer tells its machines and a phone. `unknown` when unsaid. */
|
|
42
|
-
version?: string;
|
|
43
41
|
/** Called once the server has bound, before it blocks. The only way a caller learns the port. */
|
|
44
42
|
onListening?: (state: DaemonState) => void;
|
|
45
43
|
/**
|
package/dist/daemon.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"daemon.d.ts","sourceRoot":"","sources":["../src/daemon.ts"],"names":[],"mappings":"AAaA,OAAO,EAA4D,KAAK,aAAa,EAAE,KAAK,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAG7I,OAAO,EAAiD,KAAK,eAAe,EAAE,KAAK,sBAAsB,EAAE,MAAM,uBAAuB,CAAA;
|
|
1
|
+
{"version":3,"file":"daemon.d.ts","sourceRoot":"","sources":["../src/daemon.ts"],"names":[],"mappings":"AAaA,OAAO,EAA4D,KAAK,aAAa,EAAE,KAAK,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAG7I,OAAO,EAAiD,KAAK,eAAe,EAAE,KAAK,sBAAsB,EAAE,MAAM,uBAAuB,CAAA;AAExI,OAAO,KAAK,EAAiB,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAOzE;;;;;;;;;;;;GAYG;AAEH,mDAAmD;AACnD,eAAO,MAAM,mBAAmB,OAAO,CAAA;AAEvC,qFAAqF;AACrF,MAAM,WAAW,WAAW;IAC1B,6BAA6B;IAC7B,GAAG,EAAE,MAAM,CAAA;IACX,0CAA0C;IAC1C,IAAI,EAAE,MAAM,CAAA;IACZ,uBAAuB;IACvB,GAAG,EAAE,MAAM,CAAA;IACX,wCAAwC;IACxC,SAAS,EAAE,MAAM,CAAA;CAClB;AAED;kGACkG;AAClG,OAAO,EAAE,UAAU,IAAI,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAE/D,qCAAqC;AACrC,MAAM,WAAW,gBAAgB;IAC/B,yFAAyF;IACzF,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,wFAAwF;IACxF,MAAM,CAAC,EAAE,WAAW,CAAA;IACpB,kFAAkF;IAClF,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAA;IACvB,iGAAiG;IACjG,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAA;IAC1C;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,iJAAiJ;IACjJ,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,cAAc,KAAK,IAAI,CAAA;IAC7C,kGAAkG;IAClG,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,oBAAoB,KAAK,OAAO,CAAC,aAAa,CAAC,CAAA;IACtE,4GAA4G;IAC5G,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,sBAAsB,KAAK,eAAe,CAAA;IACnE,oGAAoG;IACpG,kBAAkB,CAAC,EAAE,MAAM,CAAA;CAC5B;AAKD;;;;;GAKG;AACH,wBAAsB,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,GAAE,gBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CA0LvF"}
|
package/dist/daemon.js
CHANGED
|
@@ -16,7 +16,6 @@ import { runProjectHooks } from './project-hooks.js';
|
|
|
16
16
|
import { builtInServices } from './built-in.js';
|
|
17
17
|
import { COMPUTER_ENV, sayOwnUrl, startPackageServices } from './package-services.js';
|
|
18
18
|
import { readAllAgents } from './store/index.js';
|
|
19
|
-
import { setOpenagentVersion } from './version.js';
|
|
20
19
|
import { personLogins } from './dashboard/copy-logins.js';
|
|
21
20
|
import { startLoginsSync } from './dashboard/logins-sync.js';
|
|
22
21
|
import { startComputersSync } from './dashboard/computers-sync.js';
|
|
@@ -53,8 +52,6 @@ export async function runDaemon(cwd, opts = {}) {
|
|
|
53
52
|
const env = opts.env ?? process.env;
|
|
54
53
|
// What a press installs is found at once, by the checks and by every run started from here.
|
|
55
54
|
withLocalBin(process.env);
|
|
56
|
-
if (opts.version !== undefined)
|
|
57
|
-
setOpenagentVersion(opts.version);
|
|
58
55
|
// The browser bridge (#1237). Opt-in, because it opens the daemon's one route reachable from
|
|
59
56
|
// another origin, behind a key of its own. The key may not exist yet, hence ensure, not read.
|
|
60
57
|
const bridgeOn = (await readPreferences(undefined, env).catch(() => ({}))).bridge === true;
|
package/dist/daemon.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"daemon.js","sourceRoot":"","sources":["../src/daemon.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,cAAc,EAAkB,MAAM,sBAAsB,CAAA;AACrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAA;AAC3D,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAA;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAA;AAC9D,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,wBAAwB,EAAE,gBAAgB,EAAoB,MAAM,eAAe,CAAA;AAChL,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAA;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAA;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAA;AAC7D,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,kBAAkB,EAAiD,MAAM,qBAAqB,CAAA;AAC7I,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAC/C,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,oBAAoB,EAAqD,MAAM,uBAAuB,CAAA;AACxI,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;
|
|
1
|
+
{"version":3,"file":"daemon.js","sourceRoot":"","sources":["../src/daemon.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,7 +20,7 @@ import { accountsPath, readAccounts } from '@openagt/skill-account-rotation';
|
|
|
20
20
|
* logins are there, and says how they get there when they are not.
|
|
21
21
|
*/
|
|
22
22
|
/** The package that keeps a person's own logins on a computer several people use. */
|
|
23
|
-
const DEVICES = '@openagt/devices';
|
|
23
|
+
const DEVICES = '@openagt/dashboard-devices';
|
|
24
24
|
/** What a person's OpenAgent answers at `/_relay/logins`: their logins here, and logins handed over. */
|
|
25
25
|
export function personLogins(run) {
|
|
26
26
|
const read = async () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"copy-logins.js","sourceRoot":"","sources":["../../src/dashboard/copy-logins.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAClC,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAA;AAGnF,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,YAAY,EAAsB,MAAM,iBAAiB,CAAA;AAChG,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,WAAW,EAAE,YAAY,EAAsB,MAAM,qBAAqB,CAAA;AACpH,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAA;AAE5E;;;;;;;;;;;;;;GAcG;AAEH,qFAAqF;AACrF,MAAM,OAAO,GAAG,
|
|
1
|
+
{"version":3,"file":"copy-logins.js","sourceRoot":"","sources":["../../src/dashboard/copy-logins.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,7 +8,7 @@ import { parseMachineLink } from '../machine-link.js';
|
|
|
8
8
|
// What the person's computers ask each other to keep the same computers on all of them
|
|
9
9
|
// (computers-sync.ts): what one has, a computer handed to it, and what the person removed.
|
|
10
10
|
/** The package whose door this computer is reached at. */
|
|
11
|
-
const DEVICES = '@openagt/devices';
|
|
11
|
+
const DEVICES = '@openagt/dashboard-devices';
|
|
12
12
|
/** A host as a URL carries it: an IPv6 number in brackets. */
|
|
13
13
|
const urlHost = (host) => (host.includes(':') ? `[${host}]` : host);
|
|
14
14
|
/** Where this computer's own door is reached at an address, when it is: a server's, or its name on Tailscale; and its id at each server it keeps a line to. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"computers.js","sourceRoot":"","sources":["../../src/dashboard-rpc/computers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,cAAc,EAAE,gBAAgB,EAAE,YAAY,EAAmC,MAAM,gCAAgC,CAAA;AAC7J,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,aAAa,EAAsB,MAAM,gBAAgB,CAAA;AAC/F,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AACtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAErD,uFAAuF;AACvF,2FAA2F;AAE3F,0DAA0D;AAC1D,MAAM,OAAO,GAAG,
|
|
1
|
+
{"version":3,"file":"computers.js","sourceRoot":"","sources":["../../src/dashboard-rpc/computers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,cAAc,EAAE,gBAAgB,EAAE,YAAY,EAAmC,MAAM,gCAAgC,CAAA;AAC7J,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,aAAa,EAAsB,MAAM,gBAAgB,CAAA;AAC/F,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AACtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAErD,uFAAuF;AACvF,2FAA2F;AAE3F,0DAA0D;AAC1D,MAAM,OAAO,GAAG,4BAA4B,CAAA;AAE5C,8DAA8D;AAC9D,MAAM,OAAO,GAAG,CAAC,IAAY,EAAU,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;AAEnF,+JAA+J;AAC/J,MAAM,CAAC,KAAK,UAAU,OAAO;IAC3B,MAAM,IAAI,GAAG,MAAM,kBAAkB,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAA;IAC1D,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ;QAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,CAAA;IACrF,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,MAAiC,CAAA;IACrF,MAAM,EAAE,GAAG,CAAC,KAAc,EAAsB,EAAE;QAChD,MAAM,OAAO,GAAG,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAE,KAAiC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAA;QAC3G,OAAO,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,CAAC,CAAC,CAAC,WAAW,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAA;IAC3F,CAAC,CAAA;IACD,MAAM,OAAO,GAAG,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IAC7E,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;QAC9D,MAAM,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAA4B,CAAA;QAC7F,OAAO,OAAO,GAAG,KAAK,QAAQ,IAAI,OAAO,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IAC/E,CAAC,CAAC,CAAA;IACF,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAA;AACzD,CAAC;AAED,2GAA2G;AAC3G,MAAM,CAAC,KAAK,UAAU,OAAO;IAC3B,MAAM,IAAI,GAAG,MAAM,kBAAkB,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC,CAAA;IACvD,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,MAAM,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAE,IAAI,CAAC,MAAkC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAA;IAChI,OAAO,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAA;AAChF,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc;IAClC,MAAM,CAAC,QAAQ,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,EAAE,aAAa,EAAE,EAAE,eAAe,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAY,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;IACtJ,OAAO;QACL,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/C,SAAS,EAAE,QAAQ;aAChB,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,KAAK,SAAS,IAAI,gBAAgB,CAAC,OAAO,CAAC,CAAC;aAC3E,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAChM,SAAS;KACV,CAAA;AACH,CAAC;AAID;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,IAAa,EAAE,KAAc,EAAE,KAAc;IACjF,MAAM,MAAM,GAAG,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;IACvE,IAAI,CAAC,MAAM,IAAI,CAAC,gBAAgB,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,CAAC;QAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,uDAAuD,EAAE,CAAA;IAC3I,MAAM,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAY,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,aAAa,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC,CAAA;IACtJ,IAAI,IAAI,CAAC,OAAO,KAAK,MAAM,CAAC,GAAG;QAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,wBAAwB,EAAE,CAAA;IACtF,MAAM,OAAO,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,KAAK,MAAM,CAAC,GAAG,CAAC,CAAA;IAC/D,IAAI,OAAO,IAAI,YAAY,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,CAAC;QAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,wCAAwC,EAAE,CAAA;IAC7J,IAAI,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,KAAK,MAAM,CAAC,GAAG,CAAC;QAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAA;IAC7E,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,IAAc,EAAE,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;IAC9F,OAAO,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAA;AACxC,CAAC;AAED,iHAAiH;AACjH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,IAAa;IACrD,MAAM,QAAQ,GAAG,cAAc,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,SAAS,CAAA;IAC9D,MAAM,UAAU,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAA;IACtC,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAA;AACrB,CAAC;AAED,2IAA2I;AAC3I,KAAK,UAAU,UAAU,CAAC,OAAsB;IAC9C,MAAM,KAAK,GAAG,MAAM,YAAY,EAAE,CAAA;IAClC,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC,GAAG,GAAG,YAAY,EAAE,CAAC,CAAC,CAAA;IACpG,IAAI,CAAC,OAAO,EAAE,GAAG,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAAE,OAAO,KAAK,CAAA;IACrF,KAAK,MAAM,GAAG,IAAI,OAAO;QAAE,MAAM,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IACtD,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IAC/C,IAAI,OAAO;QAAE,KAAK,WAAW,CAAC,OAAO,CAAC,CAAA;IACtC,OAAO,IAAI,CAAA;AACb,CAAC"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* The skills a project can pick in the dashboard's Skills list (#2023), in its groups, with what
|
|
3
3
|
* is ticked the first time. Every group is ticked except the skills that are useless until something of
|
|
4
4
|
* their own is set up. The skills every run gets by default are not here (the branches skill,
|
|
5
|
-
* and the ones
|
|
5
|
+
* and the ones its command names): they come with every run, with nothing written in the
|
|
6
6
|
* project.
|
|
7
7
|
*
|
|
8
8
|
* Each skill's text is its own package's `SKILL.md`, read from this package's install, so the
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* The skills a project can pick in the dashboard's Skills list (#2023), in its groups, with what
|
|
3
3
|
* is ticked the first time. Every group is ticked except the skills that are useless until something of
|
|
4
4
|
* their own is set up. The skills every run gets by default are not here (the branches skill,
|
|
5
|
-
* and the ones
|
|
5
|
+
* and the ones its command names): they come with every run, with nothing written in the
|
|
6
6
|
* project.
|
|
7
7
|
*
|
|
8
8
|
* Each skill's text is its own package's `SKILL.md`, read from this package's install, so the
|
package/dist/version.d.ts
CHANGED
package/dist/version.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAaA,wBAAgB,gBAAgB,IAAI,MAAM,CAUzC"}
|
package/dist/version.js
CHANGED
|
@@ -1,14 +1,26 @@
|
|
|
1
|
+
import { readFileSync } from 'node:fs';
|
|
2
|
+
import { dirname, join } from 'node:path';
|
|
3
|
+
import { fileURLToPath } from 'node:url';
|
|
1
4
|
/**
|
|
2
|
-
* OpenAgent's version
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
5
|
+
* OpenAgent's version: this package's own, the one people install, read from its `package.json`
|
|
6
|
+
* at runtime (#312). What this computer tells the machines it gets into and a phone.
|
|
7
|
+
* The compiled file lives one level under the package root (`dist/` or `dist-test/`), so its
|
|
8
|
+
* `package.json` is always `../package.json`. Cached after the first read; `unknown` if the file
|
|
9
|
+
* is somehow unreadable, not `0.0.0`: the packages are unreleased and legitimately versioned
|
|
10
|
+
* `0.0.0`, so a numeric stand-in would read as a real version.
|
|
6
11
|
*/
|
|
7
|
-
let
|
|
12
|
+
let cachedVersion;
|
|
8
13
|
export function openagentVersion() {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
14
|
+
if (cachedVersion !== undefined)
|
|
15
|
+
return cachedVersion;
|
|
16
|
+
try {
|
|
17
|
+
const pkgPath = join(dirname(fileURLToPath(import.meta.url)), '..', 'package.json');
|
|
18
|
+
const pkg = JSON.parse(readFileSync(pkgPath, 'utf8'));
|
|
19
|
+
cachedVersion = pkg.version ?? 'unknown';
|
|
20
|
+
}
|
|
21
|
+
catch {
|
|
22
|
+
cachedVersion = 'unknown';
|
|
23
|
+
}
|
|
24
|
+
return cachedVersion;
|
|
13
25
|
}
|
|
14
26
|
//# sourceMappingURL=version.js.map
|
package/dist/version.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.js","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"version.js","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAExC;;;;;;;GAOG;AACH,IAAI,aAAiC,CAAA;AACrC,MAAM,UAAU,gBAAgB;IAC9B,IAAI,aAAa,KAAK,SAAS;QAAE,OAAO,aAAa,CAAA;IACrD,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,cAAc,CAAC,CAAA;QACnF,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAyB,CAAA;QAC7E,aAAa,GAAG,GAAG,CAAC,OAAO,IAAI,SAAS,CAAA;IAC1C,CAAC;IAAC,MAAM,CAAC;QACP,aAAa,GAAG,SAAS,CAAA;IAC3B,CAAC;IACD,OAAO,aAAa,CAAA;AACtB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@openagt/dashboard",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.51.0",
|
|
4
4
|
"description": "OpenAgent: a local dashboard and daemon for coding agents. It starts an agent through the project's own start hook and shows every agent from the files it keeps; it runs no coding agent itself.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"ai",
|
|
@@ -13,14 +13,14 @@
|
|
|
13
13
|
"turnkey"
|
|
14
14
|
],
|
|
15
15
|
"license": "MIT",
|
|
16
|
-
"homepage": "https://github.com/openagt/openagent/tree/main/packages/
|
|
16
|
+
"homepage": "https://github.com/openagt/openagent/tree/main/packages/dashboard#readme",
|
|
17
17
|
"bugs": {
|
|
18
18
|
"url": "https://github.com/openagt/openagent/issues"
|
|
19
19
|
},
|
|
20
20
|
"repository": {
|
|
21
21
|
"type": "git",
|
|
22
22
|
"url": "git+https://github.com/openagt/openagent.git",
|
|
23
|
-
"directory": "packages/
|
|
23
|
+
"directory": "packages/dashboard"
|
|
24
24
|
},
|
|
25
25
|
"type": "module",
|
|
26
26
|
"engines": {
|
|
@@ -29,11 +29,10 @@
|
|
|
29
29
|
"files": [
|
|
30
30
|
"dist"
|
|
31
31
|
],
|
|
32
|
+
"bin": {
|
|
33
|
+
"openagent": "dist/cli/bin.js"
|
|
34
|
+
},
|
|
32
35
|
"exports": {
|
|
33
|
-
"./serve": {
|
|
34
|
-
"types": "./dist/serve.d.ts",
|
|
35
|
-
"default": "./dist/serve.js"
|
|
36
|
-
},
|
|
37
36
|
"./module": {
|
|
38
37
|
"types": "./dist/module-types/dashboard/module/index.d.ts"
|
|
39
38
|
},
|
|
@@ -64,40 +63,41 @@
|
|
|
64
63
|
"uqr": "0.1.3",
|
|
65
64
|
"yaml": "^2.5.0",
|
|
66
65
|
"@openagt/agent-driver-claude": "0.0.15",
|
|
67
|
-
"@openagt/agent-driver-codex": "0.0.13",
|
|
68
66
|
"@openagt/agent-data": "0.0.10",
|
|
69
|
-
"@openagt/
|
|
70
|
-
"@openagt/changes": "0.0.4",
|
|
71
|
-
"@openagt/files": "0.0.10",
|
|
67
|
+
"@openagt/agent-driver-codex": "0.0.13",
|
|
68
|
+
"@openagt/dashboard-changes": "0.0.4",
|
|
69
|
+
"@openagt/dashboard-files": "0.0.10",
|
|
72
70
|
"@openagt/skill-browser": "0.1.3",
|
|
73
71
|
"@openagt/skill-github": "0.1.9",
|
|
74
72
|
"@openagt/skill-branches": "0.1.5",
|
|
75
|
-
"@openagt/
|
|
73
|
+
"@openagt/dashboard-devices": "0.2.11",
|
|
74
|
+
"@openagt/skill-question": "0.1.0",
|
|
76
75
|
"@openagt/skill-logs": "0.1.7",
|
|
76
|
+
"@openagt/skill-orchestration": "0.1.15",
|
|
77
77
|
"@openagt/skill-queue": "0.1.7",
|
|
78
|
-
"@openagt/skill-
|
|
78
|
+
"@openagt/skill-maintainability": "0.1.0",
|
|
79
|
+
"@openagt/skill-discord": "0.1.1",
|
|
79
80
|
"@openagt/skill-tickets": "0.1.8",
|
|
80
81
|
"@openagt/skill-maintenance": "0.1.0",
|
|
82
|
+
"@openagt/skill-scheduler": "0.1.20",
|
|
81
83
|
"@openagt/skill-market-research": "0.1.0",
|
|
82
|
-
"@openagt/skill-
|
|
83
|
-
"@openagt/skill-discord": "0.1.1",
|
|
84
|
+
"@openagt/skill-post-merge-cleanup": "0.1.0",
|
|
84
85
|
"@openagt/skill-plan": "0.1.0",
|
|
85
86
|
"@openagt/skill-plan-tickets": "0.1.0",
|
|
86
87
|
"@openagt/skill-readability": "0.1.0",
|
|
87
88
|
"@openagt/skill-reply": "0.1.2",
|
|
88
89
|
"@openagt/skill-research": "0.1.0",
|
|
89
|
-
"@openagt/skill-
|
|
90
|
+
"@openagt/skill-triage": "0.1.0",
|
|
91
|
+
"@openagt/skill-update-tickets": "0.1.1",
|
|
90
92
|
"@openagt/skill-security-audit": "0.1.0",
|
|
91
|
-
"@openagt/skill-suggest-new-tickets": "0.1.0",
|
|
92
93
|
"@openagt/skill-suggest-new-features": "0.1.0",
|
|
93
|
-
"@openagt/skill-suggest-tickets-to-work-on": "0.1.0",
|
|
94
|
-
"@openagt/skill-triage": "0.1.0",
|
|
95
94
|
"@openagt/skill-ux": "0.1.0",
|
|
96
|
-
"@openagt/skill-update-tickets": "0.1.1",
|
|
97
|
-
"@openagt/skill-work-queue": "0.1.0",
|
|
98
95
|
"@openagt/agent-driver": "0.0.12",
|
|
99
|
-
"@openagt/skill-
|
|
100
|
-
"@openagt/
|
|
96
|
+
"@openagt/skill-suggest-new-tickets": "0.1.0",
|
|
97
|
+
"@openagt/skill-work-queue": "0.1.0",
|
|
98
|
+
"@openagt/agent-runner": "0.0.25",
|
|
99
|
+
"@openagt/skill-suggest-tickets-to-work-on": "0.1.0",
|
|
100
|
+
"@openagt/skill-account-rotation": "0.1.0"
|
|
101
101
|
},
|
|
102
102
|
"devDependencies": {
|
|
103
103
|
"@tailwindcss/vite": "^4.0.0",
|
package/dist/serve.d.ts
DELETED
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
export { DEFAULT_DAEMON_PORT, runDaemon, type DaemonState, type RunDaemonOptions } from './daemon.js';
|
|
2
|
-
export { joinRunningDashboard, type JoinedDashboard } from './join-dashboard.js';
|
|
3
|
-
export type { StartedProject } from './dashboard/types.js';
|
|
4
|
-
//# sourceMappingURL=serve.d.ts.map
|
package/dist/serve.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"serve.d.ts","sourceRoot":"","sources":["../src/serve.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAE,SAAS,EAAE,KAAK,WAAW,EAAE,KAAK,gBAAgB,EAAE,MAAM,aAAa,CAAA;AACrG,OAAO,EAAE,oBAAoB,EAAE,KAAK,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAChF,YAAY,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA"}
|
package/dist/serve.js
DELETED
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
// `@openagt/dashboard/serve`: the dashboard's server, as `@openagt/start` runs it. The dashboard has
|
|
2
|
-
// no command of its own: the one people run is start's, which hands it the skills every run gets
|
|
3
|
-
// (in the environment, see `SKILLS_ENV`) and OpenAgent's version.
|
|
4
|
-
export { DEFAULT_DAEMON_PORT, runDaemon } from './daemon.js';
|
|
5
|
-
export { joinRunningDashboard } from './join-dashboard.js';
|
|
6
|
-
//# sourceMappingURL=serve.js.map
|
package/dist/serve.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"serve.js","sourceRoot":"","sources":["../src/serve.ts"],"names":[],"mappings":"AAAA,qGAAqG;AACrG,iGAAiG;AACjG,kEAAkE;AAClE,OAAO,EAAE,mBAAmB,EAAE,SAAS,EAA2C,MAAM,aAAa,CAAA;AACrG,OAAO,EAAE,oBAAoB,EAAwB,MAAM,qBAAqB,CAAA"}
|