opencode-agora 0.2.2 → 0.4.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 (175) hide show
  1. package/README.md +217 -52
  2. package/dist/cli/app.d.ts +3 -0
  3. package/dist/cli/app.d.ts.map +1 -1
  4. package/dist/cli/app.js +1202 -227
  5. package/dist/cli/app.js.map +1 -1
  6. package/dist/cli/chat-renderer.d.ts +31 -0
  7. package/dist/cli/chat-renderer.d.ts.map +1 -0
  8. package/dist/cli/chat-renderer.js +275 -0
  9. package/dist/cli/chat-renderer.js.map +1 -0
  10. package/dist/cli/commands-meta.d.ts +21 -0
  11. package/dist/cli/commands-meta.d.ts.map +1 -0
  12. package/dist/cli/commands-meta.js +600 -0
  13. package/dist/cli/commands-meta.js.map +1 -0
  14. package/dist/cli/completions.d.ts +18 -0
  15. package/dist/cli/completions.d.ts.map +1 -0
  16. package/dist/cli/completions.js +190 -0
  17. package/dist/cli/completions.js.map +1 -0
  18. package/dist/cli/mcp-server.d.ts +4 -0
  19. package/dist/cli/mcp-server.d.ts.map +1 -0
  20. package/dist/cli/mcp-server.js +277 -0
  21. package/dist/cli/mcp-server.js.map +1 -0
  22. package/dist/cli/menu.d.ts +7 -0
  23. package/dist/cli/menu.d.ts.map +1 -0
  24. package/dist/cli/menu.js +164 -0
  25. package/dist/cli/menu.js.map +1 -0
  26. package/dist/cli/pages/community.d.ts +3 -0
  27. package/dist/cli/pages/community.d.ts.map +1 -0
  28. package/dist/cli/pages/community.js +276 -0
  29. package/dist/cli/pages/community.js.map +1 -0
  30. package/dist/cli/pages/helpers.d.ts +32 -0
  31. package/dist/cli/pages/helpers.d.ts.map +1 -0
  32. package/dist/cli/pages/helpers.js +67 -0
  33. package/dist/cli/pages/helpers.js.map +1 -0
  34. package/dist/cli/pages/home.d.ts +3 -0
  35. package/dist/cli/pages/home.d.ts.map +1 -0
  36. package/dist/cli/pages/home.js +148 -0
  37. package/dist/cli/pages/home.js.map +1 -0
  38. package/dist/cli/pages/marketplace.d.ts +3 -0
  39. package/dist/cli/pages/marketplace.d.ts.map +1 -0
  40. package/dist/cli/pages/marketplace.js +179 -0
  41. package/dist/cli/pages/marketplace.js.map +1 -0
  42. package/dist/cli/pages/news.d.ts +3 -0
  43. package/dist/cli/pages/news.d.ts.map +1 -0
  44. package/dist/cli/pages/news.js +561 -0
  45. package/dist/cli/pages/news.js.map +1 -0
  46. package/dist/cli/pages/settings.d.ts +3 -0
  47. package/dist/cli/pages/settings.d.ts.map +1 -0
  48. package/dist/cli/pages/settings.js +166 -0
  49. package/dist/cli/pages/settings.js.map +1 -0
  50. package/dist/cli/pages/types.d.ts +67 -0
  51. package/dist/cli/pages/types.d.ts.map +1 -0
  52. package/dist/cli/pages/types.js +2 -0
  53. package/dist/cli/pages/types.js.map +1 -0
  54. package/dist/cli/prompter.d.ts +135 -0
  55. package/dist/cli/prompter.d.ts.map +1 -0
  56. package/dist/cli/prompter.js +675 -0
  57. package/dist/cli/prompter.js.map +1 -0
  58. package/dist/cli/shell.d.ts +23 -0
  59. package/dist/cli/shell.d.ts.map +1 -0
  60. package/dist/cli/shell.js +819 -0
  61. package/dist/cli/shell.js.map +1 -0
  62. package/dist/cli/tui.d.ts +7 -0
  63. package/dist/cli/tui.d.ts.map +1 -0
  64. package/dist/cli/tui.js +373 -0
  65. package/dist/cli/tui.js.map +1 -0
  66. package/dist/cli.js +1 -1
  67. package/dist/cli.js.map +1 -1
  68. package/dist/commands.d.ts +14 -0
  69. package/dist/commands.d.ts.map +1 -0
  70. package/dist/commands.js +28 -0
  71. package/dist/commands.js.map +1 -0
  72. package/dist/community/client.d.ts +47 -0
  73. package/dist/community/client.d.ts.map +1 -0
  74. package/dist/community/client.js +245 -0
  75. package/dist/community/client.js.map +1 -0
  76. package/dist/community/types.d.ts +50 -0
  77. package/dist/community/types.d.ts.map +1 -0
  78. package/dist/community/types.js +11 -0
  79. package/dist/community/types.js.map +1 -0
  80. package/dist/config-files.d.ts.map +1 -1
  81. package/dist/config-files.js +11 -8
  82. package/dist/config-files.js.map +1 -1
  83. package/dist/config.d.ts +8 -8
  84. package/dist/config.d.ts.map +1 -1
  85. package/dist/config.js +16 -27
  86. package/dist/config.js.map +1 -1
  87. package/dist/data.d.ts +1 -1
  88. package/dist/data.d.ts.map +1 -1
  89. package/dist/data.js +1013 -545
  90. package/dist/data.js.map +1 -1
  91. package/dist/format.d.ts +5 -39
  92. package/dist/format.d.ts.map +1 -1
  93. package/dist/format.js +5 -118
  94. package/dist/format.js.map +1 -1
  95. package/dist/history.d.ts +13 -0
  96. package/dist/history.d.ts.map +1 -0
  97. package/dist/history.js +37 -0
  98. package/dist/history.js.map +1 -0
  99. package/dist/index.d.ts.map +1 -1
  100. package/dist/index.js +151 -236
  101. package/dist/index.js.map +1 -1
  102. package/dist/init.d.ts +4 -1
  103. package/dist/init.d.ts.map +1 -1
  104. package/dist/init.js +103 -51
  105. package/dist/init.js.map +1 -1
  106. package/dist/live.d.ts +4 -0
  107. package/dist/live.d.ts.map +1 -1
  108. package/dist/live.js +87 -19
  109. package/dist/live.js.map +1 -1
  110. package/dist/marketplace.d.ts +9 -0
  111. package/dist/marketplace.d.ts.map +1 -1
  112. package/dist/marketplace.js +128 -33
  113. package/dist/marketplace.js.map +1 -1
  114. package/dist/news/cache.d.ts +13 -0
  115. package/dist/news/cache.d.ts.map +1 -0
  116. package/dist/news/cache.js +65 -0
  117. package/dist/news/cache.js.map +1 -0
  118. package/dist/news/score.d.ts +4 -0
  119. package/dist/news/score.d.ts.map +1 -0
  120. package/dist/news/score.js +43 -0
  121. package/dist/news/score.js.map +1 -0
  122. package/dist/news/sources/arxiv.d.ts +9 -0
  123. package/dist/news/sources/arxiv.d.ts.map +1 -0
  124. package/dist/news/sources/arxiv.js +103 -0
  125. package/dist/news/sources/arxiv.js.map +1 -0
  126. package/dist/news/sources/github-trending.d.ts +9 -0
  127. package/dist/news/sources/github-trending.d.ts.map +1 -0
  128. package/dist/news/sources/github-trending.js +93 -0
  129. package/dist/news/sources/github-trending.js.map +1 -0
  130. package/dist/news/sources/hn.d.ts +9 -0
  131. package/dist/news/sources/hn.d.ts.map +1 -0
  132. package/dist/news/sources/hn.js +53 -0
  133. package/dist/news/sources/hn.js.map +1 -0
  134. package/dist/news/sources/reddit.d.ts +9 -0
  135. package/dist/news/sources/reddit.d.ts.map +1 -0
  136. package/dist/news/sources/reddit.js +68 -0
  137. package/dist/news/sources/reddit.js.map +1 -0
  138. package/dist/news/sources/rss.d.ts +14 -0
  139. package/dist/news/sources/rss.d.ts.map +1 -0
  140. package/dist/news/sources/rss.js +102 -0
  141. package/dist/news/sources/rss.js.map +1 -0
  142. package/dist/news/types.d.ts +39 -0
  143. package/dist/news/types.d.ts.map +1 -0
  144. package/dist/news/types.js +47 -0
  145. package/dist/news/types.js.map +1 -0
  146. package/dist/preferences.d.ts +14 -0
  147. package/dist/preferences.d.ts.map +1 -0
  148. package/dist/preferences.js +31 -0
  149. package/dist/preferences.js.map +1 -0
  150. package/dist/settings.d.ts +26 -0
  151. package/dist/settings.d.ts.map +1 -0
  152. package/dist/settings.js +257 -0
  153. package/dist/settings.js.map +1 -0
  154. package/dist/state.d.ts.map +1 -1
  155. package/dist/state.js +7 -6
  156. package/dist/state.js.map +1 -1
  157. package/dist/transcript.d.ts +28 -0
  158. package/dist/transcript.d.ts.map +1 -0
  159. package/dist/transcript.js +79 -0
  160. package/dist/transcript.js.map +1 -0
  161. package/dist/types.d.ts +6 -1
  162. package/dist/types.d.ts.map +1 -1
  163. package/dist/ui.d.ts +157 -0
  164. package/dist/ui.d.ts.map +1 -0
  165. package/dist/ui.js +296 -0
  166. package/dist/ui.js.map +1 -0
  167. package/package.json +21 -10
  168. package/dist/api.d.ts +0 -69
  169. package/dist/api.d.ts.map +0 -1
  170. package/dist/api.js +0 -109
  171. package/dist/api.js.map +0 -1
  172. package/dist/logger.d.ts +0 -20
  173. package/dist/logger.d.ts.map +0 -1
  174. package/dist/logger.js +0 -59
  175. package/dist/logger.js.map +0 -1
