@wingman-ai/gateway 0.2.2 → 0.2.4

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 (160) hide show
  1. package/.wingman/agents/README.md +7 -1
  2. package/.wingman/agents/coding/agent.md +299 -201
  3. package/.wingman/agents/coding-v2/agent.md +127 -0
  4. package/.wingman/agents/coding-v2/implementor.md +89 -0
  5. package/.wingman/agents/main/agent.md +4 -0
  6. package/README.md +1 -0
  7. package/dist/agent/config/agentConfig.cjs +31 -17
  8. package/dist/agent/config/agentConfig.d.ts +23 -1
  9. package/dist/agent/config/agentConfig.js +30 -19
  10. package/dist/agent/config/agentLoader.cjs +26 -8
  11. package/dist/agent/config/agentLoader.d.ts +4 -2
  12. package/dist/agent/config/agentLoader.js +26 -8
  13. package/dist/agent/config/modelFactory.cjs +95 -25
  14. package/dist/agent/config/modelFactory.d.ts +13 -1
  15. package/dist/agent/config/modelFactory.js +95 -25
  16. package/dist/agent/config/toolRegistry.cjs +19 -6
  17. package/dist/agent/config/toolRegistry.d.ts +5 -2
  18. package/dist/agent/config/toolRegistry.js +19 -6
  19. package/dist/agent/middleware/hooks/types.cjs +13 -13
  20. package/dist/agent/middleware/hooks/types.d.ts +1 -1
  21. package/dist/agent/middleware/hooks/types.js +14 -14
  22. package/dist/agent/tests/agentConfig.test.cjs +22 -2
  23. package/dist/agent/tests/agentConfig.test.js +22 -2
  24. package/dist/agent/tests/agentLoader.test.cjs +38 -1
  25. package/dist/agent/tests/agentLoader.test.js +38 -1
  26. package/dist/agent/tests/backgroundTerminal.test.cjs +70 -0
  27. package/dist/agent/tests/backgroundTerminal.test.d.ts +1 -0
  28. package/dist/agent/tests/backgroundTerminal.test.js +64 -0
  29. package/dist/agent/tests/commandExecuteTool.test.cjs +29 -0
  30. package/dist/agent/tests/commandExecuteTool.test.d.ts +1 -0
  31. package/dist/agent/tests/commandExecuteTool.test.js +23 -0
  32. package/dist/agent/tests/modelFactory.test.cjs +47 -5
  33. package/dist/agent/tests/modelFactory.test.js +47 -5
  34. package/dist/agent/tests/terminalSessionManager.test.cjs +121 -0
  35. package/dist/agent/tests/terminalSessionManager.test.d.ts +1 -0
  36. package/dist/agent/tests/terminalSessionManager.test.js +115 -0
  37. package/dist/agent/tests/toolRegistry.test.cjs +14 -2
  38. package/dist/agent/tests/toolRegistry.test.js +14 -2
  39. package/dist/agent/tools/background_terminal.cjs +128 -0
  40. package/dist/agent/tools/background_terminal.d.ts +41 -0
  41. package/dist/agent/tools/background_terminal.js +94 -0
  42. package/dist/agent/tools/code_search.cjs +6 -6
  43. package/dist/agent/tools/code_search.d.ts +1 -1
  44. package/dist/agent/tools/code_search.js +7 -7
  45. package/dist/agent/tools/command_execute.cjs +22 -7
  46. package/dist/agent/tools/command_execute.d.ts +3 -2
  47. package/dist/agent/tools/command_execute.js +23 -8
  48. package/dist/agent/tools/git_status.cjs +3 -3
  49. package/dist/agent/tools/git_status.d.ts +1 -1
  50. package/dist/agent/tools/git_status.js +4 -4
  51. package/dist/agent/tools/internet_search.cjs +6 -6
  52. package/dist/agent/tools/internet_search.d.ts +1 -1
  53. package/dist/agent/tools/internet_search.js +7 -7
  54. package/dist/agent/tools/terminal_session_manager.cjs +321 -0
  55. package/dist/agent/tools/terminal_session_manager.d.ts +77 -0
  56. package/dist/agent/tools/terminal_session_manager.js +284 -0
  57. package/dist/agent/tools/think.cjs +4 -4
  58. package/dist/agent/tools/think.d.ts +1 -1
  59. package/dist/agent/tools/think.js +5 -5
  60. package/dist/agent/tools/ui_registry.cjs +13 -13
  61. package/dist/agent/tools/ui_registry.d.ts +4 -4
  62. package/dist/agent/tools/ui_registry.js +14 -14
  63. package/dist/agent/tools/web_crawler.cjs +4 -4
  64. package/dist/agent/tools/web_crawler.d.ts +1 -1
  65. package/dist/agent/tools/web_crawler.js +5 -5
  66. package/dist/agent/utils.cjs +2 -1
  67. package/dist/agent/utils.js +2 -1
  68. package/dist/cli/commands/init.cjs +7 -6
  69. package/dist/cli/commands/init.js +7 -6
  70. package/dist/cli/commands/provider.cjs +17 -3
  71. package/dist/cli/commands/provider.js +17 -3
  72. package/dist/cli/config/loader.cjs +27 -0
  73. package/dist/cli/config/loader.js +27 -0
  74. package/dist/cli/config/schema.cjs +146 -68
  75. package/dist/cli/config/schema.d.ts +89 -1
  76. package/dist/cli/config/schema.js +134 -68
  77. package/dist/cli/core/agentInvoker.cjs +344 -17
  78. package/dist/cli/core/agentInvoker.d.ts +63 -3
  79. package/dist/cli/core/agentInvoker.js +303 -12
  80. package/dist/cli/core/sessionManager.cjs +32 -5
  81. package/dist/cli/core/sessionManager.js +32 -5
  82. package/dist/cli/core/streamParser.cjs +15 -0
  83. package/dist/cli/core/streamParser.js +15 -0
  84. package/dist/cli/index.cjs +6 -5
  85. package/dist/cli/index.js +6 -5
  86. package/dist/cli/types.d.ts +32 -0
  87. package/dist/cli/ui/toolDisplayHelpers.cjs +2 -0
  88. package/dist/cli/ui/toolDisplayHelpers.js +2 -0
  89. package/dist/gateway/hooks/registry.cjs +2 -1
  90. package/dist/gateway/hooks/registry.d.ts +1 -1
  91. package/dist/gateway/hooks/registry.js +2 -1
  92. package/dist/gateway/hooks/types.cjs +11 -11
  93. package/dist/gateway/hooks/types.d.ts +1 -1
  94. package/dist/gateway/hooks/types.js +12 -12
  95. package/dist/gateway/http/agents.cjs +67 -4
  96. package/dist/gateway/http/agents.js +67 -4
  97. package/dist/gateway/http/sessions.cjs +7 -7
  98. package/dist/gateway/http/sessions.js +7 -7
  99. package/dist/gateway/http/types.d.ts +5 -3
  100. package/dist/gateway/http/webhooks.cjs +6 -5
  101. package/dist/gateway/http/webhooks.js +6 -5
  102. package/dist/gateway/server.cjs +198 -41
  103. package/dist/gateway/server.d.ts +9 -1
  104. package/dist/gateway/server.js +198 -41
  105. package/dist/gateway/types.d.ts +1 -0
  106. package/dist/gateway/validation.cjs +39 -39
  107. package/dist/gateway/validation.d.ts +1 -1
  108. package/dist/gateway/validation.js +40 -40
  109. package/dist/providers/codex.cjs +167 -0
  110. package/dist/providers/codex.d.ts +15 -0
  111. package/dist/providers/codex.js +127 -0
  112. package/dist/providers/credentials.cjs +8 -0
  113. package/dist/providers/credentials.js +8 -0
  114. package/dist/providers/registry.cjs +11 -0
  115. package/dist/providers/registry.d.ts +1 -1
  116. package/dist/providers/registry.js +11 -0
  117. package/dist/tests/additionalMessageMiddleware.test.cjs +3 -0
  118. package/dist/tests/additionalMessageMiddleware.test.js +3 -0
  119. package/dist/tests/agentInvokerSummarization.test.cjs +455 -0
  120. package/dist/tests/agentInvokerSummarization.test.d.ts +1 -0
  121. package/dist/tests/agentInvokerSummarization.test.js +449 -0
  122. package/dist/tests/agents-api.test.cjs +45 -5
  123. package/dist/tests/agents-api.test.js +45 -5
  124. package/dist/tests/cli-config-loader.test.cjs +88 -0
  125. package/dist/tests/cli-config-loader.test.js +88 -0
  126. package/dist/tests/cli-init.test.cjs +27 -3
  127. package/dist/tests/cli-init.test.js +27 -3
  128. package/dist/tests/codex-credentials-precedence.test.cjs +94 -0
  129. package/dist/tests/codex-credentials-precedence.test.d.ts +1 -0
  130. package/dist/tests/codex-credentials-precedence.test.js +88 -0
  131. package/dist/tests/codex-provider.test.cjs +210 -0
  132. package/dist/tests/codex-provider.test.d.ts +1 -0
  133. package/dist/tests/codex-provider.test.js +204 -0
  134. package/dist/tests/gateway.test.cjs +115 -8
  135. package/dist/tests/gateway.test.js +115 -8
  136. package/dist/tests/provider-command-codex.test.cjs +57 -0
  137. package/dist/tests/provider-command-codex.test.d.ts +1 -0
  138. package/dist/tests/provider-command-codex.test.js +51 -0
  139. package/dist/tests/sessionStateMessages.test.cjs +38 -0
  140. package/dist/tests/sessionStateMessages.test.js +38 -0
  141. package/dist/tests/toolDisplayHelpers.test.cjs +3 -0
  142. package/dist/tests/toolDisplayHelpers.test.js +3 -0
  143. package/dist/tools/mcp-finance.cjs +48 -48
  144. package/dist/tools/mcp-finance.js +48 -48
  145. package/dist/types/mcp.cjs +15 -15
  146. package/dist/types/mcp.d.ts +1 -1
  147. package/dist/types/mcp.js +16 -16
  148. package/dist/types/voice.cjs +21 -21
  149. package/dist/types/voice.d.ts +1 -1
  150. package/dist/types/voice.js +22 -22
  151. package/dist/webui/assets/index-DVWQluit.css +11 -0
  152. package/dist/webui/assets/index-Dlyzwalc.js +270 -0
  153. package/dist/webui/favicon-32x32.png +0 -0
  154. package/dist/webui/favicon-64x64.png +0 -0
  155. package/dist/webui/favicon.webp +0 -0
  156. package/dist/webui/index.html +4 -2
  157. package/package.json +13 -12
  158. package/.wingman/agents/coding/implementor.md +0 -79
  159. package/dist/webui/assets/index-CPhfGPHc.js +0 -182
  160. package/dist/webui/assets/index-DDsMIOTX.css +0 -11
