@uniqbit/mate-core 0.17.0-canary.9 → 0.17.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 (103) hide show
  1. package/package.json +11 -5
  2. package/src/cli/commands/artifact/finish/index.ts +0 -9
  3. package/src/cli/commands/artifact/finish/openspec.ts +2 -2
  4. package/src/cli/commands/artifact/finish/registry.ts +1 -1
  5. package/src/cli/commands/artifact/pending/discovery.ts +1 -1
  6. package/src/cli/commands/artifact/pending/index.ts +0 -16
  7. package/src/cli/commands/cap/graphify.ts +1 -1
  8. package/src/cli/commands/cap/index-cmd.ts +1 -1
  9. package/src/cli/commands/cap/tokensave.ts +4 -3
  10. package/src/cli/commands/companion/companion.ts +4 -0
  11. package/src/cli/commands/companion/hub.ts +2 -1
  12. package/src/cli/commands/companion/list.ts +2 -1
  13. package/src/cli/commands/companion/prepare.ts +2 -2
  14. package/src/cli/commands/companion/update.ts +334 -0
  15. package/src/cli/commands/doctor.ts +2 -1
  16. package/src/cli/commands/install.ts +59 -5
  17. package/src/cli/commands/launch/shared.ts +2 -1
  18. package/src/cli/commands/plugin/plugin.ts +4 -0
  19. package/src/cli/commands/plugin/verify.ts +25 -0
  20. package/src/cli/commands/report/highlight.ts +1 -4
  21. package/src/cli/commands/report/renderer.ts +0 -2
  22. package/src/cli/commands/studio/access.ts +201 -0
  23. package/src/cli/commands/studio/index.ts +207 -26
  24. package/src/cli/commands/studio/openspec-cli.ts +1 -1
  25. package/src/cli/commands/studio/selection.ts +127 -11
  26. package/src/cli/commands/studio/server.ts +355 -64
  27. package/src/cli/commands/studio/terminal-assets.ts +50 -0
  28. package/src/cli/commands/studio/terminal-launch.ts +71 -0
  29. package/src/cli/commands/studio/terminal.ts +593 -0
  30. package/src/cli/commands/studio/vault.ts +320 -75
  31. package/src/cli/commands/studio/views/client.ts +90 -9
  32. package/src/cli/commands/studio/views/companion-picker.tsx +9 -5
  33. package/src/cli/commands/studio/views/companion-selector.tsx +11 -7
  34. package/src/cli/commands/studio/views/document.tsx +411 -107
  35. package/src/cli/commands/studio/views/model.ts +14 -1
  36. package/src/cli/commands/studio/views/selection-fields.tsx +14 -0
  37. package/src/cli/commands/studio/views/styles.ts +106 -13
  38. package/src/cli/commands/studio/views/terminal.tsx +426 -0
  39. package/src/cli/commands/studio/views/vault/state.ts +42 -0
  40. package/src/cli/commands/studio/views/workflow/steps.ts +10 -3
  41. package/src/cli/commands/update.ts +11 -8
  42. package/src/cli/companion-link-wizard.tsx +1 -1
  43. package/src/cli/companion-selector.tsx +1 -1
  44. package/src/cli/launch-selector.tsx +1 -1
  45. package/src/cli/main.ts +2 -1
  46. package/src/cli/usage.ts +7 -3
  47. package/src/cli/write-json-stdout.ts +2 -2
  48. package/src/lib/components/spinner.tsx +2 -2
  49. package/src/lib/components/startup-progress.tsx +1 -1
  50. package/src/lib/context-mode-package.ts +1 -1
  51. package/src/lib/opencode-plugin-package.ts +3 -0
  52. package/src/lib/orchestrator/adapters/opencode.ts +53 -13
  53. package/src/lib/orchestrator/companion-hub.ts +3 -3
  54. package/src/lib/orchestrator/companion-registry-store.ts +1 -1
  55. package/src/lib/orchestrator/config-store.ts +2 -2
  56. package/src/lib/orchestrator/editor.ts +4 -12
  57. package/src/lib/orchestrator/engine-guard.ts +9 -1
  58. package/src/lib/orchestrator/projection-entries.ts +1 -1
  59. package/src/lib/orchestrator/projection-record.ts +1 -1
  60. package/src/lib/orchestrator/projection-types.ts +0 -4
  61. package/src/lib/orchestrator/repo-local-registry.ts +0 -1
  62. package/src/lib/orchestrator/root-context.ts +1 -1
  63. package/src/lib/orchestrator/setup-compatibilities.ts +1 -1
  64. package/src/lib/orchestrator/setup-preflight.ts +1 -1
  65. package/src/lib/orchestrator/types.ts +1 -1
  66. package/src/lib/orchestrator/working-repo-projection.ts +1 -1
  67. package/src/lib/orchestrator/workspace-inventory.ts +2 -2
  68. package/src/lib/package-paths.ts +1 -11
  69. package/src/lib/package-root.ts +43 -0
  70. package/src/lib/prebuilt-workspace.ts +1 -1
  71. package/src/lib/public-npm.ts +1 -1
  72. package/src/opencode/companion-hooks.ts +131 -153
  73. package/src/opencode/index.ts +12 -6
  74. package/src/opencode/tui.tsx +46 -49
  75. package/src/playbooks/companion-guidance.ts +1 -28
  76. package/src/runtime/companion-sync.ts +0 -3
  77. package/src/templates/capabilities/openspec-cap/mate-minimal/schema.yaml +2 -1
  78. package/src/templates/providers/opencode/opencode.json +6 -4
  79. package/src/tools/setup/__snapshots__/runtime-surface-golden.test.ts.snap +500 -408
  80. package/src/tools/setup/capabilities/context-mode.ts +45 -25
  81. package/src/tools/setup/capabilities/graphify-shared.ts +3 -3
  82. package/src/tools/setup/capabilities/graphify.ts +2 -2
  83. package/src/tools/setup/capabilities/openspec.ts +2 -7
  84. package/src/tools/setup/capabilities/react-doctor.ts +1 -1
  85. package/src/tools/setup/capabilities/rtk.ts +2 -2
  86. package/src/tools/setup/capabilities/tokensave.ts +98 -12
  87. package/src/tools/setup/context-services.ts +3 -6
  88. package/src/tools/setup/dynamic-plugins/declarations.ts +47 -0
  89. package/src/tools/setup/dynamic-plugins/frozen.ts +215 -0
  90. package/src/tools/setup/dynamic-plugins/hydrate.ts +1 -40
  91. package/src/tools/setup/dynamic-plugins/loader.ts +16 -0
  92. package/src/tools/setup/dynamic-plugins/policy.ts +55 -0
  93. package/src/tools/setup/dynamic-plugins/staging.ts +53 -0
  94. package/src/tools/setup/dynamic-plugins/verify.ts +70 -0
  95. package/src/tools/setup/mate.ts +1 -1
  96. package/src/tools/setup/providers/claude-format.ts +1 -1
  97. package/src/tools/setup/providers/claude.ts +1 -1
  98. package/src/tools/setup/providers/opencode-format.ts +220 -25
  99. package/src/tools/setup/providers/opencode.ts +63 -21
  100. package/src/tools/setup/runtime-documents.ts +9 -11
  101. package/src/tools/setup.ts +0 -4
  102. package/src/cli/commands/studio/views/pairings.tsx +0 -38
  103. package/src/templates/providers/opencode/tui.json +0 -3
@@ -237,18 +237,20 @@ exports[`runtime surface golden fixtures setup graphify × opencode 1`] = `
237
237
  "$schema": "https://opencode.ai/config.json",
238
238
  "compaction": {
239
239
  "auto": true,
240
- "prune": true,
241
- "reserved": 15000,
240
+ "buffer": 20000,
241
+ "keep": {
242
+ "tokens": 15000,
243
+ },
242
244
  },
243
- "plugin": [
245
+ "plugins": [
244
246
  "@uniqbit/mate-opencode-plugin@<version>",
245
247
  ],
246
248
  "references": {
247
249
  "mate": "..",
248
250
  },
249
251
  "tool_output": {
250
- "max_bytes": 20000,
251
- "max_lines": 500,
252
+ "max_bytes": 40000,
253
+ "max_lines": 1000,
252
254
  },
253
255
  },
254
256
  "opencodePlugins": {
@@ -274,12 +276,7 @@ Write chunks to $GRAPHIFY_OUT and read $GRAPHIFY_OUT later.
274
276
  "
275
277
  ,
276
278
  },
277
- "opencodeTui": {
278
- "$schema": "https://opencode.ai/tui.json",
279
- "plugin": [
280
- "@uniqbit/mate-opencode-plugin@<version>",
281
- ],
282
- },
279
+ "opencodeTui": null,
283
280
  }
284
281
  `;