package/dist/init.js CHANGED
@@ -1,47 +1,46 @@
1
1
  import { existsSync, readFileSync } from 'node:fs';
2
2
  import { join } from 'node:path';
3
- import { execSync } from 'node:child_process';
3
+ import { execFileSync } from 'node:child_process';
4
4
  import { writeOpenCodeConfig } from './config-files.js';
5
5
  import { samplePackages } from './data.js';
6
6
  const CATEGORY_SERVERS = {
7
- node: ['mcp-filesystem', 'mcp-github', 'mcp-git', 'mcp-npm-info', 'mcp-sequential-thinking'],
8
- python: ['mcp-filesystem', 'mcp-github', 'mcp-git', 'mcp-python-repl', 'mcp-sequential-thinking'],
9
- rust: ['mcp-filesystem', 'mcp-github', 'mcp-git', 'mcp-sequential-thinking'],
10
- go: ['mcp-filesystem', 'mcp-github', 'mcp-git', 'mcp-sequential-thinking'],
11
- ruby: ['mcp-filesystem', 'mcp-github', 'mcp-git', 'mcp-sequential-thinking'],
12
- java: ['mcp-filesystem', 'mcp-github', 'mcp-git', 'mcp-sequential-thinking'],
7
+ node: ['mcp-filesystem', 'mcp-github', 'mcp-context7', 'mcp-sequential-thinking'],
8
+ python: ['mcp-filesystem', 'mcp-github', 'mcp-context7', 'mcp-sequential-thinking'],
9
+ rust: ['mcp-filesystem', 'mcp-github', 'mcp-sequential-thinking'],
10
+ go: ['mcp-filesystem', 'mcp-github', 'mcp-sequential-thinking'],
11
+ ruby: ['mcp-filesystem', 'mcp-github', 'mcp-sequential-thinking'],
12
+ java: ['mcp-filesystem', 'mcp-github', 'mcp-sequential-thinking'],
13
+ unknown: ['mcp-filesystem', 'mcp-github', 'mcp-sequential-thinking']
13
14
  };