Binary file
Binary file
Binary file
@@ -2,6 +2,8 @@
2
2
  <html lang="en">
3
3
  <head>
4
4
  <meta charset="UTF-8" />
5
+ <link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png" />
6
+ <link rel="icon" type="image/png" sizes="64x64" href="/favicon-64x64.png" />
5
7
  <meta name="viewport" content="width=device-width, initial-scale=1" />
6
8
  <title>Wingman Gateway</title>
7
9
  <link rel="preconnect" href="https://fonts.googleapis.com" />
@@ -10,8 +12,8 @@
10
12
  href="https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;600&family=Sora:wght@300;400;500;600;700&display=swap"
11
13
  rel="stylesheet"
12
14
  />
13
- <script type="module" crossorigin src="/assets/index-CPhfGPHc.js"></script>
14
- <link rel="stylesheet" crossorigin href="/assets/index-DDsMIOTX.css">
15
+ <script type="module" crossorigin src="/assets/index-Dlyzwalc.js"></script>
16
+ <link rel="stylesheet" crossorigin href="/assets/index-DVWQluit.css">
15
17
  </head>
16
18
  <body>
17
19
  <div id="root"></div>
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@wingman-ai/gateway",
3
3
  "displayName": "Wingman Agent",
4
4
  "description": "Wingman-AI agentic coding assistant that works with Anthropic, OpenAI, Google, xAI and LMStudio.",
