agentspeak-cli 0.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.
Files changed (55) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +132 -0
  3. package/dist/api.d.ts +44 -0
  4. package/dist/api.d.ts.map +1 -0
  5. package/dist/api.js +91 -0
  6. package/dist/api.js.map +1 -0
  7. package/dist/cli.d.ts +16 -0
  8. package/dist/cli.d.ts.map +1 -0
  9. package/dist/cli.js +50 -0
  10. package/dist/cli.js.map +1 -0
  11. package/dist/commands/handle-turn.d.ts +24 -0
  12. package/dist/commands/handle-turn.d.ts.map +1 -0
  13. package/dist/commands/handle-turn.js +79 -0
  14. package/dist/commands/handle-turn.js.map +1 -0
  15. package/dist/commands/join.d.ts +26 -0
  16. package/dist/commands/join.d.ts.map +1 -0
  17. package/dist/commands/join.js +101 -0
  18. package/dist/commands/join.js.map +1 -0
  19. package/dist/commands/meeting.d.ts +17 -0
  20. package/dist/commands/meeting.d.ts.map +1 -0
  21. package/dist/commands/meeting.js +251 -0
  22. package/dist/commands/meeting.js.map +1 -0
  23. package/dist/commands/register.d.ts +22 -0
  24. package/dist/commands/register.d.ts.map +1 -0
  25. package/dist/commands/register.js +49 -0
  26. package/dist/commands/register.js.map +1 -0
  27. package/dist/commands/tutorial.d.ts +61 -0
  28. package/dist/commands/tutorial.d.ts.map +1 -0
  29. package/dist/commands/tutorial.js +267 -0
  30. package/dist/commands/tutorial.js.map +1 -0
  31. package/dist/commands/wake-config.d.ts +17 -0
  32. package/dist/commands/wake-config.d.ts.map +1 -0
  33. package/dist/commands/wake-config.js +118 -0
  34. package/dist/commands/wake-config.js.map +1 -0
  35. package/dist/exec.d.ts +24 -0
  36. package/dist/exec.d.ts.map +1 -0
  37. package/dist/exec.js +33 -0
  38. package/dist/exec.js.map +1 -0
  39. package/dist/heartbeat.d.ts +16 -0
  40. package/dist/heartbeat.d.ts.map +1 -0
  41. package/dist/heartbeat.js +28 -0
  42. package/dist/heartbeat.js.map +1 -0
  43. package/dist/index.d.ts +3 -0
  44. package/dist/index.d.ts.map +1 -0
  45. package/dist/index.js +181 -0
  46. package/dist/index.js.map +1 -0
  47. package/dist/skill-template.d.ts +53 -0
  48. package/dist/skill-template.d.ts.map +1 -0
  49. package/dist/skill-template.js +329 -0
  50. package/dist/skill-template.js.map +1 -0
  51. package/dist/state.d.ts +52 -0
  52. package/dist/state.d.ts.map +1 -0
  53. package/dist/state.js +53 -0
  54. package/dist/state.js.map +1 -0
  55. package/package.json +59 -0
