severally-mcp 2.1.0 → 2.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 (52) hide show
  1. package/CODE_OF_CONDUCT.md +83 -0
  2. package/CONFIG.md +10 -6
  3. package/README.ja.md +146 -69
  4. package/README.md +150 -73
  5. package/bin/severally-mcp.mjs +17 -2
  6. package/config.example.json +26 -0
  7. package/docs/how-it-works.ja.md +4 -2
  8. package/docs/how-it-works.md +5 -3
  9. package/docs/install.ja.md +59 -24
  10. package/docs/install.md +60 -24
  11. package/package.json +16 -4
  12. package/plugins/severally/.claude-plugin/plugin.json +1 -1
  13. package/plugins/severally/.codex-plugin/plugin.json +1 -1
  14. package/plugins/severally/dist/severally-mcp.mjs +29220 -27764
  15. package/plugins/severally/skills/_template/SKILL.md.tmpl +16 -22
  16. package/plugins/severally/skills/_template/reference.md.tmpl +11 -5
  17. package/plugins/severally/skills/antigravity/severally/SKILL.md +16 -22
  18. package/plugins/severally/skills/antigravity/severally/reference.md +11 -5
  19. package/plugins/severally/skills/claude/severally/SKILL.md +16 -22
  20. package/plugins/severally/skills/claude/severally/reference.md +11 -5
  21. package/plugins/severally/skills/codex/severally/SKILL.md +16 -22
  22. package/plugins/severally/skills/codex/severally/reference.md +11 -5
  23. package/plugins/severally/skills/opencode/severally/SKILL.md +16 -22
  24. package/plugins/severally/skills/opencode/severally/reference.md +11 -5
  25. package/scripts/build.mjs +31 -26
  26. package/scripts/doctor.mjs +52 -17
  27. package/scripts/init-config.mjs +8 -6
  28. package/scripts/install.mjs +342 -84
  29. package/scripts/live-check.mjs +52 -19
  30. package/scripts/live-mcp-check.mjs +42 -12
  31. package/scripts/test.mjs +10 -4
  32. package/src/adapters/antigravity-sandbox.mjs +39 -23
  33. package/src/adapters/antigravity.mjs +34 -16
  34. package/src/adapters/claude-code.mjs +73 -21
  35. package/src/adapters/codex.mjs +69 -27
  36. package/src/adapters/opencode-sandbox.mjs +40 -21
  37. package/src/adapters/opencode.mjs +31 -13
  38. package/src/brief.mjs +65 -41
  39. package/src/consultants.mjs +99 -30
  40. package/src/export.mjs +49 -12
  41. package/src/expose-paths.mjs +162 -44
  42. package/src/failures.mjs +23 -13
  43. package/src/jobs.mjs +420 -140
  44. package/src/parse-result.mjs +85 -30
  45. package/src/platform.mjs +5 -7
  46. package/src/policy.mjs +139 -32
  47. package/src/redact.mjs +38 -14
  48. package/src/run.mjs +104 -22
  49. package/src/schema.mjs +76 -22
  50. package/src/server.mjs +176 -166
  51. package/src/status.mjs +132 -0
  52. package/src/store.mjs +164 -19
package/src/failures.mjs CHANGED
@@ -3,27 +3,37 @@
3
3
  // non-delivery cases are classified explicitly.
4
4
 
5
5
  export const FAILURE_KINDS = [
6
- 'timeout', // wall-clock budget exhausted
7
- 'cancelled', // consult_cancel, or server shutdown
8
- 'auth', // not logged in / credentials rejected
9
- 'usage_limit', // account quota or plan limit used up: waiting minutes will not help
10
- 'rate_limited', // a transient refusal (429, overloaded, 5xx): worth one more try
11
- 'model_unavailable',// model name rejected or not accessible
12
- 'invalid_output', // ran, but produced nothing parseable against the schema
13
- 'cli_error', // CLI exited non-zero for another reason
14
- 'spawn_error', // the CLI could not be started at all
15
- 'interrupted', // the severally process running it exited before it finished
6
+ 'timeout', // wall-clock budget exhausted
7
+ 'cancelled', // consult_cancel, or server shutdown
8
+ 'auth', // not logged in / credentials rejected
9
+ 'usage_limit', // account quota or plan limit used up: waiting minutes will not help
10
+ 'rate_limited', // a transient refusal (429, overloaded, 5xx): worth one more try
11
+ 'model_unavailable', // model name rejected or not accessible
12
+ 'invalid_output', // ran, but produced nothing parseable against the schema
13
+ 'cli_error', // CLI exited non-zero for another reason
14
+ 'spawn_error', // the CLI could not be started at all
15
+ 'interrupted', // the severally process running it exited before it finished
16
16
  ];
17
17
 
18
18
  // Order matters: a message naming a used-up quota is usage_limit even when it
19
19
  // also says 429, and only what is left is treated as transient. A message
20
20
  // that fits neither -- Gemini's bare RESOURCE_EXHAUSTED is one -- falls
21
21
  // through to cli_error.
22
+ /** @type {Array<[RegExp, string]>} */
22
23
  const RULES = [
23
- [/\b(usage limit|quota (exceeded|reached|exhausted)|out of credits|reached your .* limit|insufficient_quota|credit balance)\b/i, 'usage_limit'],
24
- [/\b(rate.?limit(ed)?|too many requests|429|overloaded|529|502|503|service unavailable|temporarily unavailable)\b/i, 'rate_limited'],
24
+ [
25
+ /\b(usage limit|quota (exceeded|reached|exhausted)|out of credits|reached your .* limit|insufficient_quota|credit balance)\b/i,
26
+ 'usage_limit',
27
+ ],
28
+ [
29
+ /\b(rate.?limit(ed)?|too many requests|429|overloaded|529|502|503|service unavailable|temporarily unavailable)\b/i,
30
+ 'rate_limited',
31
+ ],
25
32
  [/\b(not logged in|please log in|login required|unauthorized|authentication|invalid api key|expired token|401|403)\b/i, 'auth'],
26
- [/\b(unrecognized_model|model unavailable|model .* (not found|does not exist|unavailable|not recognized)|no access to .*model|it may not exist|variant unavailable|404)\b/i, 'model_unavailable'],
33
+ [
34
+ /\b(unrecognized_model|model unavailable|model .* (not found|does not exist|unavailable|not recognized)|no access to .*model|it may not exist|variant unavailable|404)\b/i,
35
+ 'model_unavailable',
36
+ ],
27
37
  ];
28
38
 
29
39
  export function classifyMessage(text, fallback = 'cli_error') {