285
282
 
@@ -287,6 +284,7 @@ exports[`runtime surface golden fixtures setup graphify × opencode 2`] = `
287
284
  {
288
285
  "opencodeArgs": [
289
286
  "<root>/working",
287
+ "--standalone",
290
288
  ],
291
289
  "opencodeEnv": {
292
290
  "MATE_GUIDANCE_JSON": {
@@ -336,20 +334,24 @@ exports[`runtime surface golden fixtures setup graphify × opencode 2`] = `
336
334
  "version": 1,
337
335
  },
338
336
  "OPENCODE_CONFIG_CONTENT": {
339
- "permission": {
340
- "external_directory": {
341
- "<root>/companion": "allow",
342
- "<root>/companion/**": "allow",
337
+ "permissions": [
338
+ {
339
+ "action": "external_directory",
340
+ "effect": "allow",
341
+ "resource": "<root>/companion",
343
342
  },
344
- },
343
+ {
344
+ "action": "external_directory",
345
+ "effect": "allow",
346
+ "resource": "<root>/companion/**",
347
+ },
348
+ ],
345
349
  "references": {
346
350
  "mate": "<root>/companion",
347
351
  },
348
- "skills": {
349
- "paths": [
350
- "<root>/companion/.agents/skills",
351
- ],
352
- },
352
+ "skills": [
353
+ "<root>/companion/.agents/skills",
354
+ ],
353
355
  },
354
356
  "OPENCODE_CONFIG_DIR": "<root>/companion/.opencode",
355
357
  },
@@ -363,7 +365,7 @@ exports[`runtime surface golden fixtures setup graphify × opencode 3`] = `
363
365
  "regions": [
364
366
  {
365
367
  "at": [
366
- "plugin",
368
+ "plugins",
367
369
  ],
368
370
  "kind": "list",
369
371
  "values": [
@@ -372,14 +374,21 @@ exports[`runtime surface golden fixtures setup graphify × opencode 3`] = `
372
374
  },
373
375
  {
374
376
  "at": [
375
- "permission",
376
- "external_directory",
377
+ "permissions",
378
+ ],
379
+ "kind": "list",
380
+ "values": [
381
+ {
382
+ "action": "external_directory",
383
+ "effect": "allow",
384
+ "resource": "<root>/companion",
385
+ },
386
+ {
387
+ "action": "external_directory",
388
+ "effect": "allow",
389
+ "resource": "<root>/companion/**",
390
+ },
377
391
  ],
378
- "entries": {
379
- "<root>/companion": "allow",
380
- "<root>/companion/**": "allow",
381
- },
382
- "kind": "map",
383
392
  },
384
393
  ],
385
394
  },
@@ -456,18 +465,20 @@ Write chunks to $GRAPHIFY_OUT and read $GRAPHIFY_OUT later.
456
465
  "$schema": "https://opencode.ai/config.json",
457
466
  "compaction": {
458
467
  "auto": true,
459
- "prune": true,
460
- "reserved": 15000,
468
+ "buffer": 20000,
469
+ "keep": {
470
+ "tokens": 15000,
471
+ },
461
472
  },
462
- "plugin": [
473
+ "plugins": [
463
474
  "@uniqbit/mate-opencode-plugin@<version>",
464
475
  ],
465
476
  "references": {
466
477
  "mate": "..",
467
478
  },
468
479
  "tool_output": {
469
- "max_bytes": 20000,
470
- "max_lines": 500,
480
+ "max_bytes": 40000,
481
+ "max_lines": 1000,
471
482
  },
472
483
  },
473
484
  "opencodePlugins": {
@@ -493,12 +504,7 @@ Write chunks to $GRAPHIFY_OUT and read $GRAPHIFY_OUT later.
493
504
  "
494
505
  ,
495
506
  },
496
- "opencodeTui": {
497
- "$schema": "https://opencode.ai/tui.json",
498
- "plugin": [
499
- "@uniqbit/mate-opencode-plugin@<version>",
500
- ],
501
- },
507
+ "opencodeTui": null,
502
508
  }
503
509
  `;
504
510
 
@@ -563,6 +569,7 @@ exports[`runtime surface golden fixtures setup graphify × claude+opencode 2`] =
563
569
  },
564
570
  "opencodeArgs": [
565
571
  "<root>/working",
572
+ "--standalone",
566
573
  ],
567
574
  "opencodeEnv": {
568
575
  "MATE_GUIDANCE_JSON": {
@@ -612,20 +619,24 @@ exports[`runtime surface golden fixtures setup graphify × claude+opencode 2`] =
612
619
  "version": 1,
613
620
  },
614
621
  "OPENCODE_CONFIG_CONTENT": {
615
- "permission": {
616
- "external_directory": {
617
- "<root>/companion": "allow",
618
- "<root>/companion/**": "allow",
622
+ "permissions": [
623
+ {
624
+ "action": "external_directory",
625
+ "effect": "allow",
626
+ "resource": "<root>/companion",
619
627
  },
620
- },
628
+ {
629
+ "action": "external_directory",
630
+ "effect": "allow",
631
+ "resource": "<root>/companion/**",
632
+ },
633
+ ],
621
634
  "references": {
622
635
  "mate": "<root>/companion",
623
636
  },
624
- "skills": {
625
- "paths": [
626
- "<root>/companion/.agents/skills",
627
- ],
628
- },
637
+ "skills": [
638
+ "<root>/companion/.agents/skills",
639
+ ],
629
640
  },
630
641
  "OPENCODE_CONFIG_DIR": "<root>/companion/.opencode",
631
642
  },
@@ -713,7 +724,7 @@ exports[`runtime surface golden fixtures setup graphify × claude+opencode 3`] =
713
724
  "regions": [
714
725
  {
715
726
  "at": [
716
- "plugin",
727
+ "plugins",
717
728
  ],
718
729
  "kind": "list",
719
730
  "values": [
@@ -722,14 +733,21 @@ exports[`runtime surface golden fixtures setup graphify × claude+opencode 3`] =
722
733
  },
723
734
  {
724
735
  "at": [
725
- "permission",
726
- "external_directory",
736
+ "permissions",
737
+ ],
738
+ "kind": "list",
739
+ "values": [
740
+ {
741
+ "action": "external_directory",
742
+ "effect": "allow",
743
+ "resource": "<root>/companion",
744
+ },
745
+ {
746
+ "action": "external_directory",
747
+ "effect": "allow",
748
+ "resource": "<root>/companion/**",
749
+ },
727
750
  ],
728
- "entries": {
729
- "<root>/companion": "allow",
730
- "<root>/companion/**": "allow",
731
- },
732
- "kind": "map",
733
751
  },
734
752
  ],
735
753
  },
@@ -1005,38 +1023,37 @@ exports[`runtime surface golden fixtures setup tokensave × opencode 1`] = `
1005
1023
  "$schema": "https://opencode.ai/config.json",
1006
1024
  "compaction": {
1007
1025
  "auto": true,
1008
- "prune": true,
1009
- "reserved": 15000,
1026
+ "buffer": 20000,
1027
+ "keep": {
1028
+ "tokens": 15000,
1029
+ },
1010
1030
  },
1011
1031
  "mcp": {
1012
- "tokensave": {
1013
- "command": [
1014
- "tokensave",
1015
- "serve",
1016
- ],
1017
- "enabled": true,
1018
- "type": "local",
1032
+ "servers": {
1033
+ "tokensave": {
1034
+ "command": [
1035
+ "tokensave",
1036
+ "serve",
1037
+ ],
1038
+ "disabled": false,
1039
+ "type": "local",
1040
+ },
1019
1041
  },
1020
1042
  },
1021
- "plugin": [
1043
+ "plugins": [
1022
1044
  "@uniqbit/mate-opencode-plugin@<version>",
1023
1045
  ],
1024
1046
  "references": {
1025
1047
  "mate": "..",
1026
1048
  },
1027
1049
  "tool_output": {
1028
- "max_bytes": 20000,
1029
- "max_lines": 500,
1050
+ "max_bytes": 40000,
1051
+ "max_lines": 1000,
1030
1052
  },
1031
1053
  },
1032
1054
  "opencodePlugins": {},
1033
1055
  "opencodeSkills": {},
1034
- "opencodeTui": {
1035
- "$schema": "https://opencode.ai/tui.json",
1036
- "plugin": [
1037
- "@uniqbit/mate-opencode-plugin@<version>",
1038
- ],
1039
- },
1056
+ "opencodeTui": null,
1040
1057
  }
