@coreplane/switchboard 1.232.0 → 1.234.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 (34) hide show
  1. package/dist/assets/.env.example +2 -0
  2. package/dist/assets/config/config.example.yaml +14 -12
  3. package/dist/assets/deploy/cloudflare-resident/worker.ts +200 -214
  4. package/dist/assets/package-lock.json +3 -3
  5. package/dist/assets/package.json +1 -1
  6. package/dist/assets/source.json +3 -3
  7. package/dist/assets/src/agents/registry.ts +13 -7
  8. package/dist/assets/src/core/provider.ts +9 -6
  9. package/dist/assets/src/core/runEvents.ts +18 -0
  10. package/dist/assets/src/execution/residentCleanliness.ts +45 -5
  11. package/dist/assets/src/execution/residentRebind.ts +92 -77
  12. package/dist/assets/src/execution/residentReuse.ts +7 -18
  13. package/dist/assets/src/execution/residentSteps.ts +0 -1
  14. package/dist/assets/web/dist/.vite/manifest.json +67 -28
  15. package/dist/assets/web/dist/assets/{ResidentDetailPage-V4K35SYX.js → ResidentDetailPage-C_WNBUao.js} +1 -1
  16. package/dist/assets/web/dist/assets/{ResidentsIndexPage-3HuYaDwD.js → ResidentsIndexPage-D1sTyaZ_.js} +1 -1
  17. package/dist/assets/web/dist/assets/RunFoldRow-C_bcTSjA.js +5 -0
  18. package/dist/assets/web/dist/assets/RunRoutePage-BWTi_6PG.js +10 -0
  19. package/dist/assets/web/dist/assets/RunsIndexPage-H6GkSv0a.js +1 -0
  20. package/dist/assets/web/dist/assets/{ScheduledPage-dfrjQ5E9.js → ScheduledPage-BLcPzm1S.js} +1 -1
  21. package/dist/assets/web/dist/assets/{StatusDot-DexKtvUC.js → StatusDot-Ct6AtHhS.js} +1 -1
  22. package/dist/assets/web/dist/assets/{Tooltip-DGQ2gu9M.js → Tooltip-qol5Boof.js} +1 -1
  23. package/dist/assets/web/dist/assets/UnitRoutePage-CIhTEwN7.js +1 -0
  24. package/dist/assets/web/dist/assets/{dist-boTdDLF4.js → dist-DwtJj-ou.js} +1 -1
  25. package/dist/assets/web/dist/assets/favicon-BQsePYv5.js +1 -0
  26. package/dist/assets/web/dist/assets/indexRow-Bnj883ii.js +1 -0
  27. package/dist/assets/web/dist/assets/{main-BHhLVMQh.js → main-CRtlGxRm.js} +2 -2
  28. package/dist/assets/web/dist/assets/main-Dm11o0hc.css +1 -0
  29. package/dist/cli.js +1170 -571
  30. package/package.json +1 -1
  31. package/dist/assets/web/dist/assets/RunRoutePage-Dr867-Ha.js +0 -13
  32. package/dist/assets/web/dist/assets/RunsIndexPage-D_lpXsr8.js +0 -1
  33. package/dist/assets/web/dist/assets/favicon-CWPcvWvp.js +0 -1
  34. package/dist/assets/web/dist/assets/main-CAVqMbiX.css +0 -1
@@ -5,6 +5,8 @@ SLACK_APP_TOKEN=xapp-...
5
5
  # Providers (referenced by apiKeyEnv in config.yaml)
6
6
  ANTHROPIC_API_KEY=sk-ant-...
7
7
  OPENAI_API_KEY=sk-...
8
+ # OpenRouter (optional): the key behind the example's `openrouter` provider block; `init --openrouter-key` fills it.
9
+ # OPENROUTER_API_KEY=sk-or-...
8
10
 
9
11
  # Sandboxed execution (execution.type: e2b in config.yaml)
10
12
  E2B_API_KEY=e2b_...
@@ -20,18 +20,20 @@ providers:
20
20
  # type: openai-compatible
21
21
  # baseUrl: https://api.groq.com/openai/v1
22
22
  # apiKeyEnv: GROQ_API_KEY
23
- # OpenRouter: one key, many vendors' models. Its model ids already carry the
24
- # vendor, so a model is named openrouter/anthropic/claude-sonnet-4 (the first
25
- # slash separates the provider; the rest is passed through). The compatible
26
- # adapter sends no effort tier, turns document inputs into a text note and
27
- # asks for no provider-side prompt caching. The request router and memory
28
- # reflection reach it through pi's model library instead (the same block,
29
- # the same key), which applies its own OpenRouter rules there, prompt-cache
30
- # markers included.
31
- # openrouter:
32
- # type: openai-compatible
33
- # baseUrl: https://openrouter.ai/api/v1
34
- # apiKeyEnv: OPENROUTER_API_KEY
23
+ # OpenRouter: one key, many vendors' models, on the same compatible adapter.
24
+ # Its model ids already carry the vendor, so any preset's model may be
25
+ # openrouter/<vendor>/<model> — e.g. openrouter/anthropic/claude-sonnet-4:
26
+ # the first slash names this block, the rest is the model id passed through.
27
+ # OPENROUTER_API_KEY is read at the first model call, never at load, so
28
+ # without it every other block runs as today and only a run on this one
29
+ # fails, by that name. Effort tiers, documents and prompt caching ride the
30
+ # compatible adapter as far as it carries them: pi applies its OpenRouter
31
+ # rules (prompt-cache markers included); a document becomes a text note.
32
+ # `switchboard init` keeps this block only with --openrouter-key.
33
+ openrouter:
34
+ type: openai-compatible
35
+ baseUrl: https://openrouter.ai/api/v1
36
+ apiKeyEnv: OPENROUTER_API_KEY
35
37
  # local:
36
38
  # type: openai-compatible
37
39
  # baseUrl: http://localhost:11434/v1 # Ollama