5
- "version": "0.2.2",
5
+ "version": "0.2.4",
6
6
  "main": "index.js",
7
7
  "bin": {
8
8
  "wingman": "./bin/wingman"
@@ -83,18 +83,19 @@
83
83
  },
84
84
  "dependencies": {
85
85
  "@clack/prompts": "^0.7.0",
86
- "@langchain/anthropic": "^1.3.13",
87
- "@langchain/community": "^1.1.10",
88
- "@langchain/core": "^1.1.18",
89
- "@langchain/google-genai": "^2.1.14",
90
- "@langchain/langgraph": "1.1.2",
91
- "@langchain/langgraph-checkpoint-sqlite": "^1.0.0",
86
+ "@langchain/anthropic": "^1.3.16",
87
+ "@langchain/community": "^1.1.13",
88
+ "@langchain/core": "^1.1.20",
89
+ "@langchain/google-genai": "^2.1.16",
90
+ "@langchain/langgraph": "1.1.4",
91
+ "@langchain/langgraph-sdk": "^1.6.0",
92
+ "@langchain/langgraph-checkpoint-sqlite": "^1.0.1",
92
93
  "@langchain/mcp-adapters": "^1.1.2",
93
- "@langchain/openai": "^1.2.4",
94
- "@langchain/xai": "^1.3.0",
95
- "@modelcontextprotocol/sdk": "^1.25.3",
94
+ "@langchain/openai": "^1.2.6",
95
+ "@langchain/xai": "^1.3.2",
96
+ "@modelcontextprotocol/sdk": "^1.26.0",
96
97
  "chalk": "^5.6.2",
97
- "deepagents": "^1.6.3",
98
+ "deepagents": "^1.7.4",
98
99
  "discord.js": "^14.22.1",
99
100
  "duck-duck-scrape": "^2.2.7",
100
101
  "highlight.js": "^11.11.1",
@@ -102,7 +103,7 @@
102
103
  "ink-box": "^2.0.0",
103
104
  "ink-spinner": "^5.0.0",
104
105
  "js-yaml": "^4.1.1",
105
- "langchain": "^1.2.10",
106
+ "langchain": "^1.2.19",
106
107
  "multicast-dns": "^7.2.5",
107
108
  "react": "^18.3.1",
108
109
  "react-dom": "^18.3.1",
@@ -1,79 +0,0 @@
1
- You are the focused implementor subagent. Your job is to implement the specific chunk assigned by the lead coding agent.
2
-
3
- # Assignment Contract (Critical)
4
- You should receive a task packet with:
5
- - `chunk_id`
6
- - `goal`
7
- - `scope_paths`
8
- - `out_of_scope`
9
- - `acceptance_criteria`
10
- - `tests`
11
-
12
- If one or more fields are missing:
13
- - Infer missing non-critical fields from context and proceed
14
- - Ask for clarification only when both `goal` and `scope_paths` are missing
15
- - Ask at most once, then stop (do not loop on "no assignment" responses)
16
-
17
- # Scope Discipline (Critical)
18
- - Follow the lead's plan and scope exactly
19
- - Only edit the files you were assigned
20
- - If you need additional files or scope changes, pause and ask the lead
21
- - Avoid overlapping edits with other subagents; surface conflicts immediately
22
-
23
- # Chunk Completion Standard
24
- - Treat each chunk as incomplete until all chunk acceptance criteria are satisfied.
25
- - Do not return early after partial edits if required tests/verification are still pending.
26
- - If verification fails, either fix the issue within scope or return a precise blocker with evidence.
27
- - Never hand back a chunk with vague status like "mostly done" or "ready for next step".
28
- - If blocked by unmet prerequisite work, return `Status: Blocked` and identify the blocking `chunk_id`.
29
-
30
- # Implementation Standards
31
-
32
- ## Code Quality
33
- - Match the existing codebase style exactly
34
- - Use existing patterns found in the project
35
- - Add error handling for edge cases
36
- - Include type annotations where the project uses them
37
-
38
- ## Change Discipline
39
- - Make one logical change at a time
40
- - Test after each significant change
41
- - If a change doesn't work, explain why before trying alternatives
42
- - Don't leave debugging code (console.log, print statements) unless requested
43
-
44
- ## Verification
45
- After implementation:
46
- 1. Run tests requested by the lead
47
- 2. If no tests were specified, propose the most relevant tests
48
- 3. Note any tests you could not run and why
49
- 4. Explicitly map each acceptance criterion to `pass` or `blocked`
50
-
51
- Your responsibilities:
52
- - Implement the assigned chunk precisely and systematically
53
- - Keep changes minimal and within scope
54
- - Match existing code style, patterns, and conventions
55
- - Add appropriate error handling and input validation
56
- - Report results concisely back to the lead
57
-
58
- Tools available:
59
- - **File operations**: readFile, writeFile, editFile, listDirectory (via backend)
60
- - **command_execute**: Run shell commands like tests, builds, linting, etc.
61
-
62
- Workflow:
63
- 1. Read existing code to understand context and patterns
64
- 2. Implement changes following the lead's scope
65
- 3. Ensure code follows existing conventions (imports, formatting, naming)
66
- 4. Run relevant tests or validation commands when appropriate
67
- 5. Summarize what was changed and why, grouped by `chunk_id`
68
-
69
- IMPORTANT:
70
- - Return summaries of changes made, NOT full file contents
71
- - Keep responses under 500 words - be concise
72
- - If you encounter issues or blockers, report them clearly
73
- - Don't add unnecessary features beyond the assigned task
74
- - End with a clear chunk status line: `Status: Done` or `Status: Blocked (<reason>)`
75
-
76
- Example summary format:
77
- "Modified [file]: [brief description of changes]
78
- Ran tests: [test command and result]
79
- Status: [Success/Issues found]"