1041
1058
  `;
1042
1059
 
@@ -1044,6 +1061,7 @@ exports[`runtime surface golden fixtures setup tokensave × opencode 2`] = `
1044
1061
  {
1045
1062
  "opencodeArgs": [
1046
1063
  "<root>/working",
1064
+ "--standalone",
1047
1065
  ],
1048
1066
  "opencodeEnv": {
1049
1067
  "MATE_GUIDANCE_JSON": {
@@ -1090,20 +1108,24 @@ exports[`runtime surface golden fixtures setup tokensave × opencode 2`] = `
1090
1108
  "version": 1,
1091
1109
  },
1092
1110
  "OPENCODE_CONFIG_CONTENT": {
1093
- "permission": {
1094
- "external_directory": {
1095
- "<root>/companion": "allow",
1096
- "<root>/companion/**": "allow",
1111
+ "permissions": [
1112
+ {
1113
+ "action": "external_directory",
1114
+ "effect": "allow",
1115
+ "resource": "<root>/companion",
1097
1116
  },
1098
- },
1117
+ {
1118
+ "action": "external_directory",
1119
+ "effect": "allow",
1120
+ "resource": "<root>/companion/**",
1121
+ },
1122
+ ],
1099
1123
  "references": {
1100
1124
  "mate": "<root>/companion",
1101
1125
  },
1102
- "skills": {
1103
- "paths": [
1104
- "<root>/companion/.agents/skills",
1105
- ],
1106
- },
1126
+ "skills": [
1127
+ "<root>/companion/.agents/skills",
1128
+ ],
1107
1129
  },
1108
1130
  "OPENCODE_CONFIG_DIR": "<root>/companion/.opencode",
1109
1131
  },
@@ -1117,7 +1139,7 @@ exports[`runtime surface golden fixtures setup tokensave × opencode 3`] = `
1117
1139
  "regions": [
1118
1140
  {
1119
1141
  "at": [
1120
- "plugin",
1142
+ "plugins",
1121
1143
  ],
1122
1144
  "kind": "list",
1123
1145
  "values": [
@@ -1127,6 +1149,7 @@ exports[`runtime surface golden fixtures setup tokensave × opencode 3`] = `
1127
1149
  {
1128
1150
  "at": [
1129
1151
  "mcp",
1152
+ "servers",
1130
1153
  ],
1131
1154
  "entries": {
1132
1155
  "tokensave": {
@@ -1134,7 +1157,7 @@ exports[`runtime surface golden fixtures setup tokensave × opencode 3`] = `
1134
1157
  "tokensave",
1135
1158
  "serve",
1136
1159
  ],
1137
- "enabled": true,
1160
+ "disabled": false,
1138
1161
  "type": "local",
1139
1162
  },
1140
1163
  },
@@ -1142,14 +1165,21 @@ exports[`runtime surface golden fixtures setup tokensave × opencode 3`] = `
1142
1165
  },
1143
1166
  {
1144
1167
  "at": [
1145
- "permission",
1146
- "external_directory",
1168
+ "permissions",
1169
+ ],
1170
+ "kind": "list",
1171
+ "values": [
1172
+ {
1173
+ "action": "external_directory",
1174
+ "effect": "allow",
1175
+ "resource": "<root>/companion",
1176
+ },
1177
+ {
1178
+ "action": "external_directory",
1179
+ "effect": "allow",
1180
+ "resource": "<root>/companion/**",
1181
+ },
1147
1182
  ],
1148
- "entries": {
1149
- "<root>/companion": "allow",
1150
- "<root>/companion/**": "allow",
1151
- },
1152
- "kind": "map",
1153
1183
  },
1154
1184
  ],
1155
1185
  },
@@ -1243,38 +1273,37 @@ exports[`runtime surface golden fixtures setup tokensave × claude+opencode 1`]
1243
1273
  "$schema": "https://opencode.ai/config.json",
1244
1274
  "compaction": {
1245
1275
  "auto": true,
1246
- "prune": true,
1247
- "reserved": 15000,
1276
+ "buffer": 20000,
1277
+ "keep": {
1278
+ "tokens": 15000,
1279
+ },
1248
1280
  },
1249
1281
  "mcp": {
1250
- "tokensave": {
1251
- "command": [
1252
- "tokensave",
1253
- "serve",
1254
- ],
1255
- "enabled": true,
1256
- "type": "local",
1282
+ "servers": {
1283
+ "tokensave": {
1284
+ "command": [
1285
+ "tokensave",
1286
+ "serve",
1287
+ ],
1288
+ "disabled": false,
1289
+ "type": "local",
1290
+ },
1257
1291
  },
1258
1292
  },
1259
- "plugin": [
1293
+ "plugins": [
1260
1294
  "@uniqbit/mate-opencode-plugin@<version>",
1261
1295
  ],
1262
1296
  "references": {
1263
1297
  "mate": "..",
1264
1298
  },
1265
1299
  "tool_output": {
1266
- "max_bytes": 20000,
1267
- "max_lines": 500,
1300
+ "max_bytes": 40000,
1301
+ "max_lines": 1000,
1268
1302
  },
1269
1303
  },
1270
1304
  "opencodePlugins": {},
1271
1305
  "opencodeSkills": {},
1272
- "opencodeTui": {
1273
- "$schema": "https://opencode.ai/tui.json",
1274
- "plugin": [
1275
- "@uniqbit/mate-opencode-plugin@<version>",
1276
- ],
1277
- },
1306
+ "opencodeTui": null,
1278
1307
  }
1279
1308
  `;
1280
1309
 
@@ -1336,6 +1365,7 @@ exports[`runtime surface golden fixtures setup tokensave × claude+opencode 2`]
1336
1365
  },
1337
1366
  "opencodeArgs": [
1338
1367
  "<root>/working",
1368
+ "--standalone",
1339
1369
  ],
1340
1370
  "opencodeEnv": {
1341
1371
  "MATE_GUIDANCE_JSON": {
@@ -1382,20 +1412,24 @@ exports[`runtime surface golden fixtures setup tokensave × claude+opencode 2`]
1382
1412
  "version": 1,
1383
1413
  },
1384
1414
  "OPENCODE_CONFIG_CONTENT": {
1385
- "permission": {
1386
- "external_directory": {
1387
- "<root>/companion": "allow",
1388
- "<root>/companion/**": "allow",
1415
+ "permissions": [
1416
+ {
1417
+ "action": "external_directory",
1418
+ "effect": "allow",
1419
+ "resource": "<root>/companion",
1389
1420
  },
1390
- },
1421
+ {
1422
+ "action": "external_directory",
1423
+ "effect": "allow",
1424
+ "resource": "<root>/companion/**",
1425
+ },
1426
+ ],
1391
1427
  "references": {
1392
1428
  "mate": "<root>/companion",
1393
1429
  },
1394
- "skills": {
1395
- "paths": [
1396
- "<root>/companion/.agents/skills",
1397
- ],
1398
- },
1430
+ "skills": [
1431
+ "<root>/companion/.agents/skills",
1432
+ ],
1399
1433
  },
1400
1434
  "OPENCODE_CONFIG_DIR": "<root>/companion/.opencode",
1401
1435
  },
@@ -1501,7 +1535,7 @@ exports[`runtime surface golden fixtures setup tokensave × claude+opencode 3`]
1501
1535
  "regions": [
1502
1536
  {
1503
1537
  "at": [
1504
- "plugin",
1538
+ "plugins",
1505
1539
  ],
1506
1540
  "kind": "list",
1507
1541
  "values": [
@@ -1511,6 +1545,7 @@ exports[`runtime surface golden fixtures setup tokensave × claude+opencode 3`]
1511
1545
  {
1512
1546
  "at": [
1513
1547
  "mcp",
1548
+ "servers",
1514
1549
  ],
1515
1550
  "entries": {
1516
1551
  "tokensave": {
@@ -1518,7 +1553,7 @@ exports[`runtime surface golden fixtures setup tokensave × claude+opencode 3`]
1518
1553
  "tokensave",
1519
1554
  "serve",
1520
1555
  ],
1521
- "enabled": true,
1556
+ "disabled": false,
1522
1557
  "type": "local",
1523
1558
  },
1524
1559
  },
@@ -1526,14 +1561,21 @@ exports[`runtime surface golden fixtures setup tokensave × claude+opencode 3`]
1526
1561
  },
1527
1562
  {
1528
1563
  "at": [
1529
- "permission",
1530
- "external_directory",
1564
+ "permissions",
1565
+ ],
1566
+ "kind": "list",
1567
+ "values": [
1568
+ {
1569
+ "action": "external_directory",
1570
+ "effect": "allow",
1571
+ "resource": "<root>/companion",
1572
+ },
1573
+ {
1574
+ "action": "external_directory",
1575
+ "effect": "allow",
1576
+ "resource": "<root>/companion/**",
1577
+ },
1531
1578
  ],
1532
- "entries": {
1533
- "<root>/companion": "allow",
1534
- "<root>/companion/**": "allow",
1535
- },
1536
- "kind": "map",
1537
1579
  },
1538
1580
  ],
1539
1581
  },
@@ -1743,10 +1785,12 @@ Canonical Mate policy and any more specific tool-routing instructions remain aut
1743
1785
  "$schema": "https://opencode.ai/config.json",
1744
1786
  "compaction": {
1745
1787
  "auto": true,
1746
- "prune": true,
1747
- "reserved": 15000,
1788
+ "buffer": 20000,
1789
+ "keep": {
1790
+ "tokens": 15000,
1791
+ },
1748
1792
  },
1749
- "plugin": [
1793
+ "plugins": [
1750
1794
  "@uniqbit/mate-opencode-plugin@<version>",
1751
1795
  "context-mode@1.0.169",
1752
1796
  ],
@@ -1754,19 +1798,13 @@ Canonical Mate policy and any more specific tool-routing instructions remain aut
1754
1798
  "mate": "..",
1755
1799
  },
1756
1800
  "tool_output": {
1757
- "max_bytes": 20000,
1758
- "max_lines": 500,
1801
+ "max_bytes": 40000,
1802
+ "max_lines": 1000,
1759
1803
  },
1760
1804
  },
1761
1805
  "opencodePlugins": {},
1762
1806
  "opencodeSkills": {},
1763
- "opencodeTui": {
1764
- "$schema": "https://opencode.ai/tui.json",
1765
- "plugin": [
1766
- "@uniqbit/mate-opencode-plugin@<version>",
1767
- "context-mode@1.0.169",
1768
- ],
1769
- },
1807
+ "opencodeTui": null,
1770
1808
  }
1771
1809
  `;
1772
1810
 
@@ -1774,6 +1812,7 @@ exports[`runtime surface golden fixtures setup context-mode × opencode 2`] = `
1774
1812
  {
1775
1813
  "opencodeArgs": [
1776
1814
  "<root>/working",
1815
+ "--standalone",
1777
1816
  ],
1778
1817
  "opencodeEnv": {
1779
1818
  "MATE_GUIDANCE_JSON": {
@@ -1812,20 +1851,24 @@ exports[`runtime surface golden fixtures setup context-mode × opencode 2`] = `
1812
1851
  "version": 1,
1813
1852
  },
1814
1853
  "OPENCODE_CONFIG_CONTENT": {
1815
- "permission": {
1816
- "external_directory": {
1817
- "<root>/companion": "allow",
1818
- "<root>/companion/**": "allow",
1854
+ "permissions": [
1855
+ {
1856
+ "action": "external_directory",
1857
+ "effect": "allow",
1858
+ "resource": "<root>/companion",
1819
1859
  },
1820
- },
1860
+ {
1861
+ "action": "external_directory",
1862
+ "effect": "allow",
1863
+ "resource": "<root>/companion/**",
1864
+ },
1865
+ ],
1821
1866
  "references": {
1822
1867
  "mate": "<root>/companion",
1823
1868
  },
1824
- "skills": {
1825
- "paths": [
1826
- "<root>/companion/.agents/skills",
1827
- ],
1828
- },
1869
+ "skills": [
1870
+ "<root>/companion/.agents/skills",
1871
+ ],
1829
1872
  },
1830
1873
  "OPENCODE_CONFIG_DIR": "<root>/companion/.opencode",
1831
1874
  },
@@ -1839,7 +1882,7 @@ exports[`runtime surface golden fixtures setup context-mode × opencode 3`] = `
1839
1882
  "regions": [
1840
1883
  {
1841
1884
  "at": [
1842
- "plugin",
1885
+ "plugins",
1843
1886
  ],
1844
1887
  "kind": "list",
1845
1888
  "values": [
@@ -1848,14 +1891,21 @@ exports[`runtime surface golden fixtures setup context-mode × opencode 3`] = `
1848
1891
  },
1849
1892
  {
1850
1893
  "at": [
1851
- "permission",
1852
- "external_directory",
1894
+ "permissions",
1895
+ ],
1896
+ "kind": "list",
1897
+ "values": [
1898
+ {
1899
+ "action": "external_directory",
1900
+ "effect": "allow",
1901
+ "resource": "<root>/companion",
1902
+ },
1903
+ {
1904
+ "action": "external_directory",
1905
+ "effect": "allow",
1906
+ "resource": "<root>/companion/**",
1907
+ },
1853
1908
  ],
1854
- "entries": {
1855
- "<root>/companion": "allow",
1856
- "<root>/companion/**": "allow",
1857
- },
1858
- "kind": "map",
1859
1909
  },
1860
1910
  ],
1861
1911
  },
@@ -1909,10 +1959,12 @@ Canonical Mate policy and any more specific tool-routing instructions remain aut
1909
1959
  "$schema": "https://opencode.ai/config.json",
1910
1960
  "compaction": {
1911
1961
  "auto": true,
1912
- "prune": true,
1913
- "reserved": 15000,
1962
+ "buffer": 20000,
1963
+ "keep": {
1964
+ "tokens": 15000,
1965
+ },
1914
1966
  },
1915
- "plugin": [
1967
+ "plugins": [
1916
1968
  "@uniqbit/mate-opencode-plugin@<version>",
1917
1969
  "context-mode@1.0.169",
1918
1970
  ],
@@ -1920,19 +1972,13 @@ Canonical Mate policy and any more specific tool-routing instructions remain aut
1920
1972
  "mate": "..",
1921
1973
  },
1922
1974
  "tool_output": {
1923
- "max_bytes": 20000,
1924
- "max_lines": 500,
1975
+ "max_bytes": 40000,
1976
+ "max_lines": 1000,
1925
1977
  },
1926
1978
  },
1927
1979
  "opencodePlugins": {},
1928
1980
  "opencodeSkills": {},
1929
- "opencodeTui": {
1930
- "$schema": "https://opencode.ai/tui.json",
1931
- "plugin": [
1932
- "@uniqbit/mate-opencode-plugin@<version>",
1933
- "context-mode@1.0.169",
1934
- ],
1935
- },
1981
+ "opencodeTui": null,
1936
1982
  }
1937
1983
  `;
1938
1984
 
@@ -1988,6 +2034,7 @@ exports[`runtime surface golden fixtures setup context-mode × claude+opencode 2
1988
2034
  },
1989
2035
  "opencodeArgs": [
1990
2036
  "<root>/working",
2037
+ "--standalone",
1991
2038
  ],
1992
2039
  "opencodeEnv": {
1993
2040
  "MATE_GUIDANCE_JSON": {
@@ -2026,20 +2073,24 @@ exports[`runtime surface golden fixtures setup context-mode × claude+opencode 2
2026
2073
  "version": 1,
2027
2074
  },
2028
2075
  "OPENCODE_CONFIG_CONTENT": {
2029
- "permission": {
2030
- "external_directory": {
2031
- "<root>/companion": "allow",
2032
- "<root>/companion/**": "allow",
2076
+ "permissions": [
2077
+ {
2078
+ "action": "external_directory",
2079
+ "effect": "allow",
2080
+ "resource": "<root>/companion",
2033
2081
  },
2034
- },
2082
+ {
2083
+ "action": "external_directory",
2084
+ "effect": "allow",
2085
+ "resource": "<root>/companion/**",
2086
+ },
2087
+ ],
2035
2088
  "references": {
2036
2089
  "mate": "<root>/companion",
2037
2090
  },
2038
- "skills": {
2039
- "paths": [
2040
- "<root>/companion/.agents/skills",
2041
- ],
2042
- },
2091
+ "skills": [
2092
+ "<root>/companion/.agents/skills",
2093
+ ],
2043
2094
  },
2044
2095
  "OPENCODE_CONFIG_DIR": "<root>/companion/.opencode",
2045
2096
  },
@@ -2125,7 +2176,7 @@ exports[`runtime surface golden fixtures setup context-mode × claude+opencode 3
2125
2176
  "regions": [
2126
2177
  {
2127
2178
  "at": [
2128
- "plugin",
2179
+ "plugins",
2129
2180
  ],
2130
2181
  "kind": "list",
2131
2182
  "values": [
@@ -2134,14 +2185,21 @@ exports[`runtime surface golden fixtures setup context-mode × claude+opencode 3
2134
2185
  },
2135
2186
  {
2136
2187
  "at": [
2137
- "permission",
2138
- "external_directory",
2188
+ "permissions",
2189
+ ],
2190
+ "kind": "list",
2191
+ "values": [
2192
+ {
2193
+ "action": "external_directory",
2194
+ "effect": "allow",
2195
+ "resource": "<root>/companion",
2196
+ },
2197
+ {
2198
+ "action": "external_directory",
2199
+ "effect": "allow",
2200
+ "resource": "<root>/companion/**",
2201
+ },
2139
2202
  ],
2140
- "entries": {
2141
- "<root>/companion": "allow",
2142
- "<root>/companion/**": "allow",
2143
- },
2144
- "kind": "map",
2145
2203
  },
2146
2204
  ],
2147
2205
  },
@@ -2373,18 +2431,20 @@ exports[`runtime surface golden fixtures setup react-doctor × opencode 1`] = `
2373
2431
  "$schema": "https://opencode.ai/config.json",
2374
2432
  "compaction": {
2375
2433
  "auto": true,
2376
- "prune": true,
2377
- "reserved": 15000,
2434
+ "buffer": 20000,
2435
+ "keep": {
2436
+ "tokens": 15000,
2437
+ },
2378
2438
  },
2379
- "plugin": [
2439
+ "plugins": [
2380
2440
  "@uniqbit/mate-opencode-plugin@<version>",
2381
2441
  ],
2382
2442
  "references": {
2383
2443
  "mate": "..",
2384
2444
  },
2385
2445
  "tool_output": {
2386
- "max_bytes": 20000,
2387
- "max_lines": 500,
2446
+ "max_bytes": 40000,
2447
+ "max_lines": 1000,
2388
2448
  },
2389
2449
  },
2390
2450
  "opencodePlugins": {},
@@ -2392,12 +2452,7 @@ exports[`runtime surface golden fixtures setup react-doctor × opencode 1`] = `
2392
2452
  "react-doctor/SKILL.md": "df58b3490543",
2393
2453
  "react-doctor/references/explain.md": "2382ea820f20",
2394
2454
  },
2395
- "opencodeTui": {
2396
- "$schema": "https://opencode.ai/tui.json",
2397
- "plugin": [
2398
- "@uniqbit/mate-opencode-plugin@<version>",
2399
- ],
2400
- },
2455
+ "opencodeTui": null,
2401
2456
  }
2402
2457
  `;
2403
2458
 
@@ -2405,6 +2460,7 @@ exports[`runtime surface golden fixtures setup react-doctor × opencode 2`] = `
2405
2460
  {
2406
2461
  "opencodeArgs": [
2407
2462
  "<root>/working",
2463
+ "--standalone",
2408
2464
  ],
2409
2465
  "opencodeEnv": {
2410
2466
  "MATE_GUIDANCE_JSON": {
@@ -2443,20 +2499,24 @@ exports[`runtime surface golden fixtures setup react-doctor × opencode 2`] = `
2443
2499
  "version": 1,
2444
2500
  },
2445
2501
  "OPENCODE_CONFIG_CONTENT": {
2446
- "permission": {
2447
- "external_directory": {
2448
- "<root>/companion": "allow",
2449
- "<root>/companion/**": "allow",
2502
+ "permissions": [
2503
+ {
2504
+ "action": "external_directory",
2505
+ "effect": "allow",
2506
+ "resource": "<root>/companion",
2450
2507
  },
2451
- },
2508
+ {
2509
+ "action": "external_directory",
2510
+ "effect": "allow",
2511
+ "resource": "<root>/companion/**",
2512
+ },
2513
+ ],
2452
2514
  "references": {
2453
2515
  "mate": "<root>/companion",
2454
2516
  },
2455
- "skills": {
2456
- "paths": [
2457
- "<root>/companion/.agents/skills",
2458
- ],
2459
- },
2517
+ "skills": [
2518
+ "<root>/companion/.agents/skills",
2519
+ ],
2460
2520
  },
2461
2521
  "OPENCODE_CONFIG_DIR": "<root>/companion/.opencode",
2462
2522
  },
@@ -2470,7 +2530,7 @@ exports[`runtime surface golden fixtures setup react-doctor × opencode 3`] = `
2470
2530
  "regions": [
2471
2531
  {
2472
2532
  "at": [
2473
- "plugin",
2533
+ "plugins",
2474
2534
  ],
2475
2535
  "kind": "list",
2476
2536
  "values": [
@@ -2479,14 +2539,21 @@ exports[`runtime surface golden fixtures setup react-doctor × opencode 3`] = `
2479
2539
  },
2480
2540
  {
2481
2541
  "at": [
2482
- "permission",
2483
- "external_directory",
2542
+ "permissions",
2543
+ ],
2544
+ "kind": "list",
2545
+ "values": [
2546
+ {
2547
+ "action": "external_directory",
2548
+ "effect": "allow",
2549
+ "resource": "<root>/companion",
2550
+ },
2551
+ {
2552
+ "action": "external_directory",
2553
+ "effect": "allow",
2554
+ "resource": "<root>/companion/**",
2555
+ },
2484
2556
  ],
2485
- "entries": {
2486
- "<root>/companion": "allow",
2487
- "<root>/companion/**": "allow",
2488
- },
2489
- "kind": "map",
2490
2557
  },
2491
2558
  ],
2492
2559
  },
@@ -2563,18 +2630,20 @@ exports[`runtime surface golden fixtures setup react-doctor × claude+opencode 1
2563
2630
  "$schema": "https://opencode.ai/config.json",
2564
2631
  "compaction": {
2565
2632
  "auto": true,
2566
- "prune": true,
2567
- "reserved": 15000,
2633
+ "buffer": 20000,
2634
+ "keep": {
2635
+ "tokens": 15000,
2636
+ },
2568
2637
  },
2569
- "plugin": [
2638
+ "plugins": [
2570
2639
  "@uniqbit/mate-opencode-plugin@<version>",
2571
2640
  ],
2572
2641
  "references": {
2573
2642
  "mate": "..",
2574
2643
  },
2575
2644
  "tool_output": {
2576
- "max_bytes": 20000,
2577
- "max_lines": 500,
2645
+ "max_bytes": 40000,
2646
+ "max_lines": 1000,
2578
2647
  },
2579
2648
  },
2580
2649
  "opencodePlugins": {},
@@ -2582,12 +2651,7 @@ exports[`runtime surface golden fixtures setup react-doctor × claude+opencode 1
2582
2651
  "react-doctor/SKILL.md": "df58b3490543",
2583
2652
  "react-doctor/references/explain.md": "2382ea820f20",
2584
2653
  },
2585
- "opencodeTui": {
2586
- "$schema": "https://opencode.ai/tui.json",
2587
- "plugin": [
2588
- "@uniqbit/mate-opencode-plugin@<version>",
2589
- ],
2590
- },
2654
+ "opencodeTui": null,
2591
2655
  }
2592
2656
  `;
2593
2657
 
@@ -2641,6 +2705,7 @@ exports[`runtime surface golden fixtures setup react-doctor × claude+opencode 2
2641
2705
  },
2642
2706
  "opencodeArgs": [
2643
2707
  "<root>/working",
2708
+ "--standalone",
2644
2709
  ],
2645
2710
  "opencodeEnv": {
2646
2711
  "MATE_GUIDANCE_JSON": {
@@ -2679,20 +2744,24 @@ exports[`runtime surface golden fixtures setup react-doctor × claude+opencode 2
2679
2744
  "version": 1,
2680
2745
  },
2681
2746
  "OPENCODE_CONFIG_CONTENT": {
2682
- "permission": {
2683
- "external_directory": {
2684
- "<root>/companion": "allow",
2685
- "<root>/companion/**": "allow",
2747
+ "permissions": [
2748
+ {
2749
+ "action": "external_directory",
2750
+ "effect": "allow",
2751
+ "resource": "<root>/companion",
2686
2752
  },
2687
- },
2753
+ {
2754
+ "action": "external_directory",
2755
+ "effect": "allow",
2756
+ "resource": "<root>/companion/**",
2757
+ },
2758
+ ],
2688
2759
  "references": {
2689
2760
  "mate": "<root>/companion",
2690
2761
  },
2691
- "skills": {
2692
- "paths": [
2693
- "<root>/companion/.agents/skills",
2694
- ],
2695
- },
2762
+ "skills": [
2763
+ "<root>/companion/.agents/skills",
2764
+ ],
2696
2765
  },
2697
2766
  "OPENCODE_CONFIG_DIR": "<root>/companion/.opencode",
2698
2767
  },
@@ -2779,7 +2848,7 @@ exports[`runtime surface golden fixtures setup react-doctor × claude+opencode 3
2779
2848
  "regions": [
2780
2849
  {
2781
2850
  "at": [
2782
- "plugin",
2851
+ "plugins",
2783
2852
  ],
2784
2853
  "kind": "list",
2785
2854
  "values": [
@@ -2788,14 +2857,21 @@ exports[`runtime surface golden fixtures setup react-doctor × claude+opencode 3
2788
2857
  },
2789
2858
  {
2790
2859
  "at": [
2791
- "permission",
2792
- "external_directory",
2860
+ "permissions",
2861
+ ],
2862
+ "kind": "list",
2863
+ "values": [
2864
+ {
2865
+ "action": "external_directory",
2866
+ "effect": "allow",
2867
+ "resource": "<root>/companion",
2868
+ },
2869
+ {
2870
+ "action": "external_directory",
2871
+ "effect": "allow",
2872
+ "resource": "<root>/companion/**",
2873
+ },
2793
2874
  ],
2794
- "entries": {
2795
- "<root>/companion": "allow",
2796
- "<root>/companion/**": "allow",
2797
- },
2798
- "kind": "map",
2799
2875
  },
2800
2876
  ],
2801
2877
  },
@@ -3043,18 +3119,20 @@ exports[`runtime surface golden fixtures setup openspec × opencode 1`] = `
3043
3119
  "$schema": "https://opencode.ai/config.json",
3044
3120
  "compaction": {
3045
3121
  "auto": true,
3046
- "prune": true,
3047
- "reserved": 15000,
3122
+ "buffer": 20000,
3123
+ "keep": {
3124
+ "tokens": 15000,
3125
+ },
3048
3126
  },
3049
- "plugin": [
3127
+ "plugins": [
3050
3128
  "@uniqbit/mate-opencode-plugin@<version>",
3051
3129
  ],
3052
3130
  "references": {
3053
3131
  "mate": "..",
3054
3132
  },
3055
3133
  "tool_output": {
3056
- "max_bytes": 20000,
3057
- "max_lines": 500,
3134
+ "max_bytes": 40000,
3135
+ "max_lines": 1000,
3058
3136
  },
3059
3137
  },
3060
3138
  "opencodePlugins": {},
@@ -3077,12 +3155,7 @@ exports[`runtime surface golden fixtures setup openspec × opencode 1`] = `
3077
3155
  "openspec-explore/SKILL.md": "87d1237e5ffa",
3078
3156
  "openspec-propose/SKILL.md": "3618b84ce74c",
3079
3157
  },
3080
- "opencodeTui": {
3081
- "$schema": "https://opencode.ai/tui.json",
3082
- "plugin": [
3083
- "@uniqbit/mate-opencode-plugin@<version>",
3084
- ],
3085
- },
3158
+ "opencodeTui": null,
3086
3159
  }
3087
3160
  `;
3088
3161
 
@@ -3090,6 +3163,7 @@ exports[`runtime surface golden fixtures setup openspec × opencode 2`] = `
3090
3163
  {
3091
3164
  "opencodeArgs": [
3092
3165
  "<root>/working",
3166
+ "--standalone",
3093
3167
  ],
3094
3168
  "opencodeEnv": {
3095
3169
  "MATE_GUIDANCE_JSON": {
@@ -3130,20 +3204,24 @@ exports[`runtime surface golden fixtures setup openspec × opencode 2`] = `
3130
3204
  "version": 1,
3131
3205
  },
3132
3206
  "OPENCODE_CONFIG_CONTENT": {
3133
- "permission": {
3134
- "external_directory": {
3135
- "<root>/companion": "allow",
3136
- "<root>/companion/**": "allow",
3207
+ "permissions": [
3208
+ {
3209
+ "action": "external_directory",
3210
+ "effect": "allow",
3211
+ "resource": "<root>/companion",
3137
3212
  },
3138
- },
3213
+ {
3214
+ "action": "external_directory",
3215
+ "effect": "allow",
3216
+ "resource": "<root>/companion/**",
3217
+ },
3218
+ ],
3139
3219
  "references": {
3140
3220
  "mate": "<root>/companion",
3141
3221
  },
3142
- "skills": {
3143
- "paths": [
3144
- "<root>/companion/.agents/skills",
3145
- ],
3146
- },
3222
+ "skills": [
3223
+ "<root>/companion/.agents/skills",
3224
+ ],
3147
3225
  },
3148
3226
  "OPENCODE_CONFIG_DIR": "<root>/companion/.opencode",
3149
3227
  },
@@ -3157,7 +3235,7 @@ exports[`runtime surface golden fixtures setup openspec × opencode 3`] = `
3157
3235
  "regions": [
3158
3236
  {
3159
3237
  "at": [
3160
- "plugin",
3238
+ "plugins",
3161
3239
  ],
3162
3240
  "kind": "list",
3163
3241
  "values": [
@@ -3166,14 +3244,21 @@ exports[`runtime surface golden fixtures setup openspec × opencode 3`] = `
3166
3244
  },
3167
3245
  {
3168
3246
  "at": [
3169
- "permission",
3170
- "external_directory",
3247
+ "permissions",
3248
+ ],
3249
+ "kind": "list",
3250
+ "values": [
3251
+ {
3252
+ "action": "external_directory",
3253
+ "effect": "allow",
3254
+ "resource": "<root>/companion",
3255
+ },
3256
+ {
3257
+ "action": "external_directory",
3258
+ "effect": "allow",
3259
+ "resource": "<root>/companion/**",
3260
+ },
3171
3261
  ],
3172
- "entries": {
3173
- "<root>/companion": "allow",
3174
- "<root>/companion/**": "allow",
3175
- },
3176
- "kind": "map",
3177
3262
  },
3178
3263
  ],
3179
3264
  },
@@ -3251,18 +3336,20 @@ exports[`runtime surface golden fixtures setup openspec × claude+opencode 1`] =
3251
3336
  "$schema": "https://opencode.ai/config.json",
3252
3337
  "compaction": {
3253
3338
  "auto": true,
3254
- "prune": true,
3255
- "reserved": 15000,
3339
+ "buffer": 20000,
3340
+ "keep": {
3341
+ "tokens": 15000,
3342
+ },
3256
3343
  },
3257
- "plugin": [
3344
+ "plugins": [
3258
3345
  "@uniqbit/mate-opencode-plugin@<version>",
3259
3346
  ],
3260
3347
  "references": {
3261
3348
  "mate": "..",
3262
3349
  },
3263
3350
  "tool_output": {
3264
- "max_bytes": 20000,
3265
- "max_lines": 500,
3351
+ "max_bytes": 40000,
3352
+ "max_lines": 1000,
3266
3353
  },
3267
3354
  },
3268
3355
  "opencodePlugins": {},
@@ -3285,12 +3372,7 @@ exports[`runtime surface golden fixtures setup openspec × claude+opencode 1`] =
3285
3372
  "openspec-explore/SKILL.md": "87d1237e5ffa",
3286
3373
  "openspec-propose/SKILL.md": "3618b84ce74c",
3287
3374
  },
3288
- "opencodeTui": {
3289
- "$schema": "https://opencode.ai/tui.json",
3290
- "plugin": [
3291
- "@uniqbit/mate-opencode-plugin@<version>",
3292
- ],
3293
- },
3375
+ "opencodeTui": null,
3294
3376
  }
3295
3377
  `;
3296
3378
 
@@ -3346,6 +3428,7 @@ exports[`runtime surface golden fixtures setup openspec × claude+opencode 2`] =
3346
3428
  },
3347
3429
  "opencodeArgs": [
3348
3430
  "<root>/working",
3431
+ "--standalone",
3349
3432
  ],
3350
3433
  "opencodeEnv": {
3351
3434
  "MATE_GUIDANCE_JSON": {
@@ -3386,20 +3469,24 @@ exports[`runtime surface golden fixtures setup openspec × claude+opencode 2`] =
3386
3469
  "version": 1,
3387
3470
  },
3388
3471
  "OPENCODE_CONFIG_CONTENT": {
3389
- "permission": {
3390
- "external_directory": {
3391
- "<root>/companion": "allow",
3392
- "<root>/companion/**": "allow",
3472
+ "permissions": [
3473
+ {
3474
+ "action": "external_directory",
3475
+ "effect": "allow",
3476
+ "resource": "<root>/companion",
3393
3477
  },
3394
- },
3478
+ {
3479
+ "action": "external_directory",
3480
+ "effect": "allow",
3481
+ "resource": "<root>/companion/**",
3482
+ },
3483
+ ],
3395
3484
  "references": {
3396
3485
  "mate": "<root>/companion",
3397
3486
  },
3398
- "skills": {
3399
- "paths": [
3400
- "<root>/companion/.agents/skills",
3401
- ],
3402
- },
3487
+ "skills": [
3488
+ "<root>/companion/.agents/skills",
3489
+ ],
3403
3490
  },
3404
3491
  "OPENCODE_CONFIG_DIR": "<root>/companion/.opencode",
3405
3492
  },
@@ -3499,7 +3586,7 @@ exports[`runtime surface golden fixtures setup openspec × claude+opencode 3`] =
3499
3586
  "regions": [
3500
3587
  {
3501
3588
  "at": [
3502
- "plugin",
3589
+ "plugins",
3503
3590
  ],
3504
3591
  "kind": "list",
3505
3592
  "values": [
@@ -3508,14 +3595,21 @@ exports[`runtime surface golden fixtures setup openspec × claude+opencode 3`] =
3508
3595
  },
3509
3596
  {
3510
3597
  "at": [
3511
- "permission",
3512
- "external_directory",
3598
+ "permissions",
3599
+ ],
3600
+ "kind": "list",
3601
+ "values": [
3602
+ {
3603
+ "action": "external_directory",
3604
+ "effect": "allow",
3605
+ "resource": "<root>/companion",
3606
+ },
3607
+ {
3608
+ "action": "external_directory",
3609
+ "effect": "allow",
3610
+ "resource": "<root>/companion/**",
3611
+ },
3513
3612
  ],
3514
- "entries": {
3515
- "<root>/companion": "allow",
3516
- "<root>/companion/**": "allow",
3517
- },
3518
- "kind": "map",
3519
3613
  },
3520
3614
  ],
3521
3615
  },
@@ -3709,20 +3803,24 @@ Write chunks to $GRAPHIFY_OUT and read $GRAPHIFY_OUT later.
3709
3803
  "$schema": "https://opencode.ai/config.json",
3710
3804
  "compaction": {
3711
3805
  "auto": true,
3712
- "prune": true,
3713
- "reserved": 15000,
3806
+ "buffer": 20000,
3807
+ "keep": {
3808
+ "tokens": 15000,
3809
+ },
3714
3810
  },
3715
3811
  "mcp": {
3716
- "tokensave": {
3717
- "command": [
3718
- "tokensave",
3719
- "serve",
3720
- ],
3721
- "enabled": true,
3722
- "type": "local",
3812
+ "servers": {
3813
+ "tokensave": {
3814
+ "command": [
3815
+ "tokensave",
3816
+ "serve",
3817
+ ],
3818
+ "disabled": false,
3819
+ "type": "local",
3820
+ },
3723
3821
  },
3724
3822
  },
3725
- "plugin": [
3823
+ "plugins": [
3726
3824
  "@uniqbit/mate-opencode-plugin@<version>",
3727
3825
  "context-mode@1.0.169",
3728
3826
  ],
@@ -3730,8 +3828,8 @@ Write chunks to $GRAPHIFY_OUT and read $GRAPHIFY_OUT later.
3730
3828
  "mate": "..",
3731
3829
  },
3732
3830
  "tool_output": {
3733
- "max_bytes": 20000,
3734
- "max_lines": 500,
3831
+ "max_bytes": 40000,
3832
+ "max_lines": 1000,
3735
3833
  },
3736
3834
  },
3737
3835
  "opencodePlugins": {
@@ -3776,13 +3874,7 @@ Write chunks to $GRAPHIFY_OUT and read $GRAPHIFY_OUT later.
3776
3874
  "react-doctor/SKILL.md": "df58b3490543",
3777
3875
  "react-doctor/references/explain.md": "2382ea820f20",
3778
3876
  },
3779
- "opencodeTui": {
3780
- "$schema": "https://opencode.ai/tui.json",
3781
- "plugin": [
3782
- "@uniqbit/mate-opencode-plugin@<version>",
3783
- "context-mode@1.0.169",
3784
- ],
3785
- },
3877
+ "opencodeTui": null,
3786
3878
  }
3787
3879
  `;
3788
3880
 
@@ -3851,6 +3943,7 @@ exports[`runtime surface golden fixtures setup all capabilities × claude+openco
3851
3943
  },
3852
3944
  "opencodeArgs": [
3853
3945
  "<root>/working",
3946
+ "--standalone",
3854
3947
  ],
3855
3948
  "opencodeEnv": {
3856
3949
  "MATE_GUIDANCE_JSON": {
@@ -3902,20 +3995,24 @@ exports[`runtime surface golden fixtures setup all capabilities × claude+openco
3902
3995
  "version": 1,
3903
3996
  },
3904
3997
  "OPENCODE_CONFIG_CONTENT": {
3905
- "permission": {
3906
- "external_directory": {
3907
- "<root>/companion": "allow",
3908
- "<root>/companion/**": "allow",
3998
+ "permissions": [
3999
+ {
4000
+ "action": "external_directory",
4001
+ "effect": "allow",
4002
+ "resource": "<root>/companion",
3909
4003
  },
3910
- },
4004
+ {
4005
+ "action": "external_directory",
4006
+ "effect": "allow",
4007
+ "resource": "<root>/companion/**",
4008
+ },
4009
+ ],
3911
4010
  "references": {
3912
4011
  "mate": "<root>/companion",
3913
4012
  },
3914
- "skills": {
3915
- "paths": [
3916
- "<root>/companion/.agents/skills",
3917
- ],
3918
- },
4013
+ "skills": [
4014
+ "<root>/companion/.agents/skills",
4015
+ ],
3919
4016
  },
3920
4017
  "OPENCODE_CONFIG_DIR": "<root>/companion/.opencode",
3921
4018
  },
@@ -4046,7 +4143,7 @@ exports[`runtime surface golden fixtures setup all capabilities × claude+openco
4046
4143
  "regions": [
4047
4144
  {
4048
4145
  "at": [
4049
- "plugin",
4146
+ "plugins",
4050
4147
  ],
4051
4148
  "kind": "list",
4052
4149
  "values": [
@@ -4056,6 +4153,7 @@ exports[`runtime surface golden fixtures setup all capabilities × claude+openco
4056
4153
  {
4057
4154
  "at": [
4058
4155
  "mcp",
4156
+ "servers",
4059
4157
  ],
4060
4158
  "entries": {
4061
4159
  "tokensave": {
@@ -4063,7 +4161,7 @@ exports[`runtime surface golden fixtures setup all capabilities × claude+openco
4063
4161
  "tokensave",
4064
4162
  "serve",
4065
4163
  ],
4066
- "enabled": true,
4164
+ "disabled": false,
4067
4165
  "type": "local",
4068
4166
  },
4069
4167
  },
@@ -4071,14 +4169,21 @@ exports[`runtime surface golden fixtures setup all capabilities × claude+openco
4071
4169
  },
4072
4170
  {
4073
4171
  "at": [
4074
- "permission",
4075
- "external_directory",
4172
+ "permissions",
4173
+ ],
4174
+ "kind": "list",
4175
+ "values": [
4176
+ {
4177
+ "action": "external_directory",
4178
+ "effect": "allow",
4179
+ "resource": "<root>/companion",
4180
+ },
4181
+ {
4182
+ "action": "external_directory",
4183
+ "effect": "allow",
4184
+ "resource": "<root>/companion/**",
4185
+ },
4076
4186
  ],
4077
- "entries": {
4078
- "<root>/companion": "allow",
4079
- "<root>/companion/**": "allow",
4080
- },
4081
- "kind": "map",
4082
4187
  },
4083
4188
  ],
4084
4189
  },
@@ -4122,28 +4227,25 @@ exports[`runtime surface golden fixtures teardown graphify × claude+opencode 1`
4122
4227
  "$schema": "https://opencode.ai/config.json",
4123
4228
  "compaction": {
4124
4229
  "auto": true,
4125
- "prune": true,
4126
- "reserved": 15000,
4230
+ "buffer": 20000,
4231
+ "keep": {
4232
+ "tokens": 15000,
4233
+ },
4127
4234
  },
4128
- "plugin": [
4235
+ "plugins": [
4129
4236
  "@uniqbit/mate-opencode-plugin@<version>",
4130
4237
  ],
4131
4238
  "references": {
4132
4239
  "mate": "..",
4133
4240
  },
4134
4241
  "tool_output": {
4135
- "max_bytes": 20000,
4136
- "max_lines": 500,
4242
+ "max_bytes": 40000,
4243
+ "max_lines": 1000,
4137
4244
  },
4138
4245
  },
4139
4246
  "opencodePlugins": {},
4140
4247
  "opencodeSkills": {},
4141
- "opencodeTui": {
4142
- "$schema": "https://opencode.ai/tui.json",
4143
- "plugin": [
4144
- "@uniqbit/mate-opencode-plugin@<version>",
4145
- ],
4146
- },
4248
+ "opencodeTui": null,
4147
4249
  }
4148
4250
  `;
4149
4251
 
@@ -4184,28 +4286,25 @@ exports[`runtime surface golden fixtures teardown tokensave × claude+opencode 1
4184
4286
  "$schema": "https://opencode.ai/config.json",
4185
4287
  "compaction": {
4186
4288
  "auto": true,
4187
- "prune": true,
4188
- "reserved": 15000,
4289
+ "buffer": 20000,
4290
+ "keep": {
4291
+ "tokens": 15000,
4292
+ },
4189
4293
  },
4190
- "plugin": [
4294
+ "plugins": [
4191
4295
  "@uniqbit/mate-opencode-plugin@<version>",
4192
4296
  ],
4193
4297
  "references": {
4194
4298
  "mate": "..",
4195
4299
  },
4196
4300
  "tool_output": {
4197
- "max_bytes": 20000,
4198
- "max_lines": 500,
4301
+ "max_bytes": 40000,
4302
+ "max_lines": 1000,
4199
4303
  },
4200
4304
  },
4201
4305
  "opencodePlugins": {},
4202
4306
  "opencodeSkills": {},
4203
- "opencodeTui": {
4204
- "$schema": "https://opencode.ai/tui.json",
4205
- "plugin": [
4206
- "@uniqbit/mate-opencode-plugin@<version>",
4207
- ],
4208
- },
4307
+ "opencodeTui": null,
4209
4308
  }
4210
4309
  `;
4211
4310
 
@@ -4247,28 +4346,25 @@ exports[`runtime surface golden fixtures teardown context-mode × claude+opencod
4247
4346
  "$schema": "https://opencode.ai/config.json",
4248
4347
  "compaction": {
4249
4348
  "auto": true,
4250
- "prune": true,
4251
- "reserved": 15000,
4349
+ "buffer": 20000,
4350
+ "keep": {
4351
+ "tokens": 15000,
4352
+ },
4252
4353
  },
4253
- "plugin": [
4354
+ "plugins": [
4254
4355
  "@uniqbit/mate-opencode-plugin@<version>",
4255
4356
  ],
4256
4357
  "references": {
4257
4358
  "mate": "..",
4258
4359
  },
4259
4360
  "tool_output": {
4260
- "max_bytes": 20000,
4261
- "max_lines": 500,
4361
+ "max_bytes": 40000,
4362
+ "max_lines": 1000,
4262
4363
  },
4263
4364
  },
4264
4365
  "opencodePlugins": {},
4265
4366
  "opencodeSkills": {},
4266
- "opencodeTui": {
4267
- "$schema": "https://opencode.ai/tui.json",
4268
- "plugin": [
4269
- "@uniqbit/mate-opencode-plugin@<version>",
4270
- ],
4271
- },
4367
+ "opencodeTui": null,
4272
4368
  }
4273
4369
  `;
4274
4370
 
@@ -4309,28 +4405,25 @@ exports[`runtime surface golden fixtures teardown react-doctor × claude+opencod
4309
4405
  "$schema": "https://opencode.ai/config.json",
4310
4406
  "compaction": {
4311
4407
  "auto": true,
4312
- "prune": true,
4313
- "reserved": 15000,
4408
+ "buffer": 20000,
4409
+ "keep": {
4410
+ "tokens": 15000,
4411
+ },
4314
4412
  },
4315
- "plugin": [
4413
+ "plugins": [
4316
4414
  "@uniqbit/mate-opencode-plugin@<version>",
4317
4415
  ],
4318
4416
  "references": {
4319
4417
  "mate": "..",
4320
4418
  },
4321
4419
  "tool_output": {
4322
- "max_bytes": 20000,
4323
- "max_lines": 500,
4420
+ "max_bytes": 40000,
4421
+ "max_lines": 1000,
4324
4422
  },
4325
4423
  },
4326
4424
  "opencodePlugins": {},
4327
4425
  "opencodeSkills": {},
4328
- "opencodeTui": {
4329
- "$schema": "https://opencode.ai/tui.json",
4330
- "plugin": [
4331
- "@uniqbit/mate-opencode-plugin@<version>",
4332
- ],
4333
- },
4426
+ "opencodeTui": null,
4334
4427
  }
4335
4428
  `;
4336
4429
 
@@ -4371,28 +4464,25 @@ exports[`runtime surface golden fixtures teardown openspec × claude+opencode 1`
4371
4464
  "$schema": "https://opencode.ai/config.json",
4372
4465
  "compaction": {
4373
4466
  "auto": true,
4374
- "prune": true,
4375
- "reserved": 15000,
4467
+ "buffer": 20000,
4468
+ "keep": {
4469
+ "tokens": 15000,
4470
+ },
4376
4471
  },
4377
- "plugin": [
4472
+ "plugins": [
4378
4473
  "@uniqbit/mate-opencode-plugin@<version>",
4379
4474
  ],
4380
4475
  "references": {
4381
4476
  "mate": "..",
4382
4477
  },
4383
4478
  "tool_output": {
4384
- "max_bytes": 20000,
4385
- "max_lines": 500,
4479
+ "max_bytes": 40000,
4480
+ "max_lines": 1000,
4386
4481
  },
4387
4482
  },
4388
4483
  "opencodePlugins": {},
4389
4484
  "opencodeSkills": {},
4390
- "opencodeTui": {
4391
- "$schema": "https://opencode.ai/tui.json",
4392
- "plugin": [
4393
- "@uniqbit/mate-opencode-plugin@<version>",
4394
- ],
4395
- },
4485
+ "opencodeTui": null,
4396
4486
  }
4397
4487
  `;
4398
4488
 
@@ -4588,13 +4678,15 @@ exports[`working repo golden fixtures hub roots set up providers only without co
4588
4678
  "claudeSkills": {},
4589
4679
  "opencodeConfig": {
4590
4680
  "mcp": {
4591
- "tokensave": {
4592
- "command": [
4593
- "tokensave",
4594
- "serve",
4595
- ],
4596
- "enabled": true,
4597
- "type": "local",
4681
+ "servers": {
4682
+ "tokensave": {
4683
+ "command": [
4684
+ "tokensave",
4685
+ "serve",
4686
+ ],
4687
+ "disabled": false,
4688
+ "type": "local",
4689
+ },
4598
4690
  },
4599
4691
  },
4600
4692
  },