@@ -148,12 +148,6 @@ describe("createCloudAgents", () => {
148148 expect ( runner . uploadFile ) . toHaveBeenCalled ( ) ;
149149 } ) ;
150150
151- it ( "openclaw agent envVars include OPENROUTER_API_KEY" , ( ) => {
152- const envVars = result . agents . openclaw . envVars ( "sk-or-v1-test" ) ;
153- expect ( envVars . some ( ( v : string ) => v . includes ( "OPENROUTER_API_KEY" ) ) ) . toBe ( true ) ;
154- expect ( envVars . some ( ( v : string ) => v . includes ( "ANTHROPIC_BASE_URL" ) ) ) . toBe ( true ) ;
155- } ) ;
156-
157151 it ( "openclaw agent has tunnel config" , ( ) => {
158152 const openclaw = result . agents . openclaw ;
159153 expect ( openclaw . tunnel ) . toBeDefined ( ) ;
@@ -162,22 +156,6 @@ describe("createCloudAgents", () => {
162156 expect ( url ) . toContain ( "localhost:8080" ) ;
163157 } ) ;
164158
165- it ( "zeroclaw agent envVars include ZEROCLAW_PROVIDER" , ( ) => {
166- const envVars = result . agents . zeroclaw . envVars ( "sk-or-v1-test" ) ;
167- expect ( envVars . some ( ( v : string ) => v . includes ( "ZEROCLAW_PROVIDER=openrouter" ) ) ) . toBe ( true ) ;
168- } ) ;
169-
170- it ( "zeroclaw agent configure calls runServer" , async ( ) => {
171- await result . agents . zeroclaw . configure ?.( "sk-or-v1-test" , undefined , new Set ( ) ) ;
172- expect ( runner . runServer ) . toHaveBeenCalled ( ) ;
173- } ) ;
174-
175- it ( "hermes agent envVars include OPENAI_BASE_URL" , ( ) => {
176- const envVars = result . agents . hermes . envVars ( "sk-or-v1-test" ) ;
177- expect ( envVars . some ( ( v : string ) => v . includes ( "OPENAI_BASE_URL" ) ) ) . toBe ( true ) ;
178- expect ( envVars . some ( ( v : string ) => v . includes ( "HERMES_YOLO_MODE" ) ) ) . toBe ( true ) ;
179- } ) ;
180-
181159 it ( "hermes agent configure removes YOLO mode when not enabled" , async ( ) => {
182160 // Pass empty set (yolo-mode not in enabled steps)
183161 await result . agents . hermes . configure ?.( "sk-test" , undefined , new Set ( ) ) ;
@@ -199,14 +177,60 @@ describe("createCloudAgents", () => {
199177 expect ( runner . runServer ) . not . toHaveBeenCalled ( ) ;
200178 } ) ;
201179
202- it ( "kilocode agent envVars include KILO_PROVIDER_TYPE" , ( ) => {
203- const envVars = result . agents . kilocode . envVars ( "sk-or-v1-test" ) ;
204- expect ( envVars . some ( ( v : string ) => v . includes ( "KILO_PROVIDER_TYPE=openrouter" ) ) ) . toBe ( true ) ;
180+ it ( "agent envVars include provider-specific env vars" , ( ) => {
181+ const cases : Array <
182+ [
183+ string ,
184+ string [ ] ,
185+ ]
186+ > = [
187+ [
188+ "openclaw" ,
189+ [
190+ "OPENROUTER_API_KEY" ,
191+ "ANTHROPIC_BASE_URL" ,
192+ ] ,
193+ ] ,
194+ [
195+ "zeroclaw" ,
196+ [
197+ "ZEROCLAW_PROVIDER=openrouter" ,
198+ ] ,
199+ ] ,
200+ [
201+ "hermes" ,
202+ [
203+ "OPENAI_BASE_URL" ,
204+ "HERMES_YOLO_MODE" ,
205+ ] ,
206+ ] ,
207+ [
208+ "kilocode" ,
209+ [
210+ "KILO_PROVIDER_TYPE=openrouter" ,
211+ ] ,
212+ ] ,
213+ [
214+ "opencode" ,
215+ [
216+ "OPENROUTER_API_KEY" ,
217+ ] ,
218+ ] ,
219+ ] ;
220+ for ( const [ agent , expectedVars ] of cases ) {
221+ const envVars = result . agents [ agent ] . envVars ( "sk-or-v1-test" ) ;
222+ for ( const expected of expectedVars ) {
223+ expect (
224+ envVars . some ( ( v : string ) => v . includes ( expected ) ) ,
225+ `${ agent } envVars should include ${ expected } ` ,
226+ ) . toBe ( true ) ;
227+ }
228+ }
205229 } ) ;
206230
207- it ( "opencode agent envVars include OPENROUTER_API_KEY" , ( ) => {
208- const envVars = result . agents . opencode . envVars ( "sk-or-v1-test" ) ;
209- expect ( envVars . some ( ( v : string ) => v . includes ( "OPENROUTER_API_KEY" ) ) ) . toBe ( true ) ;
231+ it ( "zeroclaw agent configure calls runServer" , async ( ) => {
232+ await result . agents . zeroclaw . configure ?. ( "sk-or-v1-test" , undefined , new Set ( ) ) ;
233+ expect ( runner . runServer ) . toHaveBeenCalled ( ) ;
210234 } ) ;
211235
212236 it ( "all agents have launchCmd returning non-empty string" , ( ) => {
0 commit comments