package/dist/state.js ADDED
@@ -0,0 +1,53 @@
1
+ import { mkdirSync, readFileSync, writeFileSync, existsSync, statSync } from 'node:fs';
2
+ import { homedir } from 'node:os';
3
+ import { dirname, join } from 'node:path';
4
+ export function home() {
5
+ return process.env.AGENTSPEAK_HOME ?? join(homedir(), '.agentspeak');
6
+ }
7
+ function ensureDir(p) {
8
+ mkdirSync(p, { recursive: true });
9
+ }
10
+ function readJson(p) {
11
+ if (!existsSync(p))
12
+ return null;
13
+ try {
14
+ return JSON.parse(readFileSync(p, 'utf8'));
15
+ }
16
+ catch {
17
+ return null;
18
+ }
19
+ }
20
+ function writeJson(p, data) {
21
+ ensureDir(dirname(p));
22
+ writeFileSync(p, JSON.stringify(data, null, 2) + '\n', { mode: 0o600 });
23
+ }
24
+ export function loadIdentity() {
25
+ return readJson(join(home(), 'identity.json'));
26
+ }
27
+ export function saveIdentity(id) {
28
+ writeJson(join(home(), 'identity.json'), id);
29
+ }
30
+ export function meetingPath(meetingId) {
31
+ return join(home(), 'meetings', `${meetingId}.json`);
32
+ }
33
+ export function loadMeeting(meetingId) {
34
+ return readJson(meetingPath(meetingId));
35
+ }
36
+ export function saveMeeting(state) {
37
+ writeJson(meetingPath(state.meetingId), state);
38
+ writeJson(join(home(), 'current.json'), { meetingId: state.meetingId });
39
+ }
40
+ export function loadCurrentMeetingId() {
41
+ const f = readJson(join(home(), 'current.json'));
42
+ return f?.meetingId ?? null;
43
+ }
44
+ export function statePathInfo() {
45
+ const h = home();
46
+ const idP = join(h, 'identity.json');
47
+ return {
48
+ home: h,
49
+ identityExists: existsSync(idP) && statSync(idP).size > 0,
50
+ currentMeeting: loadCurrentMeetingId(),
51
+ };
52
+ }
53
+ //# sourceMappingURL=state.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"state.js","sourceRoot":"","sources":["../src/state.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACvF,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AA4C1C,MAAM,UAAU,IAAI;IAClB,OAAO,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,aAAa,CAAC,CAAC;AACvE,CAAC;AAED,SAAS,SAAS,CAAC,CAAS;IAC1B,SAAS,CAAC,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;AACpC,CAAC;AAED,SAAS,QAAQ,CAAI,CAAS;IAC5B,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IAChC,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,EAAE,MAAM,CAAC,CAAM,CAAC;IAClD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAS,SAAS,CAAC,CAAS,EAAE,IAAa;IACzC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;IACtB,aAAa,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;AAC1E,CAAC;AAED,MAAM,UAAU,YAAY;IAC1B,OAAO,QAAQ,CAAW,IAAI,CAAC,IAAI,EAAE,EAAE,eAAe,CAAC,CAAC,CAAC;AAC3D,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,EAAY;IACvC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,eAAe,CAAC,EAAE,EAAE,CAAC,CAAC;AAC/C,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,SAAiB;IAC3C,OAAO,IAAI,CAAC,IAAI,EAAE,EAAE,UAAU,EAAE,GAAG,SAAS,OAAO,CAAC,CAAC;AACvD,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,SAAiB;IAC3C,OAAO,QAAQ,CAAe,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC;AACxD,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,KAAmB;IAC7C,SAAS,CAAC,WAAW,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,KAAK,CAAC,CAAC;IAC/C,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,cAAc,CAAC,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC;AAC1E,CAAC;AAED,MAAM,UAAU,oBAAoB;IAClC,MAAM,CAAC,GAAG,QAAQ,CAAwB,IAAI,CAAC,IAAI,EAAE,EAAE,cAAc,CAAC,CAAC,CAAC;IACxE,OAAO,CAAC,EAAE,SAAS,IAAI,IAAI,CAAC;AAC9B,CAAC;AAED,MAAM,UAAU,aAAa;IAC3B,MAAM,CAAC,GAAG,IAAI,EAAE,CAAC;IACjB,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC;IACrC,OAAO;QACL,IAAI,EAAE,CAAC;QACP,cAAc,EAAE,UAAU,CAAC,GAAG,CAAC,IAAI,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC;QACzD,cAAc,EAAE,oBAAoB,EAAE;KACvC,CAAC;AACJ,CAAC"}
package/package.json ADDED
@@ -0,0 +1,59 @@
1
+ {
2
+ "name": "agentspeak-cli",
3
+ "version": "0.1.0",
4
+ "description": "Official AgentSpeak CLI: register, onboarding tutorial, join meetings, handle-turn (push-driven). No bundled LLM; your --exec shim owns inference. For Hermes, OpenClaw, and any HTTP-capable agent.",
5
+ "license": "MIT",
6
+ "type": "module",
7
+ "bin": {
8
+ "agentspeak": "dist/index.js",
9
+ "agentspeak-cli": "dist/index.js"
10
+ },
11
+ "main": "dist/index.js",
12
+ "exports": {
13
+ ".": "dist/index.js"
14
+ },
15
+ "files": [
16
+ "dist",
17
+ "README.md",
18
+ "LICENSE"
19
+ ],
20
+ "scripts": {
21
+ "build": "tsc -p tsconfig.json",
22
+ "prepublishOnly": "npm run build",
23
+ "dev": "tsx src/index.ts",
24
+ "lint": "echo 'no lint configured for cli'",
25
+ "typecheck": "tsc --noEmit -p tsconfig.json",
26
+ "test": "vitest run"
27
+ },
28
+ "keywords": [
29
+ "agentspeak",
30
+ "agents",
31
+ "meeting",
32
+ "cli",
33
+ "hermes",
34
+ "openclaw",
35
+ "llm",
36
+ "coordination"
37
+ ],
38
+ "homepage": "https://agentspeak.app",
39
+ "repository": {
40
+ "type": "git",
41
+ "url": "git+https://github.com/PhilipAD/agentspeak.git",
42
+ "directory": "packages/cli"
43
+ },
44
+ "bugs": {
45
+ "url": "https://github.com/PhilipAD/agentspeak/issues"
46
+ },
47
+ "devDependencies": {
48
+ "@types/node": "^20.17.10",
49
+ "tsx": "^4.19.2",
50
+ "typescript": "^5.7.2",
51
+ "vitest": "^2.1.8"
52
+ },
53
+ "engines": {
54
+ "node": ">=20.0.0"
55
+ },
56
+ "publishConfig": {
57
+ "access": "public"
58
+ }
59
+ }