config.proto
Generated from proto/blitz/v1/config.proto by proto-gen-md-diagrams.
| Import | Description |
|---|---|
| google/protobuf/timestamp.proto |
| Name | Value | Description |
|---|---|---|
| go_package | github.com/retail-cortex/blitz/proto/blitz/v1 |
classDiagram
direction LR
%% Mermaid Diagram for package: blitz.v1
%% Request message for ConfigService.GetInterfaceLanguage.
class GetInterfaceLanguageRequest {
}
%% Response message for ConfigService.GetInterfaceLanguage.
class GetInterfaceLanguageResponse {
+ string locale
+ List~string~ catalogs
}
%% One provider's settings in a scope, and where its API key comes from (never the key).
class ProviderConfig {
+ string name
+ KeySource key_source
+ bool key_missing
+ string base_url
+ string model
+ string auth
+ string project_id
+ string location
+ string profile
}
ProviderConfig --> `KeySource`
%% How a provider signs in.
class ProviderAuth {
+ string method
+ string project_id
+ string location
+ string profile
}
%% Request message for ConfigService.DescribeConfig.
class DescribeConfigRequest {
+ string workspace
}
%% Response message for ConfigService.DescribeConfig.
class DescribeConfigResponse {
+ string path
+ string provider
+ string default_model
+ List~ProviderConfig~ providers
+ string secret_store
}
DescribeConfigResponse --> `ProviderConfig`
%% After a change: the file written, and why the scope's workspace (for a workspace scope, if it's open) still can't build its model ("" if it can).
class ConfigChange {
+ string path
+ string model_error
}
%% Request message for ConfigService.SetApiKey.
class SetApiKeyRequest {
+ string workspace
+ string provider
+ string key
}
%% Response message for ConfigService.SetApiKey.
class SetApiKeyResponse {
+ ConfigChange change
}
SetApiKeyResponse --> `ConfigChange`
%% Request message for ConfigService.SecureApiKey.
class SecureApiKeyRequest {
+ string workspace
+ string provider
}
%% Response message for ConfigService.SecureApiKey.
class SecureApiKeyResponse {
+ ConfigChange change
}
SecureApiKeyResponse --> `ConfigChange`
%% Request message for ConfigService.RemoveApiKey.
class RemoveApiKeyRequest {
+ string workspace
+ string provider
}
%% Response message for ConfigService.RemoveApiKey.
class RemoveApiKeyResponse {
+ ConfigChange change
}
RemoveApiKeyResponse --> `ConfigChange`
%% Request message for ConfigService.SetConfigValue.
class SetConfigValueRequest {
+ string workspace
+ string key
+ string value
}
%% Response message for ConfigService.SetConfigValue.
class SetConfigValueResponse {
+ ConfigChange change
}
SetConfigValueResponse --> `ConfigChange`
%% Request message for ConfigService.SetProvider.
class SetProviderRequest {
+ string workspace
+ string provider
+ string default_model
+ string key
+ ProviderAuth auth
}
SetProviderRequest --> `ProviderAuth`
%% Response message for ConfigService.SetProvider.
class SetProviderResponse {
+ ConfigChange change
}
SetProviderResponse --> `ConfigChange`
%% Request message for ConfigService.GetConfigFile.
class GetConfigFileRequest {
+ string workspace
}
%% Response message for ConfigService.GetConfigFile.
class GetConfigFileResponse {
+ string path
+ string text
}
%% Request message for ConfigService.SaveConfigFile.
class SaveConfigFileRequest {
+ string workspace
+ string text
}
%% Response message for ConfigService.SaveConfigFile.
class SaveConfigFileResponse {
+ ConfigChange change
+ List~string~ warnings
}
SaveConfigFileResponse --> `ConfigChange`
%% Request message for ConfigService.CheckConfigFile.
class CheckConfigFileRequest {
+ string text
}
%% Something wrong with a settings file.
class ConfigProblem {
+ int32 line
+ int32 column
+ bool error
+ string message
}
%% Response message for ConfigService.CheckConfigFile.
class CheckConfigFileResponse {
+ List~ConfigProblem~ problems
}
CheckConfigFileResponse --> `ConfigProblem`
%% Request message for ConfigService.GetSettingsReference.
class GetSettingsReferenceRequest {
}
%% One entry of the settings reference.
class SettingInfo {
+ string key
+ string type
+ string default
+ string doc
}
%% Request message for ConfigService.ListModels.
class ListModelsRequest {
+ string workspace
+ List~string~ providers
}
%% A listed model with the price Blitz knows for it.
class ListedModel {
+ string id
+ bool has_price
+ double input_per_mtok
+ double output_per_mtok
}
%% Request message for ConfigService.GetSignIn.
class GetSignInRequest {
+ string workspace
+ string provider
+ string profile
}
%% A provider's sign-in.
class SignInStatus {
+ string provider
+ string tool
+ bool tool_found
+ string install
+ bool signed_in
+ string detail
}
%% Response message for ConfigService.GetSignIn.
class GetSignInResponse {
+ List~SignInStatus~ statuses
}
GetSignInResponse --> `SignInStatus`
%% Request message for ConfigService.SignIn.
class SignInRequest {
+ string workspace
+ string provider
+ string profile
}
%% Response message for ConfigService.SignIn: a line the tool printed, or the end.
class SignInResponse {
+ string line
+ string url
+ string code
+ bool done
+ SignInStatus status
}
SignInResponse --> `SignInStatus`
%% Request message for ConfigService.SignOut.
class SignOutRequest {
+ string workspace
+ string provider
+ string profile
}
%% Response message for ConfigService.SignOut.
class SignOutResponse {
+ SignInStatus status
}
SignOutResponse --> `SignInStatus`
%% ProviderModels are one provider's models.
class ProviderModels {
+ string provider
+ List~string~ ids
+ string error
+ string note
+ List~ListedModel~ models
}
ProviderModels --> `ListedModel`
%% Response message for ConfigService.ListModels.
class ListModelsResponse {
+ List~ProviderModels~ providers
+ string default_provider
}
ListModelsResponse --> `ProviderModels`
%% Response message for ConfigService.GetSettingsReference.
class GetSettingsReferenceResponse {
+ List~SettingInfo~ settings
}
GetSettingsReferenceResponse --> `SettingInfo`
%% A rule in a settings file's [permissions].
class PermissionEntry {
+ string effect
+ string rule
}
%% Request message for ConfigService.DescribePermissions.
class DescribePermissionsRequest {
+ string workspace
}
%% Response message for ConfigService.DescribePermissions.
class DescribePermissionsResponse {
+ string path
+ List~PermissionEntry~ rules
+ List~PermissionEntry~ inherited
+ string read_only_defaults
+ bool read_only_defaults_on
+ List~string~ read_only_commands
+ List~string~ read_only_guards
}
DescribePermissionsResponse --> `PermissionEntry`
DescribePermissionsResponse --> `PermissionEntry`
%% Request message for ConfigService.AddPermission.
class AddPermissionRequest {
+ string workspace
+ string effect
+ string rule
}
%% Response message for ConfigService.AddPermission.
class AddPermissionResponse {
+ ConfigChange change
+ string rule
}
AddPermissionResponse --> `ConfigChange`
%% Request message for ConfigService.RemovePermission.
class RemovePermissionRequest {
+ string workspace
+ string rule
}
%% Response message for ConfigService.RemovePermission.
class RemovePermissionResponse {
+ ConfigChange change
+ int32 removed
}
RemovePermissionResponse --> `ConfigChange`
%% Request message for ConfigService.CheckPermission.
class CheckPermissionRequest {
+ string effect
+ string rule
+ string sample
}
%% Response message for ConfigService.CheckPermission.
class CheckPermissionResponse {
+ string error
+ string rule
+ string kind
+ string pattern
+ string form
+ bool tested
+ bool matches
+ string redirect
}
%% Request message for ConfigService.SetReadOnlyDefaults.
class SetReadOnlyDefaultsRequest {
+ string workspace
+ string value
}
%% Response message for ConfigService.SetReadOnlyDefaults.
class SetReadOnlyDefaultsResponse {
+ ConfigChange change
}
SetReadOnlyDefaultsResponse --> `ConfigChange`
%% A skill registry the user added.
class SkillRegistry {
+ string name
+ string url
+ bool has_token
}
%% A skill a registry offers.
class RegistrySkill {
+ string registry
+ string name
+ string description
+ string version
+ string castor_id
}
%% A skill installed from a registry.
class InstalledSkill {
+ string name
+ string registry
+ string version
+ string dir
+ google.protobuf.Timestamp installed
+ SkillReview review
}
InstalledSkill --> `SkillReview`
%% What a skill's scripts are, for the user to review before trusting them (spec_skills_013 SK-108).
class SkillReview {
+ string dir
+ string hash
+ List~ReviewScript~ scripts
}
SkillReview --> `ReviewScript`
%% One script under review.
class ReviewScript {
+ string name
+ string language
+ string source
+ List~string~ deps
}
%% Request message for ConfigService.ListSkillRegistries.
class ListSkillRegistriesRequest {
}
%% Response message for ConfigService.ListSkillRegistries.
class ListSkillRegistriesResponse {
+ List~SkillRegistry~ registries
+ List~InstalledSkill~ installed
}
ListSkillRegistriesResponse --> `SkillRegistry`
ListSkillRegistriesResponse --> `InstalledSkill`
%% Request message for ConfigService.AddSkillRegistry.
class AddSkillRegistryRequest {
+ string url
+ string name
+ string token
}
%% Response message for ConfigService.AddSkillRegistry.
class AddSkillRegistryResponse {
+ SkillRegistry registry
+ int32 skills
}
AddSkillRegistryResponse --> `SkillRegistry`
%% Request message for ConfigService.RemoveSkillRegistry.
class RemoveSkillRegistryRequest {
+ string name
}
%% Response message for ConfigService.RemoveSkillRegistry.
class RemoveSkillRegistryResponse {
}
%% Request message for ConfigService.SearchRegistrySkills.
class SearchRegistrySkillsRequest {
+ string query
}
%% Response message for ConfigService.SearchRegistrySkills.
class SearchRegistrySkillsResponse {
+ List~RegistrySkill~ skills
+ List~string~ problems
}
SearchRegistrySkillsResponse --> `RegistrySkill`
%% Request message for ConfigService.InstallRegistrySkill.
class InstallRegistrySkillRequest {
+ string ref
+ string workspace
}
%% Response message for ConfigService.InstallRegistrySkill.
class InstallRegistrySkillResponse {
+ InstalledSkill skill
}
InstallRegistrySkillResponse --> `InstalledSkill`
%% Request message for ConfigService.UpdateRegistrySkills.
class UpdateRegistrySkillsRequest {
+ List~string~ names
}
%% Response message for ConfigService.UpdateRegistrySkills.
class UpdateRegistrySkillsResponse {
+ List~InstalledSkill~ updated
+ List~string~ problems
}
UpdateRegistrySkillsResponse --> `InstalledSkill`
%% Request message for ConfigService.UninstallRegistrySkill.
class UninstallRegistrySkillRequest {
+ string name
+ string workspace
}
%% Response message for ConfigService.UninstallRegistrySkill.
class UninstallRegistrySkillResponse {
+ InstalledSkill skill
}
UninstallRegistrySkillResponse --> `InstalledSkill`
%% MCPServerConfig is an MCP server's settings ([[mcp.servers]]): exactly one of command (stdio) and url (streamable HTTP).
class MCPServerConfig {
+ string name
+ string command
+ List~string~ args
+ Map~string, string~ env
+ string url
+ Map~string, string~ headers
+ bool disabled
+ List~string~ tools
+ bool auto_approve
+ Optional~bool~ sandbox
+ string prefix
+ List~string~ agents
+ int32 timeout_seconds
}
%% Request message for ConfigService.ListMCPServerConfigs.
class ListMCPServerConfigsRequest {
}
%% Response message for ConfigService.ListMCPServerConfigs.
class ListMCPServerConfigsResponse {
+ List~MCPServerConfig~ servers
+ string path
}
ListMCPServerConfigsResponse --> `MCPServerConfig`
%% Request message for ConfigService.SaveMCPServer.
class SaveMCPServerRequest {
+ string name
+ MCPServerConfig server
}
SaveMCPServerRequest --> `MCPServerConfig`
%% Response message for ConfigService.SaveMCPServer.
class SaveMCPServerResponse {
+ ConfigChange change
}
SaveMCPServerResponse --> `ConfigChange`
%% Request message for ConfigService.RemoveMCPServer.
class RemoveMCPServerRequest {
+ string name
}
%% Response message for ConfigService.RemoveMCPServer.
class RemoveMCPServerResponse {
+ ConfigChange change
}
RemoveMCPServerResponse --> `ConfigChange`
%% Request message for ConfigService.SetMCPServerEnabled.
class SetMCPServerEnabledRequest {
+ string name
+ bool enabled
}
%% Response message for ConfigService.SetMCPServerEnabled.
class SetMCPServerEnabledResponse {
+ ConfigChange change
}
SetMCPServerEnabledResponse --> `ConfigChange`
%% BuiltinSkill is a skill Blitz ships with.
class BuiltinSkill {
+ string name
+ string description
+ string version
}
%% Request message for ConfigService.ListBuiltinSkills.
class ListBuiltinSkillsRequest {
}
%% Response message for ConfigService.ListBuiltinSkills.
class ListBuiltinSkillsResponse {
+ List~BuiltinSkill~ skills
}
ListBuiltinSkillsResponse --> `BuiltinSkill`
%% Secret is one of the user's secrets, as listed: its key ({secrets:key} in prompts and settings) and when its value was set; never the value.
class Secret {
+ string key
+ google.protobuf.Timestamp updated
}
%% Request message for ConfigService.ListSecrets.
class ListSecretsRequest {
+ string workspace
}
%% Response message for ConfigService.ListSecrets.
class ListSecretsResponse {
+ List~Secret~ secrets
+ string store
+ string prefix
}
ListSecretsResponse --> `Secret`
%% Request message for ConfigService.SetSecret.
class SetSecretRequest {
+ string workspace
+ string key
+ string value
}
%% Response message for ConfigService.SetSecret.
class SetSecretResponse {
}
%% Request message for ConfigService.DeleteSecret.
class DeleteSecretRequest {
+ string workspace
+ string key
}
%% Response message for ConfigService.DeleteSecret.
class DeleteSecretResponse {
}
%% Request message for ConfigService.TrustSkillScripts.
class TrustSkillScriptsRequest {
+ string dir
+ string hash
}
%% Response message for ConfigService.TrustSkillScripts.
class TrustSkillScriptsResponse {
}
%% Request message for ConfigService.GetSkillReview.
class GetSkillReviewRequest {
+ string dir
}
%% Response message for ConfigService.GetSkillReview.
class GetSkillReviewResponse {
+ SkillReview review
}
GetSkillReviewResponse --> `SkillReview`
%% KeySource says where a provider's API key comes from.
class KeySource{
<<enumeration>>
KEY_SOURCE_UNSPECIFIED
KEY_SOURCE_NONE
KEY_SOURCE_KEYCHAIN
KEY_SOURCE_PLAIN
KEY_SOURCE_OBFUSCATED
KEY_SOURCE_ENVIRONMENT
KEY_SOURCE_INHERITED
}
class ConfigService {
<<service>>
+DescribeConfig(DescribeConfigRequest) DescribeConfigResponse
+ListModels(ListModelsRequest) ListModelsResponse
+GetSignIn(GetSignInRequest) GetSignInResponse
+SignIn(SignInRequest) Stream~SignInResponse~
+SignOut(SignOutRequest) SignOutResponse
+SetApiKey(SetApiKeyRequest) SetApiKeyResponse
+SecureApiKey(SecureApiKeyRequest) SecureApiKeyResponse
+RemoveApiKey(RemoveApiKeyRequest) RemoveApiKeyResponse
+SetProvider(SetProviderRequest) SetProviderResponse
+SetConfigValue(SetConfigValueRequest) SetConfigValueResponse
+DescribePermissions(DescribePermissionsRequest) DescribePermissionsResponse
+AddPermission(AddPermissionRequest) AddPermissionResponse
+RemovePermission(RemovePermissionRequest) RemovePermissionResponse
+CheckPermission(CheckPermissionRequest) CheckPermissionResponse
+SetReadOnlyDefaults(SetReadOnlyDefaultsRequest) SetReadOnlyDefaultsResponse
+GetConfigFile(GetConfigFileRequest) GetConfigFileResponse
+SaveConfigFile(SaveConfigFileRequest) SaveConfigFileResponse
+CheckConfigFile(CheckConfigFileRequest) CheckConfigFileResponse
+GetSettingsReference(GetSettingsReferenceRequest) GetSettingsReferenceResponse
+GetInterfaceLanguage(GetInterfaceLanguageRequest) GetInterfaceLanguageResponse
+ListSkillRegistries(ListSkillRegistriesRequest) ListSkillRegistriesResponse
+AddSkillRegistry(AddSkillRegistryRequest) AddSkillRegistryResponse
+RemoveSkillRegistry(RemoveSkillRegistryRequest) RemoveSkillRegistryResponse
+SearchRegistrySkills(SearchRegistrySkillsRequest) SearchRegistrySkillsResponse
+InstallRegistrySkill(InstallRegistrySkillRequest) InstallRegistrySkillResponse
+UpdateRegistrySkills(UpdateRegistrySkillsRequest) UpdateRegistrySkillsResponse
+UninstallRegistrySkill(UninstallRegistrySkillRequest) UninstallRegistrySkillResponse
+ListSecrets(ListSecretsRequest) ListSecretsResponse
+SetSecret(SetSecretRequest) SetSecretResponse
+DeleteSecret(DeleteSecretRequest) DeleteSecretResponse
+ListBuiltinSkills(ListBuiltinSkillsRequest) ListBuiltinSkillsResponse
+TrustSkillScripts(TrustSkillScriptsRequest) TrustSkillScriptsResponse
+GetSkillReview(GetSkillReviewRequest) GetSkillReviewResponse
+ListMCPServerConfigs(ListMCPServerConfigsRequest) ListMCPServerConfigsResponse
+SaveMCPServer(SaveMCPServerRequest) SaveMCPServerResponse
+RemoveMCPServer(RemoveMCPServerRequest) RemoveMCPServerResponse
+SetMCPServerEnabled(SetMCPServerEnabledRequest) SetMCPServerEnabledResponse
}
ConfigService --> `DescribeConfigRequest`
ConfigService --> `DescribeConfigResponse`
ConfigService --> `ListModelsRequest`
ConfigService --> `ListModelsResponse`
ConfigService --> `GetSignInRequest`
ConfigService --> `GetSignInResponse`
ConfigService --> `SignInRequest`
ConfigService --o `SignInResponse` : server stream
ConfigService --> `SignOutRequest`
ConfigService --> `SignOutResponse`
ConfigService --> `SetApiKeyRequest`
ConfigService --> `SetApiKeyResponse`
ConfigService --> `SecureApiKeyRequest`
ConfigService --> `SecureApiKeyResponse`
ConfigService --> `RemoveApiKeyRequest`
ConfigService --> `RemoveApiKeyResponse`
ConfigService --> `SetProviderRequest`
ConfigService --> `SetProviderResponse`
ConfigService --> `SetConfigValueRequest`
ConfigService --> `SetConfigValueResponse`
ConfigService --> `DescribePermissionsRequest`
ConfigService --> `DescribePermissionsResponse`
ConfigService --> `AddPermissionRequest`
ConfigService --> `AddPermissionResponse`
ConfigService --> `RemovePermissionRequest`
ConfigService --> `RemovePermissionResponse`
ConfigService --> `CheckPermissionRequest`
ConfigService --> `CheckPermissionResponse`
ConfigService --> `SetReadOnlyDefaultsRequest`
ConfigService --> `SetReadOnlyDefaultsResponse`
ConfigService --> `GetConfigFileRequest`
ConfigService --> `GetConfigFileResponse`
ConfigService --> `SaveConfigFileRequest`
ConfigService --> `SaveConfigFileResponse`
ConfigService --> `CheckConfigFileRequest`
ConfigService --> `CheckConfigFileResponse`
ConfigService --> `GetSettingsReferenceRequest`
ConfigService --> `GetSettingsReferenceResponse`
ConfigService --> `GetInterfaceLanguageRequest`
ConfigService --> `GetInterfaceLanguageResponse`
ConfigService --> `ListSkillRegistriesRequest`
ConfigService --> `ListSkillRegistriesResponse`
ConfigService --> `AddSkillRegistryRequest`
ConfigService --> `AddSkillRegistryResponse`
ConfigService --> `RemoveSkillRegistryRequest`
ConfigService --> `RemoveSkillRegistryResponse`
ConfigService --> `SearchRegistrySkillsRequest`
ConfigService --> `SearchRegistrySkillsResponse`
ConfigService --> `InstallRegistrySkillRequest`
ConfigService --> `InstallRegistrySkillResponse`
ConfigService --> `UpdateRegistrySkillsRequest`
ConfigService --> `UpdateRegistrySkillsResponse`
ConfigService --> `UninstallRegistrySkillRequest`
ConfigService --> `UninstallRegistrySkillResponse`
ConfigService --> `ListSecretsRequest`
ConfigService --> `ListSecretsResponse`
ConfigService --> `SetSecretRequest`
ConfigService --> `SetSecretResponse`
ConfigService --> `DeleteSecretRequest`
ConfigService --> `DeleteSecretResponse`
ConfigService --> `ListBuiltinSkillsRequest`
ConfigService --> `ListBuiltinSkillsResponse`
ConfigService --> `TrustSkillScriptsRequest`
ConfigService --> `TrustSkillScriptsResponse`
ConfigService --> `GetSkillReviewRequest`
ConfigService --> `GetSkillReviewResponse`
ConfigService --> `ListMCPServerConfigsRequest`
ConfigService --> `ListMCPServerConfigsResponse`
ConfigService --> `SaveMCPServerRequest`
ConfigService --> `SaveMCPServerResponse`
ConfigService --> `RemoveMCPServerRequest`
ConfigService --> `RemoveMCPServerResponse`
ConfigService --> `SetMCPServerEnabledRequest`
ConfigService --> `SetMCPServerEnabledResponse`
FQN: blitz.v1
ConfigService reads and changes the settings: the global file (~/.blitz/.env.toml) and each workspace's own (kept under ~/.blitz, never in the workspace). API keys are kept in the OS keychain; the files refer to them. After a change, open workspaces reload their provider settings and rebuild their model; other settings apply when a workspace next opens. Every request names its scope: workspace is an absolute directory, or "" for the global settings.
classDiagram
direction LR
class ConfigService {
<<service>>
+DescribeConfig(DescribeConfigRequest) DescribeConfigResponse
+ListModels(ListModelsRequest) ListModelsResponse
+GetSignIn(GetSignInRequest) GetSignInResponse
+SignIn(SignInRequest) Stream~SignInResponse~
+SignOut(SignOutRequest) SignOutResponse
+SetApiKey(SetApiKeyRequest) SetApiKeyResponse
+SecureApiKey(SecureApiKeyRequest) SecureApiKeyResponse
+RemoveApiKey(RemoveApiKeyRequest) RemoveApiKeyResponse
+SetProvider(SetProviderRequest) SetProviderResponse
+SetConfigValue(SetConfigValueRequest) SetConfigValueResponse
+DescribePermissions(DescribePermissionsRequest) DescribePermissionsResponse
+AddPermission(AddPermissionRequest) AddPermissionResponse
+RemovePermission(RemovePermissionRequest) RemovePermissionResponse
+CheckPermission(CheckPermissionRequest) CheckPermissionResponse
+SetReadOnlyDefaults(SetReadOnlyDefaultsRequest) SetReadOnlyDefaultsResponse
+GetConfigFile(GetConfigFileRequest) GetConfigFileResponse
+SaveConfigFile(SaveConfigFileRequest) SaveConfigFileResponse
+CheckConfigFile(CheckConfigFileRequest) CheckConfigFileResponse
+GetSettingsReference(GetSettingsReferenceRequest) GetSettingsReferenceResponse
+GetInterfaceLanguage(GetInterfaceLanguageRequest) GetInterfaceLanguageResponse
+ListSkillRegistries(ListSkillRegistriesRequest) ListSkillRegistriesResponse
+AddSkillRegistry(AddSkillRegistryRequest) AddSkillRegistryResponse
+RemoveSkillRegistry(RemoveSkillRegistryRequest) RemoveSkillRegistryResponse
+SearchRegistrySkills(SearchRegistrySkillsRequest) SearchRegistrySkillsResponse
+InstallRegistrySkill(InstallRegistrySkillRequest) InstallRegistrySkillResponse
+UpdateRegistrySkills(UpdateRegistrySkillsRequest) UpdateRegistrySkillsResponse
+UninstallRegistrySkill(UninstallRegistrySkillRequest) UninstallRegistrySkillResponse
+ListSecrets(ListSecretsRequest) ListSecretsResponse
+SetSecret(SetSecretRequest) SetSecretResponse
+DeleteSecret(DeleteSecretRequest) DeleteSecretResponse
+ListBuiltinSkills(ListBuiltinSkillsRequest) ListBuiltinSkillsResponse
+TrustSkillScripts(TrustSkillScriptsRequest) TrustSkillScriptsResponse
+GetSkillReview(GetSkillReviewRequest) GetSkillReviewResponse
+ListMCPServerConfigs(ListMCPServerConfigsRequest) ListMCPServerConfigsResponse
+SaveMCPServer(SaveMCPServerRequest) SaveMCPServerResponse
+RemoveMCPServer(RemoveMCPServerRequest) RemoveMCPServerResponse
+SetMCPServerEnabled(SetMCPServerEnabledRequest) SetMCPServerEnabledResponse
}
ConfigService --> `DescribeConfigRequest`
ConfigService --> `DescribeConfigResponse`
ConfigService --> `ListModelsRequest`
ConfigService --> `ListModelsResponse`
ConfigService --> `GetSignInRequest`
ConfigService --> `GetSignInResponse`
ConfigService --> `SignInRequest`
ConfigService --o `SignInResponse` : server stream
ConfigService --> `SignOutRequest`
ConfigService --> `SignOutResponse`
ConfigService --> `SetApiKeyRequest`
ConfigService --> `SetApiKeyResponse`
ConfigService --> `SecureApiKeyRequest`
ConfigService --> `SecureApiKeyResponse`
ConfigService --> `RemoveApiKeyRequest`
ConfigService --> `RemoveApiKeyResponse`
ConfigService --> `SetProviderRequest`
ConfigService --> `SetProviderResponse`
ConfigService --> `SetConfigValueRequest`
ConfigService --> `SetConfigValueResponse`
ConfigService --> `DescribePermissionsRequest`
ConfigService --> `DescribePermissionsResponse`
ConfigService --> `AddPermissionRequest`
ConfigService --> `AddPermissionResponse`
ConfigService --> `RemovePermissionRequest`
ConfigService --> `RemovePermissionResponse`
ConfigService --> `CheckPermissionRequest`
ConfigService --> `CheckPermissionResponse`
ConfigService --> `SetReadOnlyDefaultsRequest`
ConfigService --> `SetReadOnlyDefaultsResponse`
ConfigService --> `GetConfigFileRequest`
ConfigService --> `GetConfigFileResponse`
ConfigService --> `SaveConfigFileRequest`
ConfigService --> `SaveConfigFileResponse`
ConfigService --> `CheckConfigFileRequest`
ConfigService --> `CheckConfigFileResponse`
ConfigService --> `GetSettingsReferenceRequest`
ConfigService --> `GetSettingsReferenceResponse`
ConfigService --> `GetInterfaceLanguageRequest`
ConfigService --> `GetInterfaceLanguageResponse`
ConfigService --> `ListSkillRegistriesRequest`
ConfigService --> `ListSkillRegistriesResponse`
ConfigService --> `AddSkillRegistryRequest`
ConfigService --> `AddSkillRegistryResponse`
ConfigService --> `RemoveSkillRegistryRequest`
ConfigService --> `RemoveSkillRegistryResponse`
ConfigService --> `SearchRegistrySkillsRequest`
ConfigService --> `SearchRegistrySkillsResponse`
ConfigService --> `InstallRegistrySkillRequest`
ConfigService --> `InstallRegistrySkillResponse`
ConfigService --> `UpdateRegistrySkillsRequest`
ConfigService --> `UpdateRegistrySkillsResponse`
ConfigService --> `UninstallRegistrySkillRequest`
ConfigService --> `UninstallRegistrySkillResponse`
ConfigService --> `ListSecretsRequest`
ConfigService --> `ListSecretsResponse`
ConfigService --> `SetSecretRequest`
ConfigService --> `SetSecretResponse`
ConfigService --> `DeleteSecretRequest`
ConfigService --> `DeleteSecretResponse`
ConfigService --> `ListBuiltinSkillsRequest`
ConfigService --> `ListBuiltinSkillsResponse`
ConfigService --> `TrustSkillScriptsRequest`
ConfigService --> `TrustSkillScriptsResponse`
ConfigService --> `GetSkillReviewRequest`
ConfigService --> `GetSkillReviewResponse`
ConfigService --> `ListMCPServerConfigsRequest`
ConfigService --> `ListMCPServerConfigsResponse`
ConfigService --> `SaveMCPServerRequest`
ConfigService --> `SaveMCPServerResponse`
ConfigService --> `RemoveMCPServerRequest`
ConfigService --> `RemoveMCPServerResponse`
ConfigService --> `SetMCPServerEnabledRequest`
ConfigService --> `SetMCPServerEnabledResponse`
| Method | Parameter (In) | Parameter (Out) | Description |
|---|---|---|---|
| DescribeConfig | DescribeConfigRequest | DescribeConfigResponse | What a scope sets: providers and where their keys come from (never the keys themselves). |
| ListModels | ListModelsRequest | ListModelsResponse | The models each configured provider offers, from its API (kept for a few minutes), so forms can suggest and check model names. |
| GetSignIn | GetSignInRequest | GetSignInResponse | Returns the providers’ sign-ins (one provider’s, or all four: google, anthropic, aws, azure): whether the vendor’s tool is installed and whether its credentials work now. Signing in adds to API keys. |
| SignIn | SignInRequest | Stream<SignInResponse> | Runs a provider’s sign-in with its vendor’s tool (gcloud, ant, aws, az) on the service’s machine, streaming what the tool prints (the sign-in page’s URL, a device code), then retries the open workspaces’ models (NO_TOOL, SIGN_IN_RUNNING, SIGN_IN_FAILED, UNKNOWN_PROVIDER, INVALID_PROFILE). |
| SignOut | SignOutRequest | SignOutResponse | Signs out of a provider with its vendor’s tool. |
| SetApiKey | SetApiKeyRequest | SetApiKeyResponse | Stores a provider’s API key in the keychain and refers to it. |
| SecureApiKey | SecureApiKeyRequest | SecureApiKeyResponse | Moves a provider’s API key written in the scope’s file (as plain text or obfuscated) into the keychain. |
| RemoveApiKey | RemoveApiKeyRequest | RemoveApiKeyResponse | Removes a provider’s API key (a workspace then uses the global one). |
| SetProvider | SetProviderRequest | SetProviderResponse | Saves a scope’s provider, default model and, optionally, the provider’s API key as one change: all checked before anything is written, and the open workspaces reload once. |
| SetConfigValue | SetConfigValueRequest | SetConfigValueResponse | Sets one of the forms’ settings ("" removes it). |
| DescribePermissions | DescribePermissionsRequest | DescribePermissionsResponse | A scope’s permission rules: its own file’s, the global ones a workspace adds to, and the built-in read-only rules. |
| AddPermission | AddPermissionRequest | AddPermissionResponse | Adds an allow, ask or deny rule to a scope’s file, if it’s valid. |
| RemovePermission | RemovePermissionRequest | RemovePermissionResponse | Removes a rule from a scope’s file (any effect). |
| CheckPermission | CheckPermissionRequest | CheckPermissionResponse | Checks a rule without saving it: its canonical form and how it matches, or why it’s invalid; with a sample, whether it applies to it. |
| SetReadOnlyDefaults | SetReadOnlyDefaultsRequest | SetReadOnlyDefaultsResponse | Turns the built-in read-only rules on or off in a scope, or leaves a workspace to the global setting. |
| GetConfigFile | GetConfigFileRequest | GetConfigFileResponse | Returns a scope’s settings file as text. |
| SaveConfigFile | SaveConfigFileRequest | SaveConfigFileResponse | Replaces a scope’s settings file, if it’s valid. |
| CheckConfigFile | CheckConfigFileRequest | CheckConfigFileResponse | Checks a settings file’s text without saving it: TOML errors, values of the wrong type and invalid permission rules, which stop it being saved; unknown settings and API keys written as plain text, which don’t. Each at its line. |
| GetSettingsReference | GetSettingsReferenceRequest | GetSettingsReferenceResponse | Every setting a settings file can have, with its type, default and description (from the settings’ doc comments). |
| GetInterfaceLanguage | GetInterfaceLanguageRequest | GetInterfaceLanguageResponse | The interface language the user’s settings name ([ui] locale; empty when they don’t), and their own catalogs ([ui] locales_dir): the desktop app’s System language follows them. |
| ListSkillRegistries | ListSkillRegistriesRequest | ListSkillRegistriesResponse | The skill registries the user added, and the skills installed from them (spec_skills_013 SK-90..SK-96). |
| AddSkillRegistry | AddSkillRegistryRequest | AddSkillRegistryResponse | Checks a registry’s index and remembers it, its token in the keychain (REGISTRY_FAILED when the index can’t be read). |
| RemoveSkillRegistry | RemoveSkillRegistryRequest | RemoveSkillRegistryResponse | Forgets a registry and its token; its skills stay (NO_REGISTRY). |
| SearchRegistrySkills | SearchRegistrySkillsRequest | SearchRegistrySkillsResponse | The registries’ skills that match a query, and why any registry couldn’t be read. |
| InstallRegistrySkill | InstallRegistrySkillRequest | InstallRegistrySkillResponse | Installs a skill for the user or in a workspace, its archive checked against the hash the registry gives (NOT_OFFERED, AMBIGUOUS, HASH_MISMATCH, SKILL_EXISTS, REGISTRY_FAILED). Open sessions see it at once. |
| UpdateRegistrySkills | UpdateRegistrySkillsRequest | UpdateRegistrySkillsResponse | Updates installed skills whose registry offers another archive. |
| UninstallRegistrySkill | UninstallRegistrySkillRequest | UninstallRegistrySkillResponse | Removes a skill installed from a registry (NOT_INSTALLED). |
| ListSecrets | ListSecretsRequest | ListSecretsResponse | Returns the names of the user’s secrets in a scope (global, or a workspace’s own), never their values. |
| SetSecret | SetSecretRequest | SetSecretResponse | Stores a secret’s value in the system’s keychain. |
| DeleteSecret | DeleteSecretRequest | DeleteSecretResponse | Removes a secret. |
| ListBuiltinSkills | ListBuiltinSkillsRequest | ListBuiltinSkillsResponse | Returns the skills Blitz ships with. |
| TrustSkillScripts | TrustSkillScriptsRequest | TrustSkillScriptsResponse | Records that the user reviewed and trusted the scripts of the skill in a folder, with the content hash they were shown (HASH_MISMATCH if it changed since): its scripts then run without asking first, until its content changes (spec_skills_013 SK-108). |
| GetSkillReview | GetSkillReviewRequest | GetSkillReviewResponse | Returns what a skill’s scripts are, for review, when they need it (nothing when they don’t). |
| ListMCPServerConfigs | ListMCPServerConfigsRequest | ListMCPServerConfigsResponse | Returns the MCP servers of the global settings, with the file they’re in. |
| SaveMCPServer | SaveMCPServerRequest | SaveMCPServerResponse | Adds an MCP server to the global settings, or replaces one (name): open workspaces apply it at once. |
| RemoveMCPServer | RemoveMCPServerRequest | RemoveMCPServerResponse | Removes an MCP server from the global settings (NOT_FOUND). |
| SetMCPServerEnabled | SetMCPServerEnabledRequest | SetMCPServerEnabledResponse | Turns an MCP server of the global settings on or off (NOT_FOUND). |
FQN: blitz.v1.KeySource
KeySource says where a provider's API key comes from.
| Name | Ordinal | Description |
|---|---|---|
| KEY_SOURCE_UNSPECIFIED | 0 | |
| KEY_SOURCE_NONE | 1 | |
| KEY_SOURCE_KEYCHAIN | 2 | The OS keychain (the file holds a reference). |
| KEY_SOURCE_PLAIN | 3 | Written in the file as plain text. |
| KEY_SOURCE_OBFUSCATED | 4 | modenv’s xor: value: obfuscated, not encrypted. |
| KEY_SOURCE_ENVIRONMENT | 5 | An environment variable of the service. |
| KEY_SOURCE_INHERITED | 6 | A workspace using the global key. |
classDiagram
direction LR
%% KeySource says where a provider's API key comes from.
class KeySource{
<<enumeration>>
KEY_SOURCE_UNSPECIFIED
KEY_SOURCE_NONE
KEY_SOURCE_KEYCHAIN
KEY_SOURCE_PLAIN
KEY_SOURCE_OBFUSCATED
KEY_SOURCE_ENVIRONMENT
KEY_SOURCE_INHERITED
}
classDiagram
direction LR
%% Request message for ConfigService.GetInterfaceLanguage.
class GetInterfaceLanguageRequest {
}
classDiagram
direction LR
%% Response message for ConfigService.GetInterfaceLanguage.
class GetInterfaceLanguageResponse {
+ string locale
+ List~string~ catalogs
}
classDiagram
direction LR
%% One provider's settings in a scope, and where its API key comes from (never the key).
class ProviderConfig {
+ string name
+ KeySource key_source
+ bool key_missing
+ string base_url
+ string model
+ string auth
+ string project_id
+ string location
+ string profile
}
ProviderConfig --> `KeySource`
classDiagram
direction LR
%% How a provider signs in.
class ProviderAuth {
+ string method
+ string project_id
+ string location
+ string profile
}
classDiagram
direction LR
%% Request message for ConfigService.DescribeConfig.
class DescribeConfigRequest {
+ string workspace
}
classDiagram
direction LR
%% Response message for ConfigService.DescribeConfig.
class DescribeConfigResponse {
+ string path
+ string provider
+ string default_model
+ List~ProviderConfig~ providers
+ string secret_store
}
DescribeConfigResponse --> `ProviderConfig`
classDiagram
direction LR
%% After a change: the file written, and why the scope's workspace (for a workspace scope, if it's open) still can't build its model ("" if it can).
class ConfigChange {
+ string path
+ string model_error
}
classDiagram
direction LR
%% Request message for ConfigService.SetApiKey.
class SetApiKeyRequest {
+ string workspace
+ string provider
+ string key
}
classDiagram
direction LR
%% Response message for ConfigService.SetApiKey.
class SetApiKeyResponse {
+ ConfigChange change
}
SetApiKeyResponse --> `ConfigChange`
classDiagram
direction LR
%% Request message for ConfigService.SecureApiKey.
class SecureApiKeyRequest {
+ string workspace
+ string provider
}
classDiagram
direction LR
%% Response message for ConfigService.SecureApiKey.
class SecureApiKeyResponse {
+ ConfigChange change
}
SecureApiKeyResponse --> `ConfigChange`
classDiagram
direction LR
%% Request message for ConfigService.RemoveApiKey.
class RemoveApiKeyRequest {
+ string workspace
+ string provider
}
classDiagram
direction LR
%% Response message for ConfigService.RemoveApiKey.
class RemoveApiKeyResponse {
+ ConfigChange change
}
RemoveApiKeyResponse --> `ConfigChange`
classDiagram
direction LR
%% Request message for ConfigService.SetConfigValue.
class SetConfigValueRequest {
+ string workspace
+ string key
+ string value
}
classDiagram
direction LR
%% Response message for ConfigService.SetConfigValue.
class SetConfigValueResponse {
+ ConfigChange change
}
SetConfigValueResponse --> `ConfigChange`
classDiagram
direction LR
%% Request message for ConfigService.SetProvider.
class SetProviderRequest {
+ string workspace
+ string provider
+ string default_model
+ string key
+ ProviderAuth auth
}
SetProviderRequest --> `ProviderAuth`
classDiagram
direction LR
%% Response message for ConfigService.SetProvider.
class SetProviderResponse {
+ ConfigChange change
}
SetProviderResponse --> `ConfigChange`
classDiagram
direction LR
%% Request message for ConfigService.GetConfigFile.
class GetConfigFileRequest {
+ string workspace
}
classDiagram
direction LR
%% Response message for ConfigService.GetConfigFile.
class GetConfigFileResponse {
+ string path
+ string text
}
classDiagram
direction LR
%% Request message for ConfigService.SaveConfigFile.
class SaveConfigFileRequest {
+ string workspace
+ string text
}
classDiagram
direction LR
%% Response message for ConfigService.SaveConfigFile.
class SaveConfigFileResponse {
+ ConfigChange change
+ List~string~ warnings
}
SaveConfigFileResponse --> `ConfigChange`
classDiagram
direction LR
%% Request message for ConfigService.CheckConfigFile.
class CheckConfigFileRequest {
+ string text
}
classDiagram
direction LR
%% Something wrong with a settings file.
class ConfigProblem {
+ int32 line
+ int32 column
+ bool error
+ string message
}
classDiagram
direction LR
%% Response message for ConfigService.CheckConfigFile.
class CheckConfigFileResponse {
+ List~ConfigProblem~ problems
}
CheckConfigFileResponse --> `ConfigProblem`
classDiagram
direction LR
%% Request message for ConfigService.GetSettingsReference.
class GetSettingsReferenceRequest {
}
classDiagram
direction LR
%% One entry of the settings reference.
class SettingInfo {
+ string key
+ string type
+ string default
+ string doc
}
classDiagram
direction LR
%% Request message for ConfigService.ListModels.
class ListModelsRequest {
+ string workspace
+ List~string~ providers
}
classDiagram
direction LR
%% A listed model with the price Blitz knows for it.
class ListedModel {
+ string id
+ bool has_price
+ double input_per_mtok
+ double output_per_mtok
}
classDiagram
direction LR
%% Request message for ConfigService.GetSignIn.
class GetSignInRequest {
+ string workspace
+ string provider
+ string profile
}
classDiagram
direction LR
%% A provider's sign-in.
class SignInStatus {
+ string provider
+ string tool
+ bool tool_found
+ string install
+ bool signed_in
+ string detail
}
classDiagram
direction LR
%% Response message for ConfigService.GetSignIn.
class GetSignInResponse {
+ List~SignInStatus~ statuses
}
GetSignInResponse --> `SignInStatus`
classDiagram
direction LR
%% Request message for ConfigService.SignIn.
class SignInRequest {
+ string workspace
+ string provider
+ string profile
}
classDiagram
direction LR
%% Response message for ConfigService.SignIn: a line the tool printed, or the end.
class SignInResponse {
+ string line
+ string url
+ string code
+ bool done
+ SignInStatus status
}
SignInResponse --> `SignInStatus`
classDiagram
direction LR
%% Request message for ConfigService.SignOut.
class SignOutRequest {
+ string workspace
+ string provider
+ string profile
}
classDiagram
direction LR
%% Response message for ConfigService.SignOut.
class SignOutResponse {
+ SignInStatus status
}
SignOutResponse --> `SignInStatus`
classDiagram
direction LR
%% ProviderModels are one provider's models.
class ProviderModels {
+ string provider
+ List~string~ ids
+ string error
+ string note
+ List~ListedModel~ models
}
ProviderModels --> `ListedModel`
classDiagram
direction LR
%% Response message for ConfigService.ListModels.
class ListModelsResponse {
+ List~ProviderModels~ providers
+ string default_provider
}
ListModelsResponse --> `ProviderModels`
classDiagram
direction LR
%% Response message for ConfigService.GetSettingsReference.
class GetSettingsReferenceResponse {
+ List~SettingInfo~ settings
}
GetSettingsReferenceResponse --> `SettingInfo`
classDiagram
direction LR
%% A rule in a settings file's [permissions].
class PermissionEntry {
+ string effect
+ string rule
}
classDiagram
direction LR
%% Request message for ConfigService.DescribePermissions.
class DescribePermissionsRequest {
+ string workspace
}
classDiagram
direction LR
%% Response message for ConfigService.DescribePermissions.
class DescribePermissionsResponse {
+ string path
+ List~PermissionEntry~ rules
+ List~PermissionEntry~ inherited
+ string read_only_defaults
+ bool read_only_defaults_on
+ List~string~ read_only_commands
+ List~string~ read_only_guards
}
DescribePermissionsResponse --> `PermissionEntry`
DescribePermissionsResponse --> `PermissionEntry`
classDiagram
direction LR
%% Request message for ConfigService.AddPermission.
class AddPermissionRequest {
+ string workspace
+ string effect
+ string rule
}
classDiagram
direction LR
%% Response message for ConfigService.AddPermission.
class AddPermissionResponse {
+ ConfigChange change
+ string rule
}
AddPermissionResponse --> `ConfigChange`
classDiagram
direction LR
%% Request message for ConfigService.RemovePermission.
class RemovePermissionRequest {
+ string workspace
+ string rule
}
classDiagram
direction LR
%% Response message for ConfigService.RemovePermission.
class RemovePermissionResponse {
+ ConfigChange change
+ int32 removed
}
RemovePermissionResponse --> `ConfigChange`
classDiagram
direction LR
%% Request message for ConfigService.CheckPermission.
class CheckPermissionRequest {
+ string effect
+ string rule
+ string sample
}
classDiagram
direction LR
%% Response message for ConfigService.CheckPermission.
class CheckPermissionResponse {
+ string error
+ string rule
+ string kind
+ string pattern
+ string form
+ bool tested
+ bool matches
+ string redirect
}
classDiagram
direction LR
%% Request message for ConfigService.SetReadOnlyDefaults.
class SetReadOnlyDefaultsRequest {
+ string workspace
+ string value
}
classDiagram
direction LR
%% Response message for ConfigService.SetReadOnlyDefaults.
class SetReadOnlyDefaultsResponse {
+ ConfigChange change
}
SetReadOnlyDefaultsResponse --> `ConfigChange`
classDiagram
direction LR
%% A skill registry the user added.
class SkillRegistry {
+ string name
+ string url
+ bool has_token
}
classDiagram
direction LR
%% A skill a registry offers.
class RegistrySkill {
+ string registry
+ string name
+ string description
+ string version
+ string castor_id
}
classDiagram
direction LR
%% A skill installed from a registry.
class InstalledSkill {
+ string name
+ string registry
+ string version
+ string dir
+ google.protobuf.Timestamp installed
+ SkillReview review
}
InstalledSkill --> `SkillReview`
classDiagram
direction LR
%% What a skill's scripts are, for the user to review before trusting them (spec_skills_013 SK-108).
class SkillReview {
+ string dir
+ string hash
+ List~ReviewScript~ scripts
}
SkillReview --> `ReviewScript`
classDiagram
direction LR
%% One script under review.
class ReviewScript {
+ string name
+ string language
+ string source
+ List~string~ deps
}
classDiagram
direction LR
%% Request message for ConfigService.ListSkillRegistries.
class ListSkillRegistriesRequest {
}
classDiagram
direction LR
%% Response message for ConfigService.ListSkillRegistries.
class ListSkillRegistriesResponse {
+ List~SkillRegistry~ registries
+ List~InstalledSkill~ installed
}
ListSkillRegistriesResponse --> `SkillRegistry`
ListSkillRegistriesResponse --> `InstalledSkill`
classDiagram
direction LR
%% Request message for ConfigService.AddSkillRegistry.
class AddSkillRegistryRequest {
+ string url
+ string name
+ string token
}
classDiagram
direction LR
%% Response message for ConfigService.AddSkillRegistry.
class AddSkillRegistryResponse {
+ SkillRegistry registry
+ int32 skills
}
AddSkillRegistryResponse --> `SkillRegistry`
classDiagram
direction LR
%% Request message for ConfigService.RemoveSkillRegistry.
class RemoveSkillRegistryRequest {
+ string name
}
classDiagram
direction LR
%% Response message for ConfigService.RemoveSkillRegistry.
class RemoveSkillRegistryResponse {
}
classDiagram
direction LR
%% Request message for ConfigService.SearchRegistrySkills.
class SearchRegistrySkillsRequest {
+ string query
}
classDiagram
direction LR
%% Response message for ConfigService.SearchRegistrySkills.
class SearchRegistrySkillsResponse {
+ List~RegistrySkill~ skills
+ List~string~ problems
}
SearchRegistrySkillsResponse --> `RegistrySkill`
classDiagram
direction LR
%% Request message for ConfigService.InstallRegistrySkill.
class InstallRegistrySkillRequest {
+ string ref
+ string workspace
}
classDiagram
direction LR
%% Response message for ConfigService.InstallRegistrySkill.
class InstallRegistrySkillResponse {
+ InstalledSkill skill
}
InstallRegistrySkillResponse --> `InstalledSkill`
classDiagram
direction LR
%% Request message for ConfigService.UpdateRegistrySkills.
class UpdateRegistrySkillsRequest {
+ List~string~ names
}
classDiagram
direction LR
%% Response message for ConfigService.UpdateRegistrySkills.
class UpdateRegistrySkillsResponse {
+ List~InstalledSkill~ updated
+ List~string~ problems
}
UpdateRegistrySkillsResponse --> `InstalledSkill`
classDiagram
direction LR
%% Request message for ConfigService.UninstallRegistrySkill.
class UninstallRegistrySkillRequest {
+ string name
+ string workspace
}
classDiagram
direction LR
%% Response message for ConfigService.UninstallRegistrySkill.
class UninstallRegistrySkillResponse {
+ InstalledSkill skill
}
UninstallRegistrySkillResponse --> `InstalledSkill`
classDiagram
direction LR
%% MCPServerConfig is an MCP server's settings ([[mcp.servers]]): exactly one of command (stdio) and url (streamable HTTP).
class MCPServerConfig {
+ string name
+ string command
+ List~string~ args
+ Map~string, string~ env
+ string url
+ Map~string, string~ headers
+ bool disabled
+ List~string~ tools
+ bool auto_approve
+ Optional~bool~ sandbox
+ string prefix
+ List~string~ agents
+ int32 timeout_seconds
}
classDiagram
direction LR
%% Request message for ConfigService.ListMCPServerConfigs.
class ListMCPServerConfigsRequest {
}
classDiagram
direction LR
%% Response message for ConfigService.ListMCPServerConfigs.
class ListMCPServerConfigsResponse {
+ List~MCPServerConfig~ servers
+ string path
}
ListMCPServerConfigsResponse --> `MCPServerConfig`
classDiagram
direction LR
%% Request message for ConfigService.SaveMCPServer.
class SaveMCPServerRequest {
+ string name
+ MCPServerConfig server
}
SaveMCPServerRequest --> `MCPServerConfig`
classDiagram
direction LR
%% Response message for ConfigService.SaveMCPServer.
class SaveMCPServerResponse {
+ ConfigChange change
}
SaveMCPServerResponse --> `ConfigChange`
classDiagram
direction LR
%% Request message for ConfigService.RemoveMCPServer.
class RemoveMCPServerRequest {
+ string name
}
classDiagram
direction LR
%% Response message for ConfigService.RemoveMCPServer.
class RemoveMCPServerResponse {
+ ConfigChange change
}
RemoveMCPServerResponse --> `ConfigChange`
classDiagram
direction LR
%% Request message for ConfigService.SetMCPServerEnabled.
class SetMCPServerEnabledRequest {
+ string name
+ bool enabled
}
classDiagram
direction LR
%% Response message for ConfigService.SetMCPServerEnabled.
class SetMCPServerEnabledResponse {
+ ConfigChange change
}
SetMCPServerEnabledResponse --> `ConfigChange`
classDiagram
direction LR
%% BuiltinSkill is a skill Blitz ships with.
class BuiltinSkill {
+ string name
+ string description
+ string version
}
classDiagram
direction LR
%% Request message for ConfigService.ListBuiltinSkills.
class ListBuiltinSkillsRequest {
}
classDiagram
direction LR
%% Response message for ConfigService.ListBuiltinSkills.
class ListBuiltinSkillsResponse {
+ List~BuiltinSkill~ skills
}
ListBuiltinSkillsResponse --> `BuiltinSkill`
classDiagram
direction LR
%% Secret is one of the user's secrets, as listed: its key ({secrets:key} in prompts and settings) and when its value was set; never the value.
class Secret {
+ string key
+ google.protobuf.Timestamp updated
}
classDiagram
direction LR
%% Request message for ConfigService.ListSecrets.
class ListSecretsRequest {
+ string workspace
}
classDiagram
direction LR
%% Response message for ConfigService.ListSecrets.
class ListSecretsResponse {
+ List~Secret~ secrets
+ string store
+ string prefix
}
ListSecretsResponse --> `Secret`
classDiagram
direction LR
%% Request message for ConfigService.SetSecret.
class SetSecretRequest {
+ string workspace
+ string key
+ string value
}
classDiagram
direction LR
%% Response message for ConfigService.SetSecret.
class SetSecretResponse {
}
classDiagram
direction LR
%% Request message for ConfigService.DeleteSecret.
class DeleteSecretRequest {
+ string workspace
+ string key
}
classDiagram
direction LR
%% Response message for ConfigService.DeleteSecret.
class DeleteSecretResponse {
}
classDiagram
direction LR
%% Request message for ConfigService.TrustSkillScripts.
class TrustSkillScriptsRequest {
+ string dir
+ string hash
}
classDiagram
direction LR
%% Response message for ConfigService.TrustSkillScripts.
class TrustSkillScriptsResponse {
}
classDiagram
direction LR
%% Request message for ConfigService.GetSkillReview.
class GetSkillReviewRequest {
+ string dir
}
classDiagram
direction LR
%% Response message for ConfigService.GetSkillReview.
class GetSkillReviewResponse {
+ SkillReview review
}
GetSkillReviewResponse --> `SkillReview`
FQN: blitz.v1.GetInterfaceLanguageRequest
Request message for ConfigService.GetInterfaceLanguage.
| Field | Ordinal | Type | Label | Description |
|---|
FQN: blitz.v1.GetInterfaceLanguageResponse
Response message for ConfigService.GetInterfaceLanguage.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| locale | 1 | string | A language tag, or empty when the settings don’t set one. | |
| catalogs | 2 | string | Repeated | The user’s catalogs, each a catalog file’s JSON (checked, as the terminal loads them). |
FQN: blitz.v1.ProviderConfig
One provider's settings in a scope, and where its API key comes from (never the key).
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| name | 1 | string | gemini, anthropic or openai. | |
| key_source | 2 | KeySource | ||
| key_missing | 3 | bool | The file refers to a keychain secret that isn’t there. | |
| base_url | 4 | string | As set in this scope ("" when not). | |
| model | 5 | string | ||
| auth | 6 | string | How it signs in, as set in this scope: "" (an API key, or a workspace following the global setting), adc (Gemini) or oauth (Anthropic). | |
| project_id | 7 | string | adc: the Google Cloud project and location ("" when not set here). | |
| location | 8 | string | ||
| profile | 9 | string | oauth: the ant auth login profile ("" for ant’s active one). |
FQN: blitz.v1.ProviderAuth
How a provider signs in.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| method | 1 | string | api_key ("" too), adc (Gemini through Vertex AI with Application Default Credentials) or oauth (Anthropic, an ant auth login profile). |
|
| project_id | 2 | string | adc: the Google Cloud project and location ("" uses the service’s GOOGLE_CLOUD_PROJECT and GOOGLE_CLOUD_LOCATION, or “global”). | |
| location | 3 | string | ||
| profile | 4 | string | oauth: the profile ("" uses ant’s active one). |
FQN: blitz.v1.DescribeConfigRequest
Request message for ConfigService.DescribeConfig.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| workspace | 1 | string |
FQN: blitz.v1.DescribeConfigResponse
Response message for ConfigService.DescribeConfig.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| path | 1 | string | The scope’s settings file (it may not exist yet). | |
| provider | 2 | string | llm.provider and blitz.default_model as set in this scope. | |
| default_model | 3 | string | ||
| providers | 4 | ProviderConfig | Repeated | |
| secret_store | 5 | string | Where keys are kept (“macOS Keychain”, “Secret Service”, a file). |
FQN: blitz.v1.ConfigChange
After a change: the file written, and why the scope's workspace (for a workspace scope, if it's open) still can't build its model ("" if it can).
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| path | 1 | string | ||
| model_error | 2 | string |
FQN: blitz.v1.SetApiKeyRequest
Request message for ConfigService.SetApiKey.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| workspace | 1 | string | ||
| provider | 2 | string | ||
| key | 3 | string |
FQN: blitz.v1.SetApiKeyResponse
Response message for ConfigService.SetApiKey.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| change | 1 | ConfigChange |
FQN: blitz.v1.SecureApiKeyRequest
Request message for ConfigService.SecureApiKey.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| workspace | 1 | string | ||
| provider | 2 | string |
FQN: blitz.v1.SecureApiKeyResponse
Response message for ConfigService.SecureApiKey.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| change | 1 | ConfigChange |
FQN: blitz.v1.RemoveApiKeyRequest
Request message for ConfigService.RemoveApiKey.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| workspace | 1 | string | ||
| provider | 2 | string |
FQN: blitz.v1.RemoveApiKeyResponse
Response message for ConfigService.RemoveApiKey.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| change | 1 | ConfigChange |
FQN: blitz.v1.SetConfigValueRequest
Request message for ConfigService.SetConfigValue.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| workspace | 1 | string | ||
| key | 2 | string | llm.provider, blitz.default_model, llm.<provider>.model or .base_url, llm.gemini.project_id or .location. | |
| value | 3 | string |
FQN: blitz.v1.SetConfigValueResponse
Response message for ConfigService.SetConfigValue.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| change | 1 | ConfigChange |
FQN: blitz.v1.SetProviderRequest
Request message for ConfigService.SetProvider.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| workspace | 1 | string | ||
| provider | 2 | string | llm.provider: gemini, anthropic, openai or ollama ("" removes it). | |
| default_model | 3 | string | blitz.default_model ("" removes it). | |
| key | 4 | string | A new API key for the provider, kept in the keychain ("" keeps the current one). | |
| auth | 5 | ProviderAuth | How the provider signs in (unset leaves it as it is). |
FQN: blitz.v1.SetProviderResponse
Response message for ConfigService.SetProvider.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| change | 1 | ConfigChange |
FQN: blitz.v1.GetConfigFileRequest
Request message for ConfigService.GetConfigFile.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| workspace | 1 | string |
FQN: blitz.v1.GetConfigFileResponse
Response message for ConfigService.GetConfigFile.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| path | 1 | string | ||
| text | 2 | string | "" when the file doesn’t exist yet. |
FQN: blitz.v1.SaveConfigFileRequest
Request message for ConfigService.SaveConfigFile.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| workspace | 1 | string | ||
| text | 2 | string |
FQN: blitz.v1.SaveConfigFileResponse
Response message for ConfigService.SaveConfigFile.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| change | 1 | ConfigChange | ||
| warnings | 2 | string | Repeated | Unknown settings (likely typos) and keys written as plain text. |
FQN: blitz.v1.CheckConfigFileRequest
Request message for ConfigService.CheckConfigFile.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| text | 1 | string | The settings file’s text. |
FQN: blitz.v1.ConfigProblem
Something wrong with a settings file.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| line | 1 | int32 | The line (from 1), or 0 for the file as a whole. | |
| column | 2 | int32 | The column (from 1), when known. | |
| error | 3 | bool | An error stops the file being saved; a warning doesn’t. | |
| message | 4 | string |
FQN: blitz.v1.CheckConfigFileResponse
Response message for ConfigService.CheckConfigFile.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| problems | 1 | ConfigProblem | Repeated | By line, errors first on a line; none when the file is fine. |
FQN: blitz.v1.GetSettingsReferenceRequest
Request message for ConfigService.GetSettingsReference.
| Field | Ordinal | Type | Label | Description |
|---|
FQN: blitz.v1.SettingInfo
One entry of the settings reference.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| key | 1 | string | The table (“llm”) or setting (“llm.provider”). <name> stands for any name (“model_settings.<model>.temperature”); [] marks an array of tables (“hooks.pre_tool[].command”). | |
| type | 2 | string | table, array of tables, string, integer, number, boolean or list of strings. | |
| default | 3 | string | The value when unset, as TOML ("" when there’s none to show). | |
| doc | 4 | string | What it does. |
FQN: blitz.v1.ListModelsRequest
Request message for ConfigService.ListModels.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| workspace | 1 | string | The workspace whose settings name the providers; "" for the user’s. | |
| providers | 2 | string | Repeated | Only these providers (gemini, anthropic, openai, …), configured or not; none for every configured one. |
FQN: blitz.v1.ListedModel
A listed model with the price Blitz knows for it.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| id | 1 | string | ||
| has_price | 2 | bool | Dollars per million tokens; has_price false when Blitz knows none. | |
| input_per_mtok | 3 | double | ||
| output_per_mtok | 4 | double |
FQN: blitz.v1.GetSignInRequest
Request message for ConfigService.GetSignIn.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| workspace | 1 | string | The workspace whose settings name the profiles; "" for the user’s. | |
| provider | 2 | string | google, anthropic, aws or azure; "" for all four. | |
| profile | 3 | string | A profile over the configured one (anthropic, aws). |
FQN: blitz.v1.SignInStatus
A provider's sign-in.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| provider | 1 | string | ||
| tool | 2 | string | The vendor’s program, whether it’s installed, and where to get it. | |
| tool_found | 3 | bool | ||
| install | 4 | string | ||
| signed_in | 5 | bool | Its credentials work now, and what they are (account, profile, file). | |
| detail | 6 | string |
FQN: blitz.v1.GetSignInResponse
Response message for ConfigService.GetSignIn.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| statuses | 1 | SignInStatus | Repeated |
FQN: blitz.v1.SignInRequest
Request message for ConfigService.SignIn.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| workspace | 1 | string | ||
| provider | 2 | string | ||
| profile | 3 | string |
FQN: blitz.v1.SignInResponse
Response message for ConfigService.SignIn: a line the tool printed, or the end.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| line | 1 | string | ||
| url | 2 | string | The sign-in page, and a device code, when the line has them. | |
| code | 3 | string | ||
| done | 4 | bool | The sign-in finished; status is the provider’s after it. | |
| status | 5 | SignInStatus |
FQN: blitz.v1.SignOutRequest
Request message for ConfigService.SignOut.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| workspace | 1 | string | ||
| provider | 2 | string | ||
| profile | 3 | string |
FQN: blitz.v1.SignOutResponse
Response message for ConfigService.SignOut.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| status | 1 | SignInStatus |
FQN: blitz.v1.ProviderModels
ProviderModels are one provider's models.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| provider | 1 | string | ||
| ids | 2 | string | Repeated | Model IDs as the provider names them (“gemini-3.8-flash”), sorted. |
| error | 3 | string | Why they couldn’t be listed ("" when they were). | |
| note | 4 | string | What the list is when it isn’t the provider’s own (Bedrock, Azure: the configured model only). | |
| models | 5 | ListedModel | Repeated | The models with their prices, in the order of ids. |
FQN: blitz.v1.ListModelsResponse
Response message for ConfigService.ListModels.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| providers | 1 | ProviderModels | Repeated | |
| default_provider | 2 | string | The provider a name without “provider/” belongs to. |
FQN: blitz.v1.GetSettingsReferenceResponse
Response message for ConfigService.GetSettingsReference.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| settings | 1 | SettingInfo | Repeated |
FQN: blitz.v1.PermissionEntry
A rule in a settings file's [permissions].
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| effect | 1 | string | allow, ask or deny. | |
| rule | 2 | string | As written in the file. |
FQN: blitz.v1.DescribePermissionsRequest
Request message for ConfigService.DescribePermissions.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| workspace | 1 | string |
FQN: blitz.v1.DescribePermissionsResponse
Response message for ConfigService.DescribePermissions.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| path | 1 | string | The scope’s settings file (it may not exist yet). | |
| rules | 2 | PermissionEntry | Repeated | The rules the scope’s own file sets. |
| inherited | 3 | PermissionEntry | Repeated | For a workspace: the global rules, which apply there too. |
| read_only_defaults | 4 | string | read_only_defaults as the scope’s file sets it: “on”, “off” or "" (not set: on globally, the global setting in a workspace). | |
| read_only_defaults_on | 5 | bool | Whether the built-in rules apply in the scope. | |
| read_only_commands | 6 | string | Repeated | The built-in rules: commands allowed without asking, and (described for people) the options with which they ask even so. |
| read_only_guards | 7 | string | Repeated |
FQN: blitz.v1.AddPermissionRequest
Request message for ConfigService.AddPermission.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| workspace | 1 | string | ||
| effect | 2 | string | ||
| rule | 3 | string |
FQN: blitz.v1.AddPermissionResponse
Response message for ConfigService.AddPermission.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| change | 1 | ConfigChange | ||
| rule | 2 | string | The rule in canonical form, as saved. |
FQN: blitz.v1.RemovePermissionRequest
Request message for ConfigService.RemovePermission.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| workspace | 1 | string | ||
| rule | 2 | string |
FQN: blitz.v1.RemovePermissionResponse
Response message for ConfigService.RemovePermission.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| change | 1 | ConfigChange | ||
| removed | 2 | int32 | How many rules were removed. |
FQN: blitz.v1.CheckPermissionRequest
Request message for ConfigService.CheckPermission.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| effect | 1 | string | ||
| rule | 2 | string | ||
| sample | 3 | string | A command (shell rules), path or name to try the rule on ("" for none). |
FQN: blitz.v1.CheckPermissionResponse
Response message for ConfigService.CheckPermission.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| error | 1 | string | Why the rule is invalid ("" when it’s valid). | |
| rule | 2 | string | The rule in canonical form, its kind and pattern. | |
| kind | 3 | string | ||
| pattern | 4 | string | ||
| form | 5 | string | How the pattern matches: prefix (a command with any arguments), glob (* and ?), regex (re:), path or name. | |
| tested | 6 | bool | Whether the sample was tried, and whether the rule applies to it (an allow rule to every command in it, an ask or deny rule to any). | |
| matches | 7 | bool | ||
| redirect | 8 | string | A file the sample command writes through a redirection: a matching allow rule still asks. |
FQN: blitz.v1.SetReadOnlyDefaultsRequest
Request message for ConfigService.SetReadOnlyDefaults.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| workspace | 1 | string | ||
| value | 2 | string | “on”, “off”, or "" to remove the setting (a workspace then follows the global one). |
FQN: blitz.v1.SetReadOnlyDefaultsResponse
Response message for ConfigService.SetReadOnlyDefaults.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| change | 1 | ConfigChange |
FQN: blitz.v1.SkillRegistry
A skill registry the user added.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| name | 1 | string | ||
| url | 2 | string | ||
| has_token | 3 | bool | Its token is in the keychain. |
FQN: blitz.v1.RegistrySkill
A skill a registry offers.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| registry | 1 | string | ||
| name | 2 | string | ||
| description | 3 | string | ||
| version | 4 | string | ||
| castor_id | 5 | string | Its id in the Castor registry, when it has one. |
FQN: blitz.v1.InstalledSkill
A skill installed from a registry.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| name | 1 | string | ||
| registry | 2 | string | ||
| version | 3 | string | ||
| dir | 4 | string | Its folder. | |
| installed | 5 | google.protobuf.Timestamp | ||
| review | 6 | SkillReview | Its scripts, when it has some that weren’t reviewed with this content (a new install, an update): what to show before TrustSkillScripts. |
FQN: blitz.v1.SkillReview
What a skill's scripts are, for the user to review before trusting them (spec_skills_013 SK-108).
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| dir | 1 | string | The skill’s folder and content hash, for TrustSkillScripts. | |
| hash | 2 | string | ||
| scripts | 3 | ReviewScript | Repeated |
FQN: blitz.v1.ReviewScript
One script under review.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| name | 1 | string | ||
| language | 2 | string | ||
| source | 3 | string | Its path in the skill, or “inline”. | |
| deps | 4 | string | Repeated | The packages it installs. |
FQN: blitz.v1.ListSkillRegistriesRequest
Request message for ConfigService.ListSkillRegistries.
| Field | Ordinal | Type | Label | Description |
|---|
FQN: blitz.v1.ListSkillRegistriesResponse
Response message for ConfigService.ListSkillRegistries.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| registries | 1 | SkillRegistry | Repeated | |
| installed | 2 | InstalledSkill | Repeated |
FQN: blitz.v1.AddSkillRegistryRequest
Request message for ConfigService.AddSkillRegistry.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| url | 1 | string | An https URL, or a local file, serving a skills index. | |
| name | 2 | string | What to call it ("" for the index’s own name). | |
| token | 3 | string | An access token for it ("" for none). |
FQN: blitz.v1.AddSkillRegistryResponse
Response message for ConfigService.AddSkillRegistry.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| registry | 1 | SkillRegistry | ||
| skills | 2 | int32 |
FQN: blitz.v1.RemoveSkillRegistryRequest
Request message for ConfigService.RemoveSkillRegistry.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| name | 1 | string |
FQN: blitz.v1.RemoveSkillRegistryResponse
Response message for ConfigService.RemoveSkillRegistry.
| Field | Ordinal | Type | Label | Description |
|---|
FQN: blitz.v1.SearchRegistrySkillsRequest
Request message for ConfigService.SearchRegistrySkills.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| query | 1 | string | Words each hit has in its name or description ("" for all). |
FQN: blitz.v1.SearchRegistrySkillsResponse
Response message for ConfigService.SearchRegistrySkills.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| skills | 1 | RegistrySkill | Repeated | |
| problems | 2 | string | Repeated | Registries that couldn’t be read, and why. |
FQN: blitz.v1.InstallRegistrySkillRequest
Request message for ConfigService.InstallRegistrySkill.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| ref | 1 | string | “registry/name”, or a name only one registry offers. | |
| workspace | 2 | string | The workspace to install it in (its .agents/skills); "" for the user. |
FQN: blitz.v1.InstallRegistrySkillResponse
Response message for ConfigService.InstallRegistrySkill.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| skill | 1 | InstalledSkill |
FQN: blitz.v1.UpdateRegistrySkillsRequest
Request message for ConfigService.UpdateRegistrySkills.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| names | 1 | string | Repeated | The skills to update; none for all. |
FQN: blitz.v1.UpdateRegistrySkillsResponse
Response message for ConfigService.UpdateRegistrySkills.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| updated | 1 | InstalledSkill | Repeated | |
| problems | 2 | string | Repeated |
FQN: blitz.v1.UninstallRegistrySkillRequest
Request message for ConfigService.UninstallRegistrySkill.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| name | 1 | string | ||
| workspace | 2 | string | The workspace whose skill it is, when the user has none of the name. |
FQN: blitz.v1.UninstallRegistrySkillResponse
Response message for ConfigService.UninstallRegistrySkill.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| skill | 1 | InstalledSkill |
FQN: blitz.v1.MCPServerConfig
MCPServerConfig is an MCP server's settings ([[mcp.servers]]): exactly one of command (stdio) and url (streamable HTTP).
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| name | 1 | string | ||
| command | 2 | string | ||
| args | 3 | string | Repeated | |
| env | 4 | string, string | Map | |
| url | 5 | string | ||
| headers | 6 | string, string | Map | |
| disabled | 7 | bool | Configured, but never started. | |
| tools | 8 | string | Repeated | Only these of its tools; empty for all. |
| auto_approve | 9 | bool | Its tools run without asking. | |
| sandbox | 10 | bool | Optional | A stdio server runs in the OS sandbox unless this is false. |
| prefix | 11 | string | Names its tools prefix__tool. | |
| agents | 12 | string | Repeated | The agents offered its tools; empty for the main agent, * for all. |
| timeout_seconds | 13 | int32 | Bounds one tool call; 0 for the default (300). |
FQN: blitz.v1.ListMCPServerConfigsRequest
Request message for ConfigService.ListMCPServerConfigs.
| Field | Ordinal | Type | Label | Description |
|---|
FQN: blitz.v1.ListMCPServerConfigsResponse
Response message for ConfigService.ListMCPServerConfigs.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| servers | 1 | MCPServerConfig | Repeated | |
| path | 2 | string | The global settings file. |
FQN: blitz.v1.SaveMCPServerRequest
Request message for ConfigService.SaveMCPServer.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| name | 1 | string | The server replaced; empty to add one. | |
| server | 2 | MCPServerConfig |
FQN: blitz.v1.SaveMCPServerResponse
Response message for ConfigService.SaveMCPServer.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| change | 1 | ConfigChange |
FQN: blitz.v1.RemoveMCPServerRequest
Request message for ConfigService.RemoveMCPServer.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| name | 1 | string |
FQN: blitz.v1.RemoveMCPServerResponse
Response message for ConfigService.RemoveMCPServer.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| change | 1 | ConfigChange |
FQN: blitz.v1.SetMCPServerEnabledRequest
Request message for ConfigService.SetMCPServerEnabled.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| name | 1 | string | ||
| enabled | 2 | bool |
FQN: blitz.v1.SetMCPServerEnabledResponse
Response message for ConfigService.SetMCPServerEnabled.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| change | 1 | ConfigChange |
FQN: blitz.v1.BuiltinSkill
BuiltinSkill is a skill Blitz ships with.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| name | 1 | string | ||
| description | 2 | string | ||
| version | 3 | string |
FQN: blitz.v1.ListBuiltinSkillsRequest
Request message for ConfigService.ListBuiltinSkills.
| Field | Ordinal | Type | Label | Description |
|---|
FQN: blitz.v1.ListBuiltinSkillsResponse
Response message for ConfigService.ListBuiltinSkills.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| skills | 1 | BuiltinSkill | Repeated | By name. |
FQN: blitz.v1.Secret
Secret is one of the user's secrets, as listed: its key ({secrets:key} in prompts and settings) and when its value was set; never the value.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| key | 1 | string | ||
| updated | 2 | google.protobuf.Timestamp |
FQN: blitz.v1.ListSecretsRequest
Request message for ConfigService.ListSecrets.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| workspace | 1 | string | Empty for the global secrets. |
FQN: blitz.v1.ListSecretsResponse
Response message for ConfigService.ListSecrets.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| secrets | 1 | Secret | Repeated | |
| store | 2 | string | Where the values are kept (“macOS Keychain”). | |
| prefix | 3 | string | The scope’s stored names start with this: urn:blitz:<scope>:secrets:. |
FQN: blitz.v1.SetSecretRequest
Request message for ConfigService.SetSecret.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| workspace | 1 | string | Empty for a global secret. | |
| key | 2 | string | ||
| value | 3 | string |
FQN: blitz.v1.SetSecretResponse
Response message for ConfigService.SetSecret.
| Field | Ordinal | Type | Label | Description |
|---|
FQN: blitz.v1.DeleteSecretRequest
Request message for ConfigService.DeleteSecret.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| workspace | 1 | string | Empty for a global secret. | |
| key | 2 | string |
FQN: blitz.v1.DeleteSecretResponse
Response message for ConfigService.DeleteSecret.
| Field | Ordinal | Type | Label | Description |
|---|
FQN: blitz.v1.TrustSkillScriptsRequest
Request message for ConfigService.TrustSkillScripts.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| dir | 1 | string | The skill’s folder. | |
| hash | 2 | string | Its content hash, as shown. |
FQN: blitz.v1.TrustSkillScriptsResponse
Response message for ConfigService.TrustSkillScripts.
| Field | Ordinal | Type | Label | Description |
|---|
FQN: blitz.v1.GetSkillReviewRequest
Request message for ConfigService.GetSkillReview.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| dir | 1 | string | The skill’s folder. |
FQN: blitz.v1.GetSkillReviewResponse
Response message for ConfigService.GetSkillReview.
| Field | Ordinal | Type | Label | Description |
|---|---|---|---|---|
| review | 1 | SkillReview | Unset when its scripts need no review. |