14
15
  const FRAMEWORK_SERVERS = {
15
- react: ['mcp-shadcn', 'mcp-tailwind', 'mcp-figma'],
16
- nextjs: ['mcp-shadcn', 'mcp-tailwind', 'mcp-figma', 'mcp-supabase'],
17
- vue: ['mcp-tailwind', 'mcp-figma'],
16
+ react: ['mcp-figma', 'mcp-magic', 'mcp-context7'],
17
+ nextjs: ['mcp-figma', 'mcp-magic', 'mcp-context7', 'mcp-supabase'],
18
+ vue: ['mcp-figma', 'mcp-context7'],
18
19
  express: ['mcp-postgres', 'mcp-redis'],
19
- django: ['mcp-postgres', 'mcp-python-repl'],
20
- flask: ['mcp-postgres', 'mcp-python-repl'],
20
+ django: ['mcp-postgres'],
21
+ flask: ['mcp-postgres'],
21
22
  rails: ['mcp-postgres', 'mcp-redis'],
22
- spring: ['mcp-postgres', 'mcp-redis', 'mcp-mysql'],
23
+ spring: ['mcp-postgres']
23
24
  };
24
25
  export function scanProject(dir) {
25
26
  const files = listFiles(dir);
26
27
  const deps = readDependencies(dir);
27
28
  let type = 'unknown';
28
29
  const frameworks = [];
29
- let hasDocker = false;
30
- let hasCI = false;
31
- let hasTests = false;
32
- let hasDatabase = false;
33
30
  if (files.has('package.json')) {
34
31
  type = 'node';
35
32
  if (deps.includes('react') || deps.includes('next'))
36
33
  frameworks.push('react');
37
- if (deps.includes('next') || deps.includes('next/dist'))
34
+ if (deps.includes('next'))
38
35
  frameworks.push('nextjs');
39
36
  if (deps.includes('vue'))
40
37
  frameworks.push('vue');
41
38
  if (deps.includes('express'))
42
39
  frameworks.push('express');
43
40
  }
44
- else if (files.has('pyproject.toml') || files.has('setup.py') || files.has('requirements.txt')) {
41
+ else if (files.has('pyproject.toml') ||
42
+ files.has('setup.py') ||
43
+ files.has('requirements.txt')) {
45
44
  type = 'python';
46
45
  if (deps.includes('django'))
47
46
  frameworks.push('django');
@@ -64,10 +63,10 @@ export function scanProject(dir) {
64
63
  if (deps.includes('spring'))
65
64
  frameworks.push('spring');
66
65
  }
67
- hasDocker = files.has('Dockerfile') || files.has('docker-compose.yml') || files.has('.dockerignore');
68
- hasCI = files.has('.github/workflows') || files.has('.gitlab-ci.yml') || files.has('Jenkinsfile');
69
- hasTests = files.has('test') || files.has('tests') || files.has('__tests__') || files.has('spec');
70
- hasDatabase = deps.some((d) => ['postgres', 'pg', 'mysql', 'sqlite', 'mongodb', 'redis'].includes(d));
66
+ const hasDocker = files.has('Dockerfile') || files.has('docker-compose.yml') || files.has('.dockerignore');
67
+ const hasCI = files.has('.github/workflows') || files.has('.gitlab-ci.yml') || files.has('Jenkinsfile');
68
+ const hasTests = files.has('test') || files.has('tests') || files.has('__tests__') || files.has('spec');
69
+ const hasDatabase = deps.some((d) => ['postgres', 'pg', 'mysql', 'sqlite', 'mongodb', 'redis'].includes(d));
71
70
  return { type, frameworks, hasDocker, hasCI, hasTests, hasDatabase, dependencies: deps };
72
71
  }
73
72
  export function generateInitPlan(scan) {
@@ -86,30 +85,27 @@ export function generateInitPlan(scan) {
86
85
  if (scan.dependencies.includes('pg') || scan.dependencies.includes('postgres')) {
87
86
  serverIds.add('mcp-postgres');
88
87
  }
89
- if (scan.dependencies.includes('mysql'))
90
- serverIds.add('mcp-mysql');
91
- if (scan.dependencies.includes('sqlite') || scan.dependencies.includes('better-sqlite3')) {
92
- serverIds.add('mcp-sqlite');
93
- }
94
88
  if (scan.dependencies.includes('mongodb') || scan.dependencies.includes('mongoose')) {
95
89
  serverIds.add('mcp-mongodb');
96
90
  }
97
91
  if (scan.dependencies.includes('redis') || scan.dependencies.includes('ioredis')) {
98
92
  serverIds.add('mcp-redis');
99
93
  }
94
+ if (scan.dependencies.includes('elasticsearch') ||
95
+ scan.dependencies.includes('@elastic/elasticsearch')) {
96
+ serverIds.add('mcp-elasticsearch');
97
+ }
100
98
  }
101
- if (scan.hasDocker)
102
- serverIds.add('mcp-docker');
103
99
  workflowIds.add('wf-code-review-arch');
104
100
  if (scan.hasTests)
105
101
  workflowIds.add('wf-tdd-cycle');
106
102
  if (scan.type === 'node')
107
- notes.push('Node.js project detected — added npm info, filesystem, and GitHub MCP servers.');
103
+ notes.push('Node.js project detected — added filesystem, GitHub, and docs MCP servers.');
108
104
  const notesList = [
109
105
  scan.hasTests ? 'Tests detected — TDD workflow recommended.' : '',
110
- scan.hasDocker ? 'Docker detected — added Docker MCP server.' : '',
106
+ scan.hasDocker ? 'Docker detected — containerized project.' : '',
111
107
  scan.hasDatabase ? 'Database dependencies detected — added relevant database MCP servers.' : '',
112
- scan.frameworks.length > 0 ? `Framework(s) detected: ${scan.frameworks.join(', ')}.` : '',
108
+ scan.frameworks.length > 0 ? `Framework(s) detected: ${scan.frameworks.join(', ')}.` : ''
113
109
  ].filter(Boolean);
114
110
  const servers = resolveServers(Array.from(serverIds));
115
111
  for (const server of servers) {
@@ -117,13 +113,13 @@ export function generateInitPlan(scan) {
117
113
  commands.push(`npm install -g ${server.npmPackage}`);
118
114
  }
119
115
  }
120
- const mcpServers = {};
116
+ const mcp = {};
121
117
  for (const server of servers) {
122
118
  if (server.npmPackage) {
123
- mcpServers[server.id] = {
124
- command: 'npx',
125
- args: [server.npmPackage],
126
- env: {},
119
+ mcp[server.id] = {
120
+ type: 'local',
121
+ command: ['npx', server.npmPackage],
122
+ enabled: true
127
123
  };
128
124
  }
129
125
  }
@@ -131,39 +127,56 @@ export function generateInitPlan(scan) {
131
127
  return {
132
128
  config: {
133
129
  $schema: 'https://opencode.ai/config.json',
134
- mcpServers,
135
- plugins: ['opencode-agora'],
130
+ mcp,
131
+ plugin: ['opencode-agora']
136
132
  },
137
- servers: Array.from(serverIds),
133
+ servers: servers.map((s) => s.id),
138
134
  workflows: Array.from(workflowIds),
139
135
  commands,
140
- notes,
136
+ notes
141
137
  };
142
138
  }
143
139
  export function applyInitPlan(plan, configPath) {
144
140
  writeOpenCodeConfig(configPath, plan.config);
145
141
  }
146
142
  export function runCommands(commands) {
147
- for (const cmd of commands) {
143
+ const results = [];
144
+ const pattern = /^npm install -g (@?[a-z0-9][\w.-]*(?:\/[\w.-]+)?)$/;
145
+ for (const command of commands) {
146
+ const match = pattern.exec(command);
147
+ if (!match) {
148
+ results.push({ command, ok: false });
149
+ continue;
150
+ }
151
+ const pkg = match[1];
148
152
  try {
149
- execSync(cmd, { stdio: 'pipe', timeout: 120000 });
153
+ execFileSync('npm', ['install', '-g', pkg], { stdio: 'pipe', timeout: 120000 });
154
+ results.push({ command, ok: true });
150
155
  }
151
156
  catch {
152
- // Best effort some packages may already be installed
157
+ results.push({ command, ok: false });
153
158
  }
154
159
  }
160
+ return results;
155
161
  }
156
162
  function listFiles(dir) {
157
163
  const files = new Set();
158
164
  const candidates = [
159
165
  'package.json',
160
- 'pyproject.toml', 'setup.py', 'requirements.txt',
166
+ 'pyproject.toml',
167
+ 'setup.py',
168
+ 'requirements.txt',
161
169
  'Cargo.toml',
162
170
  'go.mod',
163
171
  'Gemfile',
164
- 'pom.xml', 'build.gradle',
165
- 'Dockerfile', 'docker-compose.yml', '.dockerignore',
166
- '.github/workflows', '.gitlab-ci.yml', 'Jenkinsfile',
172
+ 'pom.xml',
173
+ 'build.gradle',
174
+ 'Dockerfile',
175
+ 'docker-compose.yml',
176
+ '.dockerignore',
177
+ '.github/workflows',
178
+ '.gitlab-ci.yml',
179
+ 'Jenkinsfile'
167
180
  ];
168
181
  for (const file of candidates) {
169
182
  if (existsSync(join(dir, file))) {
@@ -178,18 +191,57 @@ function listFiles(dir) {
178
191
  return files;
179
192
  }
180
193
  function readDependencies(dir) {
194
+ const deps = new Set();
181
195
  const pkgPath = join(dir, 'package.json');
182
196
  if (existsSync(pkgPath)) {
183
197
  try {
184
198
  const pkg = JSON.parse(readFileSync(pkgPath, 'utf8'));
185
199
  const all = { ...pkg.dependencies, ...pkg.devDependencies };
186
- return Object.keys(all || {});
200
+ for (const name of Object.keys(all || {}))
201
+ deps.add(name);
202
+ }
203
+ catch {
204
+ // ignore
205
+ }
206
+ }
207
+ const manifestFiles = [
208
+ 'requirements.txt',
209
+ 'pyproject.toml',
210
+ 'Gemfile',
211
+ 'pom.xml',
212
+ 'build.gradle'
213
+ ];
214
+ const keywords = [
215
+ 'django',
216
+ 'flask',
217
+ 'rails',
218
+ 'spring',
219
+ 'postgres',
220
+ 'pg',
221
+ 'mysql',
222
+ 'sqlite',
223
+ 'mongodb',
224
+ 'mongoose',
225
+ 'redis',
226
+ 'ioredis',
227
+ 'elasticsearch'
228
+ ];
229
+ for (const file of manifestFiles) {
230
+ const filePath = join(dir, file);
231
+ if (!existsSync(filePath))
232
+ continue;
233
+ try {
234
+ const content = readFileSync(filePath, 'utf8').toLowerCase();
235
+ for (const keyword of keywords) {
236
+ if (content.includes(keyword))
237
+ deps.add(keyword);
238
+ }
187
239
  }
188
240
  catch {
189
241
  // ignore
190
242
  }
191
243
  }
192
- return [];
244
+ return Array.from(deps);
193
245
  }
194
246
  function resolveServers(ids) {
195
247
  return ids
package/dist/init.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"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"}
package/dist/live.d.ts CHANGED
@@ -13,6 +13,10 @@ export interface SearchSourceOptions extends SourceOptions {
13
13
  query?: string;
14
14
  category?: string;
15
15
  limit?: number;
16
+ sortBy?: 'relevance' | 'stars' | 'installs' | 'name' | 'updated';
17
+ sortOrder?: 'asc' | 'desc';
18
+ page?: number;
19
+ perPage?: number;
16
20
  }
17
21
  export interface FindSourceOptions extends SourceOptions {
18
22
  id: string;
@@ -1 +1 @@
1
- {"version":3,"file":"live.d.ts","sourceRoot":"","sources":["../src/live.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"live.d.ts","sourceRoot":"","sources":["../src/live.ts"],"names":[],"mappings":"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"}
package/dist/live.js CHANGED
@@ -1,7 +1,15 @@
1
1
  import { findMarketplaceItem, findTutorial, getDiscussions, getTutorials, getTrendingItems, normalizeCategory, normalizeTutorialLevel, searchMarketplaceItems } from './marketplace.js';
2
2
  export async function searchMarketplaceSource(options = {}) {
3
3
  if (!shouldUseApi(options)) {
4
- return offline(searchMarketplaceItems(options));
4
+ return offline(searchMarketplaceItems({
5
+ query: options.query,
6
+ category: options.category,
7
+ limit: options.limit,
8
+ sortBy: options.sortBy,
9
+ sortOrder: options.sortOrder,
10
+ page: options.page,
11
+ perPage: options.perPage
12
+ }));
5
13
  }
6
14
  try {
7
15
  const data = await searchApi(options);
@@ -72,6 +80,18 @@ export async function findTutorialSource(options) {
72
80
  }
73
81
  }
74
82
  export async function createDiscussionSource(options, input) {
83
+ if (!shouldUseApi(options)) {
84
+ return offline({
85
+ id: `disc-${Date.now()}`,
86
+ title: input.title,
87
+ content: input.content,
88
+ author: 'you',
89
+ category: normalizeDiscussionCategory(input.category),
90
+ replies: 0,
91
+ stars: 0,
92
+ createdAt: new Date().toISOString().slice(0, 10)
93
+ });
94
+ }
75
95
  const payload = await requestJson(options, '/api/discussions', {
76
96
  method: 'POST',
77
97
  body: JSON.stringify(input)
@@ -83,6 +103,18 @@ export async function createDiscussionSource(options, input) {
83
103
  return api(mapDiscussion(discussion), options);
84
104
  }
85
105
  export async function publishPackageSource(options, input) {
106
+ if (!shouldUseApi(options)) {
107
+ return offline(mapPackage({
108
+ id: input.id || `pkg-${Date.now()}`,
109
+ name: input.name,
110
+ description: input.description,
111
+ version: input.version || '0.0.0',
112
+ category: input.category,
113
+ tags: input.tags,
114
+ repository: input.repository,
115
+ npmPackage: input.npmPackage
116
+ }));
117
+ }
86
118
  const payload = await requestJson(options, '/api/packages', {
87
119
  method: 'POST',
88
120
  body: JSON.stringify({
@@ -96,6 +128,16 @@ export async function publishPackageSource(options, input) {
96
128
  return api(mapPackage(payload.package), options);
97
129
  }
98
130
  export async function publishWorkflowSource(options, input) {
131
+ if (!shouldUseApi(options)) {
132
+ return offline(mapWorkflow({
133
+ id: input.id || `wf-${Date.now()}`,
134
+ name: input.name,
135
+ description: input.description,
136
+ prompt: input.prompt,
137
+ model: input.model,
138
+ tags: input.tags
139
+ }));
140
+ }
99
141
  const payload = await requestJson(options, '/api/workflows', {
100
142
  method: 'POST',
101
143
  body: JSON.stringify(input)
@@ -106,6 +148,17 @@ export async function publishWorkflowSource(options, input) {
106
148
  return api(mapWorkflow(payload.workflow), options);
107
149
  }
108
150
  export async function createReviewSource(options, input) {
151
+ if (!shouldUseApi(options)) {
152
+ return offline({
153
+ id: `rev-${Date.now()}`,
154
+ itemId: input.itemId,
155
+ itemType: input.itemType,
156
+ author: 'you',
157
+ rating: input.rating,
158
+ content: input.content,
159
+ createdAt: new Date().toISOString().slice(0, 10)
160
+ });
161
+ }
109
162
  const payload = await requestJson(options, '/api/reviews', {
110
163
  method: 'POST',
111
164
  body: JSON.stringify(input)
@@ -116,6 +169,9 @@ export async function createReviewSource(options, input) {
116
169
  return api(mapReview(payload.review), options);
117
170
  }
118
171
  export async function listReviewsSource(options, itemId, itemType) {
172
+ if (!shouldUseApi(options)) {
173
+ return offline([]);
174
+ }
119
175
  const params = new URLSearchParams();
120
176
  if (itemId)
121
177
  params.set('item_id', itemId);
@@ -144,13 +200,11 @@ async function searchApi(options) {
144
200
  const params = new URLSearchParams({ q: query, limit: String(limit) });
145
201
  if (isPackageCategory(category))
146
202
  params.set('category', category);
147
- tasks.push(requestJson(options, `/api/packages?${params}`)
148
- .then((payload) => (payload.packages || []).map(mapPackage)));
203
+ tasks.push(requestJson(options, `/api/packages?${params}`).then((payload) => (payload.packages || []).map(mapPackage)));
149
204
  }
150
205
  if (category === 'all' || category === 'workflow') {
151
206
  const params = new URLSearchParams({ q: query, limit: String(limit) });
152
- tasks.push(requestJson(options, `/api/workflows?${params}`)
153
- .then((payload) => (payload.workflows || []).map(mapWorkflow)));
207
+ tasks.push(requestJson(options, `/api/workflows?${params}`).then((payload) => (payload.workflows || []).map(mapWorkflow)));
154
208
  }
155
209
  const results = (await Promise.all(tasks)).flat().sort((a, b) => b.stars - a.stars);
156
210
  return results.slice(0, limit);
@@ -178,7 +232,9 @@ async function trendingApi(options) {
178
232
  const packages = (payload.packages || []).map(mapPackage);
179
233
  const workflows = (payload.workflows || []).map(mapWorkflow);
180
234
  return [...packages, ...workflows]
181
- .filter((item) => category === 'all' || item.category === category || (category === 'package' && item.kind === 'package'))
235
+ .filter((item) => category === 'all' ||
236
+ item.category === category ||
237
+ (category === 'package' && item.kind === 'package'))
182
238
  .sort((a, b) => b.stars - a.stars)
183
239
  .slice(0, limit);
184
240
  }
@@ -187,12 +243,12 @@ async function discussionsApi(options) {
187
243
  const params = category ? `?${new URLSearchParams({ category })}` : '';
188
244
  const payload = await requestJson(options, `/api/discussions${params}`);
189
245
  const query = (options.query || '').trim().toLowerCase();
190
- return (payload.discussions || [])
191
- .map(mapDiscussion)
192
- .filter((discussion) => {
246
+ return (payload.discussions || []).map(mapDiscussion).filter((discussion) => {
193
247
  if (!query)
194
248
  return true;
195
- return `${discussion.title} ${discussion.content} ${discussion.author}`.toLowerCase().includes(query);
249
+ return `${discussion.title} ${discussion.content} ${discussion.author}`
250
+ .toLowerCase()
251
+ .includes(query);
196
252
  });
197
253
  }
198
254
  async function tutorialsApi(options) {
@@ -206,7 +262,9 @@ async function tutorialsApi(options) {
206
262
  .filter((tutorial) => {
207
263
  if (!query)
208
264
  return true;
209
- return `${tutorial.id} ${tutorial.title} ${tutorial.description} ${tutorial.level}`.toLowerCase().includes(query);
265
+ return `${tutorial.id} ${tutorial.title} ${tutorial.description} ${tutorial.level}`
266
+ .toLowerCase()
267
+ .includes(query);
210
268
  })
211
269
  .sort((a, b) => a.title.localeCompare(b.title));
212
270
  return limit ? tutorials.slice(0, limit) : tutorials;
@@ -244,7 +302,7 @@ async function fetchWithTimeout(options, url, init = {}) {
244
302
  }
245
303
  catch (error) {
246
304
  if (controller.signal.aborted) {
247
- throw new Error(`API request timed out after ${timeoutMs}ms`);
305
+ throw new Error(`API request timed out after ${timeoutMs}ms`, { cause: error });
248
306
  }
249
307
  throw error;
250
308
  }
@@ -254,7 +312,7 @@ async function fetchWithTimeout(options, url, init = {}) {
254
312
  }
255
313
  async function responseError(response, path) {
256
314
  try {
257
- const body = await response.json();
315
+ const body = (await response.json());
258
316
  if (body?.error)
259
317
  return `API returned ${response.status} for ${path}: ${body.error}`;
260
318
  }
@@ -328,7 +386,7 @@ function mapTutorial(tutorial) {
328
386
  }
329
387
  function mapReview(value) {
330
388
  const review = value;
331
- const itemType = review.itemType || review.item_type || 'package';
389
+ const itemType = String(review.itemType || review.item_type || 'package');
332
390
  return {
333
391
  id: String(review.id || ''),
334
392
  itemId: String(review.itemId || review.item_id || ''),
@@ -374,7 +432,10 @@ function parseTags(tags) {
374
432
  catch {
375
433
  // Fall back to comma-separated tags.
376
434
  }
377
- return tags.split(',').map((tag) => tag.trim()).filter(Boolean);
435
+ return tags
436
+ .split(',')
437
+ .map((tag) => tag.trim())
438
+ .filter(Boolean);
378
439
  }
379
440
  function parseTutorialSteps(steps) {
380
441
  if (Array.isArray(steps))
@@ -389,10 +450,12 @@ function parseTutorialSteps(steps) {
389
450
  catch {
390
451
  // Fall back to one text step when a backend stores plain text.
391
452
  }
392
- return [{
453
+ return [
454
+ {
393
455
  title: 'Tutorial',
394
456
  content: steps
395
- }];
457
+ }
458
+ ];
396
459
  }
397
460
  function normalizeTutorialStep(step) {
398
461
  if (!step || typeof step !== 'object')
@@ -407,10 +470,15 @@ function normalizeTutorialStep(step) {
407
470
  }
408
471
  function normalizePackageCategory(category) {
409
472
  const normalized = normalizeCategory(category || 'mcp');
410
- return ['mcp', 'prompt', 'workflow', 'skill'].includes(normalized) ? normalized : 'mcp';
473
+ return ['mcp', 'prompt', 'workflow', 'skill'].includes(normalized)
474
+ ? normalized
475
+ : 'mcp';
411
476
  }
412
477
  function normalizeDiscussionCategory(category) {
413
- if (category === 'question' || category === 'idea' || category === 'showcase' || category === 'discussion') {
478
+ if (category === 'question' ||
479
+ category === 'idea' ||
480
+ category === 'showcase' ||
481
+ category === 'discussion') {
414
482
  return category;
415
483
  }
416
484
  return 'discussion';