opencode-agora 0.4.0 → 0.4.1

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 (224) hide show
  1. package/README.md +84 -418
  2. package/dist/atomic-write.d.ts +10 -0
  3. package/dist/atomic-write.d.ts.map +1 -0
  4. package/dist/atomic-write.js +23 -0
  5. package/dist/atomic-write.js.map +1 -0
  6. package/dist/auth/refresh.d.ts +17 -0
  7. package/dist/auth/refresh.d.ts.map +1 -0
  8. package/dist/auth/refresh.js +50 -0
  9. package/dist/auth/refresh.js.map +1 -0
  10. package/dist/cli/app.d.ts +11 -19
  11. package/dist/cli/app.d.ts.map +1 -1
  12. package/dist/cli/app.js +155 -2028
  13. package/dist/cli/app.js.map +1 -1
  14. package/dist/cli/commands/browse.d.ts +4 -0
  15. package/dist/cli/commands/browse.d.ts.map +1 -0
  16. package/dist/cli/commands/browse.js +80 -0
  17. package/dist/cli/commands/browse.js.map +1 -0
  18. package/dist/cli/commands/chat.d.ts +4 -0
  19. package/dist/cli/commands/chat.d.ts.map +1 -0
  20. package/dist/cli/commands/chat.js +125 -0
  21. package/dist/cli/commands/chat.js.map +1 -0
  22. package/dist/cli/commands/community.d.ts +12 -0
  23. package/dist/cli/commands/community.d.ts.map +1 -0
  24. package/dist/cli/commands/community.js +453 -0
  25. package/dist/cli/commands/community.js.map +1 -0
  26. package/dist/cli/commands/export.d.ts +3 -0
  27. package/dist/cli/commands/export.d.ts.map +1 -0
  28. package/dist/cli/commands/export.js +108 -0
  29. package/dist/cli/commands/export.js.map +1 -0
  30. package/dist/cli/commands/init.d.ts +4 -0
  31. package/dist/cli/commands/init.d.ts.map +1 -0
  32. package/dist/cli/commands/init.js +299 -0
  33. package/dist/cli/commands/init.js.map +1 -0
  34. package/dist/cli/commands/learn.d.ts +4 -0
  35. package/dist/cli/commands/learn.d.ts.map +1 -0
  36. package/dist/cli/commands/learn.js +62 -0
  37. package/dist/cli/commands/learn.js.map +1 -0
  38. package/dist/cli/commands/marketplace.d.ts +9 -0
  39. package/dist/cli/commands/marketplace.d.ts.map +1 -0
  40. package/dist/cli/commands/marketplace.js +321 -0
  41. package/dist/cli/commands/marketplace.js.map +1 -0
  42. package/dist/cli/commands/notify.d.ts +3 -0
  43. package/dist/cli/commands/notify.d.ts.map +1 -0
  44. package/dist/cli/commands/notify.js +59 -0
  45. package/dist/cli/commands/notify.js.map +1 -0
  46. package/dist/cli/commands/operations.d.ts +16 -0
  47. package/dist/cli/commands/operations.d.ts.map +1 -0
  48. package/dist/cli/commands/operations.js +1006 -0
  49. package/dist/cli/commands/operations.js.map +1 -0
  50. package/dist/cli/commands/ping.d.ts +3 -0
  51. package/dist/cli/commands/ping.d.ts.map +1 -0
  52. package/dist/cli/commands/ping.js +56 -0
  53. package/dist/cli/commands/ping.js.map +1 -0
  54. package/dist/cli/commands/today.d.ts +3 -0
  55. package/dist/cli/commands/today.d.ts.map +1 -0
  56. package/dist/cli/commands/today.js +142 -0
  57. package/dist/cli/commands/today.js.map +1 -0
  58. package/dist/cli/commands/types.d.ts +5 -0
  59. package/dist/cli/commands/types.d.ts.map +1 -0
  60. package/dist/cli/commands/types.js +2 -0
  61. package/dist/cli/commands/types.js.map +1 -0
  62. package/dist/cli/commands/watch.d.ts +3 -0
  63. package/dist/cli/commands/watch.d.ts.map +1 -0
  64. package/dist/cli/commands/watch.js +41 -0
  65. package/dist/cli/commands/watch.js.map +1 -0
  66. package/dist/cli/commands/welcome.d.ts +3 -0
  67. package/dist/cli/commands/welcome.d.ts.map +1 -0
  68. package/dist/cli/commands/welcome.js +97 -0
  69. package/dist/cli/commands/welcome.js.map +1 -0
  70. package/dist/cli/commands-meta.d.ts.map +1 -1
  71. package/dist/cli/commands-meta.js +257 -29
  72. package/dist/cli/commands-meta.js.map +1 -1
  73. package/dist/cli/completions-gen.d.ts +2 -0
  74. package/dist/cli/completions-gen.d.ts.map +1 -0
  75. package/dist/cli/completions-gen.js +195 -0
  76. package/dist/cli/completions-gen.js.map +1 -0
  77. package/dist/cli/completions.d.ts.map +1 -1
  78. package/dist/cli/completions.js +42 -5
  79. package/dist/cli/completions.js.map +1 -1
  80. package/dist/cli/flags.d.ts +19 -0
  81. package/dist/cli/flags.d.ts.map +1 -0
  82. package/dist/cli/flags.js +91 -0
  83. package/dist/cli/flags.js.map +1 -0
  84. package/dist/cli/format.d.ts +19 -0
  85. package/dist/cli/format.d.ts.map +1 -0
  86. package/dist/cli/format.js +249 -0
  87. package/dist/cli/format.js.map +1 -0
  88. package/dist/cli/helpers.d.ts +95 -0
  89. package/dist/cli/helpers.d.ts.map +1 -0
  90. package/dist/cli/helpers.js +301 -0
  91. package/dist/cli/helpers.js.map +1 -0
  92. package/dist/cli/menu.d.ts.map +1 -1
  93. package/dist/cli/menu.js +11 -3
  94. package/dist/cli/menu.js.map +1 -1
  95. package/dist/cli/pages/community.d.ts +6 -0
  96. package/dist/cli/pages/community.d.ts.map +1 -1
  97. package/dist/cli/pages/community.js +882 -64
  98. package/dist/cli/pages/community.js.map +1 -1
  99. package/dist/cli/pages/helpers.d.ts +14 -9
  100. package/dist/cli/pages/helpers.d.ts.map +1 -1
  101. package/dist/cli/pages/helpers.js +37 -6
  102. package/dist/cli/pages/helpers.js.map +1 -1
  103. package/dist/cli/pages/home.d.ts +1 -0
  104. package/dist/cli/pages/home.d.ts.map +1 -1
  105. package/dist/cli/pages/home.js +203 -120
  106. package/dist/cli/pages/home.js.map +1 -1
  107. package/dist/cli/pages/marketplace.d.ts +2 -0
  108. package/dist/cli/pages/marketplace.d.ts.map +1 -1
  109. package/dist/cli/pages/marketplace.js +466 -62
  110. package/dist/cli/pages/marketplace.js.map +1 -1
  111. package/dist/cli/pages/news.d.ts +28 -0
  112. package/dist/cli/pages/news.d.ts.map +1 -1
  113. package/dist/cli/pages/news.js +208 -81
  114. package/dist/cli/pages/news.js.map +1 -1
  115. package/dist/cli/pages/settings.d.ts.map +1 -1
  116. package/dist/cli/pages/settings.js +163 -33
  117. package/dist/cli/pages/settings.js.map +1 -1
  118. package/dist/cli/pages/types.d.ts +1 -1
  119. package/dist/cli/pages/types.d.ts.map +1 -1
  120. package/dist/cli/prompter.d.ts.map +1 -1
  121. package/dist/cli/prompter.js +43 -8
  122. package/dist/cli/prompter.js.map +1 -1
  123. package/dist/cli/shell.d.ts +2 -2
  124. package/dist/cli/shell.d.ts.map +1 -1
  125. package/dist/cli/shell.js +305 -18
  126. package/dist/cli/shell.js.map +1 -1
  127. package/dist/cli/tui.d.ts +1 -1
  128. package/dist/cli/tui.d.ts.map +1 -1
  129. package/dist/cli/tui.js +69 -23
  130. package/dist/cli/tui.js.map +1 -1
  131. package/dist/community/client.d.ts +45 -8
  132. package/dist/community/client.d.ts.map +1 -1
  133. package/dist/community/client.js +118 -23
  134. package/dist/community/client.js.map +1 -1
  135. package/dist/community/search.d.ts +25 -0
  136. package/dist/community/search.d.ts.map +1 -0
  137. package/dist/community/search.js +62 -0
  138. package/dist/community/search.js.map +1 -0
  139. package/dist/community/types.d.ts +21 -0
  140. package/dist/community/types.d.ts.map +1 -1
  141. package/dist/community/types.js +1 -1
  142. package/dist/config.d.ts +0 -4
  143. package/dist/config.d.ts.map +1 -1
  144. package/dist/config.js +0 -15
  145. package/dist/config.js.map +1 -1
  146. package/dist/data.d.ts.map +1 -1
  147. package/dist/data.js +142 -68
  148. package/dist/data.js.map +1 -1
  149. package/dist/hubs/cache.d.ts +6 -0
  150. package/dist/hubs/cache.d.ts.map +1 -0
  151. package/dist/hubs/cache.js +46 -0
  152. package/dist/hubs/cache.js.map +1 -0
  153. package/dist/hubs/enrichment.d.ts +43 -0
  154. package/dist/hubs/enrichment.d.ts.map +1 -0
  155. package/dist/hubs/enrichment.js +239 -0
  156. package/dist/hubs/enrichment.js.map +1 -0
  157. package/dist/hubs/github.d.ts +12 -0
  158. package/dist/hubs/github.d.ts.map +1 -0
  159. package/dist/hubs/github.js +54 -0
  160. package/dist/hubs/github.js.map +1 -0
  161. package/dist/hubs/huggingface.d.ts +27 -0
  162. package/dist/hubs/huggingface.d.ts.map +1 -0
  163. package/dist/hubs/huggingface.js +88 -0
  164. package/dist/hubs/huggingface.js.map +1 -0
  165. package/dist/hubs/quality.d.ts +26 -0
  166. package/dist/hubs/quality.d.ts.map +1 -0
  167. package/dist/hubs/quality.js +57 -0
  168. package/dist/hubs/quality.js.map +1 -0
  169. package/dist/hubs/types.d.ts +30 -0
  170. package/dist/hubs/types.d.ts.map +1 -0
  171. package/dist/hubs/types.js +2 -0
  172. package/dist/hubs/types.js.map +1 -0
  173. package/dist/index.d.ts.map +1 -1
  174. package/dist/index.js +84 -0
  175. package/dist/index.js.map +1 -1
  176. package/dist/init.js +2 -2
  177. package/dist/init.js.map +1 -1
  178. package/dist/live.d.ts +10 -0
  179. package/dist/live.d.ts.map +1 -1
  180. package/dist/live.js +24 -0
  181. package/dist/live.js.map +1 -1
  182. package/dist/marketplace.d.ts +16 -3
  183. package/dist/marketplace.d.ts.map +1 -1
  184. package/dist/marketplace.js +174 -7
  185. package/dist/marketplace.js.map +1 -1
  186. package/dist/news/cache.d.ts.map +1 -1
  187. package/dist/news/cache.js +4 -3
  188. package/dist/news/cache.js.map +1 -1
  189. package/dist/news/score.js +1 -1
  190. package/dist/news/sources/arxiv.d.ts.map +1 -1
  191. package/dist/news/sources/arxiv.js +10 -6
  192. package/dist/news/sources/arxiv.js.map +1 -1
  193. package/dist/news/sources/github-trending.d.ts.map +1 -1
  194. package/dist/news/sources/github-trending.js +9 -5
  195. package/dist/news/sources/github-trending.js.map +1 -1
  196. package/dist/news/sources/hn.d.ts.map +1 -1
  197. package/dist/news/sources/hn.js +8 -4
  198. package/dist/news/sources/hn.js.map +1 -1
  199. package/dist/news/sources/reddit.d.ts.map +1 -1
  200. package/dist/news/sources/reddit.js +5 -4
  201. package/dist/news/sources/reddit.js.map +1 -1
  202. package/dist/news/sources/rss.d.ts +10 -11
  203. package/dist/news/sources/rss.d.ts.map +1 -1
  204. package/dist/news/sources/rss.js +11 -99
  205. package/dist/news/sources/rss.js.map +1 -1
  206. package/dist/news/types.d.ts +3 -0
  207. package/dist/news/types.d.ts.map +1 -1
  208. package/dist/news/types.js +15 -6
  209. package/dist/news/types.js.map +1 -1
  210. package/dist/preferences.d.ts.map +1 -1
  211. package/dist/preferences.js +4 -4
  212. package/dist/preferences.js.map +1 -1
  213. package/dist/settings.d.ts.map +1 -1
  214. package/dist/settings.js +14 -20
  215. package/dist/settings.js.map +1 -1
  216. package/dist/state.d.ts +9 -2
  217. package/dist/state.d.ts.map +1 -1
  218. package/dist/state.js +41 -19
  219. package/dist/state.js.map +1 -1
  220. package/dist/types.d.ts +13 -0
  221. package/dist/types.d.ts.map +1 -1
  222. package/dist/ui.d.ts +1 -1
  223. package/dist/ui.js +1 -1
  224. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"prompter.js","sourceRoot":"","sources":["../../src/cli/prompter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prompter.js","sourceRoot":"","sources":["../../src/cli/prompter.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,11 @@
1
+ import type { CliIo } from './flags.js';
1
2
  import { type Styler } from '../ui.js';
2
- import type { CliIo } from './app.js';
3
3
  export type TuiPageId = 'home' | 'marketplace' | 'community' | 'news' | 'settings';
4
4
  export type Dispatch = {
5
5
  kind: 'noop';
6
6
  } | {
7
7
  kind: 'meta';
8
- sub: 'help' | 'quit' | 'exit' | 'clear' | 'transcript' | 'menu' | 'terminal' | 'verbose' | 'quiet' | 'medium' | 'last' | 'again' | 'dry-run';
8
+ sub: 'help' | 'quit' | 'exit' | 'clear' | 'transcript' | 'menu' | 'terminal' | 'verbose' | 'quiet' | 'medium' | 'last' | 'again' | 'dry-run' | 'env' | 'jobs' | 'fg' | 'bg' | 'abc';
9
9
  args?: string;
10
10
  } | {
11
11
  kind: 'tui';
@@ -1 +1 @@
1
- {"version":3,"file":"shell.d.ts","sourceRoot":"","sources":["../../src/cli/shell.ts"],"names":[],"mappings":"AAgBA,OAAO,EAIL,KAAK,MAAM,EACZ,MAAM,UAAU,CAAC;AAKlB,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAOtC,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,aAAa,GAAG,WAAW,GAAG,MAAM,GAAG,UAAU,CAAC;AAEnF,MAAM,MAAM,QAAQ,GAChB;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAChB;IACE,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EACC,MAAM,GACN,MAAM,GACN,MAAM,GACN,OAAO,GACP,YAAY,GACZ,MAAM,GACN,UAAU,GACV,SAAS,GACT,OAAO,GACP,QAAQ,GACR,MAAM,GACN,OAAO,GACP,SAAS,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,GACD;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,IAAI,CAAC,EAAE,SAAS,CAAA;CAAE,GACjC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GAC7B;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC;AA+ClC,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAoBvD;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,GAAG,QAAQ,CAoD7F;AAsHD,wBAAsB,QAAQ,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAylBxE"}
1
+ {"version":3,"file":"shell.d.ts","sourceRoot":"","sources":["../../src/cli/shell.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AASxC,OAAO,EAAiD,KAAK,MAAM,EAAE,MAAM,UAAU,CAAC;AAatF,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,aAAa,GAAG,WAAW,GAAG,MAAM,GAAG,UAAU,CAAC;AAEnF,MAAM,MAAM,QAAQ,GAChB;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAChB;IACE,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EACC,MAAM,GACN,MAAM,GACN,MAAM,GACN,OAAO,GACP,YAAY,GACZ,MAAM,GACN,UAAU,GACV,SAAS,GACT,OAAO,GACP,QAAQ,GACR,MAAM,GACN,OAAO,GACP,SAAS,GACT,KAAK,GACL,MAAM,GACN,IAAI,GACJ,IAAI,GACJ,KAAK,CAAC;IACV,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,GACD;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,IAAI,CAAC,EAAE,SAAS,CAAA;CAAE,GACjC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GAC7B;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC;AAoFlC,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CA0BvD;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,GAAG,QAAQ,CAwE7F;AA0JD,wBAAsB,QAAQ,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CA+vBxE"}
package/dist/cli/shell.js CHANGED
@@ -1,11 +1,12 @@
1
1
  import { execSync, spawn } from 'node:child_process';
2
- import { existsSync, mkdtempSync, readdirSync, statSync, writeFileSync } from 'node:fs';
2
+ import { appendFileSync, existsSync, mkdtempSync, readFileSync, readdirSync, statSync, writeFileSync } from 'node:fs';
3
3
  import { homedir, tmpdir } from 'node:os';
4
4
  import { join, resolve, sep } from 'node:path';
5
5
  import { COMMANDS } from './commands-meta.js';
6
6
  import { runInteractiveMenu } from './menu.js';
7
7
  import { runTui } from './tui.js';
8
- import { AGORA_VERSION, FREE_MODELS } from './app.js';
8
+ import { AGORA_VERSION } from './app.js';
9
+ import { FREE_MODELS } from './commands/chat.js';
9
10
  import { detectAgoraDataDir, loadAgoraState, resolveSavedItems } from '../state.js';
10
11
  import { appendTranscript, loadSessionMeta, readTranscript, recentBashContext, writeSessionMeta } from '../transcript.js';
11
12
  import { gradientText, renderBanner, supportsTrueColor } from '../ui.js';
@@ -15,6 +16,8 @@ import { completeShellLine, ghostFromHistory } from './completions.js';
15
16
  import { getMarketplaceItems } from '../marketplace.js';
16
17
  const SHELL_BUILTINS = new Set(['cd', 'export', 'alias', 'source', 'unset', 'umask', 'exec']);
17
18
  const MAX_BASH_BUFFER = 16 * 1024;
19
+ const SHELL_HISTORY_FILE = 'shell-history.jsonl';
20
+ const SHELL_HISTORY_MAX = 2000;
18
21
  /** Map slash aliases (with leading `/`) to TUI page ids. */
19
22
  const TUI_SLASH_ALIASES = {
20
23
  '/tui': 'default',
@@ -26,6 +29,34 @@ const TUI_SLASH_ALIASES = {
26
29
  '/news': 'news',
27
30
  '/settings': 'settings'
28
31
  };
32
+ const LETTER_SHORTCUTS = {
33
+ '/a': { kind: 'meta', sub: 'again' },
34
+ '/b': { kind: 'bash', cmd: 'agora browse' },
35
+ '/c': { kind: 'tui', page: 'community' },
36
+ '/d': { kind: 'bash', cmd: 'agora config doctor' },
37
+ '/e': { kind: 'meta', sub: 'env' },
38
+ '/f': { kind: 'meta', sub: 'fg' },
39
+ '/g': { kind: 'bash', cmd: 'agora search' },
40
+ '/h': { kind: 'tui', page: 'home' },
41
+ '/i': { kind: 'bash', cmd: 'agora init' },
42
+ '/j': { kind: 'meta', sub: 'jobs' },
43
+ '/k': { kind: 'bash', cmd: 'agora search' },
44
+ '/l': { kind: 'meta', sub: 'last' },
45
+ '/m': { kind: 'tui', page: 'marketplace' },
46
+ '/n': { kind: 'tui', page: 'news' },
47
+ '/o': { kind: 'bash', cmd: 'agora browse' },
48
+ '/p': { kind: 'bash', cmd: 'agora preferences' },
49
+ '/q': { kind: 'meta', sub: 'quit' },
50
+ '/r': { kind: 'bash', cmd: 'agora reviews' },
51
+ '/s': { kind: 'tui', page: 'settings' },
52
+ '/t': { kind: 'meta', sub: 'terminal' },
53
+ '/u': { kind: 'bash', cmd: 'agora use' },
54
+ '/v': { kind: 'meta', sub: 'verbose' },
55
+ '/w': { kind: 'bash', cmd: 'agora watch' },
56
+ '/x': { kind: 'bash', cmd: 'agora export' },
57
+ '/y': { kind: 'bash', cmd: 'agora history' },
58
+ '/z': { kind: 'bash', cmd: 'agora config doctor --fix' }
59
+ };
29
60
  const QUESTION_STARTERS = new Set([
30
61
  'what',
31
62
  'why',
@@ -58,12 +89,20 @@ const QUESTION_STARTERS = new Set([
58
89
  'hey',
59
90
  'thanks'
60
91
  ]);
92
+ const ENV_VAR_RE = /^[A-Za-z_][A-Za-z0-9_]*=/;
93
+ const BACKTICK_RE = /^`[^`]+`/;
61
94
  export function looksLikeQuestion(line) {
62
95
  const trimmed = line.trim();
63
96
  if (!trimmed)
64
97
  return false;
65
98
  if (trimmed.endsWith('?'))
66
99
  return true;
100
+ // Env-prefixed commands (FOO=bar cmd) are always bash, never questions
101
+ if (ENV_VAR_RE.test(trimmed))
102
+ return false;
103
+ // Backtick-prefixed commands are always bash
104
+ if (BACKTICK_RE.test(trimmed))
105
+ return false;
67
106
  const words = trimmed.split(/\s+/);
68
107
  const firstWord = words[0].toLowerCase();
69
108
  if (QUESTION_STARTERS.has(firstWord))
@@ -79,6 +118,8 @@ export function classifyInput(line, isExecutable) {
79
118
  const trimmed = line.trim();
80
119
  if (!trimmed)
81
120
  return { kind: 'noop' };
121
+ if (trimmed === '/abc')
122
+ return { kind: 'meta', sub: 'abc' };
82
123
  if (trimmed === '/help')
83
124
  return { kind: 'meta', sub: 'help' };
84
125
  if (trimmed === '/quit')
@@ -103,6 +144,14 @@ export function classifyInput(line, isExecutable) {
103
144
  return { kind: 'meta', sub: 'last' };
104
145
  if (trimmed === '/again')
105
146
  return { kind: 'meta', sub: 'again' };
147
+ if (trimmed === '/jobs')
148
+ return { kind: 'meta', sub: 'jobs' };
149
+ if (trimmed === '/fg' || trimmed.startsWith('/fg '))
150
+ return { kind: 'meta', sub: 'fg', args: trimmed.slice(4).trim() };
151
+ if (trimmed === '/bg' || trimmed.startsWith('/bg '))
152
+ return { kind: 'meta', sub: 'bg', args: trimmed.slice(4).trim() };
153
+ if (trimmed === '/env' || trimmed.startsWith('/env '))
154
+ return { kind: 'meta', sub: 'env', args: trimmed.slice(5).trim() };
106
155
  if (trimmed.startsWith('/? '))
107
156
  return { kind: 'meta', sub: 'dry-run', args: trimmed.slice(3).trim() };
108
157
  if (trimmed.startsWith('!'))
@@ -116,7 +165,18 @@ export function classifyInput(line, isExecutable) {
116
165
  const target = TUI_SLASH_ALIASES[trimmed];
117
166
  return target === 'default' ? { kind: 'tui' } : { kind: 'tui', page: target };
118
167
  }
119
- // Slash-prefixed inputs that weren't an exact meta or TUI match are
168
+ // Single-letter shortcuts (exact match only, no args).
169
+ const letterDisp = LETTER_SHORTCUTS[trimmed];
170
+ if (letterDisp) {
171
+ if (letterDisp.kind === 'meta') {
172
+ return { kind: 'meta', sub: letterDisp.sub };
173
+ }
174
+ if (letterDisp.kind === 'tui') {
175
+ return { kind: 'tui', page: letterDisp.page };
176
+ }
177
+ return letterDisp;
178
+ }
179
+ // Slash-prefixed inputs that weren't an exact meta, TUI, or letter match are
120
180
  // forwarded to the `agora` CLI: `/agora help`, `/agora search foo`,
121
181
  // `/help tutorials`, `/foo` all become `agora <args>`. Never let
122
182
  // `/anything` fall through to bash — PATH-joining an absolute name like
@@ -244,6 +304,44 @@ function copyToClipboard(text) {
244
304
  // fall back silently
245
305
  }
246
306
  }
307
+ // ── Shell history persistence ────────────────────────────────────────────────
308
+ function getShellHistoryPath(dataDir) {
309
+ return join(dataDir, SHELL_HISTORY_FILE);
310
+ }
311
+ function loadShellHistory(dataDir) {
312
+ const path = getShellHistoryPath(dataDir);
313
+ if (!existsSync(path))
314
+ return [];
315
+ try {
316
+ const raw = readFileSync(path, 'utf8');
317
+ const entries = [];
318
+ for (const line of raw.split('\n').filter(Boolean).reverse()) {
319
+ try {
320
+ const parsed = JSON.parse(line);
321
+ if (parsed.line)
322
+ entries.push(parsed.line);
323
+ }
324
+ catch {
325
+ continue;
326
+ }
327
+ if (entries.length >= SHELL_HISTORY_MAX)
328
+ break;
329
+ }
330
+ return entries;
331
+ }
332
+ catch {
333
+ return [];
334
+ }
335
+ }
336
+ function appendShellHistory(dataDir, line) {
337
+ const path = getShellHistoryPath(dataDir);
338
+ try {
339
+ appendFileSync(path, JSON.stringify({ line, ts: new Date().toISOString() }) + '\n', 'utf8');
340
+ }
341
+ catch {
342
+ // best-effort
343
+ }
344
+ }
247
345
  // ── Main shell loop ─────────────────────────────────────────────────────────
248
346
  export async function runShell(io, style) {
249
347
  const env = io.env ?? {};
@@ -253,7 +351,7 @@ export async function runShell(io, style) {
253
351
  const motto = "Developers' CLI marketplace and community hub - type a command, bash or chat:";
254
352
  const mottoLine = gradientText(motto, { trueColor });
255
353
  const model = FREE_MODELS[0];
256
- const infoLine = style.dim(`v${AGORA_VERSION} · ${model} · /terminal · /help · /menu · /search · /quit`);
354
+ const infoLine = style.dim(`v${AGORA_VERSION} · ${model} · /abc · /help · /menu · /search · /quit`);
257
355
  const slashLine = style.orange('/home · /marketplace · /community · /news · /settings');
258
356
  process.stdout.write(`\n${banner}\n\n${mottoLine}\n\n${infoLine}\n${slashLine}\n\n`);
259
357
  }
@@ -286,6 +384,9 @@ export async function runShell(io, style) {
286
384
  let verbosity = 'medium';
287
385
  let childActive = false;
288
386
  let totalCost = 0;
387
+ const trackedEnv = new Map();
388
+ let jobCounter = 0;
389
+ const jobs = new Map();
289
390
  // Lazy caches for completion ids
290
391
  let cachedMarketplaceIds = null;
291
392
  let cachedSavedIds = null;
@@ -312,6 +413,7 @@ export async function runShell(io, style) {
312
413
  '/comm',
313
414
  '/news',
314
415
  '/settings',
416
+ '/abc',
315
417
  '/help',
316
418
  '/menu',
317
419
  '/transcript',
@@ -323,6 +425,10 @@ export async function runShell(io, style) {
323
425
  '/exit',
324
426
  '/last',
325
427
  '/again',
428
+ '/env',
429
+ '/jobs',
430
+ '/fg',
431
+ '/bg',
326
432
  ...agoraSlashCommands
327
433
  ];
328
434
  // Deduplicate: /news, /home etc may appear in both lists
@@ -348,9 +454,10 @@ export async function runShell(io, style) {
348
454
  },
349
455
  cwd: currentCwd
350
456
  };
351
- // In-memory history for prompter (not persisted transcript covers that)
352
- const history = [];
457
+ // Shell history persisted to disk and loaded on startup
458
+ const history = loadShellHistory(dataDir);
353
459
  const tips = [
460
+ 'type /abc for a quick letter-shortcut reference (/a /b /c ...)',
354
461
  'type /help to see all slash commands',
355
462
  'type /menu to browse the command catalog',
356
463
  'type ?<msg> to force AI chat',
@@ -358,20 +465,39 @@ export async function runShell(io, style) {
358
465
  'type /clear to reset and see the home banner',
359
466
  'type /transcript to see your last 20 commands',
360
467
  'type /last to re-run the last bash command',
468
+ 'type /again to re-send the last chat message',
469
+ 'type /? <agora_cmd> to dry-run an agora command',
361
470
  'type ?how do I use MCP? to ask about the marketplace',
362
471
  'type /verbose for detailed AI responses',
363
472
  'type /quiet for minimal AI responses',
473
+ 'type /env to view tracked env vars, /env FOO=val to set one',
364
474
  'press Tab to auto-complete commands and paths',
365
475
  'press Ctrl-R to reverse-search your history',
366
476
  'press Ctrl-L to clear the screen',
367
477
  'press Esc to dismiss ghost suggestions',
368
478
  'run `agora search --table` for a table view',
369
479
  'run `agora search --sort stars` to sort by stars',
370
- 'run `agora search --sort name --order asc` for alphabetical'
480
+ 'run `agora search --sort name --order asc` for alphabetical',
481
+ 'run `agora completions bash | source /dev/stdin` for bash completions',
482
+ 'run `agora completions zsh > /usr/local/share/zsh/site-functions/_agora` for zsh completions',
483
+ 'run `agora completions fish > ~/.config/fish/completions/agora.fish` for fish completions',
484
+ 'type /home to open the TUI Home page',
485
+ 'type /marketplace to open the TUI Marketplace page',
486
+ 'type /settings to open the TUI Settings page',
487
+ 'run `agora save <id>` to bookmark a package',
488
+ 'run `agora saved` to see your saved items',
489
+ 'run `agora auth login --api-url <url>` to connect the community',
490
+ 'run `agora config doctor` to check your OpenCode config',
491
+ 'type VAR=val command to set env vars in bash',
492
+ 'pipe output with | or redirect with > as normal in bash',
493
+ 'append & to run a command in the background',
494
+ 'type /jobs to see background jobs, /fg to bring one forward',
495
+ 'type /bg to resume a stopped job in the background',
496
+ 'run `agora shell` anywhere to re-enter this interactive mode'
371
497
  ];
372
498
  // Amber chevron when opencode unavailable, accent otherwise
373
- const accentChevron = opencodeAvailable ? style.accent('›') : '\x1b[38;5;214m›\x1b[0m';
374
- // B.3 — static portion of the prompt (no chevron); suffix added dynamically
499
+ const accentChevron = opencodeAvailable ? style.accent('›') : style.orange('');
500
+ // Static portion of the prompt (no chevron); suffix added dynamically
375
501
  function buildPromptBase() {
376
502
  return style.accent('agora') + ' ' + style.dim(shortCwd(currentCwd)) + ' ';
377
503
  }
@@ -382,15 +508,18 @@ export async function runShell(io, style) {
382
508
  }
383
509
  function buildContextLine() {
384
510
  const model = FREE_MODELS[0];
385
- const tip = tips[(meta?.turnCount ?? 0) % tips.length];
386
- return style.dim(`model: ${model} · ${tip}`);
511
+ const turnCount = meta?.turnCount ?? 0;
512
+ const tip = tips[turnCount % tips.length];
513
+ const parts = [`model: ${model}`, `${turnCount} turns`];
514
+ if (totalCost > 0)
515
+ parts.push(`$${totalCost.toFixed(6)}`);
516
+ parts.push(tip);
517
+ return style.dim(parts.join(' · '));
387
518
  }
388
519
  const sigintHandler = () => {
520
+ // SIGINT while idle: prompter handles Ctrl-C bytes directly via raw mode
389
521
  if (childActive)
390
522
  return;
391
- // Ctrl-C while idle: the prompter handles abort; SIGINT from outside is rare
392
- process.stdout.write('\n');
393
- process.exit(0);
394
523
  };
395
524
  process.on('SIGINT', sigintHandler);
396
525
  try {
@@ -417,9 +546,10 @@ export async function runShell(io, style) {
417
546
  const line = result.value;
418
547
  if (!line.trim())
419
548
  continue;
420
- // Add to history
549
+ // Add to history and persist
421
550
  if (history[history.length - 1] !== line) {
422
551
  history.push(line);
552
+ appendShellHistory(dataDir, line);
423
553
  }
424
554
  const dispatch = classifyInput(line, isExecutable);
425
555
  if (dispatch.kind === 'noop')
@@ -432,6 +562,10 @@ export async function runShell(io, style) {
432
562
  printHome();
433
563
  continue;
434
564
  }
565
+ if (dispatch.sub === 'abc') {
566
+ printLetterHelp(style);
567
+ continue;
568
+ }
435
569
  if (dispatch.sub === 'help') {
436
570
  printHelp(style);
437
571
  continue;
@@ -503,6 +637,99 @@ export async function runShell(io, style) {
503
637
  }
504
638
  continue;
505
639
  }
640
+ if (dispatch.sub === 'jobs') {
641
+ if (jobs.size === 0) {
642
+ process.stdout.write(style.dim('No background jobs. Append & to run a command in the background.') + '\n');
643
+ }
644
+ else {
645
+ process.stdout.write(style.accent('Background jobs') + '\n');
646
+ for (const [id, job] of jobs) {
647
+ const status = job.status === 'running' ? style.dim('running') : style.dim('stopped');
648
+ process.stdout.write(` [${id}] ${status} ${job.cmd}\n`);
649
+ }
650
+ }
651
+ continue;
652
+ }
653
+ if (dispatch.sub === 'fg') {
654
+ const arg = dispatch.args || '';
655
+ const targetId = arg ? parseInt(arg, 10) : Math.max(...jobs.keys());
656
+ const job = jobs.get(targetId);
657
+ if (!job) {
658
+ process.stdout.write(style.dim(`Job ${targetId} not found.`) + '\n');
659
+ continue;
660
+ }
661
+ try {
662
+ process.kill(job.pid, 0);
663
+ process.stdout.write(style.dim(`Foreground: ${job.cmd}`) + '\n');
664
+ await new Promise((resolve) => {
665
+ const check = setInterval(() => {
666
+ try {
667
+ process.kill(job.pid, 0);
668
+ }
669
+ catch {
670
+ clearInterval(check);
671
+ jobs.delete(targetId);
672
+ resolve();
673
+ }
674
+ }, 200);
675
+ });
676
+ }
677
+ catch {
678
+ jobs.delete(targetId);
679
+ process.stdout.write(style.dim(`Job ${targetId} has finished.`) + '\n');
680
+ }
681
+ continue;
682
+ }
683
+ if (dispatch.sub === 'bg') {
684
+ const arg = dispatch.args || '';
685
+ const targetId = arg ? parseInt(arg, 10) : Math.max(...jobs.keys());
686
+ const job = jobs.get(targetId);
687
+ if (!job) {
688
+ process.stdout.write(style.dim(`Job ${targetId} not found.`) + '\n');
689
+ continue;
690
+ }
691
+ try {
692
+ process.kill(job.pid, 0);
693
+ job.status = 'running';
694
+ process.stdout.write(style.dim(`[${targetId}] ${job.cmd} (background)`) + '\n');
695
+ }
696
+ catch {
697
+ jobs.delete(targetId);
698
+ process.stdout.write(style.dim(`Job ${targetId} has finished.`) + '\n');
699
+ }
700
+ continue;
701
+ }
702
+ if (dispatch.sub === 'env') {
703
+ const arg = dispatch.args || '';
704
+ if (!arg) {
705
+ if (trackedEnv.size === 0) {
706
+ process.stdout.write(style.dim('No tracked environment variables. Use /env VAR=value to set one.') + '\n');
707
+ }
708
+ else {
709
+ process.stdout.write(style.accent('Tracked environment') + '\n');
710
+ for (const [k, v] of [...trackedEnv.entries()].sort()) {
711
+ process.stdout.write(` ${k}=${v}\n`);
712
+ }
713
+ }
714
+ }
715
+ else if (arg.includes('=')) {
716
+ const eqIdx = arg.indexOf('=');
717
+ const key = arg.slice(0, eqIdx).trim();
718
+ const val = arg.slice(eqIdx + 1).trim();
719
+ trackedEnv.set(key, val);
720
+ process.stdout.write(style.dim(`${key}=${val} (tracked)`) + '\n');
721
+ }
722
+ else {
723
+ const val = trackedEnv.get(arg);
724
+ if (val === undefined) {
725
+ process.stdout.write(style.dim(`${arg} is not tracked.`) + '\n');
726
+ }
727
+ else {
728
+ process.stdout.write(`${arg}=${val}\n`);
729
+ }
730
+ }
731
+ continue;
732
+ }
506
733
  continue;
507
734
  }
508
735
  if (dispatch.kind === 'tui') {
@@ -510,6 +737,46 @@ export async function runShell(io, style) {
510
737
  continue;
511
738
  }
512
739
  if (dispatch.kind === 'bash') {
740
+ // Track env vars from export statements and VAR=val prefix
741
+ const bashLine = dispatch.cmd;
742
+ const exportMatch = bashLine.match(/^export\s+([A-Za-z_][A-Za-z0-9_]*)=(.+)$/);
743
+ if (exportMatch) {
744
+ trackedEnv.set(exportMatch[1], exportMatch[2].trim());
745
+ }
746
+ else {
747
+ const prefixMatch = bashLine.match(/^([A-Za-z_][A-Za-z0-9_]*)=(\S+)\s+/);
748
+ if (prefixMatch) {
749
+ trackedEnv.set(prefixMatch[1], prefixMatch[2].trim());
750
+ }
751
+ }
752
+ // Background job handling
753
+ const bgMatch = bashLine.match(/^(.*?)\s*&$/);
754
+ if (bgMatch) {
755
+ const actualCmd = bgMatch[1].trim();
756
+ if (actualCmd) {
757
+ jobCounter++;
758
+ const jobId = jobCounter;
759
+ const child = spawn(actualCmd, {
760
+ shell: true,
761
+ cwd: currentCwd,
762
+ env: env,
763
+ stdio: ['ignore', 'pipe', 'pipe']
764
+ });
765
+ jobs.set(jobId, { pid: child.pid ?? 0, cmd: actualCmd, status: 'running' });
766
+ process.stdout.write(style.dim(`[${jobId}] ${actualCmd} (background, pid ${child.pid ?? '?'})`) + '\n');
767
+ child.stdout?.on('data', (chunk) => {
768
+ const text = chunk.toString();
769
+ const lines = text.split('\n').filter(Boolean);
770
+ for (const l of lines)
771
+ process.stdout.write(style.dim(`[${jobId}] ${l.trimRight()} |> `));
772
+ });
773
+ child.on('close', (code) => {
774
+ jobs.delete(jobId);
775
+ process.stdout.write(style.dim(`[${jobId}] finished (exit ${code ?? 0})`) + '\n');
776
+ });
777
+ continue;
778
+ }
779
+ }
513
780
  await runBash(dispatch.cmd);
514
781
  continue;
515
782
  }
@@ -615,7 +882,7 @@ export async function runShell(io, style) {
615
882
  childActive = false;
616
883
  if (!done)
617
884
  childExitCode = 1;
618
- // B.4 — show non-zero exit code
885
+ // Show non-zero exit code
619
886
  if (childExitCode !== 0) {
620
887
  process.stdout.write(style.dim(`· exit ${childExitCode}`) + '\n');
621
888
  }
@@ -659,7 +926,7 @@ export async function runShell(io, style) {
659
926
  };
660
927
  process.on('SIGINT', abortChat);
661
928
  childActive = true;
662
- // B.4 — accumulate last 4 KB of stderr for failure diagnosis
929
+ // Accumulate last 4 KB of stderr for failure diagnosis
663
930
  let errBuffer = '';
664
931
  let chatExitCode = 0;
665
932
  let spawnError = null;
@@ -692,7 +959,7 @@ export async function runShell(io, style) {
692
959
  childActive = false;
693
960
  renderer.finalize();
694
961
  totalCost += renderer.getTotalCost();
695
- // B.4 — detect and report chat failures
962
+ // Detect and report chat failures
696
963
  const chatFailed = spawnError !== null || (chatExitCode !== 0 && !renderer.hasReceivedText());
697
964
  if (chatFailed) {
698
965
  let reason;
@@ -777,6 +1044,22 @@ export async function runShell(io, style) {
777
1044
  // s or other: skip silently
778
1045
  }
779
1046
  }
1047
+ function printLetterHelp(style) {
1048
+ const lines = [
1049
+ style.accent('Agora Shell — letter shortcuts'),
1050
+ '',
1051
+ ' /a again /b browse /c community /d doctor /e env',
1052
+ ' /f fg /g search /h home /i init /j jobs',
1053
+ ' /k search /l last /m marketplace /n news /o browse',
1054
+ ' /p preferences /q quit /r reviews /s settings /t terminal',
1055
+ ' /u use /v verbose /w watch /x export /y history',
1056
+ ' /z doctor --fix',
1057
+ '',
1058
+ 'Shortcuts are exact matches only (no arguments).',
1059
+ 'Type /help for full command reference, /abc to show this again.'
1060
+ ];
1061
+ process.stdout.write(lines.join('\n') + '\n\n');
1062
+ }
780
1063
  function printHelp(style) {
781
1064
  const lines = [
782
1065
  style.accent('Agora Shell — help'),
@@ -796,6 +1079,10 @@ function printHelp(style) {
796
1079
  ' /last re-run most recent bash command',
797
1080
  ' /again re-send most recent chat message',
798
1081
  ' /? <cmd> dry-run an agora command (e.g. /? install mcp-github)',
1082
+ ' /abc show letter-shortcut reference (/a /b /c ...)',
1083
+ ' /jobs list background jobs',
1084
+ ' /fg [N] bring job N (or last) to foreground',
1085
+ ' /bg [N] resume job N (or last) in background',
799
1086
  '',
800
1087
  style.dim('Verbosity:'),
801
1088
  ' /verbose /medium /quiet',