|
|
@@ -65,6 +65,9 @@ export const {
|
|
|
provider_default: Record<string, string>
|
|
|
provider_next: ProviderListResponse
|
|
|
console_state: ConsoleState
|
|
|
+ capabilities: {
|
|
|
+ experimentalBackgroundSubagents: boolean
|
|
|
+ }
|
|
|
provider_auth: Record<string, ProviderAuthMethod[]>
|
|
|
agent: Agent[]
|
|
|
command: Command[]
|
|
|
@@ -107,6 +110,9 @@ export const {
|
|
|
connected: [],
|
|
|
},
|
|
|
console_state: emptyConsoleState,
|
|
|
+ capabilities: {
|
|
|
+ experimentalBackgroundSubagents: false,
|
|
|
+ },
|
|
|
provider_auth: {},
|
|
|
config: {},
|
|
|
status: "loading",
|
|
|
@@ -434,6 +440,10 @@ export const {
|
|
|
// blocking - include session.list when continuing a session
|
|
|
const providersPromise = sdk.client.config.providers({ workspace }, { throwOnError: true })
|
|
|
const providerListPromise = sdk.client.provider.list({ workspace }, { throwOnError: true })
|
|
|
+ const capabilitiesPromise = sdk.client.experimental.capabilities
|
|
|
+ .get({ workspace }, { throwOnError: true })
|
|
|
+ .then((x) => x.data)
|
|
|
+ .catch(() => undefined)
|
|
|
const consoleStatePromise = sdk.client.experimental.console
|
|
|
.get({ workspace }, { throwOnError: true })
|
|
|
.then((x) => x.data)
|
|
|
@@ -443,6 +453,7 @@ export const {
|
|
|
await Promise.all([
|
|
|
providersPromise,
|
|
|
providerListPromise,
|
|
|
+ capabilitiesPromise,
|
|
|
agentsPromise,
|
|
|
configPromise,
|
|
|
projectPromise,
|
|
|
@@ -451,6 +462,7 @@ export const {
|
|
|
.then(async () => {
|
|
|
const providersResponse = providersPromise.then((x) => x.data!)
|
|
|
const providerListResponse = providerListPromise.then((x) => x.data!)
|
|
|
+ const capabilitiesResponse = capabilitiesPromise
|
|
|
const consoleStateResponse = consoleStatePromise
|
|
|
const agentsResponse = agentsPromise.then((x) => x.data ?? [])
|
|
|
const configResponse = configPromise.then((x) => x.data!)
|
|
|
@@ -459,6 +471,7 @@ export const {
|
|
|
return Promise.all([
|
|
|
providersResponse,
|
|
|
providerListResponse,
|
|
|
+ capabilitiesResponse,
|
|
|
consoleStateResponse,
|
|
|
agentsResponse,
|
|
|
configResponse,
|
|
|
@@ -466,15 +479,21 @@ export const {
|
|
|
]).then((responses) => {
|
|
|
const providers = responses[0]
|
|
|
const providerList = responses[1]
|
|
|
- const consoleState = responses[2]
|
|
|
- const agents = responses[3]
|
|
|
- const config = responses[4]
|
|
|
- const sessions = responses[5]
|
|
|
+ const capabilities = responses[2]
|
|
|
+ const consoleState = responses[3]
|
|
|
+ const agents = responses[4]
|
|
|
+ const config = responses[5]
|
|
|
+ const sessions = responses[6]
|
|
|
|
|
|
batch(() => {
|
|
|
setStore("provider", reconcile(providers.providers))
|
|
|
setStore("provider_default", reconcile(providers.default))
|
|
|
setStore("provider_next", reconcile(providerList))
|
|
|
+ setStore(
|
|
|
+ "capabilities",
|
|
|
+ "experimentalBackgroundSubagents",
|
|
|
+ capabilities?.backgroundSubagents === true,
|
|
|
+ )
|
|
|
setStore("console_state", reconcile(consoleState))
|
|
|
setStore("agent", reconcile(agents))
|
|
|
setStore("config", reconcile(config))
|